aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHeiko Stuebner <heiko@sntech.de>2017-09-13 03:38:40 -0400
committerHeiko Stuebner <heiko@sntech.de>2017-09-16 19:55:20 -0400
commit6354a06cbaa8c49d8377a6cee3e7db399c23601c (patch)
treeeed540d16354fb3c4e3a43961e121bd4d24448ef
parent2bd6bf03f4c1c59381d62c61d03f6cc3fe71f66e (diff)
Revert "arm64: dts: rockchip: Add basic cpu frequencies for RK3368"
This reverts commit 6f2dea1f5fdb73eb2e050d9ebe990121d557e519. Without accurate cpu regulators being set for boards this will wreak havoc when cpufreq-dt begins to set new frequencies without adjusting the core frequency. Additionally the rk3368 has an unsolved issue in that it has two separate cpu clusters with separate clock lines but only one cpu supply regulator for both clusters, which causes even more problems. While it seems that originally only one cluster was supposed to be active at a time (big or little), talking with real users of the hardware revealed that having all 8 cores accessible at 1.2GHz max is way more liked than having 4 cores at 1.5GHz max. Such an approach needs changes to cpufreq and/or opp though to control the two separate clock lines when setting both clusters to the same frequencies. In any case, having the OPPs in the dts at this point in time is undesireable, so remove them again for now. Signed-off-by: Heiko Stuebner <heiko@sntech.de>
-rw-r--r--arch/arm64/boot/dts/rockchip/rk3368.dtsi72
1 files changed, 2 insertions, 70 deletions
diff --git a/arch/arm64/boot/dts/rockchip/rk3368.dtsi b/arch/arm64/boot/dts/rockchip/rk3368.dtsi
index e0518b4bc6c2..19fbaa5e7bdd 100644
--- a/arch/arm64/boot/dts/rockchip/rk3368.dtsi
+++ b/arch/arm64/boot/dts/rockchip/rk3368.dtsi
@@ -113,8 +113,7 @@
113 compatible = "arm,cortex-a53", "arm,armv8"; 113 compatible = "arm,cortex-a53", "arm,armv8";
114 reg = <0x0 0x0>; 114 reg = <0x0 0x0>;
115 enable-method = "psci"; 115 enable-method = "psci";
116 clocks = <&cru ARMCLKL>; 116
117 operating-points-v2 = <&cluster0_opp>;
118 #cooling-cells = <2>; /* min followed by max */ 117 #cooling-cells = <2>; /* min followed by max */
119 }; 118 };
120 119
@@ -123,8 +122,6 @@
123 compatible = "arm,cortex-a53", "arm,armv8"; 122 compatible = "arm,cortex-a53", "arm,armv8";
124 reg = <0x0 0x1>; 123 reg = <0x0 0x1>;
125 enable-method = "psci"; 124 enable-method = "psci";
126 clocks = <&cru ARMCLKL>;
127 operating-points-v2 = <&cluster0_opp>;
128 }; 125 };
129 126
130 cpu_l2: cpu@2 { 127 cpu_l2: cpu@2 {
@@ -132,8 +129,6 @@
132 compatible = "arm,cortex-a53", "arm,armv8"; 129 compatible = "arm,cortex-a53", "arm,armv8";
133 reg = <0x0 0x2>; 130 reg = <0x0 0x2>;
134 enable-method = "psci"; 131 enable-method = "psci";
135 clocks = <&cru ARMCLKL>;
136 operating-points-v2 = <&cluster0_opp>;
137 }; 132 };
138 133
139 cpu_l3: cpu@3 { 134 cpu_l3: cpu@3 {
@@ -141,8 +136,6 @@
141 compatible = "arm,cortex-a53", "arm,armv8"; 136 compatible = "arm,cortex-a53", "arm,armv8";
142 reg = <0x0 0x3>; 137 reg = <0x0 0x3>;
143 enable-method = "psci"; 138 enable-method = "psci";
144 clocks = <&cru ARMCLKL>;
145 operating-points-v2 = <&cluster0_opp>;
146 }; 139 };
147 140
148 cpu_b0: cpu@100 { 141 cpu_b0: cpu@100 {
@@ -150,8 +143,7 @@
150 compatible = "arm,cortex-a53", "arm,armv8"; 143 compatible = "arm,cortex-a53", "arm,armv8";
151 reg = <0x0 0x100>; 144 reg = <0x0 0x100>;
152 enable-method = "psci"; 145 enable-method = "psci";
153 clocks = <&cru ARMCLKB>; 146
154 operating-points-v2 = <&cluster1_opp>;
155 #cooling-cells = <2>; /* min followed by max */ 147 #cooling-cells = <2>; /* min followed by max */
156 }; 148 };
157 149
@@ -160,8 +152,6 @@
160 compatible = "arm,cortex-a53", "arm,armv8"; 152 compatible = "arm,cortex-a53", "arm,armv8";
161 reg = <0x0 0x101>; 153 reg = <0x0 0x101>;
162 enable-method = "psci"; 154 enable-method = "psci";
163 clocks = <&cru ARMCLKB>;
164 operating-points-v2 = <&cluster1_opp>;
165 }; 155 };
166 156
167 cpu_b2: cpu@102 { 157 cpu_b2: cpu@102 {
@@ -169,8 +159,6 @@
169 compatible = "arm,cortex-a53", "arm,armv8"; 159 compatible = "arm,cortex-a53", "arm,armv8";
170 reg = <0x0 0x102>; 160 reg = <0x0 0x102>;
171 enable-method = "psci"; 161 enable-method = "psci";
172 clocks = <&cru ARMCLKB>;
173 operating-points-v2 = <&cluster1_opp>;
174 }; 162 };
175 163
176 cpu_b3: cpu@103 { 164 cpu_b3: cpu@103 {
@@ -178,62 +166,6 @@
178 compatible = "arm,cortex-a53", "arm,armv8"; 166 compatible = "arm,cortex-a53", "arm,armv8";
179 reg = <0x0 0x103>; 167 reg = <0x0 0x103>;
180 enable-method = "psci"; 168 enable-method = "psci";
181 clocks = <&cru ARMCLKB>;
182 operating-points-v2 = <&cluster1_opp>;
183 };
184 };
185
186 cluster0_opp: opp-table0 {
187 compatible = "operating-points-v2";
188 opp-shared;
189
190 opp00 {
191 opp-hz = /bits/ 64 <312000000>;
192 opp-microvolt = <950000>;
193 clock-latency-ns = <40000>;
194 };
195 opp01 {
196 opp-hz = /bits/ 64 <408000000>;
197 opp-microvolt = <950000>;
198 };
199 opp02 {
200 opp-hz = /bits/ 64 <600000000>;
201 opp-microvolt = <950000>;
202 };
203 opp03 {
204 opp-hz = /bits/ 64 <816000000>;
205 opp-microvolt = <1025000>;
206 };
207 opp04 {
208 opp-hz = /bits/ 64 <1008000000>;
209 opp-microvolt = <1125000>;
210 };
211 };
212
213 cluster1_opp: opp-table1 {
214 compatible = "operating-points-v2";
215 opp-shared;
216
217 opp00 {
218 opp-hz = /bits/ 64 <312000000>;
219 opp-microvolt = <950000>;
220 clock-latency-ns = <40000>;
221 };
222 opp01 {
223 opp-hz = /bits/ 64 <408000000>;
224 opp-microvolt = <950000>;
225 };
226 opp02 {
227 opp-hz = /bits/ 64 <600000000>;
228 opp-microvolt = <950000>;
229 };
230 opp03 {
231 opp-hz = /bits/ 64 <816000000>;
232 opp-microvolt = <975000>;
233 };
234 opp04 {
235 opp-hz = /bits/ 64 <1008000000>;
236 opp-microvolt = <1050000>;
237 }; 169 };
238 }; 170 };
239 171