]> git.ipfire.org Git - thirdparty/u-boot.git/blob - src/arm64/qcom/sm8550.dtsi
Squashed 'dts/upstream/' changes from aaba2d45dc2a..b35b9bd1d4ee
[thirdparty/u-boot.git] / src / arm64 / qcom / sm8550.dtsi
1 // SPDX-License-Identifier: BSD-3-Clause
2 /*
3 * Copyright (c) 2022, Linaro Limited
4 */
5
6 #include <dt-bindings/clock/qcom,rpmh.h>
7 #include <dt-bindings/clock/qcom,sm8450-videocc.h>
8 #include <dt-bindings/clock/qcom,sm8550-camcc.h>
9 #include <dt-bindings/clock/qcom,sm8550-gcc.h>
10 #include <dt-bindings/clock/qcom,sm8550-gpucc.h>
11 #include <dt-bindings/clock/qcom,sm8550-tcsr.h>
12 #include <dt-bindings/clock/qcom,sm8550-dispcc.h>
13 #include <dt-bindings/dma/qcom-gpi.h>
14 #include <dt-bindings/firmware/qcom,scm.h>
15 #include <dt-bindings/gpio/gpio.h>
16 #include <dt-bindings/interrupt-controller/arm-gic.h>
17 #include <dt-bindings/interconnect/qcom,sm8550-rpmh.h>
18 #include <dt-bindings/mailbox/qcom-ipcc.h>
19 #include <dt-bindings/power/qcom-rpmpd.h>
20 #include <dt-bindings/power/qcom,rpmhpd.h>
21 #include <dt-bindings/soc/qcom,gpr.h>
22 #include <dt-bindings/soc/qcom,rpmh-rsc.h>
23 #include <dt-bindings/sound/qcom,q6dsp-lpass-ports.h>
24 #include <dt-bindings/phy/phy-qcom-qmp.h>
25 #include <dt-bindings/thermal/thermal.h>
26
27 / {
28 interrupt-parent = <&intc>;
29
30 #address-cells = <2>;
31 #size-cells = <2>;
32
33 chosen { };
34
35 clocks {
36 xo_board: xo-board {
37 compatible = "fixed-clock";
38 #clock-cells = <0>;
39 };
40
41 sleep_clk: sleep-clk {
42 compatible = "fixed-clock";
43 #clock-cells = <0>;
44 };
45
46 bi_tcxo_div2: bi-tcxo-div2-clk {
47 #clock-cells = <0>;
48 compatible = "fixed-factor-clock";
49 clocks = <&rpmhcc RPMH_CXO_CLK>;
50 clock-mult = <1>;
51 clock-div = <2>;
52 };
53
54 bi_tcxo_ao_div2: bi-tcxo-ao-div2-clk {
55 #clock-cells = <0>;
56 compatible = "fixed-factor-clock";
57 clocks = <&rpmhcc RPMH_CXO_CLK_A>;
58 clock-mult = <1>;
59 clock-div = <2>;
60 };
61
62 pcie_1_phy_aux_clk: pcie-1-phy-aux-clk {
63 compatible = "fixed-clock";
64 #clock-cells = <0>;
65 };
66 };
67
68 cpus {
69 #address-cells = <2>;
70 #size-cells = <0>;
71
72 CPU0: cpu@0 {
73 device_type = "cpu";
74 compatible = "arm,cortex-a510";
75 reg = <0 0>;
76 clocks = <&cpufreq_hw 0>;
77 enable-method = "psci";
78 next-level-cache = <&L2_0>;
79 power-domains = <&CPU_PD0>;
80 power-domain-names = "psci";
81 qcom,freq-domain = <&cpufreq_hw 0>;
82 capacity-dmips-mhz = <1024>;
83 dynamic-power-coefficient = <100>;
84 #cooling-cells = <2>;
85 L2_0: l2-cache {
86 compatible = "cache";
87 cache-level = <2>;
88 cache-unified;
89 next-level-cache = <&L3_0>;
90 L3_0: l3-cache {
91 compatible = "cache";
92 cache-level = <3>;
93 cache-unified;
94 };
95 };
96 };
97
98 CPU1: cpu@100 {
99 device_type = "cpu";
100 compatible = "arm,cortex-a510";
101 reg = <0 0x100>;
102 clocks = <&cpufreq_hw 0>;
103 enable-method = "psci";
104 next-level-cache = <&L2_100>;
105 power-domains = <&CPU_PD1>;
106 power-domain-names = "psci";
107 qcom,freq-domain = <&cpufreq_hw 0>;
108 capacity-dmips-mhz = <1024>;
109 dynamic-power-coefficient = <100>;
110 #cooling-cells = <2>;
111 L2_100: l2-cache {
112 compatible = "cache";
113 cache-level = <2>;
114 cache-unified;
115 next-level-cache = <&L3_0>;
116 };
117 };
118
119 CPU2: cpu@200 {
120 device_type = "cpu";
121 compatible = "arm,cortex-a510";
122 reg = <0 0x200>;
123 clocks = <&cpufreq_hw 0>;
124 enable-method = "psci";
125 next-level-cache = <&L2_200>;
126 power-domains = <&CPU_PD2>;
127 power-domain-names = "psci";
128 qcom,freq-domain = <&cpufreq_hw 0>;
129 capacity-dmips-mhz = <1024>;
130 dynamic-power-coefficient = <100>;
131 #cooling-cells = <2>;
132 L2_200: l2-cache {
133 compatible = "cache";
134 cache-level = <2>;
135 cache-unified;
136 next-level-cache = <&L3_0>;
137 };
138 };
139
140 CPU3: cpu@300 {
141 device_type = "cpu";
142 compatible = "arm,cortex-a715";
143 reg = <0 0x300>;
144 clocks = <&cpufreq_hw 1>;
145 enable-method = "psci";
146 next-level-cache = <&L2_300>;
147 power-domains = <&CPU_PD3>;
148 power-domain-names = "psci";
149 qcom,freq-domain = <&cpufreq_hw 1>;
150 capacity-dmips-mhz = <1792>;
151 dynamic-power-coefficient = <270>;
152 #cooling-cells = <2>;
153 L2_300: l2-cache {
154 compatible = "cache";
155 cache-level = <2>;
156 cache-unified;
157 next-level-cache = <&L3_0>;
158 };
159 };
160
161 CPU4: cpu@400 {
162 device_type = "cpu";
163 compatible = "arm,cortex-a715";
164 reg = <0 0x400>;
165 clocks = <&cpufreq_hw 1>;
166 enable-method = "psci";
167 next-level-cache = <&L2_400>;
168 power-domains = <&CPU_PD4>;
169 power-domain-names = "psci";
170 qcom,freq-domain = <&cpufreq_hw 1>;
171 capacity-dmips-mhz = <1792>;
172 dynamic-power-coefficient = <270>;
173 #cooling-cells = <2>;
174 L2_400: l2-cache {
175 compatible = "cache";
176 cache-level = <2>;
177 cache-unified;
178 next-level-cache = <&L3_0>;
179 };
180 };
181
182 CPU5: cpu@500 {
183 device_type = "cpu";
184 compatible = "arm,cortex-a710";
185 reg = <0 0x500>;
186 clocks = <&cpufreq_hw 1>;
187 enable-method = "psci";
188 next-level-cache = <&L2_500>;
189 power-domains = <&CPU_PD5>;
190 power-domain-names = "psci";
191 qcom,freq-domain = <&cpufreq_hw 1>;
192 capacity-dmips-mhz = <1792>;
193 dynamic-power-coefficient = <270>;
194 #cooling-cells = <2>;
195 L2_500: l2-cache {
196 compatible = "cache";
197 cache-level = <2>;
198 cache-unified;
199 next-level-cache = <&L3_0>;
200 };
201 };
202
203 CPU6: cpu@600 {
204 device_type = "cpu";
205 compatible = "arm,cortex-a710";
206 reg = <0 0x600>;
207 clocks = <&cpufreq_hw 1>;
208 enable-method = "psci";
209 next-level-cache = <&L2_600>;
210 power-domains = <&CPU_PD6>;
211 power-domain-names = "psci";
212 qcom,freq-domain = <&cpufreq_hw 1>;
213 capacity-dmips-mhz = <1792>;
214 dynamic-power-coefficient = <270>;
215 #cooling-cells = <2>;
216 L2_600: l2-cache {
217 compatible = "cache";
218 cache-level = <2>;
219 cache-unified;
220 next-level-cache = <&L3_0>;
221 };
222 };
223
224 CPU7: cpu@700 {
225 device_type = "cpu";
226 compatible = "arm,cortex-x3";
227 reg = <0 0x700>;
228 clocks = <&cpufreq_hw 2>;
229 enable-method = "psci";
230 next-level-cache = <&L2_700>;
231 power-domains = <&CPU_PD7>;
232 power-domain-names = "psci";
233 qcom,freq-domain = <&cpufreq_hw 2>;
234 capacity-dmips-mhz = <1894>;
235 dynamic-power-coefficient = <588>;
236 #cooling-cells = <2>;
237 L2_700: l2-cache {
238 compatible = "cache";
239 cache-level = <2>;
240 cache-unified;
241 next-level-cache = <&L3_0>;
242 };
243 };
244
245 cpu-map {
246 cluster0 {
247 core0 {
248 cpu = <&CPU0>;
249 };
250
251 core1 {
252 cpu = <&CPU1>;
253 };
254
255 core2 {
256 cpu = <&CPU2>;
257 };
258
259 core3 {
260 cpu = <&CPU3>;
261 };
262
263 core4 {
264 cpu = <&CPU4>;
265 };
266
267 core5 {
268 cpu = <&CPU5>;
269 };
270
271 core6 {
272 cpu = <&CPU6>;
273 };
274
275 core7 {
276 cpu = <&CPU7>;
277 };
278 };
279 };
280
281 idle-states {
282 entry-method = "psci";
283
284 LITTLE_CPU_SLEEP_0: cpu-sleep-0-0 {
285 compatible = "arm,idle-state";
286 idle-state-name = "silver-rail-power-collapse";
287 arm,psci-suspend-param = <0x40000004>;
288 entry-latency-us = <550>;
289 exit-latency-us = <750>;
290 min-residency-us = <6700>;
291 local-timer-stop;
292 };
293
294 BIG_CPU_SLEEP_0: cpu-sleep-1-0 {
295 compatible = "arm,idle-state";
296 idle-state-name = "gold-rail-power-collapse";
297 arm,psci-suspend-param = <0x40000004>;
298 entry-latency-us = <600>;
299 exit-latency-us = <1300>;
300 min-residency-us = <8136>;
301 local-timer-stop;
302 };
303
304 PRIME_CPU_SLEEP_0: cpu-sleep-2-0 {
305 compatible = "arm,idle-state";
306 idle-state-name = "goldplus-rail-power-collapse";
307 arm,psci-suspend-param = <0x40000004>;
308 entry-latency-us = <500>;
309 exit-latency-us = <1350>;
310 min-residency-us = <7480>;
311 local-timer-stop;
312 };
313 };
314
315 domain-idle-states {
316 CLUSTER_SLEEP_0: cluster-sleep-0 {
317 compatible = "domain-idle-state";
318 arm,psci-suspend-param = <0x41000044>;
319 entry-latency-us = <750>;
320 exit-latency-us = <2350>;
321 min-residency-us = <9144>;
322 };
323
324 CLUSTER_SLEEP_1: cluster-sleep-1 {
325 compatible = "domain-idle-state";
326 arm,psci-suspend-param = <0x4100c344>;
327 entry-latency-us = <2800>;
328 exit-latency-us = <4400>;
329 min-residency-us = <10150>;
330 };
331 };
332 };
333
334 firmware {
335 scm: scm {
336 compatible = "qcom,scm-sm8550", "qcom,scm";
337 qcom,dload-mode = <&tcsr 0x19000>;
338 interconnects = <&aggre2_noc MASTER_CRYPTO 0 &mc_virt SLAVE_EBI1 0>;
339 };
340 };
341
342 clk_virt: interconnect-0 {
343 compatible = "qcom,sm8550-clk-virt";
344 #interconnect-cells = <2>;
345 qcom,bcm-voters = <&apps_bcm_voter>;
346 };
347
348 mc_virt: interconnect-1 {
349 compatible = "qcom,sm8550-mc-virt";
350 #interconnect-cells = <2>;
351 qcom,bcm-voters = <&apps_bcm_voter>;
352 };
353
354 memory@a0000000 {
355 device_type = "memory";
356 /* We expect the bootloader to fill in the size */
357 reg = <0 0xa0000000 0 0>;
358 };
359
360 pmu {
361 compatible = "arm,armv8-pmuv3";
362 interrupts = <GIC_PPI 7 IRQ_TYPE_LEVEL_LOW>;
363 };
364
365 psci {
366 compatible = "arm,psci-1.0";
367 method = "smc";
368
369 CPU_PD0: power-domain-cpu0 {
370 #power-domain-cells = <0>;
371 power-domains = <&CLUSTER_PD>;
372 domain-idle-states = <&LITTLE_CPU_SLEEP_0>;
373 };
374
375 CPU_PD1: power-domain-cpu1 {
376 #power-domain-cells = <0>;
377 power-domains = <&CLUSTER_PD>;
378 domain-idle-states = <&LITTLE_CPU_SLEEP_0>;
379 };
380
381 CPU_PD2: power-domain-cpu2 {
382 #power-domain-cells = <0>;
383 power-domains = <&CLUSTER_PD>;
384 domain-idle-states = <&LITTLE_CPU_SLEEP_0>;
385 };
386
387 CPU_PD3: power-domain-cpu3 {
388 #power-domain-cells = <0>;
389 power-domains = <&CLUSTER_PD>;
390 domain-idle-states = <&BIG_CPU_SLEEP_0>;
391 };
392
393 CPU_PD4: power-domain-cpu4 {
394 #power-domain-cells = <0>;
395 power-domains = <&CLUSTER_PD>;
396 domain-idle-states = <&BIG_CPU_SLEEP_0>;
397 };
398
399 CPU_PD5: power-domain-cpu5 {
400 #power-domain-cells = <0>;
401 power-domains = <&CLUSTER_PD>;
402 domain-idle-states = <&BIG_CPU_SLEEP_0>;
403 };
404
405 CPU_PD6: power-domain-cpu6 {
406 #power-domain-cells = <0>;
407 power-domains = <&CLUSTER_PD>;
408 domain-idle-states = <&BIG_CPU_SLEEP_0>;
409 };
410
411 CPU_PD7: power-domain-cpu7 {
412 #power-domain-cells = <0>;
413 power-domains = <&CLUSTER_PD>;
414 domain-idle-states = <&PRIME_CPU_SLEEP_0>;
415 };
416
417 CLUSTER_PD: power-domain-cluster {
418 #power-domain-cells = <0>;
419 domain-idle-states = <&CLUSTER_SLEEP_0>, <&CLUSTER_SLEEP_1>;
420 };
421 };
422
423 reserved_memory: reserved-memory {
424 #address-cells = <2>;
425 #size-cells = <2>;
426 ranges;
427
428 hyp_mem: hyp-region@80000000 {
429 reg = <0 0x80000000 0 0xa00000>;
430 no-map;
431 };
432
433 cpusys_vm_mem: cpusys-vm-region@80a00000 {
434 reg = <0 0x80a00000 0 0x400000>;
435 no-map;
436 };
437
438 hyp_tags_mem: hyp-tags-region@80e00000 {
439 reg = <0 0x80e00000 0 0x3d0000>;
440 no-map;
441 };
442
443 xbl_sc_mem: xbl-sc-region@d8100000 {
444 reg = <0 0xd8100000 0 0x40000>;
445 no-map;
446 };
447
448 hyp_tags_reserved_mem: hyp-tags-reserved-region@811d0000 {
449 reg = <0 0x811d0000 0 0x30000>;
450 no-map;
451 };
452
453 /* merged xbl_dt_log, xbl_ramdump, aop_image */
454 xbl_dt_log_merged_mem: xbl-dt-log-merged-region@81a00000 {
455 reg = <0 0x81a00000 0 0x260000>;
456 no-map;
457 };
458
459 aop_cmd_db_mem: aop-cmd-db-region@81c60000 {
460 compatible = "qcom,cmd-db";
461 reg = <0 0x81c60000 0 0x20000>;
462 no-map;
463 };
464
465 /* merged aop_config, tme_crash_dump, tme_log, uefi_log */
466 aop_config_merged_mem: aop-config-merged-region@81c80000 {
467 reg = <0 0x81c80000 0 0x74000>;
468 no-map;
469 };
470
471 /* secdata region can be reused by apps */
472 smem: smem@81d00000 {
473 compatible = "qcom,smem";
474 reg = <0 0x81d00000 0 0x200000>;
475 hwlocks = <&tcsr_mutex 3>;
476 no-map;
477 };
478
479 adsp_mhi_mem: adsp-mhi-region@81f00000 {
480 reg = <0 0x81f00000 0 0x20000>;
481 no-map;
482 };
483
484 global_sync_mem: global-sync-region@82600000 {
485 reg = <0 0x82600000 0 0x100000>;
486 no-map;
487 };
488
489 tz_stat_mem: tz-stat-region@82700000 {
490 reg = <0 0x82700000 0 0x100000>;
491 no-map;
492 };
493
494 cdsp_secure_heap_mem: cdsp-secure-heap-region@82800000 {
495 reg = <0 0x82800000 0 0x4600000>;
496 no-map;
497 };
498
499 mpss_mem: mpss-region@8a800000 {
500 reg = <0 0x8a800000 0 0x10800000>;
501 no-map;
502 };
503
504 q6_mpss_dtb_mem: q6-mpss-dtb-region@9b000000 {
505 reg = <0 0x9b000000 0 0x80000>;
506 no-map;
507 };
508
509 ipa_fw_mem: ipa-fw-region@9b080000 {
510 reg = <0 0x9b080000 0 0x10000>;
511 no-map;
512 };
513
514 ipa_gsi_mem: ipa-gsi-region@9b090000 {
515 reg = <0 0x9b090000 0 0xa000>;
516 no-map;
517 };
518
519 gpu_micro_code_mem: gpu-micro-code-region@9b09a000 {
520 reg = <0 0x9b09a000 0 0x2000>;
521 no-map;
522 };
523
524 spss_region_mem: spss-region@9b100000 {
525 reg = <0 0x9b100000 0 0x180000>;
526 no-map;
527 };
528
529 /* First part of the "SPU secure shared memory" region */
530 spu_tz_shared_mem: spu-tz-shared-region@9b280000 {
531 reg = <0 0x9b280000 0 0x60000>;
532 no-map;
533 };
534
535 /* Second part of the "SPU secure shared memory" region */
536 spu_modem_shared_mem: spu-modem-shared-region@9b2e0000 {
537 reg = <0 0x9b2e0000 0 0x20000>;
538 no-map;
539 };
540
541 camera_mem: camera-region@9b300000 {
542 reg = <0 0x9b300000 0 0x800000>;
543 no-map;
544 };
545
546 video_mem: video-region@9bb00000 {
547 reg = <0 0x9bb00000 0 0x700000>;
548 no-map;
549 };
550
551 cvp_mem: cvp-region@9c200000 {
552 reg = <0 0x9c200000 0 0x700000>;
553 no-map;
554 };
555
556 cdsp_mem: cdsp-region@9c900000 {
557 reg = <0 0x9c900000 0 0x2000000>;
558 no-map;
559 };
560
561 q6_cdsp_dtb_mem: q6-cdsp-dtb-region@9e900000 {
562 reg = <0 0x9e900000 0 0x80000>;
563 no-map;
564 };
565
566 q6_adsp_dtb_mem: q6-adsp-dtb-region@9e980000 {
567 reg = <0 0x9e980000 0 0x80000>;
568 no-map;
569 };
570
571 adspslpi_mem: adspslpi-region@9ea00000 {
572 reg = <0 0x9ea00000 0 0x4080000>;
573 no-map;
574 };
575
576 /* uefi region can be reused by apps */
577
578 /* Linux kernel image is loaded at 0xa8000000 */
579
580 rmtfs_mem: rmtfs-region@d4a80000 {
581 compatible = "qcom,rmtfs-mem";
582 reg = <0x0 0xd4a80000 0x0 0x280000>;
583 no-map;
584
585 qcom,client-id = <1>;
586 qcom,vmid = <QCOM_SCM_VMID_MSS_MSA>;
587 };
588
589 mpss_dsm_mem: mpss-dsm-region@d4d00000 {
590 reg = <0 0xd4d00000 0 0x3300000>;
591 no-map;
592 };
593
594 tz_reserved_mem: tz-reserved-region@d8000000 {
595 reg = <0 0xd8000000 0 0x100000>;
596 no-map;
597 };
598
599 cpucp_fw_mem: cpucp-fw-region@d8140000 {
600 reg = <0 0xd8140000 0 0x1c0000>;
601 no-map;
602 };
603
604 qtee_mem: qtee-region@d8300000 {
605 reg = <0 0xd8300000 0 0x500000>;
606 no-map;
607 };
608
609 ta_mem: ta-region@d8800000 {
610 reg = <0 0xd8800000 0 0x8a00000>;
611 no-map;
612 };
613
614 tz_tags_mem: tz-tags-region@e1200000 {
615 reg = <0 0xe1200000 0 0x2740000>;
616 no-map;
617 };
618
619 hwfence_shbuf: hwfence-shbuf-region@e6440000 {
620 reg = <0 0xe6440000 0 0x279000>;
621 no-map;
622 };
623
624 trust_ui_vm_mem: trust-ui-vm-region@f3600000 {
625 reg = <0 0xf3600000 0 0x4aee000>;
626 no-map;
627 };
628
629 trust_ui_vm_dump: trust-ui-vm-dump-region@f80ee000 {
630 reg = <0 0xf80ee000 0 0x1000>;
631 no-map;
632 };
633
634 trust_ui_vm_qrtr: trust-ui-vm-qrt-region@f80ef000 {
635 reg = <0 0xf80ef000 0 0x9000>;
636 no-map;
637 };
638
639 trust_ui_vm_vblk0_ring: trust-ui-vm-vblk0-ring-region@f80f8000 {
640 reg = <0 0xf80f8000 0 0x4000>;
641 no-map;
642 };
643
644 trust_ui_vm_vblk1_ring: trust-ui-vm-vblk1-ring-region@f80fc000 {
645 reg = <0 0xf80fc000 0 0x4000>;
646 no-map;
647 };
648
649 trust_ui_vm_swiotlb: trust-ui-vm-swiotlb-region@f8100000 {
650 reg = <0 0xf8100000 0 0x100000>;
651 no-map;
652 };
653
654 oem_vm_mem: oem-vm-region@f8400000 {
655 reg = <0 0xf8400000 0 0x4800000>;
656 no-map;
657 };
658
659 oem_vm_vblk0_ring: oem-vm-vblk0-ring-region@fcc00000 {
660 reg = <0 0xfcc00000 0 0x4000>;
661 no-map;
662 };
663
664 oem_vm_swiotlb: oem-vm-swiotlb-region@fcc04000 {
665 reg = <0 0xfcc04000 0 0x100000>;
666 no-map;
667 };
668
669 hyp_ext_tags_mem: hyp-ext-tags-region@fce00000 {
670 reg = <0 0xfce00000 0 0x2900000>;
671 no-map;
672 };
673
674 hyp_ext_reserved_mem: hyp-ext-reserved-region@ff700000 {
675 reg = <0 0xff700000 0 0x100000>;
676 no-map;
677 };
678 };
679
680 smp2p-adsp {
681 compatible = "qcom,smp2p";
682 qcom,smem = <443>, <429>;
683 interrupts-extended = <&ipcc IPCC_CLIENT_LPASS
684 IPCC_MPROC_SIGNAL_SMP2P
685 IRQ_TYPE_EDGE_RISING>;
686 mboxes = <&ipcc IPCC_CLIENT_LPASS
687 IPCC_MPROC_SIGNAL_SMP2P>;
688
689 qcom,local-pid = <0>;
690 qcom,remote-pid = <2>;
691
692 smp2p_adsp_out: master-kernel {
693 qcom,entry-name = "master-kernel";
694 #qcom,smem-state-cells = <1>;
695 };
696
697 smp2p_adsp_in: slave-kernel {
698 qcom,entry-name = "slave-kernel";
699 interrupt-controller;
700 #interrupt-cells = <2>;
701 };
702 };
703
704 smp2p-cdsp {
705 compatible = "qcom,smp2p";
706 qcom,smem = <94>, <432>;
707 interrupts-extended = <&ipcc IPCC_CLIENT_CDSP
708 IPCC_MPROC_SIGNAL_SMP2P
709 IRQ_TYPE_EDGE_RISING>;
710 mboxes = <&ipcc IPCC_CLIENT_CDSP
711 IPCC_MPROC_SIGNAL_SMP2P>;
712
713 qcom,local-pid = <0>;
714 qcom,remote-pid = <5>;
715
716 smp2p_cdsp_out: master-kernel {
717 qcom,entry-name = "master-kernel";
718 #qcom,smem-state-cells = <1>;
719 };
720
721 smp2p_cdsp_in: slave-kernel {
722 qcom,entry-name = "slave-kernel";
723 interrupt-controller;
724 #interrupt-cells = <2>;
725 };
726 };
727
728 smp2p-modem {
729 compatible = "qcom,smp2p";
730 qcom,smem = <435>, <428>;
731 interrupts-extended = <&ipcc IPCC_CLIENT_MPSS
732 IPCC_MPROC_SIGNAL_SMP2P
733 IRQ_TYPE_EDGE_RISING>;
734 mboxes = <&ipcc IPCC_CLIENT_MPSS
735 IPCC_MPROC_SIGNAL_SMP2P>;
736
737 qcom,local-pid = <0>;
738 qcom,remote-pid = <1>;
739
740 smp2p_modem_out: master-kernel {
741 qcom,entry-name = "master-kernel";
742 #qcom,smem-state-cells = <1>;
743 };
744
745 smp2p_modem_in: slave-kernel {
746 qcom,entry-name = "slave-kernel";
747 interrupt-controller;
748 #interrupt-cells = <2>;
749 };
750
751 ipa_smp2p_out: ipa-ap-to-modem {
752 qcom,entry-name = "ipa";
753 #qcom,smem-state-cells = <1>;
754 };
755
756 ipa_smp2p_in: ipa-modem-to-ap {
757 qcom,entry-name = "ipa";
758 interrupt-controller;
759 #interrupt-cells = <2>;
760 };
761 };
762
763 soc: soc@0 {
764 compatible = "simple-bus";
765 ranges = <0 0 0 0 0x10 0>;
766 dma-ranges = <0 0 0 0 0x10 0>;
767
768 #address-cells = <2>;
769 #size-cells = <2>;
770
771 gcc: clock-controller@100000 {
772 compatible = "qcom,sm8550-gcc";
773 reg = <0 0x00100000 0 0x1f4200>;
774 #clock-cells = <1>;
775 #reset-cells = <1>;
776 #power-domain-cells = <1>;
777 clocks = <&bi_tcxo_div2>, <&sleep_clk>,
778 <&pcie0_phy>,
779 <&pcie1_phy>,
780 <&pcie_1_phy_aux_clk>,
781 <&ufs_mem_phy 0>,
782 <&ufs_mem_phy 1>,
783 <&ufs_mem_phy 2>,
784 <&usb_dp_qmpphy QMP_USB43DP_USB3_PIPE_CLK>;
785 };
786
787 ipcc: mailbox@408000 {
788 compatible = "qcom,sm8550-ipcc", "qcom,ipcc";
789 reg = <0 0x00408000 0 0x1000>;
790 interrupts = <GIC_SPI 229 IRQ_TYPE_LEVEL_HIGH>;
791 interrupt-controller;
792 #interrupt-cells = <3>;
793 #mbox-cells = <2>;
794 };
795
796 gpi_dma2: dma-controller@800000 {
797 compatible = "qcom,sm8550-gpi-dma", "qcom,sm6350-gpi-dma";
798 #dma-cells = <3>;
799 reg = <0 0x00800000 0 0x60000>;
800 interrupts = <GIC_SPI 588 IRQ_TYPE_LEVEL_HIGH>,
801 <GIC_SPI 589 IRQ_TYPE_LEVEL_HIGH>,
802 <GIC_SPI 590 IRQ_TYPE_LEVEL_HIGH>,
803 <GIC_SPI 591 IRQ_TYPE_LEVEL_HIGH>,
804 <GIC_SPI 592 IRQ_TYPE_LEVEL_HIGH>,
805 <GIC_SPI 593 IRQ_TYPE_LEVEL_HIGH>,
806 <GIC_SPI 594 IRQ_TYPE_LEVEL_HIGH>,
807 <GIC_SPI 595 IRQ_TYPE_LEVEL_HIGH>,
808 <GIC_SPI 596 IRQ_TYPE_LEVEL_HIGH>,
809 <GIC_SPI 597 IRQ_TYPE_LEVEL_HIGH>,
810 <GIC_SPI 598 IRQ_TYPE_LEVEL_HIGH>,
811 <GIC_SPI 599 IRQ_TYPE_LEVEL_HIGH>;
812 dma-channels = <12>;
813 dma-channel-mask = <0x3e>;
814 iommus = <&apps_smmu 0x436 0>;
815 status = "disabled";
816 };
817
818 qupv3_id_1: geniqup@8c0000 {
819 compatible = "qcom,geni-se-qup";
820 reg = <0 0x008c0000 0 0x2000>;
821 ranges;
822 clock-names = "m-ahb", "s-ahb";
823 clocks = <&gcc GCC_QUPV3_WRAP_2_M_AHB_CLK>,
824 <&gcc GCC_QUPV3_WRAP_2_S_AHB_CLK>;
825 iommus = <&apps_smmu 0x423 0>;
826 #address-cells = <2>;
827 #size-cells = <2>;
828 status = "disabled";
829
830 i2c8: i2c@880000 {
831 compatible = "qcom,geni-i2c";
832 reg = <0 0x00880000 0 0x4000>;
833 clock-names = "se";
834 clocks = <&gcc GCC_QUPV3_WRAP2_S0_CLK>;
835 pinctrl-names = "default";
836 pinctrl-0 = <&qup_i2c8_data_clk>;
837 interrupts = <GIC_SPI 373 IRQ_TYPE_LEVEL_HIGH>;
838 #address-cells = <1>;
839 #size-cells = <0>;
840 interconnects = <&clk_virt MASTER_QUP_CORE_2 0 &clk_virt SLAVE_QUP_CORE_2 0>,
841 <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_2 0>,
842 <&aggre2_noc MASTER_QUP_2 0 &mc_virt SLAVE_EBI1 0>;
843 interconnect-names = "qup-core", "qup-config", "qup-memory";
844 dmas = <&gpi_dma2 0 0 QCOM_GPI_I2C>,
845 <&gpi_dma2 1 0 QCOM_GPI_I2C>;
846 dma-names = "tx", "rx";
847 status = "disabled";
848 };
849
850 spi8: spi@880000 {
851 compatible = "qcom,geni-spi";
852 reg = <0 0x00880000 0 0x4000>;
853 clock-names = "se";
854 clocks = <&gcc GCC_QUPV3_WRAP2_S0_CLK>;
855 interrupts = <GIC_SPI 373 IRQ_TYPE_LEVEL_HIGH>;
856 pinctrl-names = "default";
857 pinctrl-0 = <&qup_spi8_data_clk>, <&qup_spi8_cs>;
858 interconnects = <&clk_virt MASTER_QUP_CORE_2 0 &clk_virt SLAVE_QUP_CORE_2 0>,
859 <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_2 0>,
860 <&aggre2_noc MASTER_QUP_2 0 &mc_virt SLAVE_EBI1 0>;
861 interconnect-names = "qup-core", "qup-config", "qup-memory";
862 dmas = <&gpi_dma2 0 0 QCOM_GPI_SPI>,
863 <&gpi_dma2 1 0 QCOM_GPI_SPI>;
864 dma-names = "tx", "rx";
865 #address-cells = <1>;
866 #size-cells = <0>;
867 status = "disabled";
868 };
869
870 i2c9: i2c@884000 {
871 compatible = "qcom,geni-i2c";
872 reg = <0 0x00884000 0 0x4000>;
873 clock-names = "se";
874 clocks = <&gcc GCC_QUPV3_WRAP2_S1_CLK>;
875 pinctrl-names = "default";
876 pinctrl-0 = <&qup_i2c9_data_clk>;
877 interrupts = <GIC_SPI 583 IRQ_TYPE_LEVEL_HIGH>;
878 #address-cells = <1>;
879 #size-cells = <0>;
880 interconnects = <&clk_virt MASTER_QUP_CORE_2 0 &clk_virt SLAVE_QUP_CORE_2 0>,
881 <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_2 0>,
882 <&aggre2_noc MASTER_QUP_2 0 &mc_virt SLAVE_EBI1 0>;
883 interconnect-names = "qup-core", "qup-config", "qup-memory";
884 dmas = <&gpi_dma2 0 1 QCOM_GPI_I2C>,
885 <&gpi_dma2 1 1 QCOM_GPI_I2C>;
886 dma-names = "tx", "rx";
887 status = "disabled";
888 };
889
890 spi9: spi@884000 {
891 compatible = "qcom,geni-spi";
892 reg = <0 0x00884000 0 0x4000>;
893 clock-names = "se";
894 clocks = <&gcc GCC_QUPV3_WRAP2_S1_CLK>;
895 interrupts = <GIC_SPI 583 IRQ_TYPE_LEVEL_HIGH>;
896 pinctrl-names = "default";
897 pinctrl-0 = <&qup_spi9_data_clk>, <&qup_spi9_cs>;
898 interconnects = <&clk_virt MASTER_QUP_CORE_2 0 &clk_virt SLAVE_QUP_CORE_2 0>,
899 <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_2 0>,
900 <&aggre2_noc MASTER_QUP_2 0 &mc_virt SLAVE_EBI1 0>;
901 interconnect-names = "qup-core", "qup-config", "qup-memory";
902 dmas = <&gpi_dma2 0 1 QCOM_GPI_SPI>,
903 <&gpi_dma2 1 1 QCOM_GPI_SPI>;
904 dma-names = "tx", "rx";
905 #address-cells = <1>;
906 #size-cells = <0>;
907 status = "disabled";
908 };
909
910 i2c10: i2c@888000 {
911 compatible = "qcom,geni-i2c";
912 reg = <0 0x00888000 0 0x4000>;
913 clock-names = "se";
914 clocks = <&gcc GCC_QUPV3_WRAP2_S2_CLK>;
915 pinctrl-names = "default";
916 pinctrl-0 = <&qup_i2c10_data_clk>;
917 interrupts = <GIC_SPI 584 IRQ_TYPE_LEVEL_HIGH>;
918 #address-cells = <1>;
919 #size-cells = <0>;
920 interconnects = <&clk_virt MASTER_QUP_CORE_2 0 &clk_virt SLAVE_QUP_CORE_2 0>,
921 <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_2 0>,
922 <&aggre2_noc MASTER_QUP_2 0 &mc_virt SLAVE_EBI1 0>;
923 interconnect-names = "qup-core", "qup-config", "qup-memory";
924 dmas = <&gpi_dma2 0 2 QCOM_GPI_I2C>,
925 <&gpi_dma2 1 2 QCOM_GPI_I2C>;
926 dma-names = "tx", "rx";
927 status = "disabled";
928 };
929
930 spi10: spi@888000 {
931 compatible = "qcom,geni-spi";
932 reg = <0 0x00888000 0 0x4000>;
933 clock-names = "se";
934 clocks = <&gcc GCC_QUPV3_WRAP2_S2_CLK>;
935 interrupts = <GIC_SPI 584 IRQ_TYPE_LEVEL_HIGH>;
936 pinctrl-names = "default";
937 pinctrl-0 = <&qup_spi10_data_clk>, <&qup_spi10_cs>;
938 interconnects = <&clk_virt MASTER_QUP_CORE_2 0 &clk_virt SLAVE_QUP_CORE_2 0>,
939 <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_2 0>,
940 <&aggre2_noc MASTER_QUP_2 0 &mc_virt SLAVE_EBI1 0>;
941 interconnect-names = "qup-core", "qup-config", "qup-memory";
942 dmas = <&gpi_dma2 0 2 QCOM_GPI_SPI>,
943 <&gpi_dma2 1 2 QCOM_GPI_SPI>;
944 dma-names = "tx", "rx";
945 #address-cells = <1>;
946 #size-cells = <0>;
947 status = "disabled";
948 };
949
950 i2c11: i2c@88c000 {
951 compatible = "qcom,geni-i2c";
952 reg = <0 0x0088c000 0 0x4000>;
953 clock-names = "se";
954 clocks = <&gcc GCC_QUPV3_WRAP2_S3_CLK>;
955 pinctrl-names = "default";
956 pinctrl-0 = <&qup_i2c11_data_clk>;
957 interrupts = <GIC_SPI 585 IRQ_TYPE_LEVEL_HIGH>;
958 #address-cells = <1>;
959 #size-cells = <0>;
960 interconnects = <&clk_virt MASTER_QUP_CORE_2 0 &clk_virt SLAVE_QUP_CORE_2 0>,
961 <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_2 0>,
962 <&aggre2_noc MASTER_QUP_2 0 &mc_virt SLAVE_EBI1 0>;
963 interconnect-names = "qup-core", "qup-config", "qup-memory";
964 dmas = <&gpi_dma2 0 3 QCOM_GPI_I2C>,
965 <&gpi_dma2 1 3 QCOM_GPI_I2C>;
966 dma-names = "tx", "rx";
967 status = "disabled";
968 };
969
970 spi11: spi@88c000 {
971 compatible = "qcom,geni-spi";
972 reg = <0 0x0088c000 0 0x4000>;
973 clock-names = "se";
974 clocks = <&gcc GCC_QUPV3_WRAP2_S3_CLK>;
975 interrupts = <GIC_SPI 585 IRQ_TYPE_LEVEL_HIGH>;
976 pinctrl-names = "default";
977 pinctrl-0 = <&qup_spi11_data_clk>, <&qup_spi11_cs>;
978 interconnects = <&clk_virt MASTER_QUP_CORE_2 0 &clk_virt SLAVE_QUP_CORE_2 0>,
979 <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_2 0>,
980 <&aggre2_noc MASTER_QUP_2 0 &mc_virt SLAVE_EBI1 0>;
981 interconnect-names = "qup-core", "qup-config", "qup-memory";
982 dmas = <&gpi_dma2 0 3 QCOM_GPI_I2C>,
983 <&gpi_dma2 1 3 QCOM_GPI_I2C>;
984 dma-names = "tx", "rx";
985 #address-cells = <1>;
986 #size-cells = <0>;
987 status = "disabled";
988 };
989
990 i2c12: i2c@890000 {
991 compatible = "qcom,geni-i2c";
992 reg = <0 0x00890000 0 0x4000>;
993 clock-names = "se";
994 clocks = <&gcc GCC_QUPV3_WRAP2_S4_CLK>;
995 pinctrl-names = "default";
996 pinctrl-0 = <&qup_i2c12_data_clk>;
997 interrupts = <GIC_SPI 586 IRQ_TYPE_LEVEL_HIGH>;
998 #address-cells = <1>;
999 #size-cells = <0>;
1000 interconnects = <&clk_virt MASTER_QUP_CORE_2 0 &clk_virt SLAVE_QUP_CORE_2 0>,
1001 <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_2 0>,
1002 <&aggre2_noc MASTER_QUP_2 0 &mc_virt SLAVE_EBI1 0>;
1003 interconnect-names = "qup-core", "qup-config", "qup-memory";
1004 dmas = <&gpi_dma2 0 4 QCOM_GPI_I2C>,
1005 <&gpi_dma2 1 4 QCOM_GPI_I2C>;
1006 dma-names = "tx", "rx";
1007 status = "disabled";
1008 };
1009
1010 spi12: spi@890000 {
1011 compatible = "qcom,geni-spi";
1012 reg = <0 0x00890000 0 0x4000>;
1013 clock-names = "se";
1014 clocks = <&gcc GCC_QUPV3_WRAP2_S4_CLK>;
1015 interrupts = <GIC_SPI 586 IRQ_TYPE_LEVEL_HIGH>;
1016 pinctrl-names = "default";
1017 pinctrl-0 = <&qup_spi12_data_clk>, <&qup_spi12_cs>;
1018 interconnects = <&clk_virt MASTER_QUP_CORE_2 0 &clk_virt SLAVE_QUP_CORE_2 0>,
1019 <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_2 0>,
1020 <&aggre2_noc MASTER_QUP_2 0 &mc_virt SLAVE_EBI1 0>;
1021 interconnect-names = "qup-core", "qup-config", "qup-memory";
1022 dmas = <&gpi_dma2 0 4 QCOM_GPI_I2C>,
1023 <&gpi_dma2 1 4 QCOM_GPI_I2C>;
1024 dma-names = "tx", "rx";
1025 #address-cells = <1>;
1026 #size-cells = <0>;
1027 status = "disabled";
1028 };
1029
1030 i2c13: i2c@894000 {
1031 compatible = "qcom,geni-i2c";
1032 reg = <0 0x00894000 0 0x4000>;
1033 clock-names = "se";
1034 clocks = <&gcc GCC_QUPV3_WRAP2_S5_CLK>;
1035 pinctrl-names = "default";
1036 pinctrl-0 = <&qup_i2c13_data_clk>;
1037 interrupts = <GIC_SPI 587 IRQ_TYPE_LEVEL_HIGH>;
1038 #address-cells = <1>;
1039 #size-cells = <0>;
1040 interconnects = <&clk_virt MASTER_QUP_CORE_2 0 &clk_virt SLAVE_QUP_CORE_2 0>,
1041 <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_2 0>,
1042 <&aggre2_noc MASTER_QUP_2 0 &mc_virt SLAVE_EBI1 0>;
1043 interconnect-names = "qup-core", "qup-config", "qup-memory";
1044 dmas = <&gpi_dma2 0 5 QCOM_GPI_I2C>,
1045 <&gpi_dma2 1 5 QCOM_GPI_I2C>;
1046 dma-names = "tx", "rx";
1047 status = "disabled";
1048 };
1049
1050 spi13: spi@894000 {
1051 compatible = "qcom,geni-spi";
1052 reg = <0 0x00894000 0 0x4000>;
1053 clock-names = "se";
1054 clocks = <&gcc GCC_QUPV3_WRAP2_S5_CLK>;
1055 interrupts = <GIC_SPI 587 IRQ_TYPE_LEVEL_HIGH>;
1056 pinctrl-names = "default";
1057 pinctrl-0 = <&qup_spi13_data_clk>, <&qup_spi13_cs>;
1058 interconnects = <&clk_virt MASTER_QUP_CORE_2 0 &clk_virt SLAVE_QUP_CORE_2 0>,
1059 <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_2 0>,
1060 <&aggre2_noc MASTER_QUP_2 0 &mc_virt SLAVE_EBI1 0>;
1061 interconnect-names = "qup-core", "qup-config", "qup-memory";
1062 dmas = <&gpi_dma2 0 5 QCOM_GPI_SPI>,
1063 <&gpi_dma2 1 5 QCOM_GPI_SPI>;
1064 dma-names = "tx", "rx";
1065 #address-cells = <1>;
1066 #size-cells = <0>;
1067 status = "disabled";
1068 };
1069
1070 uart14: serial@898000 {
1071 compatible = "qcom,geni-uart";
1072 reg = <0 0x898000 0 0x4000>;
1073 clock-names = "se";
1074 clocks = <&gcc GCC_QUPV3_WRAP2_S6_CLK>;
1075 pinctrl-names = "default";
1076 pinctrl-0 = <&qup_uart14_default>, <&qup_uart14_cts_rts>;
1077 interrupts = <GIC_SPI 461 IRQ_TYPE_LEVEL_HIGH>;
1078 interconnects = <&clk_virt MASTER_QUP_CORE_2 0 &clk_virt SLAVE_QUP_CORE_2 0>,
1079 <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_2 0>;
1080 interconnect-names = "qup-core", "qup-config";
1081 status = "disabled";
1082 };
1083
1084 i2c15: i2c@89c000 {
1085 compatible = "qcom,geni-i2c";
1086 reg = <0 0x0089c000 0 0x4000>;
1087 clock-names = "se";
1088 clocks = <&gcc GCC_QUPV3_WRAP2_S7_CLK>;
1089 pinctrl-names = "default";
1090 pinctrl-0 = <&qup_i2c15_data_clk>;
1091 interrupts = <GIC_SPI 462 IRQ_TYPE_LEVEL_HIGH>;
1092 #address-cells = <1>;
1093 #size-cells = <0>;
1094 interconnects = <&clk_virt MASTER_QUP_CORE_2 0 &clk_virt SLAVE_QUP_CORE_2 0>,
1095 <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_2 0>,
1096 <&aggre2_noc MASTER_QUP_2 0 &mc_virt SLAVE_EBI1 0>;
1097 interconnect-names = "qup-core", "qup-config", "qup-memory";
1098 dmas = <&gpi_dma2 0 7 QCOM_GPI_I2C>,
1099 <&gpi_dma2 1 7 QCOM_GPI_I2C>;
1100 dma-names = "tx", "rx";
1101 status = "disabled";
1102 };
1103
1104 spi15: spi@89c000 {
1105 compatible = "qcom,geni-spi";
1106 reg = <0 0x0089c000 0 0x4000>;
1107 clock-names = "se";
1108 clocks = <&gcc GCC_QUPV3_WRAP2_S7_CLK>;
1109 interrupts = <GIC_SPI 462 IRQ_TYPE_LEVEL_HIGH>;
1110 pinctrl-names = "default";
1111 pinctrl-0 = <&qup_spi15_data_clk>, <&qup_spi15_cs>;
1112 interconnects = <&clk_virt MASTER_QUP_CORE_2 0 &clk_virt SLAVE_QUP_CORE_2 0>,
1113 <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_2 0>,
1114 <&aggre2_noc MASTER_QUP_2 0 &mc_virt SLAVE_EBI1 0>;
1115 interconnect-names = "qup-core", "qup-config", "qup-memory";
1116 dmas = <&gpi_dma2 0 7 QCOM_GPI_SPI>,
1117 <&gpi_dma2 1 7 QCOM_GPI_SPI>;
1118 dma-names = "tx", "rx";
1119 #address-cells = <1>;
1120 #size-cells = <0>;
1121 status = "disabled";
1122 };
1123 };
1124
1125 i2c_master_hub_0: geniqup@9c0000 {
1126 compatible = "qcom,geni-se-i2c-master-hub";
1127 reg = <0x0 0x009c0000 0x0 0x2000>;
1128 clock-names = "s-ahb";
1129 clocks = <&gcc GCC_QUPV3_I2C_S_AHB_CLK>;
1130 #address-cells = <2>;
1131 #size-cells = <2>;
1132 ranges;
1133 status = "disabled";
1134
1135 i2c_hub_0: i2c@980000 {
1136 compatible = "qcom,geni-i2c-master-hub";
1137 reg = <0x0 0x00980000 0x0 0x4000>;
1138 clock-names = "se", "core";
1139 clocks = <&gcc GCC_QUPV3_I2C_S0_CLK>,
1140 <&gcc GCC_QUPV3_I2C_CORE_CLK>;
1141 pinctrl-names = "default";
1142 pinctrl-0 = <&hub_i2c0_data_clk>;
1143 interrupts = <GIC_SPI 464 IRQ_TYPE_LEVEL_HIGH>;
1144 #address-cells = <1>;
1145 #size-cells = <0>;
1146 interconnects = <&clk_virt MASTER_QUP_CORE_0 0 &clk_virt SLAVE_QUP_CORE_0 0>,
1147 <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_I2C 0>;
1148 interconnect-names = "qup-core", "qup-config";
1149 status = "disabled";
1150 };
1151
1152 i2c_hub_1: i2c@984000 {
1153 compatible = "qcom,geni-i2c-master-hub";
1154 reg = <0x0 0x00984000 0x0 0x4000>;
1155 clock-names = "se", "core";
1156 clocks = <&gcc GCC_QUPV3_I2C_S1_CLK>,
1157 <&gcc GCC_QUPV3_I2C_CORE_CLK>;
1158 pinctrl-names = "default";
1159 pinctrl-0 = <&hub_i2c1_data_clk>;
1160 interrupts = <GIC_SPI 465 IRQ_TYPE_LEVEL_HIGH>;
1161 #address-cells = <1>;
1162 #size-cells = <0>;
1163 interconnects = <&clk_virt MASTER_QUP_CORE_0 0 &clk_virt SLAVE_QUP_CORE_0 0>,
1164 <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_I2C 0>;
1165 interconnect-names = "qup-core", "qup-config";
1166 status = "disabled";
1167 };
1168
1169 i2c_hub_2: i2c@988000 {
1170 compatible = "qcom,geni-i2c-master-hub";
1171 reg = <0x0 0x00988000 0x0 0x4000>;
1172 clock-names = "se", "core";
1173 clocks = <&gcc GCC_QUPV3_I2C_S2_CLK>,
1174 <&gcc GCC_QUPV3_I2C_CORE_CLK>;
1175 pinctrl-names = "default";
1176 pinctrl-0 = <&hub_i2c2_data_clk>;
1177 interrupts = <GIC_SPI 466 IRQ_TYPE_LEVEL_HIGH>;
1178 #address-cells = <1>;
1179 #size-cells = <0>;
1180 interconnects = <&clk_virt MASTER_QUP_CORE_0 0 &clk_virt SLAVE_QUP_CORE_0 0>,
1181 <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_I2C 0>;
1182 interconnect-names = "qup-core", "qup-config";
1183 status = "disabled";
1184 };
1185
1186 i2c_hub_3: i2c@98c000 {
1187 compatible = "qcom,geni-i2c-master-hub";
1188 reg = <0x0 0x0098c000 0x0 0x4000>;
1189 clock-names = "se", "core";
1190 clocks = <&gcc GCC_QUPV3_I2C_S3_CLK>,
1191 <&gcc GCC_QUPV3_I2C_CORE_CLK>;
1192 pinctrl-names = "default";
1193 pinctrl-0 = <&hub_i2c3_data_clk>;
1194 interrupts = <GIC_SPI 467 IRQ_TYPE_LEVEL_HIGH>;
1195 #address-cells = <1>;
1196 #size-cells = <0>;
1197 interconnects = <&clk_virt MASTER_QUP_CORE_0 0 &clk_virt SLAVE_QUP_CORE_0 0>,
1198 <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_I2C 0>;
1199 interconnect-names = "qup-core", "qup-config";
1200 status = "disabled";
1201 };
1202
1203 i2c_hub_4: i2c@990000 {
1204 compatible = "qcom,geni-i2c-master-hub";
1205 reg = <0x0 0x00990000 0x0 0x4000>;
1206 clock-names = "se", "core";
1207 clocks = <&gcc GCC_QUPV3_I2C_S4_CLK>,
1208 <&gcc GCC_QUPV3_I2C_CORE_CLK>;
1209 pinctrl-names = "default";
1210 pinctrl-0 = <&hub_i2c4_data_clk>;
1211 interrupts = <GIC_SPI 468 IRQ_TYPE_LEVEL_HIGH>;
1212 #address-cells = <1>;
1213 #size-cells = <0>;
1214 interconnects = <&clk_virt MASTER_QUP_CORE_0 0 &clk_virt SLAVE_QUP_CORE_0 0>,
1215 <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_I2C 0>;
1216 interconnect-names = "qup-core", "qup-config";
1217 status = "disabled";
1218 };
1219
1220 i2c_hub_5: i2c@994000 {
1221 compatible = "qcom,geni-i2c-master-hub";
1222 reg = <0 0x00994000 0 0x4000>;
1223 clock-names = "se", "core";
1224 clocks = <&gcc GCC_QUPV3_I2C_S5_CLK>,
1225 <&gcc GCC_QUPV3_I2C_CORE_CLK>;
1226 pinctrl-names = "default";
1227 pinctrl-0 = <&hub_i2c5_data_clk>;
1228 interrupts = <GIC_SPI 469 IRQ_TYPE_LEVEL_HIGH>;
1229 #address-cells = <1>;
1230 #size-cells = <0>;
1231 interconnects = <&clk_virt MASTER_QUP_CORE_0 0 &clk_virt SLAVE_QUP_CORE_0 0>,
1232 <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_I2C 0>;
1233 interconnect-names = "qup-core", "qup-config";
1234 status = "disabled";
1235 };
1236
1237 i2c_hub_6: i2c@998000 {
1238 compatible = "qcom,geni-i2c-master-hub";
1239 reg = <0 0x00998000 0 0x4000>;
1240 clock-names = "se", "core";
1241 clocks = <&gcc GCC_QUPV3_I2C_S6_CLK>,
1242 <&gcc GCC_QUPV3_I2C_CORE_CLK>;
1243 pinctrl-names = "default";
1244 pinctrl-0 = <&hub_i2c6_data_clk>;
1245 interrupts = <GIC_SPI 470 IRQ_TYPE_LEVEL_HIGH>;
1246 #address-cells = <1>;
1247 #size-cells = <0>;
1248 interconnects = <&clk_virt MASTER_QUP_CORE_0 0 &clk_virt SLAVE_QUP_CORE_0 0>,
1249 <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_I2C 0>;
1250 interconnect-names = "qup-core", "qup-config";
1251 status = "disabled";
1252 };
1253
1254 i2c_hub_7: i2c@99c000 {
1255 compatible = "qcom,geni-i2c-master-hub";
1256 reg = <0 0x0099c000 0 0x4000>;
1257 clock-names = "se", "core";
1258 clocks = <&gcc GCC_QUPV3_I2C_S7_CLK>,
1259 <&gcc GCC_QUPV3_I2C_CORE_CLK>;
1260 pinctrl-names = "default";
1261 pinctrl-0 = <&hub_i2c7_data_clk>;
1262 interrupts = <GIC_SPI 471 IRQ_TYPE_LEVEL_HIGH>;
1263 #address-cells = <1>;
1264 #size-cells = <0>;
1265 interconnects = <&clk_virt MASTER_QUP_CORE_0 0 &clk_virt SLAVE_QUP_CORE_0 0>,
1266 <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_I2C 0>;
1267 interconnect-names = "qup-core", "qup-config";
1268 status = "disabled";
1269 };
1270
1271 i2c_hub_8: i2c@9a0000 {
1272 compatible = "qcom,geni-i2c-master-hub";
1273 reg = <0 0x009a0000 0 0x4000>;
1274 clock-names = "se", "core";
1275 clocks = <&gcc GCC_QUPV3_I2C_S8_CLK>,
1276 <&gcc GCC_QUPV3_I2C_CORE_CLK>;
1277 pinctrl-names = "default";
1278 pinctrl-0 = <&hub_i2c8_data_clk>;
1279 interrupts = <GIC_SPI 472 IRQ_TYPE_LEVEL_HIGH>;
1280 #address-cells = <1>;
1281 #size-cells = <0>;
1282 interconnects = <&clk_virt MASTER_QUP_CORE_0 0 &clk_virt SLAVE_QUP_CORE_0 0>,
1283 <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_I2C 0>;
1284 interconnect-names = "qup-core", "qup-config";
1285 status = "disabled";
1286 };
1287
1288 i2c_hub_9: i2c@9a4000 {
1289 compatible = "qcom,geni-i2c-master-hub";
1290 reg = <0 0x009a4000 0 0x4000>;
1291 clock-names = "se", "core";
1292 clocks = <&gcc GCC_QUPV3_I2C_S9_CLK>,
1293 <&gcc GCC_QUPV3_I2C_CORE_CLK>;
1294 pinctrl-names = "default";
1295 pinctrl-0 = <&hub_i2c9_data_clk>;
1296 interrupts = <GIC_SPI 473 IRQ_TYPE_LEVEL_HIGH>;
1297 #address-cells = <1>;
1298 #size-cells = <0>;
1299 interconnects = <&clk_virt MASTER_QUP_CORE_0 0 &clk_virt SLAVE_QUP_CORE_0 0>,
1300 <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_I2C 0>;
1301 interconnect-names = "qup-core", "qup-config";
1302 status = "disabled";
1303 };
1304 };
1305
1306 gpi_dma1: dma-controller@a00000 {
1307 compatible = "qcom,sm8550-gpi-dma", "qcom,sm6350-gpi-dma";
1308 #dma-cells = <3>;
1309 reg = <0 0x00a00000 0 0x60000>;
1310 interrupts = <GIC_SPI 279 IRQ_TYPE_LEVEL_HIGH>,
1311 <GIC_SPI 280 IRQ_TYPE_LEVEL_HIGH>,
1312 <GIC_SPI 281 IRQ_TYPE_LEVEL_HIGH>,
1313 <GIC_SPI 282 IRQ_TYPE_LEVEL_HIGH>,
1314 <GIC_SPI 283 IRQ_TYPE_LEVEL_HIGH>,
1315 <GIC_SPI 284 IRQ_TYPE_LEVEL_HIGH>,
1316 <GIC_SPI 293 IRQ_TYPE_LEVEL_HIGH>,
1317 <GIC_SPI 294 IRQ_TYPE_LEVEL_HIGH>,
1318 <GIC_SPI 295 IRQ_TYPE_LEVEL_HIGH>,
1319 <GIC_SPI 296 IRQ_TYPE_LEVEL_HIGH>,
1320 <GIC_SPI 297 IRQ_TYPE_LEVEL_HIGH>,
1321 <GIC_SPI 298 IRQ_TYPE_LEVEL_HIGH>;
1322 dma-channels = <12>;
1323 dma-channel-mask = <0x1e>;
1324 iommus = <&apps_smmu 0xb6 0>;
1325 status = "disabled";
1326 };
1327
1328 qupv3_id_0: geniqup@ac0000 {
1329 compatible = "qcom,geni-se-qup";
1330 reg = <0 0x00ac0000 0 0x2000>;
1331 ranges;
1332 clock-names = "m-ahb", "s-ahb";
1333 clocks = <&gcc GCC_QUPV3_WRAP_1_M_AHB_CLK>,
1334 <&gcc GCC_QUPV3_WRAP_1_S_AHB_CLK>;
1335 iommus = <&apps_smmu 0xa3 0>;
1336 interconnects = <&clk_virt MASTER_QUP_CORE_1 0 &clk_virt SLAVE_QUP_CORE_1 0>;
1337 interconnect-names = "qup-core";
1338 #address-cells = <2>;
1339 #size-cells = <2>;
1340 status = "disabled";
1341
1342 i2c0: i2c@a80000 {
1343 compatible = "qcom,geni-i2c";
1344 reg = <0 0x00a80000 0 0x4000>;
1345 clock-names = "se";
1346 clocks = <&gcc GCC_QUPV3_WRAP1_S0_CLK>;
1347 pinctrl-names = "default";
1348 pinctrl-0 = <&qup_i2c0_data_clk>;
1349 interrupts = <GIC_SPI 353 IRQ_TYPE_LEVEL_HIGH>;
1350 #address-cells = <1>;
1351 #size-cells = <0>;
1352 interconnects = <&clk_virt MASTER_QUP_CORE_1 0 &clk_virt SLAVE_QUP_CORE_1 0>,
1353 <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_1 0>,
1354 <&aggre1_noc MASTER_QUP_1 0 &mc_virt SLAVE_EBI1 0>;
1355 interconnect-names = "qup-core", "qup-config", "qup-memory";
1356 dmas = <&gpi_dma1 0 0 QCOM_GPI_I2C>,
1357 <&gpi_dma1 1 0 QCOM_GPI_I2C>;
1358 dma-names = "tx", "rx";
1359 status = "disabled";
1360 };
1361
1362 spi0: spi@a80000 {
1363 compatible = "qcom,geni-spi";
1364 reg = <0 0x00a80000 0 0x4000>;
1365 clock-names = "se";
1366 clocks = <&gcc GCC_QUPV3_WRAP1_S0_CLK>;
1367 interrupts = <GIC_SPI 353 IRQ_TYPE_LEVEL_HIGH>;
1368 pinctrl-names = "default";
1369 pinctrl-0 = <&qup_spi0_data_clk>, <&qup_spi0_cs>;
1370 interconnects = <&clk_virt MASTER_QUP_CORE_1 0 &clk_virt SLAVE_QUP_CORE_1 0>,
1371 <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_1 0>,
1372 <&aggre1_noc MASTER_QUP_1 0 &mc_virt SLAVE_EBI1 0>;
1373 interconnect-names = "qup-core", "qup-config", "qup-memory";
1374 dmas = <&gpi_dma1 0 0 QCOM_GPI_SPI>,
1375 <&gpi_dma1 1 0 QCOM_GPI_SPI>;
1376 dma-names = "tx", "rx";
1377 #address-cells = <1>;
1378 #size-cells = <0>;
1379 status = "disabled";
1380 };
1381
1382 i2c1: i2c@a84000 {
1383 compatible = "qcom,geni-i2c";
1384 reg = <0 0x00a84000 0 0x4000>;
1385 clock-names = "se";
1386 clocks = <&gcc GCC_QUPV3_WRAP1_S1_CLK>;
1387 pinctrl-names = "default";
1388 pinctrl-0 = <&qup_i2c1_data_clk>;
1389 interrupts = <GIC_SPI 354 IRQ_TYPE_LEVEL_HIGH>;
1390 #address-cells = <1>;
1391 #size-cells = <0>;
1392 interconnects = <&clk_virt MASTER_QUP_CORE_1 0 &clk_virt SLAVE_QUP_CORE_1 0>,
1393 <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_1 0>,
1394 <&aggre1_noc MASTER_QUP_1 0 &mc_virt SLAVE_EBI1 0>;
1395 interconnect-names = "qup-core", "qup-config", "qup-memory";
1396 dmas = <&gpi_dma1 0 1 QCOM_GPI_I2C>,
1397 <&gpi_dma1 1 1 QCOM_GPI_I2C>;
1398 dma-names = "tx", "rx";
1399 status = "disabled";
1400 };
1401
1402 spi1: spi@a84000 {
1403 compatible = "qcom,geni-spi";
1404 reg = <0 0x00a84000 0 0x4000>;
1405 clock-names = "se";
1406 clocks = <&gcc GCC_QUPV3_WRAP1_S1_CLK>;
1407 interrupts = <GIC_SPI 354 IRQ_TYPE_LEVEL_HIGH>;
1408 pinctrl-names = "default";
1409 pinctrl-0 = <&qup_spi1_data_clk>, <&qup_spi1_cs>;
1410 interconnects = <&clk_virt MASTER_QUP_CORE_1 0 &clk_virt SLAVE_QUP_CORE_1 0>,
1411 <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_1 0>,
1412 <&aggre1_noc MASTER_QUP_1 0 &mc_virt SLAVE_EBI1 0>;
1413 interconnect-names = "qup-core", "qup-config", "qup-memory";
1414 dmas = <&gpi_dma1 0 1 QCOM_GPI_SPI>,
1415 <&gpi_dma1 1 1 QCOM_GPI_SPI>;
1416 dma-names = "tx", "rx";
1417 #address-cells = <1>;
1418 #size-cells = <0>;
1419 status = "disabled";
1420 };
1421
1422 i2c2: i2c@a88000 {
1423 compatible = "qcom,geni-i2c";
1424 reg = <0 0x00a88000 0 0x4000>;
1425 clock-names = "se";
1426 clocks = <&gcc GCC_QUPV3_WRAP1_S2_CLK>;
1427 pinctrl-names = "default";
1428 pinctrl-0 = <&qup_i2c2_data_clk>;
1429 interrupts = <GIC_SPI 355 IRQ_TYPE_LEVEL_HIGH>;
1430 #address-cells = <1>;
1431 #size-cells = <0>;
1432 interconnects = <&clk_virt MASTER_QUP_CORE_1 0 &clk_virt SLAVE_QUP_CORE_1 0>,
1433 <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_1 0>,
1434 <&aggre1_noc MASTER_QUP_1 0 &mc_virt SLAVE_EBI1 0>;
1435 interconnect-names = "qup-core", "qup-config", "qup-memory";
1436 dmas = <&gpi_dma1 0 2 QCOM_GPI_I2C>,
1437 <&gpi_dma1 1 2 QCOM_GPI_I2C>;
1438 dma-names = "tx", "rx";
1439 status = "disabled";
1440 };
1441
1442 spi2: spi@a88000 {
1443 compatible = "qcom,geni-spi";
1444 reg = <0 0x00a88000 0 0x4000>;
1445 clock-names = "se";
1446 clocks = <&gcc GCC_QUPV3_WRAP1_S2_CLK>;
1447 interrupts = <GIC_SPI 355 IRQ_TYPE_LEVEL_HIGH>;
1448 pinctrl-names = "default";
1449 pinctrl-0 = <&qup_spi2_data_clk>, <&qup_spi2_cs>;
1450 interconnects = <&clk_virt MASTER_QUP_CORE_1 0 &clk_virt SLAVE_QUP_CORE_1 0>,
1451 <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_1 0>,
1452 <&aggre1_noc MASTER_QUP_1 0 &mc_virt SLAVE_EBI1 0>;
1453 interconnect-names = "qup-core", "qup-config", "qup-memory";
1454 dmas = <&gpi_dma1 0 2 QCOM_GPI_SPI>,
1455 <&gpi_dma1 1 2 QCOM_GPI_SPI>;
1456 dma-names = "tx", "rx";
1457 #address-cells = <1>;
1458 #size-cells = <0>;
1459 status = "disabled";
1460 };
1461
1462 i2c3: i2c@a8c000 {
1463 compatible = "qcom,geni-i2c";
1464 reg = <0 0x00a8c000 0 0x4000>;
1465 clock-names = "se";
1466 clocks = <&gcc GCC_QUPV3_WRAP1_S3_CLK>;
1467 pinctrl-names = "default";
1468 pinctrl-0 = <&qup_i2c3_data_clk>;
1469 interrupts = <GIC_SPI 356 IRQ_TYPE_LEVEL_HIGH>;
1470 #address-cells = <1>;
1471 #size-cells = <0>;
1472 interconnects = <&clk_virt MASTER_QUP_CORE_1 0 &clk_virt SLAVE_QUP_CORE_1 0>,
1473 <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_1 0>,
1474 <&aggre1_noc MASTER_QUP_1 0 &mc_virt SLAVE_EBI1 0>;
1475 interconnect-names = "qup-core", "qup-config", "qup-memory";
1476 dmas = <&gpi_dma1 0 3 QCOM_GPI_I2C>,
1477 <&gpi_dma1 1 3 QCOM_GPI_I2C>;
1478 dma-names = "tx", "rx";
1479 status = "disabled";
1480 };
1481
1482 spi3: spi@a8c000 {
1483 compatible = "qcom,geni-spi";
1484 reg = <0 0x00a8c000 0 0x4000>;
1485 clock-names = "se";
1486 clocks = <&gcc GCC_QUPV3_WRAP1_S3_CLK>;
1487 interrupts = <GIC_SPI 356 IRQ_TYPE_LEVEL_HIGH>;
1488 pinctrl-names = "default";
1489 pinctrl-0 = <&qup_spi3_data_clk>, <&qup_spi3_cs>;
1490 interconnects = <&clk_virt MASTER_QUP_CORE_1 0 &clk_virt SLAVE_QUP_CORE_1 0>,
1491 <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_1 0>,
1492 <&aggre1_noc MASTER_QUP_1 0 &mc_virt SLAVE_EBI1 0>;
1493 interconnect-names = "qup-core", "qup-config", "qup-memory";
1494 dmas = <&gpi_dma1 0 3 QCOM_GPI_SPI>,
1495 <&gpi_dma1 1 3 QCOM_GPI_SPI>;
1496 dma-names = "tx", "rx";
1497 #address-cells = <1>;
1498 #size-cells = <0>;
1499 status = "disabled";
1500 };
1501
1502 i2c4: i2c@a90000 {
1503 compatible = "qcom,geni-i2c";
1504 reg = <0 0x00a90000 0 0x4000>;
1505 clock-names = "se";
1506 clocks = <&gcc GCC_QUPV3_WRAP1_S4_CLK>;
1507 pinctrl-names = "default";
1508 pinctrl-0 = <&qup_i2c4_data_clk>;
1509 interrupts = <GIC_SPI 357 IRQ_TYPE_LEVEL_HIGH>;
1510 #address-cells = <1>;
1511 #size-cells = <0>;
1512 interconnects = <&clk_virt MASTER_QUP_CORE_1 0 &clk_virt SLAVE_QUP_CORE_1 0>,
1513 <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_1 0>,
1514 <&aggre1_noc MASTER_QUP_1 0 &mc_virt SLAVE_EBI1 0>;
1515 interconnect-names = "qup-core", "qup-config", "qup-memory";
1516 dmas = <&gpi_dma1 0 4 QCOM_GPI_I2C>,
1517 <&gpi_dma1 1 4 QCOM_GPI_I2C>;
1518 dma-names = "tx", "rx";
1519 status = "disabled";
1520 };
1521
1522 spi4: spi@a90000 {
1523 compatible = "qcom,geni-spi";
1524 reg = <0 0x00a90000 0 0x4000>;
1525 clock-names = "se";
1526 clocks = <&gcc GCC_QUPV3_WRAP1_S4_CLK>;
1527 interrupts = <GIC_SPI 357 IRQ_TYPE_LEVEL_HIGH>;
1528 pinctrl-names = "default";
1529 pinctrl-0 = <&qup_spi4_data_clk>, <&qup_spi4_cs>;
1530 interconnects = <&clk_virt MASTER_QUP_CORE_1 0 &clk_virt SLAVE_QUP_CORE_1 0>,
1531 <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_1 0>,
1532 <&aggre1_noc MASTER_QUP_1 0 &mc_virt SLAVE_EBI1 0>;
1533 interconnect-names = "qup-core", "qup-config", "qup-memory";
1534 dmas = <&gpi_dma1 0 4 QCOM_GPI_SPI>,
1535 <&gpi_dma1 1 4 QCOM_GPI_SPI>;
1536 dma-names = "tx", "rx";
1537 #address-cells = <1>;
1538 #size-cells = <0>;
1539 status = "disabled";
1540 };
1541
1542 i2c5: i2c@a94000 {
1543 compatible = "qcom,geni-i2c";
1544 reg = <0 0x00a94000 0 0x4000>;
1545 clock-names = "se";
1546 clocks = <&gcc GCC_QUPV3_WRAP1_S5_CLK>;
1547 pinctrl-names = "default";
1548 pinctrl-0 = <&qup_i2c5_data_clk>;
1549 interrupts = <GIC_SPI 358 IRQ_TYPE_LEVEL_HIGH>;
1550 interconnects = <&clk_virt MASTER_QUP_CORE_1 0 &clk_virt SLAVE_QUP_CORE_1 0>,
1551 <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_1 0>,
1552 <&aggre1_noc MASTER_QUP_1 0 &mc_virt SLAVE_EBI1 0>;
1553 interconnect-names = "qup-core", "qup-config", "qup-memory";
1554 dmas = <&gpi_dma1 0 5 QCOM_GPI_I2C>,
1555 <&gpi_dma1 1 5 QCOM_GPI_I2C>;
1556 dma-names = "tx", "rx";
1557 #address-cells = <1>;
1558 #size-cells = <0>;
1559 status = "disabled";
1560 };
1561
1562 spi5: spi@a94000 {
1563 compatible = "qcom,geni-spi";
1564 reg = <0 0x00a94000 0 0x4000>;
1565 clock-names = "se";
1566 clocks = <&gcc GCC_QUPV3_WRAP1_S5_CLK>;
1567 interrupts = <GIC_SPI 358 IRQ_TYPE_LEVEL_HIGH>;
1568 pinctrl-names = "default";
1569 pinctrl-0 = <&qup_spi5_data_clk>, <&qup_spi5_cs>;
1570 interconnects = <&clk_virt MASTER_QUP_CORE_1 0 &clk_virt SLAVE_QUP_CORE_1 0>,
1571 <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_1 0>,
1572 <&aggre1_noc MASTER_QUP_1 0 &mc_virt SLAVE_EBI1 0>;
1573 interconnect-names = "qup-core", "qup-config", "qup-memory";
1574 dmas = <&gpi_dma1 0 5 QCOM_GPI_SPI>,
1575 <&gpi_dma1 1 5 QCOM_GPI_SPI>;
1576 dma-names = "tx", "rx";
1577 #address-cells = <1>;
1578 #size-cells = <0>;
1579 status = "disabled";
1580 };
1581
1582 i2c6: i2c@a98000 {
1583 compatible = "qcom,geni-i2c";
1584 reg = <0 0x00a98000 0 0x4000>;
1585 clock-names = "se";
1586 clocks = <&gcc GCC_QUPV3_WRAP1_S6_CLK>;
1587 pinctrl-names = "default";
1588 pinctrl-0 = <&qup_i2c6_data_clk>;
1589 interrupts = <GIC_SPI 363 IRQ_TYPE_LEVEL_HIGH>;
1590 interconnects = <&clk_virt MASTER_QUP_CORE_1 0 &clk_virt SLAVE_QUP_CORE_1 0>,
1591 <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_1 0>,
1592 <&aggre1_noc MASTER_QUP_1 0 &mc_virt SLAVE_EBI1 0>;
1593 interconnect-names = "qup-core", "qup-config", "qup-memory";
1594 dmas = <&gpi_dma1 0 6 QCOM_GPI_I2C>,
1595 <&gpi_dma1 1 6 QCOM_GPI_I2C>;
1596 dma-names = "tx", "rx";
1597 #address-cells = <1>;
1598 #size-cells = <0>;
1599 status = "disabled";
1600 };
1601
1602 spi6: spi@a98000 {
1603 compatible = "qcom,geni-spi";
1604 reg = <0 0x00a98000 0 0x4000>;
1605 clock-names = "se";
1606 clocks = <&gcc GCC_QUPV3_WRAP1_S6_CLK>;
1607 interrupts = <GIC_SPI 363 IRQ_TYPE_LEVEL_HIGH>;
1608 pinctrl-names = "default";
1609 pinctrl-0 = <&qup_spi6_data_clk>, <&qup_spi6_cs>;
1610 interconnects = <&clk_virt MASTER_QUP_CORE_1 0 &clk_virt SLAVE_QUP_CORE_1 0>,
1611 <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_1 0>,
1612 <&aggre1_noc MASTER_QUP_1 0 &mc_virt SLAVE_EBI1 0>;
1613 interconnect-names = "qup-core", "qup-config", "qup-memory";
1614 dmas = <&gpi_dma1 0 6 QCOM_GPI_SPI>,
1615 <&gpi_dma1 1 6 QCOM_GPI_SPI>;
1616 dma-names = "tx", "rx";
1617 #address-cells = <1>;
1618 #size-cells = <0>;
1619 status = "disabled";
1620 };
1621
1622 uart7: serial@a9c000 {
1623 compatible = "qcom,geni-debug-uart";
1624 reg = <0 0x00a9c000 0 0x4000>;
1625 clock-names = "se";
1626 clocks = <&gcc GCC_QUPV3_WRAP1_S7_CLK>;
1627 pinctrl-names = "default";
1628 pinctrl-0 = <&qup_uart7_default>;
1629 interrupts = <GIC_SPI 579 IRQ_TYPE_LEVEL_HIGH>;
1630 interconnect-names = "qup-core", "qup-config";
1631 interconnects = <&clk_virt MASTER_QUP_CORE_1 0 &clk_virt SLAVE_QUP_CORE_1 0>,
1632 <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_1 0>;
1633 status = "disabled";
1634 };
1635 };
1636
1637 cnoc_main: interconnect@1500000 {
1638 compatible = "qcom,sm8550-cnoc-main";
1639 reg = <0 0x01500000 0 0x13080>;
1640 #interconnect-cells = <2>;
1641 qcom,bcm-voters = <&apps_bcm_voter>;
1642 };
1643
1644 config_noc: interconnect@1600000 {
1645 compatible = "qcom,sm8550-config-noc";
1646 reg = <0 0x01600000 0 0x6200>;
1647 #interconnect-cells = <2>;
1648 qcom,bcm-voters = <&apps_bcm_voter>;
1649 };
1650
1651 system_noc: interconnect@1680000 {
1652 compatible = "qcom,sm8550-system-noc";
1653 reg = <0 0x01680000 0 0x1d080>;
1654 #interconnect-cells = <2>;
1655 qcom,bcm-voters = <&apps_bcm_voter>;
1656 };
1657
1658 pcie_noc: interconnect@16c0000 {
1659 compatible = "qcom,sm8550-pcie-anoc";
1660 reg = <0 0x016c0000 0 0x12200>;
1661 #interconnect-cells = <2>;
1662 clocks = <&gcc GCC_AGGRE_NOC_PCIE_AXI_CLK>,
1663 <&gcc GCC_CFG_NOC_PCIE_ANOC_AHB_CLK>;
1664 qcom,bcm-voters = <&apps_bcm_voter>;
1665 };
1666
1667 aggre1_noc: interconnect@16e0000 {
1668 compatible = "qcom,sm8550-aggre1-noc";
1669 reg = <0 0x016e0000 0 0x14400>;
1670 #interconnect-cells = <2>;
1671 clocks = <&gcc GCC_AGGRE_UFS_PHY_AXI_CLK>,
1672 <&gcc GCC_AGGRE_USB3_PRIM_AXI_CLK>;
1673 qcom,bcm-voters = <&apps_bcm_voter>;
1674 };
1675
1676 aggre2_noc: interconnect@1700000 {
1677 compatible = "qcom,sm8550-aggre2-noc";
1678 reg = <0 0x01700000 0 0x1e400>;
1679 #interconnect-cells = <2>;
1680 clocks = <&rpmhcc RPMH_IPA_CLK>;
1681 qcom,bcm-voters = <&apps_bcm_voter>;
1682 };
1683
1684 mmss_noc: interconnect@1780000 {
1685 compatible = "qcom,sm8550-mmss-noc";
1686 reg = <0 0x01780000 0 0x5b800>;
1687 #interconnect-cells = <2>;
1688 qcom,bcm-voters = <&apps_bcm_voter>;
1689 };
1690
1691 rng: rng@10c3000 {
1692 compatible = "qcom,sm8550-trng", "qcom,trng";
1693 reg = <0 0x010c3000 0 0x1000>;
1694 };
1695
1696 pcie0: pcie@1c00000 {
1697 device_type = "pci";
1698 compatible = "qcom,pcie-sm8550";
1699 reg = <0 0x01c00000 0 0x3000>,
1700 <0 0x60000000 0 0xf1d>,
1701 <0 0x60000f20 0 0xa8>,
1702 <0 0x60001000 0 0x1000>,
1703 <0 0x60100000 0 0x100000>;
1704 reg-names = "parf", "dbi", "elbi", "atu", "config";
1705 #address-cells = <3>;
1706 #size-cells = <2>;
1707 ranges = <0x01000000 0x0 0x00000000 0x0 0x60200000 0x0 0x100000>,
1708 <0x02000000 0x0 0x60300000 0x0 0x60300000 0x0 0x3d00000>;
1709 bus-range = <0x00 0xff>;
1710
1711 dma-coherent;
1712
1713 linux,pci-domain = <0>;
1714 num-lanes = <2>;
1715
1716 interrupts = <GIC_SPI 141 IRQ_TYPE_LEVEL_HIGH>;
1717 interrupt-names = "msi";
1718
1719 #interrupt-cells = <1>;
1720 interrupt-map-mask = <0 0 0 0x7>;
1721 interrupt-map = <0 0 0 1 &intc 0 0 0 149 IRQ_TYPE_LEVEL_HIGH>, /* int_a */
1722 <0 0 0 2 &intc 0 0 0 150 IRQ_TYPE_LEVEL_HIGH>, /* int_b */
1723 <0 0 0 3 &intc 0 0 0 151 IRQ_TYPE_LEVEL_HIGH>, /* int_c */
1724 <0 0 0 4 &intc 0 0 0 152 IRQ_TYPE_LEVEL_HIGH>; /* int_d */
1725
1726 clocks = <&gcc GCC_PCIE_0_AUX_CLK>,
1727 <&gcc GCC_PCIE_0_CFG_AHB_CLK>,
1728 <&gcc GCC_PCIE_0_MSTR_AXI_CLK>,
1729 <&gcc GCC_PCIE_0_SLV_AXI_CLK>,
1730 <&gcc GCC_PCIE_0_SLV_Q2A_AXI_CLK>,
1731 <&gcc GCC_DDRSS_PCIE_SF_QTB_CLK>,
1732 <&gcc GCC_AGGRE_NOC_PCIE_AXI_CLK>;
1733 clock-names = "aux",
1734 "cfg",
1735 "bus_master",
1736 "bus_slave",
1737 "slave_q2a",
1738 "ddrss_sf_tbu",
1739 "noc_aggr";
1740
1741 interconnects = <&pcie_noc MASTER_PCIE_0 0 &mc_virt SLAVE_EBI1 0>,
1742 <&gem_noc MASTER_APPSS_PROC 0 &cnoc_main SLAVE_PCIE_0 0>;
1743 interconnect-names = "pcie-mem", "cpu-pcie";
1744
1745 iommu-map = <0x0 &apps_smmu 0x1400 0x1>,
1746 <0x100 &apps_smmu 0x1401 0x1>;
1747
1748 resets = <&gcc GCC_PCIE_0_BCR>;
1749 reset-names = "pci";
1750
1751 power-domains = <&gcc PCIE_0_GDSC>;
1752
1753 phys = <&pcie0_phy>;
1754 phy-names = "pciephy";
1755
1756 status = "disabled";
1757 };
1758
1759 pcie0_phy: phy@1c06000 {
1760 compatible = "qcom,sm8550-qmp-gen3x2-pcie-phy";
1761 reg = <0 0x01c06000 0 0x2000>;
1762
1763 clocks = <&gcc GCC_PCIE_0_AUX_CLK>,
1764 <&gcc GCC_PCIE_0_CFG_AHB_CLK>,
1765 <&tcsr TCSR_PCIE_0_CLKREF_EN>,
1766 <&gcc GCC_PCIE_0_PHY_RCHNG_CLK>,
1767 <&gcc GCC_PCIE_0_PIPE_CLK>;
1768 clock-names = "aux", "cfg_ahb", "ref", "rchng",
1769 "pipe";
1770
1771 resets = <&gcc GCC_PCIE_0_PHY_BCR>;
1772 reset-names = "phy";
1773
1774 assigned-clocks = <&gcc GCC_PCIE_0_PHY_RCHNG_CLK>;
1775 assigned-clock-rates = <100000000>;
1776
1777 power-domains = <&gcc PCIE_0_PHY_GDSC>;
1778
1779 #clock-cells = <0>;
1780 clock-output-names = "pcie0_pipe_clk";
1781
1782 #phy-cells = <0>;
1783
1784 status = "disabled";
1785 };
1786
1787 pcie1: pcie@1c08000 {
1788 device_type = "pci";
1789 compatible = "qcom,pcie-sm8550";
1790 reg = <0x0 0x01c08000 0x0 0x3000>,
1791 <0x0 0x40000000 0x0 0xf1d>,
1792 <0x0 0x40000f20 0x0 0xa8>,
1793 <0x0 0x40001000 0x0 0x1000>,
1794 <0x0 0x40100000 0x0 0x100000>;
1795 reg-names = "parf", "dbi", "elbi", "atu", "config";
1796 #address-cells = <3>;
1797 #size-cells = <2>;
1798 ranges = <0x01000000 0x0 0x00000000 0x0 0x40200000 0x0 0x100000>,
1799 <0x02000000 0x0 0x40300000 0x0 0x40300000 0x0 0x1fd00000>;
1800 bus-range = <0x00 0xff>;
1801
1802 dma-coherent;
1803
1804 linux,pci-domain = <1>;
1805 num-lanes = <2>;
1806
1807 interrupts = <GIC_SPI 307 IRQ_TYPE_LEVEL_HIGH>;
1808 interrupt-names = "msi";
1809
1810 #interrupt-cells = <1>;
1811 interrupt-map-mask = <0 0 0 0x7>;
1812 interrupt-map = <0 0 0 1 &intc 0 0 0 434 IRQ_TYPE_LEVEL_HIGH>, /* int_a */
1813 <0 0 0 2 &intc 0 0 0 435 IRQ_TYPE_LEVEL_HIGH>, /* int_b */
1814 <0 0 0 3 &intc 0 0 0 438 IRQ_TYPE_LEVEL_HIGH>, /* int_c */
1815 <0 0 0 4 &intc 0 0 0 439 IRQ_TYPE_LEVEL_HIGH>; /* int_d */
1816
1817 clocks = <&gcc GCC_PCIE_1_AUX_CLK>,
1818 <&gcc GCC_PCIE_1_CFG_AHB_CLK>,
1819 <&gcc GCC_PCIE_1_MSTR_AXI_CLK>,
1820 <&gcc GCC_PCIE_1_SLV_AXI_CLK>,
1821 <&gcc GCC_PCIE_1_SLV_Q2A_AXI_CLK>,
1822 <&gcc GCC_DDRSS_PCIE_SF_QTB_CLK>,
1823 <&gcc GCC_AGGRE_NOC_PCIE_AXI_CLK>,
1824 <&gcc GCC_CNOC_PCIE_SF_AXI_CLK>;
1825 clock-names = "aux",
1826 "cfg",
1827 "bus_master",
1828 "bus_slave",
1829 "slave_q2a",
1830 "ddrss_sf_tbu",
1831 "noc_aggr",
1832 "cnoc_sf_axi";
1833
1834 assigned-clocks = <&gcc GCC_PCIE_1_AUX_CLK>;
1835 assigned-clock-rates = <19200000>;
1836
1837 interconnects = <&pcie_noc MASTER_PCIE_1 0 &mc_virt SLAVE_EBI1 0>,
1838 <&gem_noc MASTER_APPSS_PROC 0 &cnoc_main SLAVE_PCIE_1 0>;
1839 interconnect-names = "pcie-mem", "cpu-pcie";
1840
1841 iommu-map = <0x0 &apps_smmu 0x1480 0x1>,
1842 <0x100 &apps_smmu 0x1481 0x1>;
1843
1844 resets = <&gcc GCC_PCIE_1_BCR>,
1845 <&gcc GCC_PCIE_1_LINK_DOWN_BCR>;
1846 reset-names = "pci", "link_down";
1847
1848 power-domains = <&gcc PCIE_1_GDSC>;
1849
1850 phys = <&pcie1_phy>;
1851 phy-names = "pciephy";
1852
1853 status = "disabled";
1854 };
1855
1856 pcie1_phy: phy@1c0e000 {
1857 compatible = "qcom,sm8550-qmp-gen4x2-pcie-phy";
1858 reg = <0x0 0x01c0e000 0x0 0x2000>;
1859
1860 clocks = <&gcc GCC_PCIE_1_PHY_AUX_CLK>,
1861 <&gcc GCC_PCIE_1_CFG_AHB_CLK>,
1862 <&tcsr TCSR_PCIE_1_CLKREF_EN>,
1863 <&gcc GCC_PCIE_1_PHY_RCHNG_CLK>,
1864 <&gcc GCC_PCIE_1_PIPE_CLK>;
1865 clock-names = "aux", "cfg_ahb", "ref", "rchng",
1866 "pipe";
1867
1868 resets = <&gcc GCC_PCIE_1_PHY_BCR>,
1869 <&gcc GCC_PCIE_1_NOCSR_COM_PHY_BCR>;
1870 reset-names = "phy", "phy_nocsr";
1871
1872 assigned-clocks = <&gcc GCC_PCIE_1_PHY_RCHNG_CLK>;
1873 assigned-clock-rates = <100000000>;
1874
1875 power-domains = <&gcc PCIE_1_PHY_GDSC>;
1876
1877 #clock-cells = <0>;
1878 clock-output-names = "pcie1_pipe_clk";
1879
1880 #phy-cells = <0>;
1881
1882 status = "disabled";
1883 };
1884
1885 cryptobam: dma-controller@1dc4000 {
1886 compatible = "qcom,bam-v1.7.4", "qcom,bam-v1.7.0";
1887 reg = <0x0 0x01dc4000 0x0 0x28000>;
1888 interrupts = <GIC_SPI 272 IRQ_TYPE_LEVEL_HIGH>;
1889 #dma-cells = <1>;
1890 qcom,ee = <0>;
1891 qcom,controlled-remotely;
1892 iommus = <&apps_smmu 0x480 0x0>,
1893 <&apps_smmu 0x481 0x0>;
1894 };
1895
1896 crypto: crypto@1dfa000 {
1897 compatible = "qcom,sm8550-qce", "qcom,sm8150-qce", "qcom,qce";
1898 reg = <0x0 0x01dfa000 0x0 0x6000>;
1899 dmas = <&cryptobam 4>, <&cryptobam 5>;
1900 dma-names = "rx", "tx";
1901 iommus = <&apps_smmu 0x480 0x0>,
1902 <&apps_smmu 0x481 0x0>;
1903 interconnects = <&aggre2_noc MASTER_CRYPTO 0 &mc_virt SLAVE_EBI1 0>;
1904 interconnect-names = "memory";
1905 };
1906
1907 ufs_mem_phy: phy@1d80000 {
1908 compatible = "qcom,sm8550-qmp-ufs-phy";
1909 reg = <0x0 0x01d80000 0x0 0x2000>;
1910 clocks = <&tcsr TCSR_UFS_CLKREF_EN>,
1911 <&gcc GCC_UFS_PHY_PHY_AUX_CLK>;
1912 clock-names = "ref", "ref_aux";
1913
1914 power-domains = <&gcc UFS_MEM_PHY_GDSC>;
1915
1916 resets = <&ufs_mem_hc 0>;
1917 reset-names = "ufsphy";
1918
1919 #clock-cells = <1>;
1920 #phy-cells = <0>;
1921
1922 status = "disabled";
1923 };
1924
1925 ufs_mem_hc: ufs@1d84000 {
1926 compatible = "qcom,sm8550-ufshc", "qcom,ufshc",
1927 "jedec,ufs-2.0";
1928 reg = <0x0 0x01d84000 0x0 0x3000>;
1929 interrupts = <GIC_SPI 265 IRQ_TYPE_LEVEL_HIGH>;
1930 phys = <&ufs_mem_phy>;
1931 phy-names = "ufsphy";
1932 lanes-per-direction = <2>;
1933 #reset-cells = <1>;
1934 resets = <&gcc GCC_UFS_PHY_BCR>;
1935 reset-names = "rst";
1936
1937 power-domains = <&gcc UFS_PHY_GDSC>;
1938 required-opps = <&rpmhpd_opp_nom>;
1939
1940 iommus = <&apps_smmu 0x60 0x0>;
1941 dma-coherent;
1942
1943 interconnects = <&aggre1_noc MASTER_UFS_MEM 0 &mc_virt SLAVE_EBI1 0>,
1944 <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_UFS_MEM_CFG 0>;
1945
1946 interconnect-names = "ufs-ddr", "cpu-ufs";
1947 clock-names = "core_clk",
1948 "bus_aggr_clk",
1949 "iface_clk",
1950 "core_clk_unipro",
1951 "ref_clk",
1952 "tx_lane0_sync_clk",
1953 "rx_lane0_sync_clk",
1954 "rx_lane1_sync_clk";
1955 clocks = <&gcc GCC_UFS_PHY_AXI_CLK>,
1956 <&gcc GCC_AGGRE_UFS_PHY_AXI_CLK>,
1957 <&gcc GCC_UFS_PHY_AHB_CLK>,
1958 <&gcc GCC_UFS_PHY_UNIPRO_CORE_CLK>,
1959 <&tcsr TCSR_UFS_PAD_CLKREF_EN>,
1960 <&gcc GCC_UFS_PHY_TX_SYMBOL_0_CLK>,
1961 <&gcc GCC_UFS_PHY_RX_SYMBOL_0_CLK>,
1962 <&gcc GCC_UFS_PHY_RX_SYMBOL_1_CLK>;
1963 freq-table-hz =
1964 <75000000 300000000>,
1965 <0 0>,
1966 <0 0>,
1967 <75000000 300000000>,
1968 <100000000 403000000>,
1969 <0 0>,
1970 <0 0>,
1971 <0 0>;
1972 qcom,ice = <&ice>;
1973
1974 status = "disabled";
1975 };
1976
1977 ice: crypto@1d88000 {
1978 compatible = "qcom,sm8550-inline-crypto-engine",
1979 "qcom,inline-crypto-engine";
1980 reg = <0 0x01d88000 0 0x8000>;
1981 clocks = <&gcc GCC_UFS_PHY_ICE_CORE_CLK>;
1982 };
1983
1984 tcsr_mutex: hwlock@1f40000 {
1985 compatible = "qcom,tcsr-mutex";
1986 reg = <0 0x01f40000 0 0x20000>;
1987 #hwlock-cells = <1>;
1988 };
1989
1990 tcsr: clock-controller@1fc0000 {
1991 compatible = "qcom,sm8550-tcsr", "syscon";
1992 reg = <0 0x01fc0000 0 0x30000>;
1993 clocks = <&rpmhcc RPMH_CXO_CLK>;
1994 #clock-cells = <1>;
1995 #reset-cells = <1>;
1996 };
1997
1998 gpu: gpu@3d00000 {
1999 compatible = "qcom,adreno-43050a01", "qcom,adreno";
2000 reg = <0x0 0x03d00000 0x0 0x40000>,
2001 <0x0 0x03d9e000 0x0 0x1000>,
2002 <0x0 0x03d61000 0x0 0x800>;
2003 reg-names = "kgsl_3d0_reg_memory",
2004 "cx_mem",
2005 "cx_dbgc";
2006
2007 interrupts = <GIC_SPI 300 IRQ_TYPE_LEVEL_HIGH>;
2008
2009 iommus = <&adreno_smmu 0 0x0>,
2010 <&adreno_smmu 1 0x0>;
2011
2012 operating-points-v2 = <&gpu_opp_table>;
2013
2014 qcom,gmu = <&gmu>;
2015
2016 status = "disabled";
2017
2018 zap-shader {
2019 memory-region = <&gpu_micro_code_mem>;
2020 };
2021
2022 /* Speedbin needs more work on A740+, keep only lower freqs */
2023 gpu_opp_table: opp-table {
2024 compatible = "operating-points-v2";
2025
2026 opp-680000000 {
2027 opp-hz = /bits/ 64 <680000000>;
2028 opp-level = <RPMH_REGULATOR_LEVEL_SVS_L1>;
2029 };
2030
2031 opp-615000000 {
2032 opp-hz = /bits/ 64 <615000000>;
2033 opp-level = <RPMH_REGULATOR_LEVEL_SVS_L0>;
2034 };
2035
2036 opp-550000000 {
2037 opp-hz = /bits/ 64 <550000000>;
2038 opp-level = <RPMH_REGULATOR_LEVEL_SVS>;
2039 };
2040
2041 opp-475000000 {
2042 opp-hz = /bits/ 64 <475000000>;
2043 opp-level = <RPMH_REGULATOR_LEVEL_LOW_SVS_L1>;
2044 };
2045
2046 opp-401000000 {
2047 opp-hz = /bits/ 64 <401000000>;
2048 opp-level = <RPMH_REGULATOR_LEVEL_LOW_SVS>;
2049 };
2050
2051 opp-348000000 {
2052 opp-hz = /bits/ 64 <348000000>;
2053 opp-level = <RPMH_REGULATOR_LEVEL_LOW_SVS_D0>;
2054 };
2055
2056 opp-295000000 {
2057 opp-hz = /bits/ 64 <295000000>;
2058 opp-level = <RPMH_REGULATOR_LEVEL_LOW_SVS_D1>;
2059 };
2060
2061 opp-220000000 {
2062 opp-hz = /bits/ 64 <220000000>;
2063 opp-level = <RPMH_REGULATOR_LEVEL_LOW_SVS_D2>;
2064 };
2065 };
2066 };
2067
2068 gmu: gmu@3d6a000 {
2069 compatible = "qcom,adreno-gmu-740.1", "qcom,adreno-gmu";
2070 reg = <0x0 0x03d6a000 0x0 0x35000>,
2071 <0x0 0x03d50000 0x0 0x10000>,
2072 <0x0 0x0b280000 0x0 0x10000>;
2073 reg-names = "gmu", "rscc", "gmu_pdc";
2074
2075 interrupts = <GIC_SPI 304 IRQ_TYPE_LEVEL_HIGH>,
2076 <GIC_SPI 305 IRQ_TYPE_LEVEL_HIGH>;
2077 interrupt-names = "hfi", "gmu";
2078
2079 clocks = <&gpucc GPU_CC_AHB_CLK>,
2080 <&gpucc GPU_CC_CX_GMU_CLK>,
2081 <&gpucc GPU_CC_CXO_CLK>,
2082 <&gcc GCC_DDRSS_GPU_AXI_CLK>,
2083 <&gcc GCC_GPU_MEMNOC_GFX_CLK>,
2084 <&gpucc GPU_CC_HUB_CX_INT_CLK>,
2085 <&gpucc GPU_CC_DEMET_CLK>;
2086 clock-names = "ahb",
2087 "gmu",
2088 "cxo",
2089 "axi",
2090 "memnoc",
2091 "hub",
2092 "demet";
2093
2094 power-domains = <&gpucc GPU_CC_CX_GDSC>,
2095 <&gpucc GPU_CC_GX_GDSC>;
2096 power-domain-names = "cx",
2097 "gx";
2098
2099 iommus = <&adreno_smmu 5 0x0>;
2100
2101 qcom,qmp = <&aoss_qmp>;
2102
2103 operating-points-v2 = <&gmu_opp_table>;
2104
2105 gmu_opp_table: opp-table {
2106 compatible = "operating-points-v2";
2107
2108 opp-500000000 {
2109 opp-hz = /bits/ 64 <500000000>;
2110 opp-level = <RPMH_REGULATOR_LEVEL_SVS>;
2111 };
2112
2113 opp-200000000 {
2114 opp-hz = /bits/ 64 <200000000>;
2115 opp-level = <RPMH_REGULATOR_LEVEL_LOW_SVS>;
2116 };
2117 };
2118 };
2119
2120 gpucc: clock-controller@3d90000 {
2121 compatible = "qcom,sm8550-gpucc";
2122 reg = <0 0x03d90000 0 0xa000>;
2123 clocks = <&bi_tcxo_div2>,
2124 <&gcc GCC_GPU_GPLL0_CLK_SRC>,
2125 <&gcc GCC_GPU_GPLL0_DIV_CLK_SRC>;
2126 #clock-cells = <1>;
2127 #reset-cells = <1>;
2128 #power-domain-cells = <1>;
2129 };
2130
2131 adreno_smmu: iommu@3da0000 {
2132 compatible = "qcom,sm8550-smmu-500", "qcom,adreno-smmu",
2133 "qcom,smmu-500", "arm,mmu-500";
2134 reg = <0x0 0x03da0000 0x0 0x40000>;
2135 #iommu-cells = <2>;
2136 #global-interrupts = <1>;
2137 interrupts = <GIC_SPI 673 IRQ_TYPE_LEVEL_HIGH>,
2138 <GIC_SPI 677 IRQ_TYPE_LEVEL_HIGH>,
2139 <GIC_SPI 678 IRQ_TYPE_LEVEL_HIGH>,
2140 <GIC_SPI 679 IRQ_TYPE_LEVEL_HIGH>,
2141 <GIC_SPI 680 IRQ_TYPE_LEVEL_HIGH>,
2142 <GIC_SPI 681 IRQ_TYPE_LEVEL_HIGH>,
2143 <GIC_SPI 682 IRQ_TYPE_LEVEL_HIGH>,
2144 <GIC_SPI 683 IRQ_TYPE_LEVEL_HIGH>,
2145 <GIC_SPI 684 IRQ_TYPE_LEVEL_HIGH>,
2146 <GIC_SPI 685 IRQ_TYPE_LEVEL_HIGH>,
2147 <GIC_SPI 686 IRQ_TYPE_LEVEL_HIGH>,
2148 <GIC_SPI 687 IRQ_TYPE_LEVEL_HIGH>,
2149 <GIC_SPI 422 IRQ_TYPE_LEVEL_HIGH>,
2150 <GIC_SPI 476 IRQ_TYPE_LEVEL_HIGH>,
2151 <GIC_SPI 574 IRQ_TYPE_LEVEL_HIGH>,
2152 <GIC_SPI 575 IRQ_TYPE_LEVEL_HIGH>,
2153 <GIC_SPI 576 IRQ_TYPE_LEVEL_HIGH>,
2154 <GIC_SPI 577 IRQ_TYPE_LEVEL_HIGH>,
2155 <GIC_SPI 659 IRQ_TYPE_LEVEL_HIGH>,
2156 <GIC_SPI 661 IRQ_TYPE_LEVEL_HIGH>,
2157 <GIC_SPI 664 IRQ_TYPE_LEVEL_HIGH>,
2158 <GIC_SPI 665 IRQ_TYPE_LEVEL_HIGH>,
2159 <GIC_SPI 666 IRQ_TYPE_LEVEL_HIGH>,
2160 <GIC_SPI 668 IRQ_TYPE_LEVEL_HIGH>,
2161 <GIC_SPI 669 IRQ_TYPE_LEVEL_HIGH>,
2162 <GIC_SPI 699 IRQ_TYPE_LEVEL_HIGH>;
2163 clocks = <&gpucc GPU_CC_HLOS1_VOTE_GPU_SMMU_CLK>,
2164 <&gcc GCC_GPU_MEMNOC_GFX_CLK>,
2165 <&gcc GCC_GPU_SNOC_DVM_GFX_CLK>,
2166 <&gpucc GPU_CC_AHB_CLK>;
2167 clock-names = "hlos",
2168 "bus",
2169 "iface",
2170 "ahb";
2171 power-domains = <&gpucc GPU_CC_CX_GDSC>;
2172 dma-coherent;
2173 };
2174
2175 ipa: ipa@3f40000 {
2176 compatible = "qcom,sm8550-ipa";
2177
2178 iommus = <&apps_smmu 0x4a0 0x0>,
2179 <&apps_smmu 0x4a2 0x0>;
2180 reg = <0 0x3f40000 0 0x10000>,
2181 <0 0x3f50000 0 0x5000>,
2182 <0 0x3e04000 0 0xfc000>;
2183 reg-names = "ipa-reg",
2184 "ipa-shared",
2185 "gsi";
2186
2187 interrupts-extended = <&intc GIC_SPI 654 IRQ_TYPE_EDGE_RISING>,
2188 <&intc GIC_SPI 432 IRQ_TYPE_LEVEL_HIGH>,
2189 <&ipa_smp2p_in 0 IRQ_TYPE_EDGE_RISING>,
2190 <&ipa_smp2p_in 1 IRQ_TYPE_EDGE_RISING>;
2191 interrupt-names = "ipa",
2192 "gsi",
2193 "ipa-clock-query",
2194 "ipa-setup-ready";
2195
2196 clocks = <&rpmhcc RPMH_IPA_CLK>;
2197 clock-names = "core";
2198
2199 interconnects = <&aggre2_noc MASTER_IPA 0 &mc_virt SLAVE_EBI1 0>,
2200 <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_IPA_CFG 0>;
2201 interconnect-names = "memory",
2202 "config";
2203
2204 qcom,qmp = <&aoss_qmp>;
2205
2206 qcom,smem-states = <&ipa_smp2p_out 0>,
2207 <&ipa_smp2p_out 1>;
2208 qcom,smem-state-names = "ipa-clock-enabled-valid",
2209 "ipa-clock-enabled";
2210
2211 status = "disabled";
2212 };
2213
2214 remoteproc_mpss: remoteproc@4080000 {
2215 compatible = "qcom,sm8550-mpss-pas";
2216 reg = <0x0 0x04080000 0x0 0x4040>;
2217
2218 interrupts-extended = <&intc GIC_SPI 264 IRQ_TYPE_EDGE_RISING>,
2219 <&smp2p_modem_in 0 IRQ_TYPE_EDGE_RISING>,
2220 <&smp2p_modem_in 1 IRQ_TYPE_EDGE_RISING>,
2221 <&smp2p_modem_in 2 IRQ_TYPE_EDGE_RISING>,
2222 <&smp2p_modem_in 3 IRQ_TYPE_EDGE_RISING>,
2223 <&smp2p_modem_in 7 IRQ_TYPE_EDGE_RISING>;
2224 interrupt-names = "wdog", "fatal", "ready", "handover",
2225 "stop-ack", "shutdown-ack";
2226
2227 clocks = <&rpmhcc RPMH_CXO_CLK>;
2228 clock-names = "xo";
2229
2230 power-domains = <&rpmhpd RPMHPD_CX>,
2231 <&rpmhpd RPMHPD_MSS>;
2232 power-domain-names = "cx", "mss";
2233
2234 interconnects = <&mc_virt MASTER_LLCC 0 &mc_virt SLAVE_EBI1 0>;
2235
2236 memory-region = <&mpss_mem>, <&q6_mpss_dtb_mem>, <&mpss_dsm_mem>;
2237
2238 qcom,qmp = <&aoss_qmp>;
2239
2240 qcom,smem-states = <&smp2p_modem_out 0>;
2241 qcom,smem-state-names = "stop";
2242
2243 status = "disabled";
2244
2245 glink-edge {
2246 interrupts-extended = <&ipcc IPCC_CLIENT_MPSS
2247 IPCC_MPROC_SIGNAL_GLINK_QMP
2248 IRQ_TYPE_EDGE_RISING>;
2249 mboxes = <&ipcc IPCC_CLIENT_MPSS
2250 IPCC_MPROC_SIGNAL_GLINK_QMP>;
2251 label = "mpss";
2252 qcom,remote-pid = <1>;
2253 };
2254 };
2255
2256 lpass_wsa2macro: codec@6aa0000 {
2257 compatible = "qcom,sm8550-lpass-wsa-macro";
2258 reg = <0 0x06aa0000 0 0x1000>;
2259 clocks = <&q6prmcc LPASS_CLK_ID_WSA2_CORE_TX_MCLK LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
2260 <&q6prmcc LPASS_HW_MACRO_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
2261 <&q6prmcc LPASS_HW_DCODEC_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
2262 <&lpass_vamacro>;
2263 clock-names = "mclk", "macro", "dcodec", "fsgen";
2264
2265 #clock-cells = <0>;
2266 clock-output-names = "wsa2-mclk";
2267 #sound-dai-cells = <1>;
2268 };
2269
2270 swr3: soundwire@6ab0000 {
2271 compatible = "qcom,soundwire-v2.0.0";
2272 reg = <0 0x06ab0000 0 0x10000>;
2273 interrupts = <GIC_SPI 171 IRQ_TYPE_LEVEL_HIGH>;
2274 clocks = <&lpass_wsa2macro>;
2275 clock-names = "iface";
2276 label = "WSA2";
2277
2278 pinctrl-0 = <&wsa2_swr_active>;
2279 pinctrl-names = "default";
2280
2281 qcom,din-ports = <4>;
2282 qcom,dout-ports = <9>;
2283
2284 qcom,ports-sinterval = /bits/ 16 <0x07 0x1f 0x3f 0x07 0x1f 0x3f 0x18f 0xff 0xff 0x0f 0x0f 0xff 0x31f>;
2285 qcom,ports-offset1 = /bits/ 8 <0x01 0x03 0x05 0x02 0x04 0x15 0x00 0xff 0xff 0x06 0x0d 0xff 0x00>;
2286 qcom,ports-offset2 = /bits/ 8 <0xff 0x07 0x1f 0xff 0x07 0x1f 0xff 0xff 0xff 0xff 0xff 0xff 0xff>;
2287 qcom,ports-hstart = /bits/ 8 <0xff 0xff 0xff 0xff 0xff 0xff 0x08 0xff 0xff 0xff 0xff 0xff 0x0f>;
2288 qcom,ports-hstop = /bits/ 8 <0xff 0xff 0xff 0xff 0xff 0xff 0x08 0xff 0xff 0xff 0xff 0xff 0x0f>;
2289 qcom,ports-word-length = /bits/ 8 <0xff 0xff 0xff 0xff 0xff 0xff 0x08 0xff 0xff 0xff 0xff 0xff 0x18>;
2290 qcom,ports-block-pack-mode = /bits/ 8 <0x00 0x01 0x01 0x00 0x01 0x01 0x00 0x00 0x00 0x01 0x01 0x00 0x00>;
2291 qcom,ports-block-group-count = /bits/ 8 <0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff>;
2292 qcom,ports-lane-control = /bits/ 8 <0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff>;
2293
2294 #address-cells = <2>;
2295 #size-cells = <0>;
2296 #sound-dai-cells = <1>;
2297 status = "disabled";
2298 };
2299
2300 lpass_rxmacro: codec@6ac0000 {
2301 compatible = "qcom,sm8550-lpass-rx-macro";
2302 reg = <0 0x06ac0000 0 0x1000>;
2303 clocks = <&q6prmcc LPASS_CLK_ID_RX_CORE_TX_MCLK LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
2304 <&q6prmcc LPASS_HW_MACRO_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
2305 <&q6prmcc LPASS_HW_DCODEC_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
2306 <&lpass_vamacro>;
2307 clock-names = "mclk", "macro", "dcodec", "fsgen";
2308
2309 #clock-cells = <0>;
2310 clock-output-names = "mclk";
2311 #sound-dai-cells = <1>;
2312 };
2313
2314 swr1: soundwire@6ad0000 {
2315 compatible = "qcom,soundwire-v2.0.0";
2316 reg = <0 0x06ad0000 0 0x10000>;
2317 interrupts = <GIC_SPI 155 IRQ_TYPE_LEVEL_HIGH>;
2318 clocks = <&lpass_rxmacro>;
2319 clock-names = "iface";
2320 label = "RX";
2321
2322 pinctrl-0 = <&rx_swr_active>;
2323 pinctrl-names = "default";
2324
2325 qcom,din-ports = <1>;
2326 qcom,dout-ports = <11>;
2327
2328 qcom,ports-sinterval = /bits/ 16 <0x03 0x3f 0x1f 0x07 0x00 0x18f 0xff 0xff 0xff 0xff 0xff 0xff>;
2329 qcom,ports-offset1 = /bits/ 8 <0x00 0x00 0x0b 0x01 0x00 0x00 0xff 0xff 0xff 0xff 0xff 0xff>;
2330 qcom,ports-offset2 = /bits/ 8 <0x00 0x00 0x0b 0x00 0x00 0x00 0xff 0xff 0xff 0xff 0xff 0xff>;
2331 qcom,ports-hstart = /bits/ 8 <0xff 0x03 0xff 0xff 0xff 0x08 0xff 0xff 0xff 0xff 0xff 0xff>;
2332 qcom,ports-hstop = /bits/ 8 <0xff 0x06 0xff 0xff 0xff 0x08 0xff 0xff 0xff 0xff 0xff 0xff>;
2333 qcom,ports-word-length = /bits/ 8 <0x01 0x07 0x04 0xff 0xff 0x0f 0xff 0xff 0xff 0xff 0xff 0xff>;
2334 qcom,ports-block-pack-mode = /bits/ 8 <0xff 0x00 0x01 0xff 0xff 0x00 0xff 0xff 0xff 0xff 0xff 0xff>;
2335 qcom,ports-block-group-count = /bits/ 8 <0xff 0xff 0xff 0xff 0x00 0x00 0xff 0xff 0xff 0xff 0xff 0xff>;
2336 qcom,ports-lane-control = /bits/ 8 <0x01 0x00 0x00 0x00 0x00 0x00 0xff 0xff 0xff 0xff 0xff 0xff>;
2337
2338 #address-cells = <2>;
2339 #size-cells = <0>;
2340 #sound-dai-cells = <1>;
2341 status = "disabled";
2342 };
2343
2344 lpass_txmacro: codec@6ae0000 {
2345 compatible = "qcom,sm8550-lpass-tx-macro";
2346 reg = <0 0x06ae0000 0 0x1000>;
2347 clocks = <&q6prmcc LPASS_CLK_ID_TX_CORE_MCLK LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
2348 <&q6prmcc LPASS_HW_MACRO_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
2349 <&q6prmcc LPASS_HW_DCODEC_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
2350 <&lpass_vamacro>;
2351 clock-names = "mclk", "macro", "dcodec", "fsgen";
2352
2353 #clock-cells = <0>;
2354 clock-output-names = "mclk";
2355 #sound-dai-cells = <1>;
2356 };
2357
2358 lpass_wsamacro: codec@6b00000 {
2359 compatible = "qcom,sm8550-lpass-wsa-macro";
2360 reg = <0 0x06b00000 0 0x1000>;
2361 clocks = <&q6prmcc LPASS_CLK_ID_WSA_CORE_TX_MCLK LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
2362 <&q6prmcc LPASS_HW_MACRO_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
2363 <&q6prmcc LPASS_HW_DCODEC_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
2364 <&lpass_vamacro>;
2365 clock-names = "mclk", "macro", "dcodec", "fsgen";
2366
2367 #clock-cells = <0>;
2368 clock-output-names = "mclk";
2369 #sound-dai-cells = <1>;
2370 };
2371
2372 swr0: soundwire@6b10000 {
2373 compatible = "qcom,soundwire-v2.0.0";
2374 reg = <0 0x06b10000 0 0x10000>;
2375 interrupts = <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>;
2376 clocks = <&lpass_wsamacro>;
2377 clock-names = "iface";
2378 label = "WSA";
2379
2380 pinctrl-0 = <&wsa_swr_active>;
2381 pinctrl-names = "default";
2382
2383 qcom,din-ports = <4>;
2384 qcom,dout-ports = <9>;
2385
2386 qcom,ports-sinterval = /bits/ 16 <0x07 0x1f 0x3f 0x07 0x1f 0x3f 0x18f 0xff 0xff 0x0f 0x0f 0xff 0x31f>;
2387 qcom,ports-offset1 = /bits/ 8 <0x01 0x03 0x05 0x02 0x04 0x15 0x00 0xff 0xff 0x06 0x0d 0xff 0x00>;
2388 qcom,ports-offset2 = /bits/ 8 <0xff 0x07 0x1f 0xff 0x07 0x1f 0xff 0xff 0xff 0xff 0xff 0xff 0xff>;
2389 qcom,ports-hstart = /bits/ 8 <0xff 0xff 0xff 0xff 0xff 0xff 0x08 0xff 0xff 0xff 0xff 0xff 0x0f>;
2390 qcom,ports-hstop = /bits/ 8 <0xff 0xff 0xff 0xff 0xff 0xff 0x08 0xff 0xff 0xff 0xff 0xff 0x0f>;
2391 qcom,ports-word-length = /bits/ 8 <0xff 0xff 0xff 0xff 0xff 0xff 0x08 0xff 0xff 0xff 0xff 0xff 0x18>;
2392 qcom,ports-block-pack-mode = /bits/ 8 <0x00 0x01 0x01 0x00 0x01 0x01 0x00 0x00 0x00 0x01 0x01 0x00 0x00>;
2393 qcom,ports-block-group-count = /bits/ 8 <0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff>;
2394 qcom,ports-lane-control = /bits/ 8 <0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff>;
2395
2396 #address-cells = <2>;
2397 #size-cells = <0>;
2398 #sound-dai-cells = <1>;
2399 status = "disabled";
2400 };
2401
2402 swr2: soundwire@6d30000 {
2403 compatible = "qcom,soundwire-v2.0.0";
2404 reg = <0 0x06d30000 0 0x10000>;
2405 interrupts = <GIC_SPI 496 IRQ_TYPE_LEVEL_HIGH>,
2406 <GIC_SPI 520 IRQ_TYPE_LEVEL_HIGH>;
2407 interrupt-names = "core", "wakeup";
2408 clocks = <&lpass_txmacro>;
2409 clock-names = "iface";
2410 label = "TX";
2411
2412 pinctrl-0 = <&tx_swr_active>;
2413 pinctrl-names = "default";
2414
2415 qcom,din-ports = <4>;
2416 qcom,dout-ports = <0>;
2417 qcom,ports-sinterval-low = /bits/ 8 <0x01 0x01 0x03 0x03>;
2418 qcom,ports-offset1 = /bits/ 8 <0x00 0x00 0x01 0x01>;
2419 qcom,ports-offset2 = /bits/ 8 <0x00 0x00 0x00 0x00>;
2420 qcom,ports-hstart = /bits/ 8 <0xff 0xff 0xff 0xff>;
2421 qcom,ports-hstop = /bits/ 8 <0xff 0xff 0xff 0xff>;
2422 qcom,ports-word-length = /bits/ 8 <0xff 0xff 0xff 0xff>;
2423 qcom,ports-block-pack-mode = /bits/ 8 <0xff 0xff 0xff 0xff>;
2424 qcom,ports-block-group-count = /bits/ 8 <0xff 0xff 0xff 0xff>;
2425 qcom,ports-lane-control = /bits/ 8 <0x01 0x02 0x00 0x00>;
2426
2427 #address-cells = <2>;
2428 #size-cells = <0>;
2429 #sound-dai-cells = <1>;
2430 status = "disabled";
2431 };
2432
2433 lpass_vamacro: codec@6d44000 {
2434 compatible = "qcom,sm8550-lpass-va-macro";
2435 reg = <0 0x06d44000 0 0x1000>;
2436 clocks = <&q6prmcc LPASS_CLK_ID_TX_CORE_MCLK LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
2437 <&q6prmcc LPASS_HW_MACRO_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
2438 <&q6prmcc LPASS_HW_DCODEC_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>;
2439 clock-names = "mclk", "macro", "dcodec";
2440
2441 #clock-cells = <0>;
2442 clock-output-names = "fsgen";
2443 #sound-dai-cells = <1>;
2444 };
2445
2446 lpass_tlmm: pinctrl@6e80000 {
2447 compatible = "qcom,sm8550-lpass-lpi-pinctrl";
2448 reg = <0 0x06e80000 0 0x20000>,
2449 <0 0x07250000 0 0x10000>;
2450 gpio-controller;
2451 #gpio-cells = <2>;
2452 gpio-ranges = <&lpass_tlmm 0 0 23>;
2453
2454 clocks = <&q6prmcc LPASS_HW_MACRO_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
2455 <&q6prmcc LPASS_HW_DCODEC_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>;
2456 clock-names = "core", "audio";
2457
2458 tx_swr_active: tx-swr-active-state {
2459 clk-pins {
2460 pins = "gpio0";
2461 function = "swr_tx_clk";
2462 drive-strength = <2>;
2463 slew-rate = <1>;
2464 bias-disable;
2465 };
2466
2467 data-pins {
2468 pins = "gpio1", "gpio2", "gpio14";
2469 function = "swr_tx_data";
2470 drive-strength = <2>;
2471 slew-rate = <1>;
2472 bias-bus-hold;
2473 };
2474 };
2475
2476 rx_swr_active: rx-swr-active-state {
2477 clk-pins {
2478 pins = "gpio3";
2479 function = "swr_rx_clk";
2480 drive-strength = <2>;
2481 slew-rate = <1>;
2482 bias-disable;
2483 };
2484
2485 data-pins {
2486 pins = "gpio4", "gpio5";
2487 function = "swr_rx_data";
2488 drive-strength = <2>;
2489 slew-rate = <1>;
2490 bias-bus-hold;
2491 };
2492 };
2493
2494 dmic01_default: dmic01-default-state {
2495 clk-pins {
2496 pins = "gpio6";
2497 function = "dmic1_clk";
2498 drive-strength = <8>;
2499 output-high;
2500 };
2501
2502 data-pins {
2503 pins = "gpio7";
2504 function = "dmic1_data";
2505 drive-strength = <8>;
2506 input-enable;
2507 };
2508 };
2509
2510 dmic02_default: dmic02-default-state {
2511 clk-pins {
2512 pins = "gpio8";
2513 function = "dmic2_clk";
2514 drive-strength = <8>;
2515 output-high;
2516 };
2517
2518 data-pins {
2519 pins = "gpio9";
2520 function = "dmic2_data";
2521 drive-strength = <8>;
2522 input-enable;
2523 };
2524 };
2525
2526 wsa_swr_active: wsa-swr-active-state {
2527 clk-pins {
2528 pins = "gpio10";
2529 function = "wsa_swr_clk";
2530 drive-strength = <2>;
2531 slew-rate = <1>;
2532 bias-disable;
2533 };
2534
2535 data-pins {
2536 pins = "gpio11";
2537 function = "wsa_swr_data";
2538 drive-strength = <2>;
2539 slew-rate = <1>;
2540 bias-bus-hold;
2541 };
2542 };
2543
2544 wsa2_swr_active: wsa2-swr-active-state {
2545 clk-pins {
2546 pins = "gpio15";
2547 function = "wsa2_swr_clk";
2548 drive-strength = <2>;
2549 slew-rate = <1>;
2550 bias-disable;
2551 };
2552
2553 data-pins {
2554 pins = "gpio16";
2555 function = "wsa2_swr_data";
2556 drive-strength = <2>;
2557 slew-rate = <1>;
2558 bias-bus-hold;
2559 };
2560 };
2561 };
2562
2563 lpass_lpiaon_noc: interconnect@7400000 {
2564 compatible = "qcom,sm8550-lpass-lpiaon-noc";
2565 reg = <0 0x07400000 0 0x19080>;
2566 #interconnect-cells = <2>;
2567 qcom,bcm-voters = <&apps_bcm_voter>;
2568 };
2569
2570 lpass_lpicx_noc: interconnect@7430000 {
2571 compatible = "qcom,sm8550-lpass-lpicx-noc";
2572 reg = <0 0x07430000 0 0x3a200>;
2573 #interconnect-cells = <2>;
2574 qcom,bcm-voters = <&apps_bcm_voter>;
2575 };
2576
2577 lpass_ag_noc: interconnect@7e40000 {
2578 compatible = "qcom,sm8550-lpass-ag-noc";
2579 reg = <0 0x07e40000 0 0xe080>;
2580 #interconnect-cells = <2>;
2581 qcom,bcm-voters = <&apps_bcm_voter>;
2582 };
2583
2584 sdhc_2: mmc@8804000 {
2585 compatible = "qcom,sm8550-sdhci", "qcom,sdhci-msm-v5";
2586 reg = <0 0x08804000 0 0x1000>;
2587
2588 interrupts = <GIC_SPI 207 IRQ_TYPE_LEVEL_HIGH>,
2589 <GIC_SPI 223 IRQ_TYPE_LEVEL_HIGH>;
2590 interrupt-names = "hc_irq", "pwr_irq";
2591
2592 clocks = <&gcc GCC_SDCC2_AHB_CLK>,
2593 <&gcc GCC_SDCC2_APPS_CLK>,
2594 <&rpmhcc RPMH_CXO_CLK>;
2595 clock-names = "iface", "core", "xo";
2596 iommus = <&apps_smmu 0x540 0>;
2597 qcom,dll-config = <0x0007642c>;
2598 qcom,ddr-config = <0x80040868>;
2599 power-domains = <&rpmhpd RPMHPD_CX>;
2600 operating-points-v2 = <&sdhc2_opp_table>;
2601
2602 interconnects = <&aggre2_noc MASTER_SDCC_2 0 &mc_virt SLAVE_EBI1 0>,
2603 <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_SDCC_2 0>;
2604 interconnect-names = "sdhc-ddr", "cpu-sdhc";
2605 bus-width = <4>;
2606 dma-coherent;
2607
2608 /* Forbid SDR104/SDR50 - broken hw! */
2609 sdhci-caps-mask = <0x3 0>;
2610
2611 status = "disabled";
2612
2613 sdhc2_opp_table: opp-table {
2614 compatible = "operating-points-v2";
2615
2616 opp-19200000 {
2617 opp-hz = /bits/ 64 <19200000>;
2618 required-opps = <&rpmhpd_opp_min_svs>;
2619 };
2620
2621 opp-50000000 {
2622 opp-hz = /bits/ 64 <50000000>;
2623 required-opps = <&rpmhpd_opp_low_svs>;
2624 };
2625
2626 opp-100000000 {
2627 opp-hz = /bits/ 64 <100000000>;
2628 required-opps = <&rpmhpd_opp_svs>;
2629 };
2630
2631 opp-202000000 {
2632 opp-hz = /bits/ 64 <202000000>;
2633 required-opps = <&rpmhpd_opp_svs_l1>;
2634 };
2635 };
2636 };
2637
2638 videocc: clock-controller@aaf0000 {
2639 compatible = "qcom,sm8550-videocc";
2640 reg = <0 0x0aaf0000 0 0x10000>;
2641 clocks = <&bi_tcxo_div2>,
2642 <&gcc GCC_VIDEO_AHB_CLK>;
2643 power-domains = <&rpmhpd RPMHPD_MMCX>;
2644 required-opps = <&rpmhpd_opp_low_svs>;
2645 #clock-cells = <1>;
2646 #reset-cells = <1>;
2647 #power-domain-cells = <1>;
2648 };
2649
2650 camcc: clock-controller@ade0000 {
2651 compatible = "qcom,sm8550-camcc";
2652 reg = <0 0x0ade0000 0 0x20000>;
2653 clocks = <&gcc GCC_CAMERA_AHB_CLK>,
2654 <&bi_tcxo_div2>,
2655 <&bi_tcxo_ao_div2>,
2656 <&sleep_clk>;
2657 power-domains = <&rpmhpd SM8550_MMCX>;
2658 required-opps = <&rpmhpd_opp_low_svs>;
2659 #clock-cells = <1>;
2660 #reset-cells = <1>;
2661 #power-domain-cells = <1>;
2662 };
2663
2664 mdss: display-subsystem@ae00000 {
2665 compatible = "qcom,sm8550-mdss";
2666 reg = <0 0x0ae00000 0 0x1000>;
2667 reg-names = "mdss";
2668
2669 interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>;
2670 interrupt-controller;
2671 #interrupt-cells = <1>;
2672
2673 clocks = <&dispcc DISP_CC_MDSS_AHB_CLK>,
2674 <&gcc GCC_DISP_AHB_CLK>,
2675 <&gcc GCC_DISP_HF_AXI_CLK>,
2676 <&dispcc DISP_CC_MDSS_MDP_CLK>;
2677
2678 resets = <&dispcc DISP_CC_MDSS_CORE_BCR>;
2679
2680 power-domains = <&dispcc MDSS_GDSC>;
2681
2682 interconnects = <&mmss_noc MASTER_MDP 0 &gem_noc SLAVE_LLCC 0>,
2683 <&mc_virt MASTER_LLCC 0 &mc_virt SLAVE_EBI1 0>;
2684 interconnect-names = "mdp0-mem", "mdp1-mem";
2685
2686 iommus = <&apps_smmu 0x1c00 0x2>;
2687
2688 #address-cells = <2>;
2689 #size-cells = <2>;
2690 ranges;
2691
2692 status = "disabled";
2693
2694 mdss_mdp: display-controller@ae01000 {
2695 compatible = "qcom,sm8550-dpu";
2696 reg = <0 0x0ae01000 0 0x8f000>,
2697 <0 0x0aeb0000 0 0x2008>;
2698 reg-names = "mdp", "vbif";
2699
2700 interrupt-parent = <&mdss>;
2701 interrupts = <0>;
2702
2703 clocks = <&gcc GCC_DISP_AHB_CLK>,
2704 <&gcc GCC_DISP_HF_AXI_CLK>,
2705 <&dispcc DISP_CC_MDSS_AHB_CLK>,
2706 <&dispcc DISP_CC_MDSS_MDP_LUT_CLK>,
2707 <&dispcc DISP_CC_MDSS_MDP_CLK>,
2708 <&dispcc DISP_CC_MDSS_VSYNC_CLK>;
2709 clock-names = "bus",
2710 "nrt_bus",
2711 "iface",
2712 "lut",
2713 "core",
2714 "vsync";
2715
2716 power-domains = <&rpmhpd RPMHPD_MMCX>;
2717
2718 assigned-clocks = <&dispcc DISP_CC_MDSS_VSYNC_CLK>;
2719 assigned-clock-rates = <19200000>;
2720
2721 operating-points-v2 = <&mdp_opp_table>;
2722
2723 ports {
2724 #address-cells = <1>;
2725 #size-cells = <0>;
2726
2727 port@0 {
2728 reg = <0>;
2729 dpu_intf1_out: endpoint {
2730 remote-endpoint = <&mdss_dsi0_in>;
2731 };
2732 };
2733
2734 port@1 {
2735 reg = <1>;
2736 dpu_intf2_out: endpoint {
2737 remote-endpoint = <&mdss_dsi1_in>;
2738 };
2739 };
2740
2741 port@2 {
2742 reg = <2>;
2743 dpu_intf0_out: endpoint {
2744 remote-endpoint = <&mdss_dp0_in>;
2745 };
2746 };
2747 };
2748
2749 mdp_opp_table: opp-table {
2750 compatible = "operating-points-v2";
2751
2752 opp-200000000 {
2753 opp-hz = /bits/ 64 <200000000>;
2754 required-opps = <&rpmhpd_opp_low_svs>;
2755 };
2756
2757 opp-325000000 {
2758 opp-hz = /bits/ 64 <325000000>;
2759 required-opps = <&rpmhpd_opp_svs>;
2760 };
2761
2762 opp-375000000 {
2763 opp-hz = /bits/ 64 <375000000>;
2764 required-opps = <&rpmhpd_opp_svs_l1>;
2765 };
2766
2767 opp-514000000 {
2768 opp-hz = /bits/ 64 <514000000>;
2769 required-opps = <&rpmhpd_opp_nom>;
2770 };
2771 };
2772 };
2773
2774 mdss_dp0: displayport-controller@ae90000 {
2775 compatible = "qcom,sm8550-dp", "qcom,sm8350-dp";
2776 reg = <0 0xae90000 0 0x200>,
2777 <0 0xae90200 0 0x200>,
2778 <0 0xae90400 0 0xc00>,
2779 <0 0xae91000 0 0x400>,
2780 <0 0xae91400 0 0x400>;
2781 interrupt-parent = <&mdss>;
2782 interrupts = <12>;
2783 clocks = <&dispcc DISP_CC_MDSS_AHB_CLK>,
2784 <&dispcc DISP_CC_MDSS_DPTX0_AUX_CLK>,
2785 <&dispcc DISP_CC_MDSS_DPTX0_LINK_CLK>,
2786 <&dispcc DISP_CC_MDSS_DPTX0_LINK_INTF_CLK>,
2787 <&dispcc DISP_CC_MDSS_DPTX0_PIXEL0_CLK>;
2788 clock-names = "core_iface",
2789 "core_aux",
2790 "ctrl_link",
2791 "ctrl_link_iface",
2792 "stream_pixel";
2793
2794 assigned-clocks = <&dispcc DISP_CC_MDSS_DPTX0_LINK_CLK_SRC>,
2795 <&dispcc DISP_CC_MDSS_DPTX0_PIXEL0_CLK_SRC>;
2796 assigned-clock-parents = <&usb_dp_qmpphy QMP_USB43DP_DP_LINK_CLK>,
2797 <&usb_dp_qmpphy QMP_USB43DP_DP_VCO_DIV_CLK>;
2798
2799 phys = <&usb_dp_qmpphy QMP_USB43DP_DP_PHY>;
2800 phy-names = "dp";
2801
2802 #sound-dai-cells = <0>;
2803
2804 operating-points-v2 = <&dp_opp_table>;
2805 power-domains = <&rpmhpd RPMHPD_MMCX>;
2806
2807 status = "disabled";
2808
2809 ports {
2810 #address-cells = <1>;
2811 #size-cells = <0>;
2812
2813 port@0 {
2814 reg = <0>;
2815 mdss_dp0_in: endpoint {
2816 remote-endpoint = <&dpu_intf0_out>;
2817 };
2818 };
2819
2820 port@1 {
2821 reg = <1>;
2822 mdss_dp0_out: endpoint {
2823 };
2824 };
2825 };
2826
2827 dp_opp_table: opp-table {
2828 compatible = "operating-points-v2";
2829
2830 opp-162000000 {
2831 opp-hz = /bits/ 64 <162000000>;
2832 required-opps = <&rpmhpd_opp_low_svs_d1>;
2833 };
2834
2835 opp-270000000 {
2836 opp-hz = /bits/ 64 <270000000>;
2837 required-opps = <&rpmhpd_opp_low_svs>;
2838 };
2839
2840 opp-540000000 {
2841 opp-hz = /bits/ 64 <540000000>;
2842 required-opps = <&rpmhpd_opp_svs_l1>;
2843 };
2844
2845 opp-810000000 {
2846 opp-hz = /bits/ 64 <810000000>;
2847 required-opps = <&rpmhpd_opp_nom>;
2848 };
2849 };
2850 };
2851
2852 mdss_dsi0: dsi@ae94000 {
2853 compatible = "qcom,sm8550-dsi-ctrl", "qcom,mdss-dsi-ctrl";
2854 reg = <0 0x0ae94000 0 0x400>;
2855 reg-names = "dsi_ctrl";
2856
2857 interrupt-parent = <&mdss>;
2858 interrupts = <4>;
2859
2860 clocks = <&dispcc DISP_CC_MDSS_BYTE0_CLK>,
2861 <&dispcc DISP_CC_MDSS_BYTE0_INTF_CLK>,
2862 <&dispcc DISP_CC_MDSS_PCLK0_CLK>,
2863 <&dispcc DISP_CC_MDSS_ESC0_CLK>,
2864 <&dispcc DISP_CC_MDSS_AHB_CLK>,
2865 <&gcc GCC_DISP_HF_AXI_CLK>;
2866 clock-names = "byte",
2867 "byte_intf",
2868 "pixel",
2869 "core",
2870 "iface",
2871 "bus";
2872
2873 power-domains = <&rpmhpd RPMHPD_MMCX>;
2874
2875 assigned-clocks = <&dispcc DISP_CC_MDSS_BYTE0_CLK_SRC>,
2876 <&dispcc DISP_CC_MDSS_PCLK0_CLK_SRC>;
2877 assigned-clock-parents = <&mdss_dsi0_phy 0>,
2878 <&mdss_dsi0_phy 1>;
2879
2880 operating-points-v2 = <&mdss_dsi_opp_table>;
2881
2882 phys = <&mdss_dsi0_phy>;
2883 phy-names = "dsi";
2884
2885 #address-cells = <1>;
2886 #size-cells = <0>;
2887
2888 status = "disabled";
2889
2890 ports {
2891 #address-cells = <1>;
2892 #size-cells = <0>;
2893
2894 port@0 {
2895 reg = <0>;
2896 mdss_dsi0_in: endpoint {
2897 remote-endpoint = <&dpu_intf1_out>;
2898 };
2899 };
2900
2901 port@1 {
2902 reg = <1>;
2903 mdss_dsi0_out: endpoint {
2904 };
2905 };
2906 };
2907
2908 mdss_dsi_opp_table: opp-table {
2909 compatible = "operating-points-v2";
2910
2911 opp-187500000 {
2912 opp-hz = /bits/ 64 <187500000>;
2913 required-opps = <&rpmhpd_opp_low_svs>;
2914 };
2915
2916 opp-300000000 {
2917 opp-hz = /bits/ 64 <300000000>;
2918 required-opps = <&rpmhpd_opp_svs>;
2919 };
2920
2921 opp-358000000 {
2922 opp-hz = /bits/ 64 <358000000>;
2923 required-opps = <&rpmhpd_opp_svs_l1>;
2924 };
2925 };
2926 };
2927
2928 mdss_dsi0_phy: phy@ae95000 {
2929 compatible = "qcom,sm8550-dsi-phy-4nm";
2930 reg = <0 0x0ae95000 0 0x200>,
2931 <0 0x0ae95200 0 0x280>,
2932 <0 0x0ae95500 0 0x400>;
2933 reg-names = "dsi_phy",
2934 "dsi_phy_lane",
2935 "dsi_pll";
2936
2937 clocks = <&dispcc DISP_CC_MDSS_AHB_CLK>,
2938 <&rpmhcc RPMH_CXO_CLK>;
2939 clock-names = "iface", "ref";
2940
2941 #clock-cells = <1>;
2942 #phy-cells = <0>;
2943
2944 status = "disabled";
2945 };
2946
2947 mdss_dsi1: dsi@ae96000 {
2948 compatible = "qcom,sm8550-dsi-ctrl", "qcom,mdss-dsi-ctrl";
2949 reg = <0 0x0ae96000 0 0x400>;
2950 reg-names = "dsi_ctrl";
2951
2952 interrupt-parent = <&mdss>;
2953 interrupts = <5>;
2954
2955 clocks = <&dispcc DISP_CC_MDSS_BYTE1_CLK>,
2956 <&dispcc DISP_CC_MDSS_BYTE1_INTF_CLK>,
2957 <&dispcc DISP_CC_MDSS_PCLK1_CLK>,
2958 <&dispcc DISP_CC_MDSS_ESC1_CLK>,
2959 <&dispcc DISP_CC_MDSS_AHB_CLK>,
2960 <&gcc GCC_DISP_HF_AXI_CLK>;
2961 clock-names = "byte",
2962 "byte_intf",
2963 "pixel",
2964 "core",
2965 "iface",
2966 "bus";
2967
2968 power-domains = <&rpmhpd RPMHPD_MMCX>;
2969
2970 assigned-clocks = <&dispcc DISP_CC_MDSS_BYTE1_CLK_SRC>,
2971 <&dispcc DISP_CC_MDSS_PCLK1_CLK_SRC>;
2972 assigned-clock-parents = <&mdss_dsi1_phy 0>,
2973 <&mdss_dsi1_phy 1>;
2974
2975 operating-points-v2 = <&mdss_dsi_opp_table>;
2976
2977 phys = <&mdss_dsi1_phy>;
2978 phy-names = "dsi";
2979
2980 #address-cells = <1>;
2981 #size-cells = <0>;
2982
2983 status = "disabled";
2984
2985 ports {
2986 #address-cells = <1>;
2987 #size-cells = <0>;
2988
2989 port@0 {
2990 reg = <0>;
2991 mdss_dsi1_in: endpoint {
2992 remote-endpoint = <&dpu_intf2_out>;
2993 };
2994 };
2995
2996 port@1 {
2997 reg = <1>;
2998 mdss_dsi1_out: endpoint {
2999 };
3000 };
3001 };
3002 };
3003
3004 mdss_dsi1_phy: phy@ae97000 {
3005 compatible = "qcom,sm8550-dsi-phy-4nm";
3006 reg = <0 0x0ae97000 0 0x200>,
3007 <0 0x0ae97200 0 0x280>,
3008 <0 0x0ae97500 0 0x400>;
3009 reg-names = "dsi_phy",
3010 "dsi_phy_lane",
3011 "dsi_pll";
3012
3013 clocks = <&dispcc DISP_CC_MDSS_AHB_CLK>,
3014 <&rpmhcc RPMH_CXO_CLK>;
3015 clock-names = "iface", "ref";
3016
3017 #clock-cells = <1>;
3018 #phy-cells = <0>;
3019
3020 status = "disabled";
3021 };
3022 };
3023
3024 dispcc: clock-controller@af00000 {
3025 compatible = "qcom,sm8550-dispcc";
3026 reg = <0 0x0af00000 0 0x20000>;
3027 clocks = <&bi_tcxo_div2>,
3028 <&bi_tcxo_ao_div2>,
3029 <&gcc GCC_DISP_AHB_CLK>,
3030 <&sleep_clk>,
3031 <&mdss_dsi0_phy 0>,
3032 <&mdss_dsi0_phy 1>,
3033 <&mdss_dsi1_phy 0>,
3034 <&mdss_dsi1_phy 1>,
3035 <&usb_dp_qmpphy QMP_USB43DP_DP_LINK_CLK>,
3036 <&usb_dp_qmpphy QMP_USB43DP_DP_VCO_DIV_CLK>,
3037 <0>, /* dp1 */
3038 <0>,
3039 <0>, /* dp2 */
3040 <0>,
3041 <0>, /* dp3 */
3042 <0>;
3043 power-domains = <&rpmhpd RPMHPD_MMCX>;
3044 required-opps = <&rpmhpd_opp_low_svs>;
3045 #clock-cells = <1>;
3046 #reset-cells = <1>;
3047 #power-domain-cells = <1>;
3048 };
3049
3050 usb_1_hsphy: phy@88e3000 {
3051 compatible = "qcom,sm8550-snps-eusb2-phy";
3052 reg = <0x0 0x088e3000 0x0 0x154>;
3053 #phy-cells = <0>;
3054
3055 clocks = <&tcsr TCSR_USB2_CLKREF_EN>;
3056 clock-names = "ref";
3057
3058 resets = <&gcc GCC_QUSB2PHY_PRIM_BCR>;
3059
3060 status = "disabled";
3061 };
3062
3063 usb_dp_qmpphy: phy@88e8000 {
3064 compatible = "qcom,sm8550-qmp-usb3-dp-phy";
3065 reg = <0x0 0x088e8000 0x0 0x3000>;
3066
3067 clocks = <&gcc GCC_USB3_PRIM_PHY_AUX_CLK>,
3068 <&rpmhcc RPMH_CXO_CLK>,
3069 <&gcc GCC_USB3_PRIM_PHY_COM_AUX_CLK>,
3070 <&gcc GCC_USB3_PRIM_PHY_PIPE_CLK>;
3071 clock-names = "aux", "ref", "com_aux", "usb3_pipe";
3072
3073 power-domains = <&gcc USB3_PHY_GDSC>;
3074
3075 resets = <&gcc GCC_USB3_PHY_PRIM_BCR>,
3076 <&gcc GCC_USB3_DP_PHY_PRIM_BCR>;
3077 reset-names = "phy", "common";
3078
3079 #clock-cells = <1>;
3080 #phy-cells = <1>;
3081
3082 status = "disabled";
3083
3084 ports {
3085 #address-cells = <1>;
3086 #size-cells = <0>;
3087
3088 port@0 {
3089 reg = <0>;
3090
3091 usb_dp_qmpphy_out: endpoint {
3092 };
3093 };
3094
3095 port@1 {
3096 reg = <1>;
3097
3098 usb_dp_qmpphy_usb_ss_in: endpoint {
3099 };
3100 };
3101
3102 port@2 {
3103 reg = <2>;
3104
3105 usb_dp_qmpphy_dp_in: endpoint {
3106 };
3107 };
3108 };
3109 };
3110
3111 usb_1: usb@a6f8800 {
3112 compatible = "qcom,sm8550-dwc3", "qcom,dwc3";
3113 reg = <0x0 0x0a6f8800 0x0 0x400>;
3114 #address-cells = <2>;
3115 #size-cells = <2>;
3116 ranges;
3117
3118 clocks = <&gcc GCC_CFG_NOC_USB3_PRIM_AXI_CLK>,
3119 <&gcc GCC_USB30_PRIM_MASTER_CLK>,
3120 <&gcc GCC_AGGRE_USB3_PRIM_AXI_CLK>,
3121 <&gcc GCC_USB30_PRIM_SLEEP_CLK>,
3122 <&gcc GCC_USB30_PRIM_MOCK_UTMI_CLK>,
3123 <&tcsr TCSR_USB3_CLKREF_EN>;
3124 clock-names = "cfg_noc",
3125 "core",
3126 "iface",
3127 "sleep",
3128 "mock_utmi",
3129 "xo";
3130
3131 assigned-clocks = <&gcc GCC_USB30_PRIM_MOCK_UTMI_CLK>,
3132 <&gcc GCC_USB30_PRIM_MASTER_CLK>;
3133 assigned-clock-rates = <19200000>, <200000000>;
3134
3135 interrupts-extended = <&intc GIC_SPI 130 IRQ_TYPE_LEVEL_HIGH>,
3136 <&pdc 17 IRQ_TYPE_LEVEL_HIGH>,
3137 <&pdc 15 IRQ_TYPE_EDGE_BOTH>,
3138 <&pdc 14 IRQ_TYPE_EDGE_BOTH>;
3139 interrupt-names = "hs_phy_irq",
3140 "ss_phy_irq",
3141 "dm_hs_phy_irq",
3142 "dp_hs_phy_irq";
3143
3144 power-domains = <&gcc USB30_PRIM_GDSC>;
3145 required-opps = <&rpmhpd_opp_nom>;
3146
3147 resets = <&gcc GCC_USB30_PRIM_BCR>;
3148
3149 interconnects = <&aggre1_noc MASTER_USB3_0 0 &mc_virt SLAVE_EBI1 0>,
3150 <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_USB3_0 0>;
3151 interconnect-names = "usb-ddr", "apps-usb";
3152
3153 status = "disabled";
3154
3155 usb_1_dwc3: usb@a600000 {
3156 compatible = "snps,dwc3";
3157 reg = <0x0 0x0a600000 0x0 0xcd00>;
3158 interrupts = <GIC_SPI 133 IRQ_TYPE_LEVEL_HIGH>;
3159 iommus = <&apps_smmu 0x40 0x0>;
3160 snps,dis_u2_susphy_quirk;
3161 snps,dis_enblslpm_quirk;
3162 snps,usb3_lpm_capable;
3163 phys = <&usb_1_hsphy>,
3164 <&usb_dp_qmpphy QMP_USB43DP_USB3_PHY>;
3165 phy-names = "usb2-phy", "usb3-phy";
3166
3167 ports {
3168 #address-cells = <1>;
3169 #size-cells = <0>;
3170
3171 port@0 {
3172 reg = <0>;
3173
3174 usb_1_dwc3_hs: endpoint {
3175 };
3176 };
3177
3178 port@1 {
3179 reg = <1>;
3180
3181 usb_1_dwc3_ss: endpoint {
3182 };
3183 };
3184 };
3185 };
3186 };
3187
3188 pdc: interrupt-controller@b220000 {
3189 compatible = "qcom,sm8550-pdc", "qcom,pdc";
3190 reg = <0 0x0b220000 0 0x30000>, <0 0x174000f0 0 0x64>;
3191 qcom,pdc-ranges = <0 480 94>, <94 609 31>,
3192 <125 63 1>, <126 716 12>,
3193 <138 251 5>;
3194 #interrupt-cells = <2>;
3195 interrupt-parent = <&intc>;
3196 interrupt-controller;
3197 };
3198
3199 tsens0: thermal-sensor@c271000 {
3200 compatible = "qcom,sm8550-tsens", "qcom,tsens-v2";
3201 reg = <0 0x0c271000 0 0x1000>, /* TM */
3202 <0 0x0c222000 0 0x1000>; /* SROT */
3203 #qcom,sensors = <16>;
3204 interrupts = <GIC_SPI 506 IRQ_TYPE_LEVEL_HIGH>,
3205 <GIC_SPI 640 IRQ_TYPE_LEVEL_HIGH>;
3206 interrupt-names = "uplow", "critical";
3207 #thermal-sensor-cells = <1>;
3208 };
3209
3210 tsens1: thermal-sensor@c272000 {
3211 compatible = "qcom,sm8550-tsens", "qcom,tsens-v2";
3212 reg = <0 0x0c272000 0 0x1000>, /* TM */
3213 <0 0x0c223000 0 0x1000>; /* SROT */
3214 #qcom,sensors = <16>;
3215 interrupts = <GIC_SPI 507 IRQ_TYPE_LEVEL_HIGH>,
3216 <GIC_SPI 641 IRQ_TYPE_LEVEL_HIGH>;
3217 interrupt-names = "uplow", "critical";
3218 #thermal-sensor-cells = <1>;
3219 };
3220
3221 tsens2: thermal-sensor@c273000 {
3222 compatible = "qcom,sm8550-tsens", "qcom,tsens-v2";
3223 reg = <0 0x0c273000 0 0x1000>, /* TM */
3224 <0 0x0c224000 0 0x1000>; /* SROT */
3225 #qcom,sensors = <16>;
3226 interrupts = <GIC_SPI 508 IRQ_TYPE_LEVEL_HIGH>,
3227 <GIC_SPI 642 IRQ_TYPE_LEVEL_HIGH>;
3228 interrupt-names = "uplow", "critical";
3229 #thermal-sensor-cells = <1>;
3230 };
3231
3232 aoss_qmp: power-management@c300000 {
3233 compatible = "qcom,sm8550-aoss-qmp", "qcom,aoss-qmp";
3234 reg = <0 0x0c300000 0 0x400>;
3235 interrupt-parent = <&ipcc>;
3236 interrupts-extended = <&ipcc IPCC_CLIENT_AOP IPCC_MPROC_SIGNAL_GLINK_QMP
3237 IRQ_TYPE_EDGE_RISING>;
3238 mboxes = <&ipcc IPCC_CLIENT_AOP IPCC_MPROC_SIGNAL_GLINK_QMP>;
3239
3240 #clock-cells = <0>;
3241 };
3242
3243 sram@c3f0000 {
3244 compatible = "qcom,rpmh-stats";
3245 reg = <0 0x0c3f0000 0 0x400>;
3246 };
3247
3248 spmi_bus: spmi@c400000 {
3249 compatible = "qcom,spmi-pmic-arb";
3250 reg = <0 0x0c400000 0 0x3000>,
3251 <0 0x0c500000 0 0x4000000>,
3252 <0 0x0c440000 0 0x80000>,
3253 <0 0x0c4c0000 0 0x20000>,
3254 <0 0x0c42d000 0 0x4000>;
3255 reg-names = "core", "chnls", "obsrvr", "intr", "cnfg";
3256 interrupt-names = "periph_irq";
3257 interrupts-extended = <&pdc 1 IRQ_TYPE_LEVEL_HIGH>;
3258 qcom,ee = <0>;
3259 qcom,channel = <0>;
3260 qcom,bus-id = <0>;
3261 #address-cells = <2>;
3262 #size-cells = <0>;
3263 interrupt-controller;
3264 #interrupt-cells = <4>;
3265 };
3266
3267 tlmm: pinctrl@f100000 {
3268 compatible = "qcom,sm8550-tlmm";
3269 reg = <0 0x0f100000 0 0x300000>;
3270 interrupts = <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>;
3271 gpio-controller;
3272 #gpio-cells = <2>;
3273 interrupt-controller;
3274 #interrupt-cells = <2>;
3275 gpio-ranges = <&tlmm 0 0 211>;
3276 wakeup-parent = <&pdc>;
3277
3278 hub_i2c0_data_clk: hub-i2c0-data-clk-state {
3279 /* SDA, SCL */
3280 pins = "gpio16", "gpio17";
3281 function = "i2chub0_se0";
3282 drive-strength = <2>;
3283 bias-pull-up;
3284 };
3285
3286 hub_i2c1_data_clk: hub-i2c1-data-clk-state {
3287 /* SDA, SCL */
3288 pins = "gpio18", "gpio19";
3289 function = "i2chub0_se1";
3290 drive-strength = <2>;
3291 bias-pull-up;
3292 };
3293
3294 hub_i2c2_data_clk: hub-i2c2-data-clk-state {
3295 /* SDA, SCL */
3296 pins = "gpio20", "gpio21";
3297 function = "i2chub0_se2";
3298 drive-strength = <2>;
3299 bias-pull-up;
3300 };
3301
3302 hub_i2c3_data_clk: hub-i2c3-data-clk-state {
3303 /* SDA, SCL */
3304 pins = "gpio22", "gpio23";
3305 function = "i2chub0_se3";
3306 drive-strength = <2>;
3307 bias-pull-up;
3308 };
3309
3310 hub_i2c4_data_clk: hub-i2c4-data-clk-state {
3311 /* SDA, SCL */
3312 pins = "gpio4", "gpio5";
3313 function = "i2chub0_se4";
3314 drive-strength = <2>;
3315 bias-pull-up;
3316 };
3317
3318 hub_i2c5_data_clk: hub-i2c5-data-clk-state {
3319 /* SDA, SCL */
3320 pins = "gpio6", "gpio7";
3321 function = "i2chub0_se5";
3322 drive-strength = <2>;
3323 bias-pull-up;
3324 };
3325
3326 hub_i2c6_data_clk: hub-i2c6-data-clk-state {
3327 /* SDA, SCL */
3328 pins = "gpio8", "gpio9";
3329 function = "i2chub0_se6";
3330 drive-strength = <2>;
3331 bias-pull-up;
3332 };
3333
3334 hub_i2c7_data_clk: hub-i2c7-data-clk-state {
3335 /* SDA, SCL */
3336 pins = "gpio10", "gpio11";
3337 function = "i2chub0_se7";
3338 drive-strength = <2>;
3339 bias-pull-up;
3340 };
3341
3342 hub_i2c8_data_clk: hub-i2c8-data-clk-state {
3343 /* SDA, SCL */
3344 pins = "gpio206", "gpio207";
3345 function = "i2chub0_se8";
3346 drive-strength = <2>;
3347 bias-pull-up;
3348 };
3349
3350 hub_i2c9_data_clk: hub-i2c9-data-clk-state {
3351 /* SDA, SCL */
3352 pins = "gpio84", "gpio85";
3353 function = "i2chub0_se9";
3354 drive-strength = <2>;
3355 bias-pull-up;
3356 };
3357
3358 pcie0_default_state: pcie0-default-state {
3359 perst-pins {
3360 pins = "gpio94";
3361 function = "gpio";
3362 drive-strength = <2>;
3363 bias-pull-down;
3364 };
3365
3366 clkreq-pins {
3367 pins = "gpio95";
3368 function = "pcie0_clk_req_n";
3369 drive-strength = <2>;
3370 bias-pull-up;
3371 };
3372
3373 wake-pins {
3374 pins = "gpio96";
3375 function = "gpio";
3376 drive-strength = <2>;
3377 bias-pull-up;
3378 };
3379 };
3380
3381 pcie1_default_state: pcie1-default-state {
3382 perst-pins {
3383 pins = "gpio97";
3384 function = "gpio";
3385 drive-strength = <2>;
3386 bias-pull-down;
3387 };
3388
3389 clkreq-pins {
3390 pins = "gpio98";
3391 function = "pcie1_clk_req_n";
3392 drive-strength = <2>;
3393 bias-pull-up;
3394 };
3395
3396 wake-pins {
3397 pins = "gpio99";
3398 function = "gpio";
3399 drive-strength = <2>;
3400 bias-pull-up;
3401 };
3402 };
3403
3404 qup_i2c0_data_clk: qup-i2c0-data-clk-state {
3405 /* SDA, SCL */
3406 pins = "gpio28", "gpio29";
3407 function = "qup1_se0";
3408 drive-strength = <2>;
3409 bias-pull-up = <2200>;
3410 };
3411
3412 qup_i2c1_data_clk: qup-i2c1-data-clk-state {
3413 /* SDA, SCL */
3414 pins = "gpio32", "gpio33";
3415 function = "qup1_se1";
3416 drive-strength = <2>;
3417 bias-pull-up = <2200>;
3418 };
3419
3420 qup_i2c2_data_clk: qup-i2c2-data-clk-state {
3421 /* SDA, SCL */
3422 pins = "gpio36", "gpio37";
3423 function = "qup1_se2";
3424 drive-strength = <2>;
3425 bias-pull-up = <2200>;
3426 };
3427
3428 qup_i2c3_data_clk: qup-i2c3-data-clk-state {
3429 /* SDA, SCL */
3430 pins = "gpio40", "gpio41";
3431 function = "qup1_se3";
3432 drive-strength = <2>;
3433 bias-pull-up = <2200>;
3434 };
3435
3436 qup_i2c4_data_clk: qup-i2c4-data-clk-state {
3437 /* SDA, SCL */
3438 pins = "gpio44", "gpio45";
3439 function = "qup1_se4";
3440 drive-strength = <2>;
3441 bias-pull-up = <2200>;
3442 };
3443
3444 qup_i2c5_data_clk: qup-i2c5-data-clk-state {
3445 /* SDA, SCL */
3446 pins = "gpio52", "gpio53";
3447 function = "qup1_se5";
3448 drive-strength = <2>;
3449 bias-pull-up = <2200>;
3450 };
3451
3452 qup_i2c6_data_clk: qup-i2c6-data-clk-state {
3453 /* SDA, SCL */
3454 pins = "gpio48", "gpio49";
3455 function = "qup1_se6";
3456 drive-strength = <2>;
3457 bias-pull-up = <2200>;
3458 };
3459
3460 qup_i2c8_data_clk: qup-i2c8-data-clk-state {
3461 scl-pins {
3462 pins = "gpio57";
3463 function = "qup2_se0_l1_mira";
3464 drive-strength = <2>;
3465 bias-pull-up = <2200>;
3466 };
3467
3468 sda-pins {
3469 pins = "gpio56";
3470 function = "qup2_se0_l0_mira";
3471 drive-strength = <2>;
3472 bias-pull-up = <2200>;
3473 };
3474 };
3475
3476 qup_i2c9_data_clk: qup-i2c9-data-clk-state {
3477 /* SDA, SCL */
3478 pins = "gpio60", "gpio61";
3479 function = "qup2_se1";
3480 drive-strength = <2>;
3481 bias-pull-up = <2200>;
3482 };
3483
3484 qup_i2c10_data_clk: qup-i2c10-data-clk-state {
3485 /* SDA, SCL */
3486 pins = "gpio64", "gpio65";
3487 function = "qup2_se2";
3488 drive-strength = <2>;
3489 bias-pull-up = <2200>;
3490 };
3491
3492 qup_i2c11_data_clk: qup-i2c11-data-clk-state {
3493 /* SDA, SCL */
3494 pins = "gpio68", "gpio69";
3495 function = "qup2_se3";
3496 drive-strength = <2>;
3497 bias-pull-up = <2200>;
3498 };
3499
3500 qup_i2c12_data_clk: qup-i2c12-data-clk-state {
3501 /* SDA, SCL */
3502 pins = "gpio2", "gpio3";
3503 function = "qup2_se4";
3504 drive-strength = <2>;
3505 bias-pull-up = <2200>;
3506 };
3507
3508 qup_i2c13_data_clk: qup-i2c13-data-clk-state {
3509 /* SDA, SCL */
3510 pins = "gpio80", "gpio81";
3511 function = "qup2_se5";
3512 drive-strength = <2>;
3513 bias-pull-up = <2200>;
3514 };
3515
3516 qup_i2c15_data_clk: qup-i2c15-data-clk-state {
3517 /* SDA, SCL */
3518 pins = "gpio72", "gpio106";
3519 function = "qup2_se7";
3520 drive-strength = <2>;
3521 bias-pull-up = <2200>;
3522 };
3523
3524 qup_spi0_cs: qup-spi0-cs-state {
3525 pins = "gpio31";
3526 function = "qup1_se0";
3527 drive-strength = <6>;
3528 bias-disable;
3529 };
3530
3531 qup_spi0_data_clk: qup-spi0-data-clk-state {
3532 /* MISO, MOSI, CLK */
3533 pins = "gpio28", "gpio29", "gpio30";
3534 function = "qup1_se0";
3535 drive-strength = <6>;
3536 bias-disable;
3537 };
3538
3539 qup_spi1_cs: qup-spi1-cs-state {
3540 pins = "gpio35";
3541 function = "qup1_se1";
3542 drive-strength = <6>;
3543 bias-disable;
3544 };
3545
3546 qup_spi1_data_clk: qup-spi1-data-clk-state {
3547 /* MISO, MOSI, CLK */
3548 pins = "gpio32", "gpio33", "gpio34";
3549 function = "qup1_se1";
3550 drive-strength = <6>;
3551 bias-disable;
3552 };
3553
3554 qup_spi2_cs: qup-spi2-cs-state {
3555 pins = "gpio39";
3556 function = "qup1_se2";
3557 drive-strength = <6>;
3558 bias-disable;
3559 };
3560
3561 qup_spi2_data_clk: qup-spi2-data-clk-state {
3562 /* MISO, MOSI, CLK */
3563 pins = "gpio36", "gpio37", "gpio38";
3564 function = "qup1_se2";
3565 drive-strength = <6>;
3566 bias-disable;
3567 };
3568
3569 qup_spi3_cs: qup-spi3-cs-state {
3570 pins = "gpio43";
3571 function = "qup1_se3";
3572 drive-strength = <6>;
3573 bias-disable;
3574 };
3575
3576 qup_spi3_data_clk: qup-spi3-data-clk-state {
3577 /* MISO, MOSI, CLK */
3578 pins = "gpio40", "gpio41", "gpio42";
3579 function = "qup1_se3";
3580 drive-strength = <6>;
3581 bias-disable;
3582 };
3583
3584 qup_spi4_cs: qup-spi4-cs-state {
3585 pins = "gpio47";
3586 function = "qup1_se4";
3587 drive-strength = <6>;
3588 bias-disable;
3589 };
3590
3591 qup_spi4_data_clk: qup-spi4-data-clk-state {
3592 /* MISO, MOSI, CLK */
3593 pins = "gpio44", "gpio45", "gpio46";
3594 function = "qup1_se4";
3595 drive-strength = <6>;
3596 bias-disable;
3597 };
3598
3599 qup_spi5_cs: qup-spi5-cs-state {
3600 pins = "gpio55";
3601 function = "qup1_se5";
3602 drive-strength = <6>;
3603 bias-disable;
3604 };
3605
3606 qup_spi5_data_clk: qup-spi5-data-clk-state {
3607 /* MISO, MOSI, CLK */
3608 pins = "gpio52", "gpio53", "gpio54";
3609 function = "qup1_se5";
3610 drive-strength = <6>;
3611 bias-disable;
3612 };
3613
3614 qup_spi6_cs: qup-spi6-cs-state {
3615 pins = "gpio51";
3616 function = "qup1_se6";
3617 drive-strength = <6>;
3618 bias-disable;
3619 };
3620
3621 qup_spi6_data_clk: qup-spi6-data-clk-state {
3622 /* MISO, MOSI, CLK */
3623 pins = "gpio48", "gpio49", "gpio50";
3624 function = "qup1_se6";
3625 drive-strength = <6>;
3626 bias-disable;
3627 };
3628
3629 qup_spi8_cs: qup-spi8-cs-state {
3630 pins = "gpio59";
3631 function = "qup2_se0_l3_mira";
3632 drive-strength = <6>;
3633 bias-disable;
3634 };
3635
3636 qup_spi8_data_clk: qup-spi8-data-clk-state {
3637 /* MISO, MOSI, CLK */
3638 pins = "gpio56", "gpio57", "gpio58";
3639 function = "qup2_se0_l2_mira";
3640 drive-strength = <6>;
3641 bias-disable;
3642 };
3643
3644 qup_spi9_cs: qup-spi9-cs-state {
3645 pins = "gpio63";
3646 function = "qup2_se1";
3647 drive-strength = <6>;
3648 bias-disable;
3649 };
3650
3651 qup_spi9_data_clk: qup-spi9-data-clk-state {
3652 /* MISO, MOSI, CLK */
3653 pins = "gpio60", "gpio61", "gpio62";
3654 function = "qup2_se1";
3655 drive-strength = <6>;
3656 bias-disable;
3657 };
3658
3659 qup_spi10_cs: qup-spi10-cs-state {
3660 pins = "gpio67";
3661 function = "qup2_se2";
3662 drive-strength = <6>;
3663 bias-disable;
3664 };
3665
3666 qup_spi10_data_clk: qup-spi10-data-clk-state {
3667 /* MISO, MOSI, CLK */
3668 pins = "gpio64", "gpio65", "gpio66";
3669 function = "qup2_se2";
3670 drive-strength = <6>;
3671 bias-disable;
3672 };
3673
3674 qup_spi11_cs: qup-spi11-cs-state {
3675 pins = "gpio71";
3676 function = "qup2_se3";
3677 drive-strength = <6>;
3678 bias-disable;
3679 };
3680
3681 qup_spi11_data_clk: qup-spi11-data-clk-state {
3682 /* MISO, MOSI, CLK */
3683 pins = "gpio68", "gpio69", "gpio70";
3684 function = "qup2_se3";
3685 drive-strength = <6>;
3686 bias-disable;
3687 };
3688
3689 qup_spi12_cs: qup-spi12-cs-state {
3690 pins = "gpio119";
3691 function = "qup2_se4";
3692 drive-strength = <6>;
3693 bias-disable;
3694 };
3695
3696 qup_spi12_data_clk: qup-spi12-data-clk-state {
3697 /* MISO, MOSI, CLK */
3698 pins = "gpio2", "gpio3", "gpio118";
3699 function = "qup2_se4";
3700 drive-strength = <6>;
3701 bias-disable;
3702 };
3703
3704 qup_spi13_cs: qup-spi13-cs-state {
3705 pins = "gpio83";
3706 function = "qup2_se5";
3707 drive-strength = <6>;
3708 bias-disable;
3709 };
3710
3711 qup_spi13_data_clk: qup-spi13-data-clk-state {
3712 /* MISO, MOSI, CLK */
3713 pins = "gpio80", "gpio81", "gpio82";
3714 function = "qup2_se5";
3715 drive-strength = <6>;
3716 bias-disable;
3717 };
3718
3719 qup_spi15_cs: qup-spi15-cs-state {
3720 pins = "gpio75";
3721 function = "qup2_se7";
3722 drive-strength = <6>;
3723 bias-disable;
3724 };
3725
3726 qup_spi15_data_clk: qup-spi15-data-clk-state {
3727 /* MISO, MOSI, CLK */
3728 pins = "gpio72", "gpio106", "gpio74";
3729 function = "qup2_se7";
3730 drive-strength = <6>;
3731 bias-disable;
3732 };
3733
3734 qup_uart7_default: qup-uart7-default-state {
3735 /* TX, RX */
3736 pins = "gpio26", "gpio27";
3737 function = "qup1_se7";
3738 drive-strength = <2>;
3739 bias-disable;
3740 };
3741
3742 qup_uart14_default: qup-uart14-default-state {
3743 /* TX, RX */
3744 pins = "gpio78", "gpio79";
3745 function = "qup2_se6";
3746 drive-strength = <2>;
3747 bias-pull-up;
3748 };
3749
3750 qup_uart14_cts_rts: qup-uart14-cts-rts-state {
3751 /* CTS, RTS */
3752 pins = "gpio76", "gpio77";
3753 function = "qup2_se6";
3754 drive-strength = <2>;
3755 bias-pull-down;
3756 };
3757
3758 sdc2_sleep: sdc2-sleep-state {
3759 clk-pins {
3760 pins = "sdc2_clk";
3761 bias-disable;
3762 drive-strength = <2>;
3763 };
3764
3765 cmd-pins {
3766 pins = "sdc2_cmd";
3767 bias-pull-up;
3768 drive-strength = <2>;
3769 };
3770
3771 data-pins {
3772 pins = "sdc2_data";
3773 bias-pull-up;
3774 drive-strength = <2>;
3775 };
3776 };
3777
3778 sdc2_default: sdc2-default-state {
3779 clk-pins {
3780 pins = "sdc2_clk";
3781 bias-disable;
3782 drive-strength = <16>;
3783 };
3784
3785 cmd-pins {
3786 pins = "sdc2_cmd";
3787 bias-pull-up;
3788 drive-strength = <10>;
3789 };
3790
3791 data-pins {
3792 pins = "sdc2_data";
3793 bias-pull-up;
3794 drive-strength = <10>;
3795 };
3796 };
3797 };
3798
3799 apps_smmu: iommu@15000000 {
3800 compatible = "qcom,sm8550-smmu-500", "qcom,smmu-500", "arm,mmu-500";
3801 reg = <0 0x15000000 0 0x100000>;
3802 #iommu-cells = <2>;
3803 #global-interrupts = <1>;
3804 interrupts = <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>,
3805 <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>,
3806 <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>,
3807 <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>,
3808 <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>,
3809 <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>,
3810 <GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH>,
3811 <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>,
3812 <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>,
3813 <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>,
3814 <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>,
3815 <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>,
3816 <GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>,
3817 <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>,
3818 <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>,
3819 <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>,
3820 <GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>,
3821 <GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>,
3822 <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>,
3823 <GIC_SPI 115 IRQ_TYPE_LEVEL_HIGH>,
3824 <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>,
3825 <GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH>,
3826 <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>,
3827 <GIC_SPI 181 IRQ_TYPE_LEVEL_HIGH>,
3828 <GIC_SPI 182 IRQ_TYPE_LEVEL_HIGH>,
3829 <GIC_SPI 183 IRQ_TYPE_LEVEL_HIGH>,
3830 <GIC_SPI 184 IRQ_TYPE_LEVEL_HIGH>,
3831 <GIC_SPI 185 IRQ_TYPE_LEVEL_HIGH>,
3832 <GIC_SPI 186 IRQ_TYPE_LEVEL_HIGH>,
3833 <GIC_SPI 187 IRQ_TYPE_LEVEL_HIGH>,
3834 <GIC_SPI 188 IRQ_TYPE_LEVEL_HIGH>,
3835 <GIC_SPI 189 IRQ_TYPE_LEVEL_HIGH>,
3836 <GIC_SPI 190 IRQ_TYPE_LEVEL_HIGH>,
3837 <GIC_SPI 191 IRQ_TYPE_LEVEL_HIGH>,
3838 <GIC_SPI 192 IRQ_TYPE_LEVEL_HIGH>,
3839 <GIC_SPI 315 IRQ_TYPE_LEVEL_HIGH>,
3840 <GIC_SPI 316 IRQ_TYPE_LEVEL_HIGH>,
3841 <GIC_SPI 317 IRQ_TYPE_LEVEL_HIGH>,
3842 <GIC_SPI 318 IRQ_TYPE_LEVEL_HIGH>,
3843 <GIC_SPI 319 IRQ_TYPE_LEVEL_HIGH>,
3844 <GIC_SPI 320 IRQ_TYPE_LEVEL_HIGH>,
3845 <GIC_SPI 321 IRQ_TYPE_LEVEL_HIGH>,
3846 <GIC_SPI 322 IRQ_TYPE_LEVEL_HIGH>,
3847 <GIC_SPI 323 IRQ_TYPE_LEVEL_HIGH>,
3848 <GIC_SPI 324 IRQ_TYPE_LEVEL_HIGH>,
3849 <GIC_SPI 325 IRQ_TYPE_LEVEL_HIGH>,
3850 <GIC_SPI 326 IRQ_TYPE_LEVEL_HIGH>,
3851 <GIC_SPI 327 IRQ_TYPE_LEVEL_HIGH>,
3852 <GIC_SPI 328 IRQ_TYPE_LEVEL_HIGH>,
3853 <GIC_SPI 329 IRQ_TYPE_LEVEL_HIGH>,
3854 <GIC_SPI 330 IRQ_TYPE_LEVEL_HIGH>,
3855 <GIC_SPI 331 IRQ_TYPE_LEVEL_HIGH>,
3856 <GIC_SPI 332 IRQ_TYPE_LEVEL_HIGH>,
3857 <GIC_SPI 333 IRQ_TYPE_LEVEL_HIGH>,
3858 <GIC_SPI 334 IRQ_TYPE_LEVEL_HIGH>,
3859 <GIC_SPI 335 IRQ_TYPE_LEVEL_HIGH>,
3860 <GIC_SPI 336 IRQ_TYPE_LEVEL_HIGH>,
3861 <GIC_SPI 337 IRQ_TYPE_LEVEL_HIGH>,
3862 <GIC_SPI 338 IRQ_TYPE_LEVEL_HIGH>,
3863 <GIC_SPI 339 IRQ_TYPE_LEVEL_HIGH>,
3864 <GIC_SPI 340 IRQ_TYPE_LEVEL_HIGH>,
3865 <GIC_SPI 341 IRQ_TYPE_LEVEL_HIGH>,
3866 <GIC_SPI 342 IRQ_TYPE_LEVEL_HIGH>,
3867 <GIC_SPI 343 IRQ_TYPE_LEVEL_HIGH>,
3868 <GIC_SPI 344 IRQ_TYPE_LEVEL_HIGH>,
3869 <GIC_SPI 345 IRQ_TYPE_LEVEL_HIGH>,
3870 <GIC_SPI 395 IRQ_TYPE_LEVEL_HIGH>,
3871 <GIC_SPI 396 IRQ_TYPE_LEVEL_HIGH>,
3872 <GIC_SPI 397 IRQ_TYPE_LEVEL_HIGH>,
3873 <GIC_SPI 398 IRQ_TYPE_LEVEL_HIGH>,
3874 <GIC_SPI 399 IRQ_TYPE_LEVEL_HIGH>,
3875 <GIC_SPI 400 IRQ_TYPE_LEVEL_HIGH>,
3876 <GIC_SPI 401 IRQ_TYPE_LEVEL_HIGH>,
3877 <GIC_SPI 402 IRQ_TYPE_LEVEL_HIGH>,
3878 <GIC_SPI 403 IRQ_TYPE_LEVEL_HIGH>,
3879 <GIC_SPI 404 IRQ_TYPE_LEVEL_HIGH>,
3880 <GIC_SPI 405 IRQ_TYPE_LEVEL_HIGH>,
3881 <GIC_SPI 406 IRQ_TYPE_LEVEL_HIGH>,
3882 <GIC_SPI 407 IRQ_TYPE_LEVEL_HIGH>,
3883 <GIC_SPI 408 IRQ_TYPE_LEVEL_HIGH>,
3884 <GIC_SPI 409 IRQ_TYPE_LEVEL_HIGH>,
3885 <GIC_SPI 418 IRQ_TYPE_LEVEL_HIGH>,
3886 <GIC_SPI 419 IRQ_TYPE_LEVEL_HIGH>,
3887 <GIC_SPI 412 IRQ_TYPE_LEVEL_HIGH>,
3888 <GIC_SPI 421 IRQ_TYPE_LEVEL_HIGH>,
3889 <GIC_SPI 706 IRQ_TYPE_LEVEL_HIGH>,
3890 <GIC_SPI 423 IRQ_TYPE_LEVEL_HIGH>,
3891 <GIC_SPI 424 IRQ_TYPE_LEVEL_HIGH>,
3892 <GIC_SPI 425 IRQ_TYPE_LEVEL_HIGH>,
3893 <GIC_SPI 689 IRQ_TYPE_LEVEL_HIGH>,
3894 <GIC_SPI 690 IRQ_TYPE_LEVEL_HIGH>,
3895 <GIC_SPI 691 IRQ_TYPE_LEVEL_HIGH>,
3896 <GIC_SPI 692 IRQ_TYPE_LEVEL_HIGH>,
3897 <GIC_SPI 693 IRQ_TYPE_LEVEL_HIGH>,
3898 <GIC_SPI 694 IRQ_TYPE_LEVEL_HIGH>,
3899 <GIC_SPI 695 IRQ_TYPE_LEVEL_HIGH>,
3900 <GIC_SPI 696 IRQ_TYPE_LEVEL_HIGH>;
3901 };
3902
3903 intc: interrupt-controller@17100000 {
3904 compatible = "arm,gic-v3";
3905 reg = <0 0x17100000 0 0x10000>, /* GICD */
3906 <0 0x17180000 0 0x200000>; /* GICR * 8 */
3907 ranges;
3908 #interrupt-cells = <3>;
3909 interrupt-controller;
3910 #redistributor-regions = <1>;
3911 redistributor-stride = <0 0x40000>;
3912 interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_LOW>;
3913 #address-cells = <2>;
3914 #size-cells = <2>;
3915
3916 gic_its: msi-controller@17140000 {
3917 compatible = "arm,gic-v3-its";
3918 reg = <0 0x17140000 0 0x20000>;
3919 msi-controller;
3920 #msi-cells = <1>;
3921 };
3922 };
3923
3924 timer@17420000 {
3925 compatible = "arm,armv7-timer-mem";
3926 reg = <0 0x17420000 0 0x1000>;
3927 ranges = <0 0 0 0x20000000>;
3928 #address-cells = <1>;
3929 #size-cells = <1>;
3930
3931 frame@17421000 {
3932 reg = <0x17421000 0x1000>,
3933 <0x17422000 0x1000>;
3934 frame-number = <0>;
3935 interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>,
3936 <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>;
3937 };
3938
3939 frame@17423000 {
3940 reg = <0x17423000 0x1000>;
3941 frame-number = <1>;
3942 interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>;
3943 status = "disabled";
3944 };
3945
3946 frame@17425000 {
3947 reg = <0x17425000 0x1000>;
3948 frame-number = <2>;
3949 interrupts = <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>;
3950 status = "disabled";
3951 };
3952
3953 frame@17427000 {
3954 reg = <0x17427000 0x1000>;
3955 frame-number = <3>;
3956 interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>;
3957 status = "disabled";
3958 };
3959
3960 frame@17429000 {
3961 reg = <0x17429000 0x1000>;
3962 frame-number = <4>;
3963 interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>;
3964 status = "disabled";
3965 };
3966
3967 frame@1742b000 {
3968 reg = <0x1742b000 0x1000>;
3969 frame-number = <5>;
3970 interrupts = <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>;
3971 status = "disabled";
3972 };
3973
3974 frame@1742d000 {
3975 reg = <0x1742d000 0x1000>;
3976 frame-number = <6>;
3977 interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>;
3978 status = "disabled";
3979 };
3980 };
3981
3982 apps_rsc: rsc@17a00000 {
3983 label = "apps_rsc";
3984 compatible = "qcom,rpmh-rsc";
3985 reg = <0 0x17a00000 0 0x10000>,
3986 <0 0x17a10000 0 0x10000>,
3987 <0 0x17a20000 0 0x10000>,
3988 <0 0x17a30000 0 0x10000>;
3989 reg-names = "drv-0", "drv-1", "drv-2", "drv-3";
3990 interrupts = <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>,
3991 <GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>,
3992 <GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH>;
3993 qcom,tcs-offset = <0xd00>;
3994 qcom,drv-id = <2>;
3995 qcom,tcs-config = <ACTIVE_TCS 3>, <SLEEP_TCS 2>,
3996 <WAKE_TCS 2>, <CONTROL_TCS 0>;
3997 power-domains = <&CLUSTER_PD>;
3998
3999 apps_bcm_voter: bcm-voter {
4000 compatible = "qcom,bcm-voter";
4001 };
4002
4003 rpmhcc: clock-controller {
4004 compatible = "qcom,sm8550-rpmh-clk";
4005 #clock-cells = <1>;
4006 clock-names = "xo";
4007 clocks = <&xo_board>;
4008 };
4009
4010 rpmhpd: power-controller {
4011 compatible = "qcom,sm8550-rpmhpd";
4012 #power-domain-cells = <1>;
4013 operating-points-v2 = <&rpmhpd_opp_table>;
4014
4015 rpmhpd_opp_table: opp-table {
4016 compatible = "operating-points-v2";
4017
4018 rpmhpd_opp_ret: opp-16 {
4019 opp-level = <RPMH_REGULATOR_LEVEL_RETENTION>;
4020 };
4021
4022 rpmhpd_opp_min_svs: opp-48 {
4023 opp-level = <RPMH_REGULATOR_LEVEL_MIN_SVS>;
4024 };
4025
4026 rpmhpd_opp_low_svs_d2: opp-52 {
4027 opp-level = <RPMH_REGULATOR_LEVEL_LOW_SVS_D2>;
4028 };
4029
4030 rpmhpd_opp_low_svs_d1: opp-56 {
4031 opp-level = <RPMH_REGULATOR_LEVEL_LOW_SVS_D1>;
4032 };
4033
4034 rpmhpd_opp_low_svs_d0: opp-60 {
4035 opp-level = <RPMH_REGULATOR_LEVEL_LOW_SVS_D0>;
4036 };
4037
4038 rpmhpd_opp_low_svs: opp-64 {
4039 opp-level = <RPMH_REGULATOR_LEVEL_LOW_SVS>;
4040 };
4041
4042 rpmhpd_opp_low_svs_l1: opp-80 {
4043 opp-level = <RPMH_REGULATOR_LEVEL_LOW_SVS_L1>;
4044 };
4045
4046 rpmhpd_opp_svs: opp-128 {
4047 opp-level = <RPMH_REGULATOR_LEVEL_SVS>;
4048 };
4049
4050 rpmhpd_opp_svs_l0: opp-144 {
4051 opp-level = <RPMH_REGULATOR_LEVEL_SVS_L0>;
4052 };
4053
4054 rpmhpd_opp_svs_l1: opp-192 {
4055 opp-level = <RPMH_REGULATOR_LEVEL_SVS_L1>;
4056 };
4057
4058 rpmhpd_opp_nom: opp-256 {
4059 opp-level = <RPMH_REGULATOR_LEVEL_NOM>;
4060 };
4061
4062 rpmhpd_opp_nom_l1: opp-320 {
4063 opp-level = <RPMH_REGULATOR_LEVEL_NOM_L1>;
4064 };
4065
4066 rpmhpd_opp_nom_l2: opp-336 {
4067 opp-level = <RPMH_REGULATOR_LEVEL_NOM_L2>;
4068 };
4069
4070 rpmhpd_opp_turbo: opp-384 {
4071 opp-level = <RPMH_REGULATOR_LEVEL_TURBO>;
4072 };
4073
4074 rpmhpd_opp_turbo_l1: opp-416 {
4075 opp-level = <RPMH_REGULATOR_LEVEL_TURBO_L1>;
4076 };
4077 };
4078 };
4079 };
4080
4081 cpufreq_hw: cpufreq@17d91000 {
4082 compatible = "qcom,sm8550-cpufreq-epss", "qcom,cpufreq-epss";
4083 reg = <0 0x17d91000 0 0x1000>,
4084 <0 0x17d92000 0 0x1000>,
4085 <0 0x17d93000 0 0x1000>;
4086 reg-names = "freq-domain0", "freq-domain1", "freq-domain2";
4087 clocks = <&bi_tcxo_div2>, <&gcc GCC_GPLL0>;
4088 clock-names = "xo", "alternate";
4089 interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>,
4090 <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>,
4091 <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>;
4092 interrupt-names = "dcvsh-irq-0", "dcvsh-irq-1", "dcvsh-irq-2";
4093 #freq-domain-cells = <1>;
4094 #clock-cells = <1>;
4095 };
4096
4097 pmu@24091000 {
4098 compatible = "qcom,sm8550-llcc-bwmon", "qcom,sc7280-llcc-bwmon";
4099 reg = <0 0x24091000 0 0x1000>;
4100 interrupts = <GIC_SPI 81 IRQ_TYPE_LEVEL_HIGH>;
4101 interconnects = <&mc_virt MASTER_LLCC 3 &mc_virt SLAVE_EBI1 3>;
4102
4103 operating-points-v2 = <&llcc_bwmon_opp_table>;
4104
4105 llcc_bwmon_opp_table: opp-table {
4106 compatible = "operating-points-v2";
4107
4108 opp-0 {
4109 opp-peak-kBps = <2086000>;
4110 };
4111
4112 opp-1 {
4113 opp-peak-kBps = <2929000>;
4114 };
4115
4116 opp-2 {
4117 opp-peak-kBps = <5931000>;
4118 };
4119
4120 opp-3 {
4121 opp-peak-kBps = <6515000>;
4122 };
4123
4124 opp-4 {
4125 opp-peak-kBps = <7980000>;
4126 };
4127
4128 opp-5 {
4129 opp-peak-kBps = <10437000>;
4130 };
4131
4132 opp-6 {
4133 opp-peak-kBps = <12157000>;
4134 };
4135
4136 opp-7 {
4137 opp-peak-kBps = <14060000>;
4138 };
4139
4140 opp-8 {
4141 opp-peak-kBps = <16113000>;
4142 };
4143 };
4144 };
4145
4146 pmu@240b6400 {
4147 compatible = "qcom,sm8550-cpu-bwmon", "qcom,sdm845-bwmon";
4148 reg = <0 0x240b6400 0 0x600>;
4149 interrupts = <GIC_SPI 581 IRQ_TYPE_LEVEL_HIGH>;
4150 interconnects = <&gem_noc MASTER_APPSS_PROC 3 &gem_noc SLAVE_LLCC 3>;
4151
4152 operating-points-v2 = <&cpu_bwmon_opp_table>;
4153
4154 cpu_bwmon_opp_table: opp-table {
4155 compatible = "operating-points-v2";
4156
4157 opp-0 {
4158 opp-peak-kBps = <4577000>;
4159 };
4160
4161 opp-1 {
4162 opp-peak-kBps = <7110000>;
4163 };
4164
4165 opp-2 {
4166 opp-peak-kBps = <9155000>;
4167 };
4168
4169 opp-3 {
4170 opp-peak-kBps = <12298000>;
4171 };
4172
4173 opp-4 {
4174 opp-peak-kBps = <14236000>;
4175 };
4176
4177 opp-5 {
4178 opp-peak-kBps = <16265000>;
4179 };
4180 };
4181 };
4182
4183 gem_noc: interconnect@24100000 {
4184 compatible = "qcom,sm8550-gem-noc";
4185 reg = <0 0x24100000 0 0xbb800>;
4186 #interconnect-cells = <2>;
4187 qcom,bcm-voters = <&apps_bcm_voter>;
4188 };
4189
4190 system-cache-controller@25000000 {
4191 compatible = "qcom,sm8550-llcc";
4192 reg = <0 0x25000000 0 0x200000>,
4193 <0 0x25200000 0 0x200000>,
4194 <0 0x25400000 0 0x200000>,
4195 <0 0x25600000 0 0x200000>,
4196 <0 0x25800000 0 0x200000>;
4197 reg-names = "llcc0_base",
4198 "llcc1_base",
4199 "llcc2_base",
4200 "llcc3_base",
4201 "llcc_broadcast_base";
4202 interrupts = <GIC_SPI 266 IRQ_TYPE_LEVEL_HIGH>;
4203 };
4204
4205 remoteproc_adsp: remoteproc@30000000 {
4206 compatible = "qcom,sm8550-adsp-pas";
4207 reg = <0x0 0x30000000 0x0 0x100>;
4208
4209 interrupts-extended = <&pdc 6 IRQ_TYPE_EDGE_RISING>,
4210 <&smp2p_adsp_in 0 IRQ_TYPE_EDGE_RISING>,
4211 <&smp2p_adsp_in 1 IRQ_TYPE_EDGE_RISING>,
4212 <&smp2p_adsp_in 2 IRQ_TYPE_EDGE_RISING>,
4213 <&smp2p_adsp_in 3 IRQ_TYPE_EDGE_RISING>;
4214 interrupt-names = "wdog", "fatal", "ready",
4215 "handover", "stop-ack";
4216
4217 clocks = <&rpmhcc RPMH_CXO_CLK>;
4218 clock-names = "xo";
4219
4220 power-domains = <&rpmhpd RPMHPD_LCX>,
4221 <&rpmhpd RPMHPD_LMX>;
4222 power-domain-names = "lcx", "lmx";
4223
4224 interconnects = <&lpass_lpicx_noc MASTER_LPASS_PROC 0 &mc_virt SLAVE_EBI1 0>;
4225
4226 memory-region = <&adspslpi_mem>, <&q6_adsp_dtb_mem>;
4227
4228 qcom,qmp = <&aoss_qmp>;
4229
4230 qcom,smem-states = <&smp2p_adsp_out 0>;
4231 qcom,smem-state-names = "stop";
4232
4233 status = "disabled";
4234
4235 remoteproc_adsp_glink: glink-edge {
4236 interrupts-extended = <&ipcc IPCC_CLIENT_LPASS
4237 IPCC_MPROC_SIGNAL_GLINK_QMP
4238 IRQ_TYPE_EDGE_RISING>;
4239 mboxes = <&ipcc IPCC_CLIENT_LPASS
4240 IPCC_MPROC_SIGNAL_GLINK_QMP>;
4241
4242 label = "lpass";
4243 qcom,remote-pid = <2>;
4244
4245 fastrpc {
4246 compatible = "qcom,fastrpc";
4247 qcom,glink-channels = "fastrpcglink-apps-dsp";
4248 label = "adsp";
4249 #address-cells = <1>;
4250 #size-cells = <0>;
4251
4252 compute-cb@3 {
4253 compatible = "qcom,fastrpc-compute-cb";
4254 reg = <3>;
4255 iommus = <&apps_smmu 0x1003 0x80>,
4256 <&apps_smmu 0x1063 0x0>;
4257 };
4258
4259 compute-cb@4 {
4260 compatible = "qcom,fastrpc-compute-cb";
4261 reg = <4>;
4262 iommus = <&apps_smmu 0x1004 0x80>,
4263 <&apps_smmu 0x1064 0x0>;
4264 };
4265
4266 compute-cb@5 {
4267 compatible = "qcom,fastrpc-compute-cb";
4268 reg = <5>;
4269 iommus = <&apps_smmu 0x1005 0x80>,
4270 <&apps_smmu 0x1065 0x0>;
4271 };
4272
4273 compute-cb@6 {
4274 compatible = "qcom,fastrpc-compute-cb";
4275 reg = <6>;
4276 iommus = <&apps_smmu 0x1006 0x80>,
4277 <&apps_smmu 0x1066 0x0>;
4278 };
4279
4280 compute-cb@7 {
4281 compatible = "qcom,fastrpc-compute-cb";
4282 reg = <7>;
4283 iommus = <&apps_smmu 0x1007 0x80>,
4284 <&apps_smmu 0x1067 0x0>;
4285 };
4286 };
4287
4288 gpr {
4289 compatible = "qcom,gpr";
4290 qcom,glink-channels = "adsp_apps";
4291 qcom,domain = <GPR_DOMAIN_ID_ADSP>;
4292 qcom,intents = <512 20>;
4293 #address-cells = <1>;
4294 #size-cells = <0>;
4295
4296 q6apm: service@1 {
4297 compatible = "qcom,q6apm";
4298 reg = <GPR_APM_MODULE_IID>;
4299 #sound-dai-cells = <0>;
4300 qcom,protection-domain = "avs/audio",
4301 "msm/adsp/audio_pd";
4302
4303 q6apmdai: dais {
4304 compatible = "qcom,q6apm-dais";
4305 iommus = <&apps_smmu 0x1001 0x80>,
4306 <&apps_smmu 0x1061 0x0>;
4307 };
4308
4309 q6apmbedai: bedais {
4310 compatible = "qcom,q6apm-lpass-dais";
4311 #sound-dai-cells = <1>;
4312 };
4313 };
4314
4315 q6prm: service@2 {
4316 compatible = "qcom,q6prm";
4317 reg = <GPR_PRM_MODULE_IID>;
4318 qcom,protection-domain = "avs/audio",
4319 "msm/adsp/audio_pd";
4320
4321 q6prmcc: clock-controller {
4322 compatible = "qcom,q6prm-lpass-clocks";
4323 #clock-cells = <2>;
4324 };
4325 };
4326 };
4327 };
4328 };
4329
4330 nsp_noc: interconnect@320c0000 {
4331 compatible = "qcom,sm8550-nsp-noc";
4332 reg = <0 0x320c0000 0 0xe080>;
4333 #interconnect-cells = <2>;
4334 qcom,bcm-voters = <&apps_bcm_voter>;
4335 };
4336
4337 remoteproc_cdsp: remoteproc@32300000 {
4338 compatible = "qcom,sm8550-cdsp-pas";
4339 reg = <0x0 0x32300000 0x0 0x1400000>;
4340
4341 interrupts-extended = <&intc GIC_SPI 578 IRQ_TYPE_EDGE_RISING>,
4342 <&smp2p_cdsp_in 0 IRQ_TYPE_EDGE_RISING>,
4343 <&smp2p_cdsp_in 1 IRQ_TYPE_EDGE_RISING>,
4344 <&smp2p_cdsp_in 2 IRQ_TYPE_EDGE_RISING>,
4345 <&smp2p_cdsp_in 3 IRQ_TYPE_EDGE_RISING>;
4346 interrupt-names = "wdog", "fatal", "ready",
4347 "handover", "stop-ack";
4348
4349 clocks = <&rpmhcc RPMH_CXO_CLK>;
4350 clock-names = "xo";
4351
4352 power-domains = <&rpmhpd RPMHPD_CX>,
4353 <&rpmhpd RPMHPD_MXC>,
4354 <&rpmhpd RPMHPD_NSP>;
4355 power-domain-names = "cx", "mxc", "nsp";
4356
4357 interconnects = <&nsp_noc MASTER_CDSP_PROC 0 &mc_virt SLAVE_EBI1 0>;
4358
4359 memory-region = <&cdsp_mem>, <&q6_cdsp_dtb_mem>;
4360
4361 qcom,qmp = <&aoss_qmp>;
4362
4363 qcom,smem-states = <&smp2p_cdsp_out 0>;
4364 qcom,smem-state-names = "stop";
4365
4366 status = "disabled";
4367
4368 glink-edge {
4369 interrupts-extended = <&ipcc IPCC_CLIENT_CDSP
4370 IPCC_MPROC_SIGNAL_GLINK_QMP
4371 IRQ_TYPE_EDGE_RISING>;
4372 mboxes = <&ipcc IPCC_CLIENT_CDSP
4373 IPCC_MPROC_SIGNAL_GLINK_QMP>;
4374
4375 label = "cdsp";
4376 qcom,remote-pid = <5>;
4377
4378 fastrpc {
4379 compatible = "qcom,fastrpc";
4380 qcom,glink-channels = "fastrpcglink-apps-dsp";
4381 label = "cdsp";
4382 #address-cells = <1>;
4383 #size-cells = <0>;
4384
4385 compute-cb@1 {
4386 compatible = "qcom,fastrpc-compute-cb";
4387 reg = <1>;
4388 iommus = <&apps_smmu 0x1961 0x0>,
4389 <&apps_smmu 0x0c01 0x20>,
4390 <&apps_smmu 0x19c1 0x10>;
4391 };
4392
4393 compute-cb@2 {
4394 compatible = "qcom,fastrpc-compute-cb";
4395 reg = <2>;
4396 iommus = <&apps_smmu 0x1962 0x0>,
4397 <&apps_smmu 0x0c02 0x20>,
4398 <&apps_smmu 0x19c2 0x10>;
4399 };
4400
4401 compute-cb@3 {
4402 compatible = "qcom,fastrpc-compute-cb";
4403 reg = <3>;
4404 iommus = <&apps_smmu 0x1963 0x0>,
4405 <&apps_smmu 0x0c03 0x20>,
4406 <&apps_smmu 0x19c3 0x10>;
4407 };
4408
4409 compute-cb@4 {
4410 compatible = "qcom,fastrpc-compute-cb";
4411 reg = <4>;
4412 iommus = <&apps_smmu 0x1964 0x0>,
4413 <&apps_smmu 0x0c04 0x20>,
4414 <&apps_smmu 0x19c4 0x10>;
4415 };
4416
4417 compute-cb@5 {
4418 compatible = "qcom,fastrpc-compute-cb";
4419 reg = <5>;
4420 iommus = <&apps_smmu 0x1965 0x0>,
4421 <&apps_smmu 0x0c05 0x20>,
4422 <&apps_smmu 0x19c5 0x10>;
4423 };
4424
4425 compute-cb@6 {
4426 compatible = "qcom,fastrpc-compute-cb";
4427 reg = <6>;
4428 iommus = <&apps_smmu 0x1966 0x0>,
4429 <&apps_smmu 0x0c06 0x20>,
4430 <&apps_smmu 0x19c6 0x10>;
4431 };
4432
4433 compute-cb@7 {
4434 compatible = "qcom,fastrpc-compute-cb";
4435 reg = <7>;
4436 iommus = <&apps_smmu 0x1967 0x0>,
4437 <&apps_smmu 0x0c07 0x20>,
4438 <&apps_smmu 0x19c7 0x10>;
4439 };
4440
4441 compute-cb@8 {
4442 compatible = "qcom,fastrpc-compute-cb";
4443 reg = <8>;
4444 iommus = <&apps_smmu 0x1968 0x0>,
4445 <&apps_smmu 0x0c08 0x20>,
4446 <&apps_smmu 0x19c8 0x10>;
4447 };
4448
4449 /* note: secure cb9 in downstream */
4450 };
4451 };
4452 };
4453 };
4454
4455 thermal-zones {
4456 aoss0-thermal {
4457 polling-delay-passive = <0>;
4458 polling-delay = <0>;
4459 thermal-sensors = <&tsens0 0>;
4460
4461 trips {
4462 thermal-engine-config {
4463 temperature = <125000>;
4464 hysteresis = <1000>;
4465 type = "passive";
4466 };
4467
4468 reset-mon-config {
4469 temperature = <115000>;
4470 hysteresis = <5000>;
4471 type = "passive";
4472 };
4473 };
4474 };
4475
4476 cpuss0-thermal {
4477 polling-delay-passive = <0>;
4478 polling-delay = <0>;
4479 thermal-sensors = <&tsens0 1>;
4480
4481 trips {
4482 thermal-engine-config {
4483 temperature = <125000>;
4484 hysteresis = <1000>;
4485 type = "passive";
4486 };
4487
4488 reset-mon-config {
4489 temperature = <115000>;
4490 hysteresis = <5000>;
4491 type = "passive";
4492 };
4493 };
4494 };
4495
4496 cpuss1-thermal {
4497 polling-delay-passive = <0>;
4498 polling-delay = <0>;
4499 thermal-sensors = <&tsens0 2>;
4500
4501 trips {
4502 thermal-engine-config {
4503 temperature = <125000>;
4504 hysteresis = <1000>;
4505 type = "passive";
4506 };
4507
4508 reset-mon-config {
4509 temperature = <115000>;
4510 hysteresis = <5000>;
4511 type = "passive";
4512 };
4513 };
4514 };
4515
4516 cpuss2-thermal {
4517 polling-delay-passive = <0>;
4518 polling-delay = <0>;
4519 thermal-sensors = <&tsens0 3>;
4520
4521 trips {
4522 thermal-engine-config {
4523 temperature = <125000>;
4524 hysteresis = <1000>;
4525 type = "passive";
4526 };
4527
4528 reset-mon-config {
4529 temperature = <115000>;
4530 hysteresis = <5000>;
4531 type = "passive";
4532 };
4533 };
4534 };
4535
4536 cpuss3-thermal {
4537 polling-delay-passive = <0>;
4538 polling-delay = <0>;
4539 thermal-sensors = <&tsens0 4>;
4540
4541 trips {
4542 thermal-engine-config {
4543 temperature = <125000>;
4544 hysteresis = <1000>;
4545 type = "passive";
4546 };
4547
4548 reset-mon-config {
4549 temperature = <115000>;
4550 hysteresis = <5000>;
4551 type = "passive";
4552 };
4553 };
4554 };
4555
4556 cpu3-top-thermal {
4557 polling-delay-passive = <0>;
4558 polling-delay = <0>;
4559 thermal-sensors = <&tsens0 5>;
4560
4561 trips {
4562 cpu3_top_alert0: trip-point0 {
4563 temperature = <90000>;
4564 hysteresis = <2000>;
4565 type = "passive";
4566 };
4567
4568 cpu3_top_alert1: trip-point1 {
4569 temperature = <95000>;
4570 hysteresis = <2000>;
4571 type = "passive";
4572 };
4573
4574 cpu3_top_crit: cpu-critical {
4575 temperature = <110000>;
4576 hysteresis = <1000>;
4577 type = "critical";
4578 };
4579 };
4580 };
4581
4582 cpu3-bottom-thermal {
4583 polling-delay-passive = <0>;
4584 polling-delay = <0>;
4585 thermal-sensors = <&tsens0 6>;
4586
4587 trips {
4588 cpu3_bottom_alert0: trip-point0 {
4589 temperature = <90000>;
4590 hysteresis = <2000>;
4591 type = "passive";
4592 };
4593
4594 cpu3_bottom_alert1: trip-point1 {
4595 temperature = <95000>;
4596 hysteresis = <2000>;
4597 type = "passive";
4598 };
4599
4600 cpu3_bottom_crit: cpu-critical {
4601 temperature = <110000>;
4602 hysteresis = <1000>;
4603 type = "critical";
4604 };
4605 };
4606 };
4607
4608 cpu4-top-thermal {
4609 polling-delay-passive = <0>;
4610 polling-delay = <0>;
4611 thermal-sensors = <&tsens0 7>;
4612
4613 trips {
4614 cpu4_top_alert0: trip-point0 {
4615 temperature = <90000>;
4616 hysteresis = <2000>;
4617 type = "passive";
4618 };
4619
4620 cpu4_top_alert1: trip-point1 {
4621 temperature = <95000>;
4622 hysteresis = <2000>;
4623 type = "passive";
4624 };
4625
4626 cpu4_top_crit: cpu-critical {
4627 temperature = <110000>;
4628 hysteresis = <1000>;
4629 type = "critical";
4630 };
4631 };
4632 };
4633
4634 cpu4-bottom-thermal {
4635 polling-delay-passive = <0>;
4636 polling-delay = <0>;
4637 thermal-sensors = <&tsens0 8>;
4638
4639 trips {
4640 cpu4_bottom_alert0: trip-point0 {
4641 temperature = <90000>;
4642 hysteresis = <2000>;
4643 type = "passive";
4644 };
4645
4646 cpu4_bottom_alert1: trip-point1 {
4647 temperature = <95000>;
4648 hysteresis = <2000>;
4649 type = "passive";
4650 };
4651
4652 cpu4_bottom_crit: cpu-critical {
4653 temperature = <110000>;
4654 hysteresis = <1000>;
4655 type = "critical";
4656 };
4657 };
4658 };
4659
4660 cpu5-top-thermal {
4661 polling-delay-passive = <0>;
4662 polling-delay = <0>;
4663 thermal-sensors = <&tsens0 9>;
4664
4665 trips {
4666 cpu5_top_alert0: trip-point0 {
4667 temperature = <90000>;
4668 hysteresis = <2000>;
4669 type = "passive";
4670 };
4671
4672 cpu5_top_alert1: trip-point1 {
4673 temperature = <95000>;
4674 hysteresis = <2000>;
4675 type = "passive";
4676 };
4677
4678 cpu5_top_crit: cpu-critical {
4679 temperature = <110000>;
4680 hysteresis = <1000>;
4681 type = "critical";
4682 };
4683 };
4684 };
4685
4686 cpu5-bottom-thermal {
4687 polling-delay-passive = <0>;
4688 polling-delay = <0>;
4689 thermal-sensors = <&tsens0 10>;
4690
4691 trips {
4692 cpu5_bottom_alert0: trip-point0 {
4693 temperature = <90000>;
4694 hysteresis = <2000>;
4695 type = "passive";
4696 };
4697
4698 cpu5_bottom_alert1: trip-point1 {
4699 temperature = <95000>;
4700 hysteresis = <2000>;
4701 type = "passive";
4702 };
4703
4704 cpu5_bottom_crit: cpu-critical {
4705 temperature = <110000>;
4706 hysteresis = <1000>;
4707 type = "critical";
4708 };
4709 };
4710 };
4711
4712 cpu6-top-thermal {
4713 polling-delay-passive = <0>;
4714 polling-delay = <0>;
4715 thermal-sensors = <&tsens0 11>;
4716
4717 trips {
4718 cpu6_top_alert0: trip-point0 {
4719 temperature = <90000>;
4720 hysteresis = <2000>;
4721 type = "passive";
4722 };
4723
4724 cpu6_top_alert1: trip-point1 {
4725 temperature = <95000>;
4726 hysteresis = <2000>;
4727 type = "passive";
4728 };
4729
4730 cpu6_top_crit: cpu-critical {
4731 temperature = <110000>;
4732 hysteresis = <1000>;
4733 type = "critical";
4734 };
4735 };
4736 };
4737
4738 cpu6-bottom-thermal {
4739 polling-delay-passive = <0>;
4740 polling-delay = <0>;
4741 thermal-sensors = <&tsens0 12>;
4742
4743 trips {
4744 cpu6_bottom_alert0: trip-point0 {
4745 temperature = <90000>;
4746 hysteresis = <2000>;
4747 type = "passive";
4748 };
4749
4750 cpu6_bottom_alert1: trip-point1 {
4751 temperature = <95000>;
4752 hysteresis = <2000>;
4753 type = "passive";
4754 };
4755
4756 cpu6_bottom_crit: cpu-critical {
4757 temperature = <110000>;
4758 hysteresis = <1000>;
4759 type = "critical";
4760 };
4761 };
4762 };
4763
4764 cpu7-top-thermal {
4765 polling-delay-passive = <0>;
4766 polling-delay = <0>;
4767 thermal-sensors = <&tsens0 13>;
4768
4769 trips {
4770 cpu7_top_alert0: trip-point0 {
4771 temperature = <90000>;
4772 hysteresis = <2000>;
4773 type = "passive";
4774 };
4775
4776 cpu7_top_alert1: trip-point1 {
4777 temperature = <95000>;
4778 hysteresis = <2000>;
4779 type = "passive";
4780 };
4781
4782 cpu7_top_crit: cpu-critical {
4783 temperature = <110000>;
4784 hysteresis = <1000>;
4785 type = "critical";
4786 };
4787 };
4788 };
4789
4790 cpu7-middle-thermal {
4791 polling-delay-passive = <0>;
4792 polling-delay = <0>;
4793 thermal-sensors = <&tsens0 14>;
4794
4795 trips {
4796 cpu7_middle_alert0: trip-point0 {
4797 temperature = <90000>;
4798 hysteresis = <2000>;
4799 type = "passive";
4800 };
4801
4802 cpu7_middle_alert1: trip-point1 {
4803 temperature = <95000>;
4804 hysteresis = <2000>;
4805 type = "passive";
4806 };
4807
4808 cpu7_middle_crit: cpu-critical {
4809 temperature = <110000>;
4810 hysteresis = <1000>;
4811 type = "critical";
4812 };
4813 };
4814 };
4815
4816 cpu7-bottom-thermal {
4817 polling-delay-passive = <0>;
4818 polling-delay = <0>;
4819 thermal-sensors = <&tsens0 15>;
4820
4821 trips {
4822 cpu7_bottom_alert0: trip-point0 {
4823 temperature = <90000>;
4824 hysteresis = <2000>;
4825 type = "passive";
4826 };
4827
4828 cpu7_bottom_alert1: trip-point1 {
4829 temperature = <95000>;
4830 hysteresis = <2000>;
4831 type = "passive";
4832 };
4833
4834 cpu7_bottom_crit: cpu-critical {
4835 temperature = <110000>;
4836 hysteresis = <1000>;
4837 type = "critical";
4838 };
4839 };
4840 };
4841
4842 aoss1-thermal {
4843 polling-delay-passive = <0>;
4844 polling-delay = <0>;
4845 thermal-sensors = <&tsens1 0>;
4846
4847 trips {
4848 thermal-engine-config {
4849 temperature = <125000>;
4850 hysteresis = <1000>;
4851 type = "passive";
4852 };
4853
4854 reset-mon-config {
4855 temperature = <115000>;
4856 hysteresis = <5000>;
4857 type = "passive";
4858 };
4859 };
4860 };
4861
4862 cpu0-thermal {
4863 polling-delay-passive = <0>;
4864 polling-delay = <0>;
4865 thermal-sensors = <&tsens1 1>;
4866
4867 trips {
4868 cpu0_alert0: trip-point0 {
4869 temperature = <90000>;
4870 hysteresis = <2000>;
4871 type = "passive";
4872 };
4873
4874 cpu0_alert1: trip-point1 {
4875 temperature = <95000>;
4876 hysteresis = <2000>;
4877 type = "passive";
4878 };
4879
4880 cpu0_crit: cpu-critical {
4881 temperature = <110000>;
4882 hysteresis = <1000>;
4883 type = "critical";
4884 };
4885 };
4886 };
4887
4888 cpu1-thermal {
4889 polling-delay-passive = <0>;
4890 polling-delay = <0>;
4891 thermal-sensors = <&tsens1 2>;
4892
4893 trips {
4894 cpu1_alert0: trip-point0 {
4895 temperature = <90000>;
4896 hysteresis = <2000>;
4897 type = "passive";
4898 };
4899
4900 cpu1_alert1: trip-point1 {
4901 temperature = <95000>;
4902 hysteresis = <2000>;
4903 type = "passive";
4904 };
4905
4906 cpu1_crit: cpu-critical {
4907 temperature = <110000>;
4908 hysteresis = <1000>;
4909 type = "critical";
4910 };
4911 };
4912 };
4913
4914 cpu2-thermal {
4915 polling-delay-passive = <0>;
4916 polling-delay = <0>;
4917 thermal-sensors = <&tsens1 3>;
4918
4919 trips {
4920 cpu2_alert0: trip-point0 {
4921 temperature = <90000>;
4922 hysteresis = <2000>;
4923 type = "passive";
4924 };
4925
4926 cpu2_alert1: trip-point1 {
4927 temperature = <95000>;
4928 hysteresis = <2000>;
4929 type = "passive";
4930 };
4931
4932 cpu2_crit: cpu-critical {
4933 temperature = <110000>;
4934 hysteresis = <1000>;
4935 type = "critical";
4936 };
4937 };
4938 };
4939
4940 cdsp0-thermal {
4941 polling-delay-passive = <10>;
4942 polling-delay = <0>;
4943 thermal-sensors = <&tsens2 4>;
4944
4945 trips {
4946 thermal-engine-config {
4947 temperature = <125000>;
4948 hysteresis = <1000>;
4949 type = "passive";
4950 };
4951
4952 thermal-hal-config {
4953 temperature = <125000>;
4954 hysteresis = <1000>;
4955 type = "passive";
4956 };
4957
4958 reset-mon-config {
4959 temperature = <115000>;
4960 hysteresis = <5000>;
4961 type = "passive";
4962 };
4963
4964 cdsp0_junction_config: junction-config {
4965 temperature = <95000>;
4966 hysteresis = <5000>;
4967 type = "passive";
4968 };
4969 };
4970 };
4971
4972 cdsp1-thermal {
4973 polling-delay-passive = <10>;
4974 polling-delay = <0>;
4975 thermal-sensors = <&tsens2 5>;
4976
4977 trips {
4978 thermal-engine-config {
4979 temperature = <125000>;
4980 hysteresis = <1000>;
4981 type = "passive";
4982 };
4983
4984 thermal-hal-config {
4985 temperature = <125000>;
4986 hysteresis = <1000>;
4987 type = "passive";
4988 };
4989
4990 reset-mon-config {
4991 temperature = <115000>;
4992 hysteresis = <5000>;
4993 type = "passive";
4994 };
4995
4996 cdsp1_junction_config: junction-config {
4997 temperature = <95000>;
4998 hysteresis = <5000>;
4999 type = "passive";
5000 };
5001 };
5002 };
5003
5004 cdsp2-thermal {
5005 polling-delay-passive = <10>;
5006 polling-delay = <0>;
5007 thermal-sensors = <&tsens2 6>;
5008
5009 trips {
5010 thermal-engine-config {
5011 temperature = <125000>;
5012 hysteresis = <1000>;
5013 type = "passive";
5014 };
5015
5016 thermal-hal-config {
5017 temperature = <125000>;
5018 hysteresis = <1000>;
5019 type = "passive";
5020 };
5021
5022 reset-mon-config {
5023 temperature = <115000>;
5024 hysteresis = <5000>;
5025 type = "passive";
5026 };
5027
5028 cdsp2_junction_config: junction-config {
5029 temperature = <95000>;
5030 hysteresis = <5000>;
5031 type = "passive";
5032 };
5033 };
5034 };
5035
5036 cdsp3-thermal {
5037 polling-delay-passive = <10>;
5038 polling-delay = <0>;
5039 thermal-sensors = <&tsens2 7>;
5040
5041 trips {
5042 thermal-engine-config {
5043 temperature = <125000>;
5044 hysteresis = <1000>;
5045 type = "passive";
5046 };
5047
5048 thermal-hal-config {
5049 temperature = <125000>;
5050 hysteresis = <1000>;
5051 type = "passive";
5052 };
5053
5054 reset-mon-config {
5055 temperature = <115000>;
5056 hysteresis = <5000>;
5057 type = "passive";
5058 };
5059
5060 cdsp3_junction_config: junction-config {
5061 temperature = <95000>;
5062 hysteresis = <5000>;
5063 type = "passive";
5064 };
5065 };
5066 };
5067
5068 video-thermal {
5069 polling-delay-passive = <0>;
5070 polling-delay = <0>;
5071 thermal-sensors = <&tsens1 8>;
5072
5073 trips {
5074 thermal-engine-config {
5075 temperature = <125000>;
5076 hysteresis = <1000>;
5077 type = "passive";
5078 };
5079
5080 reset-mon-config {
5081 temperature = <115000>;
5082 hysteresis = <5000>;
5083 type = "passive";
5084 };
5085 };
5086 };
5087
5088 mem-thermal {
5089 polling-delay-passive = <10>;
5090 polling-delay = <0>;
5091 thermal-sensors = <&tsens1 9>;
5092
5093 trips {
5094 thermal-engine-config {
5095 temperature = <125000>;
5096 hysteresis = <1000>;
5097 type = "passive";
5098 };
5099
5100 ddr_config0: ddr0-config {
5101 temperature = <90000>;
5102 hysteresis = <5000>;
5103 type = "passive";
5104 };
5105
5106 reset-mon-config {
5107 temperature = <115000>;
5108 hysteresis = <5000>;
5109 type = "passive";
5110 };
5111 };
5112 };
5113
5114 modem0-thermal {
5115 polling-delay-passive = <0>;
5116 polling-delay = <0>;
5117 thermal-sensors = <&tsens1 10>;
5118
5119 trips {
5120 thermal-engine-config {
5121 temperature = <125000>;
5122 hysteresis = <1000>;
5123 type = "passive";
5124 };
5125
5126 mdmss0_config0: mdmss0-config0 {
5127 temperature = <102000>;
5128 hysteresis = <3000>;
5129 type = "passive";
5130 };
5131
5132 mdmss0_config1: mdmss0-config1 {
5133 temperature = <105000>;
5134 hysteresis = <3000>;
5135 type = "passive";
5136 };
5137
5138 reset-mon-config {
5139 temperature = <115000>;
5140 hysteresis = <5000>;
5141 type = "passive";
5142 };
5143 };
5144 };
5145
5146 modem1-thermal {
5147 polling-delay-passive = <0>;
5148 polling-delay = <0>;
5149 thermal-sensors = <&tsens1 11>;
5150
5151 trips {
5152 thermal-engine-config {
5153 temperature = <125000>;
5154 hysteresis = <1000>;
5155 type = "passive";
5156 };
5157
5158 mdmss1_config0: mdmss1-config0 {
5159 temperature = <102000>;
5160 hysteresis = <3000>;
5161 type = "passive";
5162 };
5163
5164 mdmss1_config1: mdmss1-config1 {
5165 temperature = <105000>;
5166 hysteresis = <3000>;
5167 type = "passive";
5168 };
5169
5170 reset-mon-config {
5171 temperature = <115000>;
5172 hysteresis = <5000>;
5173 type = "passive";
5174 };
5175 };
5176 };
5177
5178 modem2-thermal {
5179 polling-delay-passive = <0>;
5180 polling-delay = <0>;
5181 thermal-sensors = <&tsens1 12>;
5182
5183 trips {
5184 thermal-engine-config {
5185 temperature = <125000>;
5186 hysteresis = <1000>;
5187 type = "passive";
5188 };
5189
5190 mdmss2_config0: mdmss2-config0 {
5191 temperature = <102000>;
5192 hysteresis = <3000>;
5193 type = "passive";
5194 };
5195
5196 mdmss2_config1: mdmss2-config1 {
5197 temperature = <105000>;
5198 hysteresis = <3000>;
5199 type = "passive";
5200 };
5201
5202 reset-mon-config {
5203 temperature = <115000>;
5204 hysteresis = <5000>;
5205 type = "passive";
5206 };
5207 };
5208 };
5209
5210 modem3-thermal {
5211 polling-delay-passive = <0>;
5212 polling-delay = <0>;
5213 thermal-sensors = <&tsens1 13>;
5214
5215 trips {
5216 thermal-engine-config {
5217 temperature = <125000>;
5218 hysteresis = <1000>;
5219 type = "passive";
5220 };
5221
5222 mdmss3_config0: mdmss3-config0 {
5223 temperature = <102000>;
5224 hysteresis = <3000>;
5225 type = "passive";
5226 };
5227
5228 mdmss3_config1: mdmss3-config1 {
5229 temperature = <105000>;
5230 hysteresis = <3000>;
5231 type = "passive";
5232 };
5233
5234 reset-mon-config {
5235 temperature = <115000>;
5236 hysteresis = <5000>;
5237 type = "passive";
5238 };
5239 };
5240 };
5241
5242 camera0-thermal {
5243 polling-delay-passive = <0>;
5244 polling-delay = <0>;
5245 thermal-sensors = <&tsens1 14>;
5246
5247 trips {
5248 thermal-engine-config {
5249 temperature = <125000>;
5250 hysteresis = <1000>;
5251 type = "passive";
5252 };
5253
5254 reset-mon-config {
5255 temperature = <115000>;
5256 hysteresis = <5000>;
5257 type = "passive";
5258 };
5259 };
5260 };
5261
5262 camera1-thermal {
5263 polling-delay-passive = <0>;
5264 polling-delay = <0>;
5265 thermal-sensors = <&tsens1 15>;
5266
5267 trips {
5268 thermal-engine-config {
5269 temperature = <125000>;
5270 hysteresis = <1000>;
5271 type = "passive";
5272 };
5273
5274 reset-mon-config {
5275 temperature = <115000>;
5276 hysteresis = <5000>;
5277 type = "passive";
5278 };
5279 };
5280 };
5281
5282 aoss2-thermal {
5283 polling-delay-passive = <0>;
5284 polling-delay = <0>;
5285 thermal-sensors = <&tsens2 0>;
5286
5287 trips {
5288 thermal-engine-config {
5289 temperature = <125000>;
5290 hysteresis = <1000>;
5291 type = "passive";
5292 };
5293
5294 reset-mon-config {
5295 temperature = <115000>;
5296 hysteresis = <5000>;
5297 type = "passive";
5298 };
5299 };
5300 };
5301
5302 gpuss-0-thermal {
5303 polling-delay-passive = <10>;
5304 polling-delay = <0>;
5305 thermal-sensors = <&tsens2 1>;
5306
5307 trips {
5308 thermal-engine-config {
5309 temperature = <125000>;
5310 hysteresis = <1000>;
5311 type = "passive";
5312 };
5313
5314 thermal-hal-config {
5315 temperature = <125000>;
5316 hysteresis = <1000>;
5317 type = "passive";
5318 };
5319
5320 reset-mon-config {
5321 temperature = <115000>;
5322 hysteresis = <5000>;
5323 type = "passive";
5324 };
5325
5326 gpu0_junction_config: junction-config {
5327 temperature = <95000>;
5328 hysteresis = <5000>;
5329 type = "passive";
5330 };
5331 };
5332 };
5333
5334 gpuss-1-thermal {
5335 polling-delay-passive = <10>;
5336 polling-delay = <0>;
5337 thermal-sensors = <&tsens2 2>;
5338
5339 trips {
5340 thermal-engine-config {
5341 temperature = <125000>;
5342 hysteresis = <1000>;
5343 type = "passive";
5344 };
5345
5346 thermal-hal-config {
5347 temperature = <125000>;
5348 hysteresis = <1000>;
5349 type = "passive";
5350 };
5351
5352 reset-mon-config {
5353 temperature = <115000>;
5354 hysteresis = <5000>;
5355 type = "passive";
5356 };
5357
5358 gpu1_junction_config: junction-config {
5359 temperature = <95000>;
5360 hysteresis = <5000>;
5361 type = "passive";
5362 };
5363 };
5364 };
5365
5366 gpuss-2-thermal {
5367 polling-delay-passive = <10>;
5368 polling-delay = <0>;
5369 thermal-sensors = <&tsens2 3>;
5370
5371 trips {
5372 thermal-engine-config {
5373 temperature = <125000>;
5374 hysteresis = <1000>;
5375 type = "passive";
5376 };
5377
5378 thermal-hal-config {
5379 temperature = <125000>;
5380 hysteresis = <1000>;
5381 type = "passive";
5382 };
5383
5384 reset-mon-config {
5385 temperature = <115000>;
5386 hysteresis = <5000>;
5387 type = "passive";
5388 };
5389
5390 gpu2_junction_config: junction-config {
5391 temperature = <95000>;
5392 hysteresis = <5000>;
5393 type = "passive";
5394 };
5395 };
5396 };
5397
5398 gpuss-3-thermal {
5399 polling-delay-passive = <10>;
5400 polling-delay = <0>;
5401 thermal-sensors = <&tsens2 4>;
5402
5403 trips {
5404 thermal-engine-config {
5405 temperature = <125000>;
5406 hysteresis = <1000>;
5407 type = "passive";
5408 };
5409
5410 thermal-hal-config {
5411 temperature = <125000>;
5412 hysteresis = <1000>;
5413 type = "passive";
5414 };
5415
5416 reset-mon-config {
5417 temperature = <115000>;
5418 hysteresis = <5000>;
5419 type = "passive";
5420 };
5421
5422 gpu3_junction_config: junction-config {
5423 temperature = <95000>;
5424 hysteresis = <5000>;
5425 type = "passive";
5426 };
5427 };
5428 };
5429
5430 gpuss-4-thermal {
5431 polling-delay-passive = <10>;
5432 polling-delay = <0>;
5433 thermal-sensors = <&tsens2 5>;
5434
5435 trips {
5436 thermal-engine-config {
5437 temperature = <125000>;
5438 hysteresis = <1000>;
5439 type = "passive";
5440 };
5441
5442 thermal-hal-config {
5443 temperature = <125000>;
5444 hysteresis = <1000>;
5445 type = "passive";
5446 };
5447
5448 reset-mon-config {
5449 temperature = <115000>;
5450 hysteresis = <5000>;
5451 type = "passive";
5452 };
5453
5454 gpu4_junction_config: junction-config {
5455 temperature = <95000>;
5456 hysteresis = <5000>;
5457 type = "passive";
5458 };
5459 };
5460 };
5461
5462 gpuss-5-thermal {
5463 polling-delay-passive = <10>;
5464 polling-delay = <0>;
5465 thermal-sensors = <&tsens2 6>;
5466
5467 trips {
5468 thermal-engine-config {
5469 temperature = <125000>;
5470 hysteresis = <1000>;
5471 type = "passive";
5472 };
5473
5474 thermal-hal-config {
5475 temperature = <125000>;
5476 hysteresis = <1000>;
5477 type = "passive";
5478 };
5479
5480 reset-mon-config {
5481 temperature = <115000>;
5482 hysteresis = <5000>;
5483 type = "passive";
5484 };
5485
5486 gpu5_junction_config: junction-config {
5487 temperature = <95000>;
5488 hysteresis = <5000>;
5489 type = "passive";
5490 };
5491 };
5492 };
5493
5494 gpuss-6-thermal {
5495 polling-delay-passive = <10>;
5496 polling-delay = <0>;
5497 thermal-sensors = <&tsens2 7>;
5498
5499 trips {
5500 thermal-engine-config {
5501 temperature = <125000>;
5502 hysteresis = <1000>;
5503 type = "passive";
5504 };
5505
5506 thermal-hal-config {
5507 temperature = <125000>;
5508 hysteresis = <1000>;
5509 type = "passive";
5510 };
5511
5512 reset-mon-config {
5513 temperature = <115000>;
5514 hysteresis = <5000>;
5515 type = "passive";
5516 };
5517
5518 gpu6_junction_config: junction-config {
5519 temperature = <95000>;
5520 hysteresis = <5000>;
5521 type = "passive";
5522 };
5523 };
5524 };
5525
5526 gpuss-7-thermal {
5527 polling-delay-passive = <10>;
5528 polling-delay = <0>;
5529 thermal-sensors = <&tsens2 8>;
5530
5531 trips {
5532 thermal-engine-config {
5533 temperature = <125000>;
5534 hysteresis = <1000>;
5535 type = "passive";
5536 };
5537
5538 thermal-hal-config {
5539 temperature = <125000>;
5540 hysteresis = <1000>;
5541 type = "passive";
5542 };
5543
5544 reset-mon-config {
5545 temperature = <115000>;
5546 hysteresis = <5000>;
5547 type = "passive";
5548 };
5549
5550 gpu7_junction_config: junction-config {
5551 temperature = <95000>;
5552 hysteresis = <5000>;
5553 type = "passive";
5554 };
5555 };
5556 };
5557 };
5558
5559 timer {
5560 compatible = "arm,armv8-timer";
5561 interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW)>,
5562 <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW)>,
5563 <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW)>,
5564 <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW)>;
5565 };
5566 };