0001 Binding for ST's CPUFreq driver
0002 ===============================
0003
0004 ST's CPUFreq driver attempts to read 'process' and 'version' attributes
0005 from the SoC, then supplies the OPP framework with 'prop' and 'supported
0006 hardware' information respectively. The framework is then able to read
0007 the DT and operate in the usual way.
0008
0009 Frequency Scaling only
0010 ----------------------
0011
0012 No vendor specific driver required for this.
0013
0014 Located in CPU's node:
0015
0016 - operating-points : [See: ../power/opp-v1.yaml]
0017
0018 Example [safe]
0019 --------------
0020
0021 cpus {
0022 cpu@0 {
0023 /* kHz uV */
0024 operating-points = <1500000 0
0025 1200000 0
0026 800000 0
0027 500000 0>;
0028 };
0029 };
0030
0031 Dynamic Voltage and Frequency Scaling (DVFS)
0032 --------------------------------------------
0033
0034 This requires the ST CPUFreq driver to supply 'process' and 'version' info.
0035
0036 Located in CPU's node:
0037
0038 - operating-points-v2 : [See ../power/opp-v2.yaml]
0039
0040 Example [unsafe]
0041 ----------------
0042
0043 cpus {
0044 cpu@0 {
0045 operating-points-v2 = <&cpu0_opp_table>;
0046 };
0047 };
0048
0049 cpu0_opp_table: opp_table {
0050 compatible = "operating-points-v2";
0051
0052 /* ############################################################### */
0053 /* # WARNING: Do not attempt to copy/replicate these nodes, # */
0054 /* # they are only to be supplied by the bootloader !!! # */
0055 /* ############################################################### */
0056 opp0 {
0057 /* Major Minor Substrate */
0058 /* 2 all all */
0059 opp-supported-hw = <0x00000004 0xffffffff 0xffffffff>;
0060 opp-hz = /bits/ 64 <1500000000>;
0061 clock-latency-ns = <10000000>;
0062
0063 opp-microvolt-pcode0 = <1200000>;
0064 opp-microvolt-pcode1 = <1200000>;
0065 opp-microvolt-pcode2 = <1200000>;
0066 opp-microvolt-pcode3 = <1200000>;
0067 opp-microvolt-pcode4 = <1170000>;
0068 opp-microvolt-pcode5 = <1140000>;
0069 opp-microvolt-pcode6 = <1100000>;
0070 opp-microvolt-pcode7 = <1070000>;
0071 };
0072
0073 opp1 {
0074 /* Major Minor Substrate */
0075 /* all all all */
0076 opp-supported-hw = <0xffffffff 0xffffffff 0xffffffff>;
0077 opp-hz = /bits/ 64 <1200000000>;
0078 clock-latency-ns = <10000000>;
0079
0080 opp-microvolt-pcode0 = <1110000>;
0081 opp-microvolt-pcode1 = <1150000>;
0082 opp-microvolt-pcode2 = <1100000>;
0083 opp-microvolt-pcode3 = <1080000>;
0084 opp-microvolt-pcode4 = <1040000>;
0085 opp-microvolt-pcode5 = <1020000>;
0086 opp-microvolt-pcode6 = <980000>;
0087 opp-microvolt-pcode7 = <930000>;
0088 };
0089 };