aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRan Wang <ran.wang_1@nxp.com>2019-04-17 23:42:25 -0400
committerShawn Guo <shawnguo@kernel.org>2019-04-21 22:40:45 -0400
commit00c5ce8ac0233fb8975448e720bb1702b36d0725 (patch)
tree6f73b22a771aa4f47dce74d086f8e553b647c390
parentade5a57e304e2a880135549393970de03bde4a3a (diff)
arm64: dts: lx2160a: add cpu idle support
lx2160a supports pw20 which could help save more power during cpu is dile. It needs system firmware support via PSCI. Signed-off-by: Ran Wang <ran.wang_1@nxp.com> Signed-off-by: Shawn Guo <shawnguo@kernel.org>
-rw-r--r--arch/arm64/boot/dts/freescale/fsl-lx2160a.dtsi25
1 files changed, 25 insertions, 0 deletions
diff --git a/arch/arm64/boot/dts/freescale/fsl-lx2160a.dtsi b/arch/arm64/boot/dts/freescale/fsl-lx2160a.dtsi
index bb0dd85d809a..125a8cc2c5b3 100644
--- a/arch/arm64/boot/dts/freescale/fsl-lx2160a.dtsi
+++ b/arch/arm64/boot/dts/freescale/fsl-lx2160a.dtsi
@@ -33,6 +33,7 @@
33 i-cache-line-size = <64>; 33 i-cache-line-size = <64>;
34 i-cache-sets = <192>; 34 i-cache-sets = <192>;
35 next-level-cache = <&cluster0_l2>; 35 next-level-cache = <&cluster0_l2>;
36 cpu-idle-states = <&cpu_pw20>;
36 }; 37 };
37 38
38 cpu@1 { 39 cpu@1 {
@@ -48,6 +49,7 @@
48 i-cache-line-size = <64>; 49 i-cache-line-size = <64>;
49 i-cache-sets = <192>; 50 i-cache-sets = <192>;
50 next-level-cache = <&cluster0_l2>; 51 next-level-cache = <&cluster0_l2>;
52 cpu-idle-states = <&cpu_pw20>;
51 }; 53 };
52 54
53 cpu@100 { 55 cpu@100 {
@@ -63,6 +65,7 @@
63 i-cache-line-size = <64>; 65 i-cache-line-size = <64>;
64 i-cache-sets = <192>; 66 i-cache-sets = <192>;
65 next-level-cache = <&cluster1_l2>; 67 next-level-cache = <&cluster1_l2>;
68 cpu-idle-states = <&cpu_pw20>;
66 }; 69 };
67 70
68 cpu@101 { 71 cpu@101 {
@@ -78,6 +81,7 @@
78 i-cache-line-size = <64>; 81 i-cache-line-size = <64>;
79 i-cache-sets = <192>; 82 i-cache-sets = <192>;
80 next-level-cache = <&cluster1_l2>; 83 next-level-cache = <&cluster1_l2>;
84 cpu-idle-states = <&cpu_pw20>;
81 }; 85 };
82 86
83 cpu@200 { 87 cpu@200 {
@@ -93,6 +97,7 @@
93 i-cache-line-size = <64>; 97 i-cache-line-size = <64>;
94 i-cache-sets = <192>; 98 i-cache-sets = <192>;
95 next-level-cache = <&cluster2_l2>; 99 next-level-cache = <&cluster2_l2>;
100 cpu-idle-states = <&cpu_pw20>;
96 }; 101 };
97 102
98 cpu@201 { 103 cpu@201 {
@@ -108,6 +113,7 @@
108 i-cache-line-size = <64>; 113 i-cache-line-size = <64>;
109 i-cache-sets = <192>; 114 i-cache-sets = <192>;
110 next-level-cache = <&cluster2_l2>; 115 next-level-cache = <&cluster2_l2>;
116 cpu-idle-states = <&cpu_pw20>;
111 }; 117 };
112 118
113 cpu@300 { 119 cpu@300 {
@@ -123,6 +129,7 @@
123 i-cache-line-size = <64>; 129 i-cache-line-size = <64>;
124 i-cache-sets = <192>; 130 i-cache-sets = <192>;
125 next-level-cache = <&cluster3_l2>; 131 next-level-cache = <&cluster3_l2>;
132 cpu-idle-states = <&cpu_pw20>;
126 }; 133 };
127 134
128 cpu@301 { 135 cpu@301 {
@@ -138,6 +145,7 @@
138 i-cache-line-size = <64>; 145 i-cache-line-size = <64>;
139 i-cache-sets = <192>; 146 i-cache-sets = <192>;
140 next-level-cache = <&cluster3_l2>; 147 next-level-cache = <&cluster3_l2>;
148 cpu-idle-states = <&cpu_pw20>;
141 }; 149 };
142 150
143 cpu@400 { 151 cpu@400 {
@@ -153,6 +161,7 @@
153 i-cache-line-size = <64>; 161 i-cache-line-size = <64>;
154 i-cache-sets = <192>; 162 i-cache-sets = <192>;
155 next-level-cache = <&cluster4_l2>; 163 next-level-cache = <&cluster4_l2>;
164 cpu-idle-states = <&cpu_pw20>;
156 }; 165 };
157 166
158 cpu@401 { 167 cpu@401 {
@@ -168,6 +177,7 @@
168 i-cache-line-size = <64>; 177 i-cache-line-size = <64>;
169 i-cache-sets = <192>; 178 i-cache-sets = <192>;
170 next-level-cache = <&cluster4_l2>; 179 next-level-cache = <&cluster4_l2>;
180 cpu-idle-states = <&cpu_pw20>;
171 }; 181 };
172 182
173 cpu@500 { 183 cpu@500 {
@@ -183,6 +193,7 @@
183 i-cache-line-size = <64>; 193 i-cache-line-size = <64>;
184 i-cache-sets = <192>; 194 i-cache-sets = <192>;
185 next-level-cache = <&cluster5_l2>; 195 next-level-cache = <&cluster5_l2>;
196 cpu-idle-states = <&cpu_pw20>;
186 }; 197 };
187 198
188 cpu@501 { 199 cpu@501 {
@@ -198,6 +209,7 @@
198 i-cache-line-size = <64>; 209 i-cache-line-size = <64>;
199 i-cache-sets = <192>; 210 i-cache-sets = <192>;
200 next-level-cache = <&cluster5_l2>; 211 next-level-cache = <&cluster5_l2>;
212 cpu-idle-states = <&cpu_pw20>;
201 }; 213 };
202 214
203 cpu@600 { 215 cpu@600 {
@@ -213,6 +225,7 @@
213 i-cache-line-size = <64>; 225 i-cache-line-size = <64>;
214 i-cache-sets = <192>; 226 i-cache-sets = <192>;
215 next-level-cache = <&cluster6_l2>; 227 next-level-cache = <&cluster6_l2>;
228 cpu-idle-states = <&cpu_pw20>;
216 }; 229 };
217 230
218 cpu@601 { 231 cpu@601 {
@@ -228,6 +241,7 @@
228 i-cache-line-size = <64>; 241 i-cache-line-size = <64>;
229 i-cache-sets = <192>; 242 i-cache-sets = <192>;
230 next-level-cache = <&cluster6_l2>; 243 next-level-cache = <&cluster6_l2>;
244 cpu-idle-states = <&cpu_pw20>;
231 }; 245 };
232 246
233 cpu@700 { 247 cpu@700 {
@@ -243,6 +257,7 @@
243 i-cache-line-size = <64>; 257 i-cache-line-size = <64>;
244 i-cache-sets = <192>; 258 i-cache-sets = <192>;
245 next-level-cache = <&cluster7_l2>; 259 next-level-cache = <&cluster7_l2>;
260 cpu-idle-states = <&cpu_pw20>;
246 }; 261 };
247 262
248 cpu@701 { 263 cpu@701 {
@@ -258,6 +273,7 @@
258 i-cache-line-size = <64>; 273 i-cache-line-size = <64>;
259 i-cache-sets = <192>; 274 i-cache-sets = <192>;
260 next-level-cache = <&cluster7_l2>; 275 next-level-cache = <&cluster7_l2>;
276 cpu-idle-states = <&cpu_pw20>;
261 }; 277 };
262 278
263 cluster0_l2: l2-cache0 { 279 cluster0_l2: l2-cache0 {
@@ -323,6 +339,15 @@
323 cache-sets = <1024>; 339 cache-sets = <1024>;
324 cache-level = <2>; 340 cache-level = <2>;
325 }; 341 };
342
343 cpu_pw20: cpu-pw20 {
344 compatible = "arm,idle-state";
345 idle-state-name = "PW20";
346 arm,psci-suspend-param = <0x0>;
347 entry-latency-us = <2000>;
348 exit-latency-us = <2000>;
349 min-residency-us = <6000>;
350 };
326 }; 351 };
327 352
328 gic: interrupt-controller@6000000 { 353 gic: interrupt-controller@6000000 {