blob: ff16b8dcf81d1956fcf984f862fc5a13f14d2d48 [file] [log] [blame]
Praveen Chidambarama1f98282012-11-29 09:56:57 -07001/* Copyright (c) 2013 The Linux Foundation. All rights reserved.
2 *
3 * This program is free software; you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License version 2 and
5 * only version 2 as published by the Free Software Foundation.
6 *
7 * This program is distributed in the hope that it will be useful,
8 * but WITHOUT ANY WARRANTY; without even the implied warranty of
9 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10 * GNU General Public License for more details.
11 */
12
13/include/ "skeleton.dtsi"
14
15/ {
16 qcom,spm@f9089000 {
17 compatible = "qcom,spm-v2";
18 #address-cells = <1>;
19 #size-cells = <1>;
20 reg = <0xf9089000 0x1000>;
21 qcom,core-id = <0>;
22 qcom,saw2-ver-reg = <0xfd0>;
23 qcom,saw2-cfg = <0x01>;
24 qcom,saw2-spm-dly= <0x20000400>;
25 qcom,saw2-spm-ctl = <0x1>;
26 qcom,saw2-spm-cmd-wfi = [60 03 60 76 76 0b 0f];
27 qcom,saw2-spm-cmd-spc = [00 20 10 80 90 5b 60 03 60 3b 76 76 94
28 5b 80 10 2b 30 06 26 30 0f];
29 qcom,saw2-spm-cmd-pc = [00 20 10 80 90 5b 60 07 3b 76 76 0b 94
30 5b 80 10 2b 30 06 26 30 0f];
31 };
32
33 qcom,spm@f9099000 {
34 compatible = "qcom,spm-v2";
35 #address-cells = <1>;
36 #size-cells = <1>;
37 reg = <0xf9099000 0x1000>;
38 qcom,core-id = <1>;
39 qcom,saw2-ver-reg = <0xfd0>;
40 qcom,saw2-cfg = <0x01>;
41 qcom,saw2-spm-dly= <0x20000400>;
42 qcom,saw2-spm-ctl = <0x1>;
43 qcom,saw2-spm-cmd-wfi = [60 03 60 76 76 0b 0f];
44 qcom,saw2-spm-cmd-spc = [00 20 10 80 90 5b 60 03 60 3b 76 76 94
45 5b 80 10 2b 30 06 26 30 0f];
46 qcom,saw2-spm-cmd-pc = [00 20 10 80 90 5b 60 07 3b 76 76 0b 94
47 5b 80 10 2b 30 06 26 30 0f];
48 };
49
50 qcom,spm@f90a9000 {
51 compatible = "qcom,spm-v2";
52 #address-cells = <1>;
53 #size-cells = <1>;
54 reg = <0xf90a9000 0x1000>;
55 qcom,core-id = <2>;
56 qcom,saw2-ver-reg = <0xfd0>;
57 qcom,saw2-cfg = <0x01>;
58 qcom,saw2-spm-dly= <0x20000400>;
59 qcom,saw2-spm-ctl = <0x1>;
60 qcom,saw2-spm-cmd-wfi = [60 03 60 76 76 0b 0f];
61 qcom,saw2-spm-cmd-spc = [00 20 10 80 90 5b 60 03 60 3b 76 76 94
62 5b 80 10 2b 30 06 26 30 0f];
63 qcom,saw2-spm-cmd-pc = [00 20 10 80 90 5b 60 07 3b 76 76 0b 94
64 5b 80 10 2b 30 06 26 30 0f];
65 };
66
67 qcom,spm@f90b9000 {
68 compatible = "qcom,spm-v2";
69 #address-cells = <1>;
70 #size-cells = <1>;
71 reg = <0xf90b9000 0x1000>;
72 qcom,core-id = <3>;
73 qcom,saw2-ver-reg = <0xfd0>;
74 qcom,saw2-cfg = <0x01>;
75 qcom,saw2-spm-dly= <0x20000400>;
76 qcom,saw2-spm-ctl = <0x1>;
77 qcom,saw2-spm-cmd-wfi = [60 03 60 76 76 0b 0f];
78 qcom,saw2-spm-cmd-spc = [00 20 10 80 90 5b 60 03 60 3b 76 76 94
79 5b 80 10 2b 30 06 26 30 0f];
80 qcom,saw2-spm-cmd-pc = [00 20 10 80 90 5b 60 07 3b 76 76 0b 94
81 5b 80 10 2b 30 06 26 30 0f];
82 };
83
84 qcom,spm@f9012000 {
85 compatible = "qcom,spm-v2";
86 #address-cells = <1>;
87 #size-cells = <1>;
88 reg = <0xf9012000 0x1000>;
89 qcom,core-id = <0xffff>; /* L2/APCS SAW */
90 qcom,saw2-ver-reg = <0xfd0>;
91 qcom,saw2-cfg = <0x14>;
92 qcom,saw2-spm-dly= <0x20000400>;
93 qcom,saw2-spm-ctl = <0x1>;
94 qcom,saw2-pmic-data0 = <0x02030080>;
95 qcom,saw2-pmic-data1 = <0x00030000>;
96 qcom,vctl-timeout-us = <50>;
97 qcom,vctl-port = <0x0>;
98 qcom,phase-port = <0x1>;
99 qcom,pfm-port = <0x2>;
100 qcom,saw2-spm-cmd-ret = [0b 00 03 00 7b 0f];
101 qcom,saw2-spm-cmd-gdhs = [00 20 32 60 70 80 0b 6b c0 e0 d0 42 07
102 78 1f 80 4e d0 e0 c0 22 6b 50 4b 60 02 32 50 7b
103 0f];
104 qcom,saw2-spm-cmd-pc = [00 32 60 70 80 b0 0b 10 e0 d0 6b c0
105 42 f0 11 07 01 b0 78 1f 80 4e c0 d0 12 e0 6b 50 4b
106 60 02 32 50 f0 7b 0f]; /*APCS_PMIC_OFF_L2RAM_OFF*/
107 };
108
109 qcom,lpm-resources {
110 compatible = "qcom,lpm-resources";
111 #address-cells = <1>;
112 #size-cells = <0>;
113
114 qcom,lpm-resources@0 {
115 reg = <0x0>;
116 qcom,name = "vdd-dig";
Praveen Chidambarama1f98282012-11-29 09:56:57 -0700117 qcom,type = <0x62706d73>; /* "smpb" */
118 qcom,id = <0x02>;
119 qcom,key = <0x6e726f63>; /* "corn" */
120 qcom,init-value = <5>; /* Super Turbo */
121 };
122
123 qcom,lpm-resources@1 {
124 reg = <0x1>;
125 qcom,name = "vdd-mem";
Praveen Chidambarama1f98282012-11-29 09:56:57 -0700126 qcom,type = <0x62706d73>; /* "smpb" */
127 qcom,id = <0x01>;
128 qcom,key = <0x7675>; /* "uv" */
129 qcom,init-value = <1050000>; /* Super Turbo */
130 };
131
132 qcom,lpm-resources@2 {
133 reg = <0x2>;
134 qcom,name = "pxo";
Praveen Chidambarama1f98282012-11-29 09:56:57 -0700135 qcom,type = <0x306b6c63>; /* "clk0" */
136 qcom,id = <0x00>;
137 qcom,key = <0x62616e45>; /* "Enab" */
Archana Sathyakumare6a35102013-01-31 16:18:49 -0700138 qcom,init-value = "xo_on";
Praveen Chidambarama1f98282012-11-29 09:56:57 -0700139 };
140
141 qcom,lpm-resources@3 {
142 reg = <0x3>;
143 qcom,name = "l2";
Archana Sathyakumare6a35102013-01-31 16:18:49 -0700144 qcom,local-resource-type;
145 qcom,init-value = "l2_cache_retention";
Praveen Chidambarama1f98282012-11-29 09:56:57 -0700146 };
147 };
148
149 qcom,lpm-levels {
150 compatible = "qcom,lpm-levels";
151 #address-cells = <1>;
152 #size-cells = <0>;
153
154 qcom,lpm-level@0 {
155 reg = <0x0>;
Archana Sathyakumare6a35102013-01-31 16:18:49 -0700156 qcom,mode = "wfi";
157 qcom,xo = "xo_on";
158 qcom,l2 = "l2_cache_active";
Praveen Chidambarama1f98282012-11-29 09:56:57 -0700159 qcom,vdd-mem-upper-bound = <1150000>; /* MAX */
160 qcom,vdd-mem-lower-bound = <1050000>; /* ACTIVE */
161 qcom,vdd-dig-upper-bound = <5>; /* MAX */
162 qcom,vdd-dig-lower-bound = <3>; /* ACTIVE */
163 qcom,latency-us = <1>;
164 qcom,ss-power = <784>;
165 qcom,energy-overhead = <190000>;
166 qcom,time-overhead = <100>;
167 };
168
169 qcom,lpm-level@1 {
170 reg = <0x1>;
Archana Sathyakumare6a35102013-01-31 16:18:49 -0700171 qcom,mode = "retention";
172 qcom,xo = "xo_on";
173 qcom,l2 = "l2_cache_active";
Praveen Chidambarama1f98282012-11-29 09:56:57 -0700174 qcom,vdd-mem-upper-bound = <1150000>; /* MAX */
175 qcom,vdd-mem-lower-bound = <1050000>; /* ACTIVE */
176 qcom,vdd-dig-upper-bound = <5>; /* MAX */
177 qcom,vdd-dig-lower-bound = <3>; /* ACTIVE */
178 qcom,latency-us = <75>;
179 qcom,ss-power = <735>;
180 qcom,energy-overhead = <77341>;
181 qcom,time-overhead = <105>;
182 };
183
184
185 qcom,lpm-level@2 {
186 reg = <0x2>;
Archana Sathyakumare6a35102013-01-31 16:18:49 -0700187 qcom,mode = "standalone_pc";
188 qcom,xo = "xo_on";
189 qcom,l2 = "l2_cache_active";
Praveen Chidambarama1f98282012-11-29 09:56:57 -0700190 qcom,vdd-mem-upper-bound = <1150000>; /* MAX */
191 qcom,vdd-mem-lower-bound = <1050000>; /* ACTIVE */
192 qcom,vdd-dig-upper-bound = <5>; /* MAX */
193 qcom,vdd-dig-lower-bound = <3>; /* ACTIVE */
194 qcom,latency-us = <95>;
195 qcom,ss-power = <725>;
196 qcom,energy-overhead = <99500>;
197 qcom,time-overhead = <130>;
198 };
199
200 qcom,lpm-level@3 {
201 reg = <0x3>;
Archana Sathyakumare6a35102013-01-31 16:18:49 -0700202 qcom,mode = "pc";
203 qcom,xo = "xo_on";
204 qcom,l2 = "l2_cache_gdhs";
Praveen Chidambarama1f98282012-11-29 09:56:57 -0700205 qcom,vdd-mem-upper-bound = <1150000>; /* MAX */
206 qcom,vdd-mem-lower-bound = <1050000>; /* ACTIVE */
207 qcom,vdd-dig-upper-bound = <5>; /* MAX */
208 qcom,vdd-dig-lower-bound = <3>; /* ACTIVE */
209 qcom,latency-us = <2000>;
210 qcom,ss-power = <138>;
211 qcom,energy-overhead = <1208400>;
212 qcom,time-overhead = <3200>;
213 };
214
215 qcom,lpm-level@4 {
216 reg = <0x4>;
Archana Sathyakumare6a35102013-01-31 16:18:49 -0700217 qcom,mode = "pc";
218 qcom,xo = "xo_on";
219 qcom,l2 = "l2_cache_pc";
Praveen Chidambarama1f98282012-11-29 09:56:57 -0700220 qcom,vdd-mem-upper-bound = <1050000>; /* ACTIVE */
221 qcom,vdd-mem-lower-bound = <750000>; /* RETENTION HIGH */
222 qcom,vdd-dig-upper-bound = <3>; /* ACTIVE */
223 qcom,vdd-dig-lower-bound = <2>; /* RETENTION HIGH */
224 qcom,latency-us = <3000>;
225 qcom,ss-power = <110>;
226 qcom,energy-overhead = <1250300>;
227 qcom,time-overhead = <3500>;
228 };
229
230 qcom,lpm-level@5 {
231 reg = <0x5>;
Archana Sathyakumare6a35102013-01-31 16:18:49 -0700232 qcom,mode = "pc";
233 qcom,xo = "xo_off";
234 qcom,l2 = "l2_cache_gdhs";
Praveen Chidambarama1f98282012-11-29 09:56:57 -0700235 qcom,vdd-mem-upper-bound = <1150000>; /* MAX */
236 qcom,vdd-mem-lower-bound = <1050000>; /* ACTIVE */
237 qcom,vdd-dig-upper-bound = <5>; /* MAX */
238 qcom,vdd-dig-lower-bound = <3>; /* ACTIVE */
239 qcom,latency-us = <3000>;
240 qcom,ss-power = <68>;
241 qcom,energy-overhead = <1350200>;
242 qcom,time-overhead = <4000>;
243 };
244
245 qcom,lpm-level@6 {
246 reg = <0x6>;
Archana Sathyakumare6a35102013-01-31 16:18:49 -0700247 qcom,mode = "pc";
248 qcom,xo = "xo_off";
249 qcom,l2 = "l2_cache_pc";
Praveen Chidambarama1f98282012-11-29 09:56:57 -0700250 qcom,vdd-mem-upper-bound = <1150000>; /* MAX */
251 qcom,vdd-mem-lower-bound = <1050000>; /* ACTIVE */
252 qcom,vdd-dig-upper-bound = <5>; /* MAX */
253 qcom,vdd-dig-lower-bound = <3>; /* ACTIVE */
254 qcom,latency-us = <10300>;
255 qcom,ss-power = <63>;
256 qcom,energy-overhead = <2128000>;
257 qcom,time-overhead = <18200>;
258 };
259
260 qcom,lpm-level@7 {
261 reg = <0x7>;
Archana Sathyakumare6a35102013-01-31 16:18:49 -0700262 qcom,mode = "pc";
263 qcom,xo = "xo_off";
264 qcom,l2 = "l2_cache_pc";
Praveen Chidambarama1f98282012-11-29 09:56:57 -0700265 qcom,vdd-mem-upper-bound = <1050000>; /* ACTIVE */
266 qcom,vdd-mem-lower-bound = <750000>; /* RETENTION HIGH */
267 qcom,vdd-dig-upper-bound = <3>; /* ACTIVE */
268 qcom,vdd-dig-lower-bound = <2>; /* RETIONTION HIGH */
269 qcom,latency-us = <18000>;
270 qcom,ss-power = <10>;
271 qcom,energy-overhead = <3202600>;
272 qcom,time-overhead = <27000>;
273 };
274
275 qcom,lpm-level@8 {
276 reg = <0x8>;
Archana Sathyakumare6a35102013-01-31 16:18:49 -0700277 qcom,mode = "pc";
278 qcom,xo = "xo_off";
279 qcom,l2 = "l2_cache_pc";
Praveen Chidambarama1f98282012-11-29 09:56:57 -0700280 qcom,vdd-mem-upper-bound = <750000>; /* RETENTION HIGH */
281 qcom,vdd-mem-lower-bound = <750000>; /* RETENTION LOW */
282 qcom,vdd-dig-upper-bound = <2>; /* RETENTION HIGH */
283 qcom,vdd-dig-lower-bound = <0>; /* RETENTION LOW */
284 qcom,latency-us = <20000>;
285 qcom,ss-power = <2>;
286 qcom,energy-overhead = <4252000>;
287 qcom,time-overhead = <32000>;
288 };
289 };
290
291 qcom,pm-boot {
292 compatible = "qcom,pm-boot";
Archana Sathyakumar28441012013-02-01 17:45:38 -0700293 qcom,mode = "tz";
Praveen Chidambarama1f98282012-11-29 09:56:57 -0700294 };
295
296 qcom,mpm@fc4281d0 {
297 compatible = "qcom,mpm-v2";
298 reg = <0xfc4281d0 0x1000>, /* MSM_RPM_MPM_BASE 4K */
299 <0xf9011008 0x4>; /* MSM_APCS_GCC_BASE 4K */
300 reg-names = "vmpm", "ipc";
301 interrupts = <0 171 1>;
302
303 qcom,ipc-bit-offset = <1>;
304
305 qcom,gic-parent = <&intc>;
306 qcom,gic-map = <47 172>, /* usb2_hsic_async_wakeup_irq */
307 <53 104>, /* mdss_irq */
308 <62 222>, /* ee0_krait_hlos_spmi_periph_irq */
Priyanka Mathurc59331f2013-02-15 12:41:12 -0800309 <0xff 56>, /* q6_wdog_expired_irq */
Praveen Chidambarama1f98282012-11-29 09:56:57 -0700310 <0xff 57>, /* mss_to_apps_irq(0) */
311 <0xff 58>, /* mss_to_apps_irq(1) */
312 <0xff 59>, /* mss_to_apps_irq(2) */
313 <0xff 60>, /* mss_to_apps_irq(3) */
Priyanka Mathurc59331f2013-02-15 12:41:12 -0800314 <0xff 61>, /* mss_a2_bam_irq */
Praveen Chidambarama1f98282012-11-29 09:56:57 -0700315 <0xff 173>, /* o_wcss_apss_smd_hi */
316 <0xff 174>, /* o_wcss_apss_smd_med */
317 <0xff 175>, /* o_wcss_apss_smd_low */
318 <0xff 176>, /* o_wcss_apss_smsm_irq */
319 <0xff 177>, /* o_wcss_apss_wlan_data_xfer_done */
320 <0xff 178>, /* o_wcss_apss_wlan_rx_data_avail */
321 <0xff 179>, /* o_wcss_apss_asic_intr
Priyanka Mathurc59331f2013-02-15 12:41:12 -0800322 <0xff 181>, /* o_wcss_apss_wdog_bite_and_reset_rdy */
323 <0xff 161>, /* lpass_irq_out_spare[4] /
324 <0xff 162>, /* lpass_irq_out_spare[5]*/
325 <0xff 234>, /* lpass_irq_out_spare[6]*/
326 <0xff 235>, /* lpass_irq_out_spare[7]*/
Praveen Chidambarama1f98282012-11-29 09:56:57 -0700327 <0xff 188>, /* lpass_irq_out_apcs(0) */
328 <0xff 189>, /* lpass_irq_out_apcs(1) */
329 <0xff 190>, /* lpass_irq_out_apcs(2) */
330 <0xff 191>, /* lpass_irq_out_apcs(3) */
331 <0xff 192>, /* lpass_irq_out_apcs(4) */
Praveen Chidambarama1f98282012-11-29 09:56:57 -0700332 <0xff 194>, /* lpass_irq_out_apcs(6) */
Praveen Chidambarama1f98282012-11-29 09:56:57 -0700333 <0xff 200>, /* rpm_ipc(4) */
334 <0xff 201>, /* rpm_ipc(5) */
335 <0xff 202>, /* rpm_ipc(6) */
336 <0xff 203>, /* rpm_ipc(7) */
337 <0xff 204>, /* rpm_ipc(24) */
338 <0xff 205>, /* rpm_ipc(25) */
339 <0xff 206>, /* rpm_ipc(26) */
340 <0xff 207>, /* rpm_ipc(27) */
Priyanka Mathurc59331f2013-02-15 12:41:12 -0800341 <0xff 258>, /* rpm_ipc(28) */
342 <0xff 259>, /* rpm_ipc(29) */
343 <0xff 275>, /* rpm_ipc(30) */
344 <0xff 276>, /* rpm_ipc(31) */
345 <0xff 269>, /* rpm_wdog_expired_irq */
Praveen Chidambarama1f98282012-11-29 09:56:57 -0700346 <0xff 240>; /* summary_irq_kpss */
347
348 qcom,gpio-parent = <&msmgpio>;
Priyanka Mathurc59331f2013-02-15 12:41:12 -0800349 qcom,gpio-map = <3 1>,
350 <4 4 >,
Praveen Chidambarama1f98282012-11-29 09:56:57 -0700351 <5 5 >,
352 <6 9 >,
Priyanka Mathurc59331f2013-02-15 12:41:12 -0800353 <7 13>,
354 <8 17>,
355 <9 21>,
Praveen Chidambarama1f98282012-11-29 09:56:57 -0700356 <10 27>,
Priyanka Mathurc59331f2013-02-15 12:41:12 -0800357 <11 29>,
358 <12 31>,
359 <13 33>,
360 <14 35>,
361 <15 37>,
362 <16 38>,
363 <17 39>,
364 <18 41>,
365 <19 46>,
366 <20 48>,
367 <21 49>,
368 <22 50>,
369 <23 51>,
370 <24 52>,
371 <25 54>,
372 <26 62>,
373 <27 63>,
374 <28 64>,
375 <29 65>,
376 <30 66>,
377 <31 67>,
378 <32 68>,
379 <33 69>,
380 <34 71>,
381 <35 72>,
382 <36 106>,
383 <37 107>,
384 <38 108>,
385 <39 109>,
386 <40 110>,
387 <54 111>,
388 <55 113>;
Praveen Chidambarama1f98282012-11-29 09:56:57 -0700389 };
390
Priyanka Mathur29b2bd22013-02-22 14:48:09 -0800391 qcom,pm-8x60@fe805664 {
Praveen Chidambarama1f98282012-11-29 09:56:57 -0700392 compatible = "qcom,pm-8x60";
Priyanka Mathur29b2bd22013-02-22 14:48:09 -0800393 reg = <0xfe805664 0x40>;
Archana Sathyakumar2b91dc82013-02-01 17:38:23 -0700394 qcom,pc-mode = "tz_l2_int";
Praveen Chidambarama1f98282012-11-29 09:56:57 -0700395 qcom,use-sync-timer;
396 };
397
398 qcom,rpm-stats@0xfc19dbd0{
399 compatible = "qcom,rpm-stats";
400 reg = <0xfc19dbd0 0x1000>;
401 reg-names = "phys_addr_base";
402 qcom,sleep-stats-version = <2>;
403 };
404};