Orange Pi5 kernel

Deprecated Linux kernel 5.10.110 for OrangePi 5/5B/5+ boards

3 Commits   0 Branches   0 Tags
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  1) Binding for ST's CPUFreq driver
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  2) ===============================
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  3) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  4) ST's CPUFreq driver attempts to read 'process' and 'version' attributes
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  5) from the SoC, then supplies the OPP framework with 'prop' and 'supported
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  6) hardware' information respectively.  The framework is then able to read
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  7) the DT and operate in the usual way.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  8) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  9) For more information about the expected DT format [See: ../opp/opp.txt].
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) Frequency Scaling only
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) ----------------------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) No vendor specific driver required for this.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) Located in CPU's node:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) - operating-points		: [See: ../power/opp.txt]
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) Example [safe]
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) --------------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23) cpus {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24) 	cpu@0 {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) 				 /* kHz     uV   */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26) 		operating-points = <1500000 0
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27) 				    1200000 0
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) 				    800000  0
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29) 				    500000  0>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30) 	};
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33) Dynamic Voltage and Frequency Scaling (DVFS)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34) --------------------------------------------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36) This requires the ST CPUFreq driver to supply 'process' and 'version' info.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 38) Located in CPU's node:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 39) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 40) - operating-points-v2		: [See ../power/opp.txt]
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 41) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 42) Example [unsafe]
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 43) ----------------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 44) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 45) cpus {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 46) 	cpu@0 {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 47) 		operating-points-v2	= <&cpu0_opp_table>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 48) 	};
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 49) };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 50) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 51) cpu0_opp_table: opp_table {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 52) 	compatible = "operating-points-v2";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 53) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 54) 	/* ############################################################### */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 55) 	/* # WARNING: Do not attempt to copy/replicate these nodes,      # */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 56) 	/* #          they are only to be supplied by the bootloader !!! # */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 57) 	/* ############################################################### */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 58) 	opp0 {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 59) 		/*			   Major       Minor       Substrate */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 60) 		/*			   2           all         all       */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 61) 		opp-supported-hw	= <0x00000004  0xffffffff  0xffffffff>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 62) 		opp-hz			= /bits/ 64 <1500000000>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 63) 		clock-latency-ns	= <10000000>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 64) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 65) 		opp-microvolt-pcode0	= <1200000>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 66) 		opp-microvolt-pcode1	= <1200000>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 67) 		opp-microvolt-pcode2	= <1200000>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 68) 		opp-microvolt-pcode3	= <1200000>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 69) 		opp-microvolt-pcode4	= <1170000>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 70) 		opp-microvolt-pcode5	= <1140000>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 71) 		opp-microvolt-pcode6	= <1100000>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 72) 		opp-microvolt-pcode7	= <1070000>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 73) 	};
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 74) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 75) 	opp1 {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 76) 		/*			   Major       Minor       Substrate */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 77) 		/*			   all         all         all       */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 78) 		opp-supported-hw	= <0xffffffff  0xffffffff  0xffffffff>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 79) 		opp-hz			= /bits/ 64 <1200000000>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 80) 		clock-latency-ns	= <10000000>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 81) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 82) 		opp-microvolt-pcode0	= <1110000>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 83) 		opp-microvolt-pcode1	= <1150000>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 84) 		opp-microvolt-pcode2	= <1100000>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 85) 		opp-microvolt-pcode3	= <1080000>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 86) 		opp-microvolt-pcode4	= <1040000>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 87) 		opp-microvolt-pcode5	= <1020000>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 88) 		opp-microvolt-pcode6	= <980000>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 89) 		opp-microvolt-pcode7	= <930000>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 90) 	};
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 91) };