1 Qualcomm Technologies, Inc. CPUFREQ Bindings
3 CPUFREQ HW is a hardware engine used by some Qualcomm Technologies, Inc. (QTI)
4 SoCs to manage frequency in hardware. It is capable of controlling frequency
11 Definition: must be "qcom,cpufreq-hw" or "qcom,cpufreq-epss".
15 Value type: <phandle> From common clock binding.
16 Definition: clock handle for XO clock and GPLL0 clock.
20 Value type: <string> From common clock binding.
21 Definition: must be "xo", "alternate".
25 Value type: <prop-encoded-array>
26 Definition: Addresses and sizes for the memory of the HW bases in
27 each frequency domain.
31 Definition: Frequency domain name i.e.
32 "freq-domain0", "freq-domain1".
36 Definition: Number of cells in a freqency domain specifier.
38 * Property qcom,freq-domain
39 Devices supporting freq-domain must set their "qcom,freq-domain" property with
40 phandle to a cpufreq_hw followed by the Domain ID(0/1) in the CPU DT node.
45 Example 1: Dual-cluster, Quad-core per cluster. CPUs within a cluster switch
55 compatible = "qcom,kryo385";
57 enable-method = "psci";
58 next-level-cache = <&L2_0>;
59 qcom,freq-domain = <&cpufreq_hw 0>;
62 next-level-cache = <&L3_0>;
71 compatible = "qcom,kryo385";
73 enable-method = "psci";
74 next-level-cache = <&L2_100>;
75 qcom,freq-domain = <&cpufreq_hw 0>;
78 next-level-cache = <&L3_0>;
84 compatible = "qcom,kryo385";
86 enable-method = "psci";
87 next-level-cache = <&L2_200>;
88 qcom,freq-domain = <&cpufreq_hw 0>;
91 next-level-cache = <&L3_0>;
97 compatible = "qcom,kryo385";
99 enable-method = "psci";
100 next-level-cache = <&L2_300>;
101 qcom,freq-domain = <&cpufreq_hw 0>;
103 compatible = "cache";
104 next-level-cache = <&L3_0>;
110 compatible = "qcom,kryo385";
112 enable-method = "psci";
113 next-level-cache = <&L2_400>;
114 qcom,freq-domain = <&cpufreq_hw 1>;
116 compatible = "cache";
117 next-level-cache = <&L3_0>;
123 compatible = "qcom,kryo385";
125 enable-method = "psci";
126 next-level-cache = <&L2_500>;
127 qcom,freq-domain = <&cpufreq_hw 1>;
129 compatible = "cache";
130 next-level-cache = <&L3_0>;
136 compatible = "qcom,kryo385";
138 enable-method = "psci";
139 next-level-cache = <&L2_600>;
140 qcom,freq-domain = <&cpufreq_hw 1>;
142 compatible = "cache";
143 next-level-cache = <&L3_0>;
149 compatible = "qcom,kryo385";
151 enable-method = "psci";
152 next-level-cache = <&L2_700>;
153 qcom,freq-domain = <&cpufreq_hw 1>;
155 compatible = "cache";
156 next-level-cache = <&L3_0>;
162 cpufreq_hw: cpufreq@17d43000 {
163 compatible = "qcom,cpufreq-hw";
164 reg = <0x17d43000 0x1400>, <0x17d45800 0x1400>;
165 reg-names = "freq-domain0", "freq-domain1";
167 clocks = <&rpmhcc RPMH_CXO_CLK>, <&gcc GPLL0>;
168 clock-names = "xo", "alternate";
170 #freq-domain-cells = <1>;