blob: 2b52e5d5eb5170997374164b0574fb2d3dcedf3e [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001// SPDX-License-Identifier: GPL-2.0
2/dts-v1/;
3
4#include <dt-bindings/interrupt-controller/arm-gic.h>
5#include <dt-bindings/clock/qcom,gcc-apq8084.h>
6#include <dt-bindings/gpio/gpio.h>
7
8/ {
9 #address-cells = <1>;
10 #size-cells = <1>;
11 model = "Qualcomm APQ 8084";
12 compatible = "qcom,apq8084";
13 interrupt-parent = <&intc>;
14
15 reserved-memory {
16 #address-cells = <1>;
17 #size-cells = <1>;
18 ranges;
19
20 smem_mem: smem_region@fa00000 {
21 reg = <0xfa00000 0x200000>;
22 no-map;
23 };
24 };
25
26 cpus {
27 #address-cells = <1>;
28 #size-cells = <0>;
29
30 cpu@0 {
31 device_type = "cpu";
32 compatible = "qcom,krait";
33 reg = <0>;
34 enable-method = "qcom,kpss-acc-v2";
35 next-level-cache = <&L2>;
36 qcom,acc = <&acc0>;
37 qcom,saw = <&saw0>;
38 cpu-idle-states = <&CPU_SPC>;
39 };
40
41 cpu@1 {
42 device_type = "cpu";
43 compatible = "qcom,krait";
44 reg = <1>;
45 enable-method = "qcom,kpss-acc-v2";
46 next-level-cache = <&L2>;
47 qcom,acc = <&acc1>;
48 qcom,saw = <&saw1>;
49 cpu-idle-states = <&CPU_SPC>;
50 };
51
52 cpu@2 {
53 device_type = "cpu";
54 compatible = "qcom,krait";
55 reg = <2>;
56 enable-method = "qcom,kpss-acc-v2";
57 next-level-cache = <&L2>;
58 qcom,acc = <&acc2>;
59 qcom,saw = <&saw2>;
60 cpu-idle-states = <&CPU_SPC>;
61 };
62
63 cpu@3 {
64 device_type = "cpu";
65 compatible = "qcom,krait";
66 reg = <3>;
67 enable-method = "qcom,kpss-acc-v2";
68 next-level-cache = <&L2>;
69 qcom,acc = <&acc3>;
70 qcom,saw = <&saw3>;
71 cpu-idle-states = <&CPU_SPC>;
72 };
73
74 L2: l2-cache {
75 compatible = "cache";
76 cache-level = <2>;
77 cache-unified;
78 qcom,saw = <&saw_l2>;
79 };
80
81 idle-states {
Tom Rini762f85b2024-07-20 11:15:10 -060082 CPU_SPC: cpu-spc {
Tom Rini53633a82024-02-29 12:33:36 -050083 compatible = "qcom,idle-state-spc",
84 "arm,idle-state";
85 entry-latency-us = <150>;
86 exit-latency-us = <200>;
87 min-residency-us = <2000>;
88 };
89 };
90 };
91
92 memory {
93 device_type = "memory";
94 reg = <0x0 0x0>;
95 };
96
97 firmware {
98 scm {
99 compatible = "qcom,scm-apq8084", "qcom,scm";
100 clocks = <&gcc GCC_CE1_CLK> , <&gcc GCC_CE1_AXI_CLK>, <&gcc GCC_CE1_AHB_CLK>;
101 clock-names = "core", "bus", "iface";
102 };
103 };
104
105 thermal-zones {
106 cpu0-thermal {
107 polling-delay-passive = <250>;
108 polling-delay = <1000>;
109
110 thermal-sensors = <&tsens 5>;
111
112 trips {
113 cpu_alert0: trip0 {
114 temperature = <75000>;
115 hysteresis = <2000>;
116 type = "passive";
117 };
118 cpu_crit0: trip1 {
119 temperature = <110000>;
120 hysteresis = <2000>;
121 type = "critical";
122 };
123 };
124 };
125
126 cpu1-thermal {
127 polling-delay-passive = <250>;
128 polling-delay = <1000>;
129
130 thermal-sensors = <&tsens 6>;
131
132 trips {
133 cpu_alert1: trip0 {
134 temperature = <75000>;
135 hysteresis = <2000>;
136 type = "passive";
137 };
138 cpu_crit1: trip1 {
139 temperature = <110000>;
140 hysteresis = <2000>;
141 type = "critical";
142 };
143 };
144 };
145
146 cpu2-thermal {
147 polling-delay-passive = <250>;
148 polling-delay = <1000>;
149
150 thermal-sensors = <&tsens 7>;
151
152 trips {
153 cpu_alert2: trip0 {
154 temperature = <75000>;
155 hysteresis = <2000>;
156 type = "passive";
157 };
158 cpu_crit2: trip1 {
159 temperature = <110000>;
160 hysteresis = <2000>;
161 type = "critical";
162 };
163 };
164 };
165
166 cpu3-thermal {
167 polling-delay-passive = <250>;
168 polling-delay = <1000>;
169
170 thermal-sensors = <&tsens 8>;
171
172 trips {
173 cpu_alert3: trip0 {
174 temperature = <75000>;
175 hysteresis = <2000>;
176 type = "passive";
177 };
178 cpu_crit3: trip1 {
179 temperature = <110000>;
180 hysteresis = <2000>;
181 type = "critical";
182 };
183 };
184 };
185 };
186
187 cpu-pmu {
188 compatible = "qcom,krait-pmu";
189 interrupts = <GIC_PPI 7 0xf04>;
190 };
191
192 clocks {
193 xo_board: xo_board {
194 compatible = "fixed-clock";
195 #clock-cells = <0>;
196 clock-frequency = <19200000>;
197 };
198
199 sleep_clk: sleep_clk {
200 compatible = "fixed-clock";
201 #clock-cells = <0>;
202 clock-frequency = <32768>;
203 };
204 };
205
206 timer {
207 compatible = "arm,armv7-timer";
208 interrupts = <GIC_PPI 2 0xf08>,
209 <GIC_PPI 3 0xf08>,
210 <GIC_PPI 4 0xf08>,
211 <GIC_PPI 1 0xf08>;
212 clock-frequency = <19200000>;
213 };
214
215 smem {
216 compatible = "qcom,smem";
217
218 qcom,rpm-msg-ram = <&rpm_msg_ram>;
219 memory-region = <&smem_mem>;
220
221 hwlocks = <&tcsr_mutex 3>;
222 };
223
224 soc: soc {
225 #address-cells = <1>;
226 #size-cells = <1>;
227 ranges;
228 compatible = "simple-bus";
229
230 intc: interrupt-controller@f9000000 {
231 compatible = "qcom,msm-qgic2";
232 interrupt-controller;
233 #interrupt-cells = <3>;
234 reg = <0xf9000000 0x1000>,
235 <0xf9002000 0x1000>;
236 };
237
238 apcs: syscon@f9011000 {
239 compatible = "syscon";
240 reg = <0xf9011000 0x1000>;
241 };
242
243 sram@fc190000 {
244 compatible = "qcom,apq8084-rpm-stats";
245 reg = <0xfc190000 0x10000>;
246 };
247
Tom Rini6b642ac2024-10-01 12:20:28 -0600248 qfprom: efuse@fc4bc000 {
Tom Rini53633a82024-02-29 12:33:36 -0500249 compatible = "qcom,apq8084-qfprom", "qcom,qfprom";
250 reg = <0xfc4bc000 0x1000>;
251 #address-cells = <1>;
252 #size-cells = <1>;
253
254 tsens_base1: base1@d0 {
255 reg = <0xd0 0x1>;
256 bits = <0 8>;
257 };
258
259 tsens_s0_p1: s0-p1@d1 {
260 reg = <0xd1 0x1>;
261 bits = <0 6>;
262 };
263
264 tsens_s1_p1: s1-p1@d2 {
265 reg = <0xd1 0x2>;
266 bits = <6 6>;
267 };
268
269 tsens_s2_p1: s2-p1@d2 {
270 reg = <0xd2 0x2>;
271 bits = <4 6>;
272 };
273
274 tsens_s3_p1: s3-p1@d3 {
275 reg = <0xd3 0x1>;
276 bits = <2 6>;
277 };
278
279 tsens_s4_p1: s4-p1@d4 {
280 reg = <0xd4 0x1>;
281 bits = <0 6>;
282 };
283
284 tsens_s5_p1: s5-p1@d4 {
285 reg = <0xd4 0x2>;
286 bits = <6 6>;
287 };
288
289 tsens_s6_p1: s6-p1@d5 {
290 reg = <0xd5 0x2>;
291 bits = <4 6>;
292 };
293
294 tsens_s7_p1: s7-p1@d6 {
295 reg = <0xd6 0x1>;
296 bits = <2 6>;
297 };
298
299 tsens_s8_p1: s8-p1@d7 {
300 reg = <0xd7 0x1>;
301 bits = <0 6>;
302 };
303
304 tsens_mode: mode@d7 {
305 reg = <0xd7 0x1>;
306 bits = <6 2>;
307 };
308
309 tsens_s9_p1: s9-p1@d8 {
310 reg = <0xd8 0x1>;
311 bits = <0 6>;
312 };
313
314 tsens_s10_p1: s10_p1@d8 {
315 reg = <0xd8 0x2>;
316 bits = <6 6>;
317 };
318
319 tsens_base2: base2@d9 {
320 reg = <0xd9 0x2>;
321 bits = <4 8>;
322 };
323
324 tsens_s0_p2: s0-p2@da {
325 reg = <0xda 0x2>;
326 bits = <4 6>;
327 };
328
329 tsens_s1_p2: s1-p2@db {
330 reg = <0xdb 0x1>;
331 bits = <2 6>;
332 };
333
334 tsens_s2_p2: s2-p2@dc {
335 reg = <0xdc 0x1>;
336 bits = <0 6>;
337 };
338
339 tsens_s3_p2: s3-p2@dc {
340 reg = <0xdc 0x2>;
341 bits = <6 6>;
342 };
343
344 tsens_s4_p2: s4-p2@dd {
345 reg = <0xdd 0x2>;
346 bits = <4 6>;
347 };
348
349 tsens_s5_p2: s5-p2@de {
350 reg = <0xde 0x2>;
351 bits = <2 6>;
352 };
353
354 tsens_s6_p2: s6-p2@df {
355 reg = <0xdf 0x1>;
356 bits = <0 6>;
357 };
358
359 tsens_s7_p2: s7-p2@e0 {
360 reg = <0xe0 0x1>;
361 bits = <0 6>;
362 };
363
364 tsens_s8_p2: s8-p2@e0 {
365 reg = <0xe0 0x2>;
366 bits = <6 6>;
367 };
368
369 tsens_s9_p2: s9-p2@e1 {
370 reg = <0xe1 0x2>;
371 bits = <4 6>;
372 };
373
374 tsens_s10_p2: s10_p2@e2 {
375 reg = <0xe2 0x2>;
376 bits = <2 6>;
377 };
378
379 tsens_s5_p2_backup: s5-p2_backup@e3 {
380 reg = <0xe3 0x2>;
381 bits = <0 6>;
382 };
383
384 tsens_mode_backup: mode_backup@e3 {
385 reg = <0xe3 0x1>;
386 bits = <6 2>;
387 };
388
389 tsens_s6_p2_backup: s6-p2_backup@e4 {
390 reg = <0xe4 0x1>;
391 bits = <0 6>;
392 };
393
394 tsens_s7_p2_backup: s7-p2_backup@e4 {
395 reg = <0xe4 0x2>;
396 bits = <6 6>;
397 };
398
399 tsens_s8_p2_backup: s8-p2_backup@e5 {
400 reg = <0xe5 0x2>;
401 bits = <4 6>;
402 };
403
404 tsens_s9_p2_backup: s9-p2_backup@e6 {
405 reg = <0xe6 0x2>;
406 bits = <2 6>;
407 };
408
409 tsens_s10_p2_backup: s10_p2_backup@e7 {
410 reg = <0xe7 0x1>;
411 bits = <0 6>;
412 };
413
414 tsens_base1_backup: base1_backup@440 {
415 reg = <0x440 0x1>;
416 bits = <0 8>;
417 };
418
419 tsens_s0_p1_backup: s0-p1_backup@441 {
420 reg = <0x441 0x1>;
421 bits = <0 6>;
422 };
423
424 tsens_s1_p1_backup: s1-p1_backup@442 {
425 reg = <0x441 0x2>;
426 bits = <6 6>;
427 };
428
429 tsens_s2_p1_backup: s2-p1_backup@442 {
430 reg = <0x442 0x2>;
431 bits = <4 6>;
432 };
433
434 tsens_s3_p1_backup: s3-p1_backup@443 {
435 reg = <0x443 0x1>;
436 bits = <2 6>;
437 };
438
439 tsens_s4_p1_backup: s4-p1_backup@444 {
440 reg = <0x444 0x1>;
441 bits = <0 6>;
442 };
443
444 tsens_s5_p1_backup: s5-p1_backup@444 {
445 reg = <0x444 0x2>;
446 bits = <6 6>;
447 };
448
449 tsens_s6_p1_backup: s6-p1_backup@445 {
450 reg = <0x445 0x2>;
451 bits = <4 6>;
452 };
453
454 tsens_s7_p1_backup: s7-p1_backup@446 {
455 reg = <0x446 0x1>;
456 bits = <2 6>;
457 };
458
459 tsens_use_backup: use_backup@447 {
460 reg = <0x447 0x1>;
461 bits = <5 3>;
462 };
463
464 tsens_s8_p1_backup: s8-p1_backup@448 {
465 reg = <0x448 0x1>;
466 bits = <0 6>;
467 };
468
469 tsens_s9_p1_backup: s9-p1_backup@448 {
470 reg = <0x448 0x2>;
471 bits = <6 6>;
472 };
473
474 tsens_s10_p1_backup: s10_p1_backup@449 {
475 reg = <0x449 0x2>;
476 bits = <4 6>;
477 };
478
479 tsens_base2_backup: base2_backup@44a {
480 reg = <0x44a 0x2>;
481 bits = <2 8>;
482 };
483
484 tsens_s0_p2_backup: s0-p2_backup@44b {
485 reg = <0x44b 0x3>;
486 bits = <2 6>;
487 };
488
489 tsens_s1_p2_backup: s1-p2_backup@44c {
490 reg = <0x44c 0x1>;
491 bits = <0 6>;
492 };
493
494 tsens_s2_p2_backup: s2-p2_backup@44c {
495 reg = <0x44c 0x2>;
496 bits = <6 6>;
497 };
498
499 tsens_s3_p2_backup: s3-p2_backup@44d {
500 reg = <0x44d 0x2>;
501 bits = <4 6>;
502 };
503
504 tsens_s4_p2_backup: s4-p2_backup@44e {
505 reg = <0x44e 0x1>;
506 bits = <2 6>;
507 };
508 };
509
510 tsens: thermal-sensor@fc4a9000 {
511 compatible = "qcom,msm8974-tsens", "qcom,tsens-v0_1";
512 reg = <0xfc4a9000 0x1000>, /* TM */
513 <0xfc4a8000 0x1000>; /* SROT */
514 nvmem-cells = <&tsens_mode>,
515 <&tsens_base1>, <&tsens_base2>,
516 <&tsens_use_backup>,
517 <&tsens_mode_backup>,
518 <&tsens_base1_backup>, <&tsens_base2_backup>,
519 <&tsens_s0_p1>, <&tsens_s0_p2>,
520 <&tsens_s1_p1>, <&tsens_s1_p2>,
521 <&tsens_s2_p1>, <&tsens_s2_p2>,
522 <&tsens_s3_p1>, <&tsens_s3_p2>,
523 <&tsens_s4_p1>, <&tsens_s4_p2>,
524 <&tsens_s5_p1>, <&tsens_s5_p2>,
525 <&tsens_s6_p1>, <&tsens_s6_p2>,
526 <&tsens_s7_p1>, <&tsens_s7_p2>,
527 <&tsens_s8_p1>, <&tsens_s8_p2>,
528 <&tsens_s9_p1>, <&tsens_s9_p2>,
529 <&tsens_s10_p1>, <&tsens_s10_p2>,
530 <&tsens_s0_p1_backup>, <&tsens_s0_p2_backup>,
531 <&tsens_s1_p1_backup>, <&tsens_s1_p2_backup>,
532 <&tsens_s2_p1_backup>, <&tsens_s2_p2_backup>,
533 <&tsens_s3_p1_backup>, <&tsens_s3_p2_backup>,
534 <&tsens_s4_p1_backup>, <&tsens_s4_p2_backup>,
535 <&tsens_s5_p1_backup>, <&tsens_s5_p2_backup>,
536 <&tsens_s6_p1_backup>, <&tsens_s6_p2_backup>,
537 <&tsens_s7_p1_backup>, <&tsens_s7_p2_backup>,
538 <&tsens_s8_p1_backup>, <&tsens_s8_p2_backup>,
539 <&tsens_s9_p1_backup>, <&tsens_s9_p2_backup>,
540 <&tsens_s10_p1_backup>, <&tsens_s10_p2_backup>;
541 nvmem-cell-names = "mode",
542 "base1", "base2",
543 "use_backup",
544 "mode_backup",
545 "base1_backup", "base2_backup",
546 "s0_p1", "s0_p2",
547 "s1_p1", "s1_p2",
548 "s2_p1", "s2_p2",
549 "s3_p1", "s3_p2",
550 "s4_p1", "s4_p2",
551 "s5_p1", "s5_p2",
552 "s6_p1", "s6_p2",
553 "s7_p1", "s7_p2",
554 "s8_p1", "s8_p2",
555 "s9_p1", "s9_p2",
556 "s10_p1", "s10_p2",
557 "s0_p1_backup", "s0_p2_backup",
558 "s1_p1_backup", "s1_p2_backup",
559 "s2_p1_backup", "s2_p2_backup",
560 "s3_p1_backup", "s3_p2_backup",
561 "s4_p1_backup", "s4_p2_backup",
562 "s5_p1_backup", "s5_p2_backup",
563 "s6_p1_backup", "s6_p2_backup",
564 "s7_p1_backup", "s7_p2_backup",
565 "s8_p1_backup", "s8_p2_backup",
566 "s9_p1_backup", "s9_p2_backup",
567 "s10_p1_backup", "s10_p2_backup";
568 #qcom,sensors = <11>;
569 interrupts = <GIC_SPI 184 IRQ_TYPE_LEVEL_HIGH>;
570 interrupt-names = "uplow";
571 #thermal-sensor-cells = <1>;
572 };
573 timer@f9020000 {
574 #address-cells = <1>;
575 #size-cells = <1>;
576 ranges;
577 compatible = "arm,armv7-timer-mem";
578 reg = <0xf9020000 0x1000>;
579 clock-frequency = <19200000>;
580
581 frame@f9021000 {
582 frame-number = <0>;
583 interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>,
584 <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>;
585 reg = <0xf9021000 0x1000>,
586 <0xf9022000 0x1000>;
587 };
588
589 frame@f9023000 {
590 frame-number = <1>;
591 interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>;
592 reg = <0xf9023000 0x1000>;
593 status = "disabled";
594 };
595
596 frame@f9024000 {
597 frame-number = <2>;
598 interrupts = <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>;
599 reg = <0xf9024000 0x1000>;
600 status = "disabled";
601 };
602
603 frame@f9025000 {
604 frame-number = <3>;
605 interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>;
606 reg = <0xf9025000 0x1000>;
607 status = "disabled";
608 };
609
610 frame@f9026000 {
611 frame-number = <4>;
612 interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>;
613 reg = <0xf9026000 0x1000>;
614 status = "disabled";
615 };
616
617 frame@f9027000 {
618 frame-number = <5>;
619 interrupts = <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>;
620 reg = <0xf9027000 0x1000>;
621 status = "disabled";
622 };
623
624 frame@f9028000 {
625 frame-number = <6>;
626 interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>;
627 reg = <0xf9028000 0x1000>;
628 status = "disabled";
629 };
630 };
631
Tom Rini6bb92fc2024-05-20 09:54:58 -0600632 saw0: power-manager@f9089000 {
Tom Rini53633a82024-02-29 12:33:36 -0500633 compatible = "qcom,apq8084-saw2-v2.1-cpu", "qcom,saw2";
634 reg = <0xf9089000 0x1000>, <0xf9009000 0x1000>;
635 };
636
Tom Rini6bb92fc2024-05-20 09:54:58 -0600637 saw1: power-manager@f9099000 {
Tom Rini53633a82024-02-29 12:33:36 -0500638 compatible = "qcom,apq8084-saw2-v2.1-cpu", "qcom,saw2";
639 reg = <0xf9099000 0x1000>, <0xf9009000 0x1000>;
640 };
641
Tom Rini6bb92fc2024-05-20 09:54:58 -0600642 saw2: power-manager@f90a9000 {
Tom Rini53633a82024-02-29 12:33:36 -0500643 compatible = "qcom,apq8084-saw2-v2.1-cpu", "qcom,saw2";
644 reg = <0xf90a9000 0x1000>, <0xf9009000 0x1000>;
645 };
646
Tom Rini6bb92fc2024-05-20 09:54:58 -0600647 saw3: power-manager@f90b9000 {
Tom Rini53633a82024-02-29 12:33:36 -0500648 compatible = "qcom,apq8084-saw2-v2.1-cpu", "qcom,saw2";
649 reg = <0xf90b9000 0x1000>, <0xf9009000 0x1000>;
650 };
651
Tom Rini6bb92fc2024-05-20 09:54:58 -0600652 saw_l2: power-manager@f9012000 {
653 compatible = "qcom,apq8084-saw2-v2.1-l2", "qcom,saw2";
Tom Rini53633a82024-02-29 12:33:36 -0500654 reg = <0xf9012000 0x1000>;
Tom Rini53633a82024-02-29 12:33:36 -0500655 };
656
657 acc0: power-manager@f9088000 {
658 compatible = "qcom,kpss-acc-v2";
659 reg = <0xf9088000 0x1000>,
660 <0xf9008000 0x1000>;
661 };
662
663 acc1: power-manager@f9098000 {
664 compatible = "qcom,kpss-acc-v2";
665 reg = <0xf9098000 0x1000>,
666 <0xf9008000 0x1000>;
667 };
668
669 acc2: power-manager@f90a8000 {
670 compatible = "qcom,kpss-acc-v2";
671 reg = <0xf90a8000 0x1000>,
672 <0xf9008000 0x1000>;
673 };
674
675 acc3: power-manager@f90b8000 {
676 compatible = "qcom,kpss-acc-v2";
677 reg = <0xf90b8000 0x1000>,
678 <0xf9008000 0x1000>;
679 };
680
681 restart@fc4ab000 {
682 compatible = "qcom,pshold";
683 reg = <0xfc4ab000 0x4>;
684 };
685
686 gcc: clock-controller@fc400000 {
687 compatible = "qcom,gcc-apq8084";
688 #clock-cells = <1>;
689 #reset-cells = <1>;
690 #power-domain-cells = <1>;
691 reg = <0xfc400000 0x4000>;
692 clocks = <&xo_board>,
693 <&sleep_clk>,
694 <0>, /* ufs */
695 <0>,
696 <0>,
697 <0>,
698 <0>, /* sata */
699 <0>,
700 <0>; /* pcie */
701 clock-names = "xo",
702 "sleep_clk",
703 "ufs_rx_symbol_0_clk_src",
704 "ufs_rx_symbol_1_clk_src",
705 "ufs_tx_symbol_0_clk_src",
706 "ufs_tx_symbol_1_clk_src",
707 "sata_asic0_clk",
708 "sata_rx_clk",
709 "pcie_pipe";
710 };
711
712 tcsr_mutex: hwlock@fd484000 {
713 compatible = "qcom,apq8084-tcsr-mutex", "qcom,tcsr-mutex";
714 reg = <0xfd484000 0x1000>;
715 #hwlock-cells = <1>;
716 };
717
718 rpm_msg_ram: sram@fc428000 {
719 compatible = "qcom,rpm-msg-ram";
720 reg = <0xfc428000 0x4000>;
721 };
722
723 tlmm: pinctrl@fd510000 {
724 compatible = "qcom,apq8084-pinctrl";
725 reg = <0xfd510000 0x4000>;
726 gpio-controller;
727 gpio-ranges = <&tlmm 0 0 147>;
728 #gpio-cells = <2>;
729 interrupt-controller;
730 #interrupt-cells = <2>;
731 interrupts = <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>;
732 };
733
734 blsp2_uart2: serial@f995e000 {
735 compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm";
736 reg = <0xf995e000 0x1000>;
737 interrupts = <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>;
738 clocks = <&gcc GCC_BLSP2_UART2_APPS_CLK>, <&gcc GCC_BLSP2_AHB_CLK>;
739 clock-names = "core", "iface";
740 status = "disabled";
741 };
742
743 sdhc_1: mmc@f9824900 {
744 compatible = "qcom,apq8084-sdhci", "qcom,sdhci-msm-v4";
745 reg = <0xf9824900 0x11c>, <0xf9824000 0x800>;
746 reg-names = "hc", "core";
747 interrupts = <GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 138 IRQ_TYPE_LEVEL_HIGH>;
748 interrupt-names = "hc_irq", "pwr_irq";
749 clocks = <&gcc GCC_SDCC1_AHB_CLK>,
750 <&gcc GCC_SDCC1_APPS_CLK>,
751 <&xo_board>;
752 clock-names = "iface", "core", "xo";
753 status = "disabled";
754 };
755
756 sdhc_2: mmc@f98a4900 {
757 compatible = "qcom,apq8084-sdhci", "qcom,sdhci-msm-v4";
758 reg = <0xf98a4900 0x11c>, <0xf98a4000 0x800>;
759 reg-names = "hc", "core";
760 interrupts = <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 221 IRQ_TYPE_LEVEL_HIGH>;
761 interrupt-names = "hc_irq", "pwr_irq";
762 clocks = <&gcc GCC_SDCC2_AHB_CLK>,
763 <&gcc GCC_SDCC2_APPS_CLK>,
764 <&xo_board>;
765 clock-names = "iface", "core", "xo";
766 status = "disabled";
767 };
768
769 spmi_bus: spmi@fc4cf000 {
770 compatible = "qcom,spmi-pmic-arb";
771 reg-names = "core", "intr", "cnfg";
772 reg = <0xfc4cf000 0x1000>,
773 <0xfc4cb000 0x1000>,
774 <0xfc4ca000 0x1000>;
775 interrupt-names = "periph_irq";
776 interrupts = <GIC_SPI 190 IRQ_TYPE_LEVEL_HIGH>;
777 qcom,ee = <0>;
778 qcom,channel = <0>;
779 #address-cells = <2>;
780 #size-cells = <0>;
781 interrupt-controller;
782 #interrupt-cells = <4>;
783 };
784 };
785
786 rpm: remoteproc {
787 compatible = "qcom,apq8084-rpm-proc", "qcom,rpm-proc";
788
789 smd-edge {
790 interrupts = <GIC_SPI 168 IRQ_TYPE_EDGE_RISING>;
791 qcom,ipc = <&apcs 8 0>;
792 qcom,smd-edge = <15>;
793
794 rpm-requests {
795 compatible = "qcom,rpm-apq8084";
796 qcom,smd-channels = "rpm_requests";
797
798 regulators-0 {
799 compatible = "qcom,rpm-pma8084-regulators";
800
801 pma8084_s1: s1 {};
802 pma8084_s2: s2 {};
803 pma8084_s3: s3 {};
804 pma8084_s4: s4 {};
805 pma8084_s5: s5 {};
806 pma8084_s6: s6 {};
807 pma8084_s7: s7 {};
808 pma8084_s8: s8 {};
809 pma8084_s9: s9 {};
810 pma8084_s10: s10 {};
811 pma8084_s11: s11 {};
812 pma8084_s12: s12 {};
813
814 pma8084_l1: l1 {};
815 pma8084_l2: l2 {};
816 pma8084_l3: l3 {};
817 pma8084_l4: l4 {};
818 pma8084_l5: l5 {};
819 pma8084_l6: l6 {};
820 pma8084_l7: l7 {};
821 pma8084_l8: l8 {};
822 pma8084_l9: l9 {};
823 pma8084_l10: l10 {};
824 pma8084_l11: l11 {};
825 pma8084_l12: l12 {};
826 pma8084_l13: l13 {};
827 pma8084_l14: l14 {};
828 pma8084_l15: l15 {};
829 pma8084_l16: l16 {};
830 pma8084_l17: l17 {};
831 pma8084_l18: l18 {};
832 pma8084_l19: l19 {};
833 pma8084_l20: l20 {};
834 pma8084_l21: l21 {};
835 pma8084_l22: l22 {};
836 pma8084_l23: l23 {};
837 pma8084_l24: l24 {};
838 pma8084_l25: l25 {};
839 pma8084_l26: l26 {};
840 pma8084_l27: l27 {};
841
842 pma8084_lvs1: lvs1 {};
843 pma8084_lvs2: lvs2 {};
844 pma8084_lvs3: lvs3 {};
845 pma8084_lvs4: lvs4 {};
846
847 pma8084_5vs1: 5vs1 {};
848 };
849 };
850 };
851 };
852};