1 // SPDX-License-Identifier: BSD-3-Clause
3 * Copyright (c) 2017-2019, The Linux Foundation. All rights reserved.
4 * Copyright (c) 2020-2023, Linaro Limited
7 #include <dt-bindings/clock/qcom,dispcc-sm8250.h>
8 #include <dt-bindings/clock/qcom,gcc-sc8180x.h>
9 #include <dt-bindings/clock/qcom,gpucc-sm8150.h>
10 #include <dt-bindings/clock/qcom,rpmh.h>
11 #include <dt-bindings/interconnect/qcom,osm-l3.h>
12 #include <dt-bindings/interconnect/qcom,sc8180x.h>
13 #include <dt-bindings/interrupt-controller/arm-gic.h>
14 #include <dt-bindings/power/qcom-rpmpd.h>
15 #include <dt-bindings/soc/qcom,rpmh-rsc.h>
16 #include <dt-bindings/thermal/thermal.h>
19 interrupt-parent = <&intc>;
25 xo_board_clk: xo-board {
26 compatible = "fixed-clock";
28 clock-frequency = <38400000>;
31 sleep_clk: sleep-clk {
32 compatible = "fixed-clock";
34 clock-frequency = <32764>;
35 clock-output-names = "sleep_clk";
45 compatible = "qcom,kryo485";
47 enable-method = "psci";
48 capacity-dmips-mhz = <602>;
49 next-level-cache = <&L2_0>;
50 qcom,freq-domain = <&cpufreq_hw 0>;
51 operating-points-v2 = <&cpu0_opp_table>;
52 interconnects = <&gem_noc MASTER_AMPSS_M0 3 &mc_virt SLAVE_EBI_CH0 3>,
53 <&osm_l3 MASTER_OSM_L3_APPS &osm_l3 SLAVE_OSM_L3>;
54 power-domains = <&CPU_PD0>;
55 power-domain-names = "psci";
57 clocks = <&cpufreq_hw 0>;
63 next-level-cache = <&L3_0>;
74 compatible = "qcom,kryo485";
76 enable-method = "psci";
77 capacity-dmips-mhz = <602>;
78 next-level-cache = <&L2_100>;
79 qcom,freq-domain = <&cpufreq_hw 0>;
80 operating-points-v2 = <&cpu0_opp_table>;
81 interconnects = <&gem_noc MASTER_AMPSS_M0 3 &mc_virt SLAVE_EBI_CH0 3>,
82 <&osm_l3 MASTER_OSM_L3_APPS &osm_l3 SLAVE_OSM_L3>;
83 power-domains = <&CPU_PD1>;
84 power-domain-names = "psci";
86 clocks = <&cpufreq_hw 0>;
92 next-level-cache = <&L3_0>;
99 compatible = "qcom,kryo485";
101 enable-method = "psci";
102 capacity-dmips-mhz = <602>;
103 next-level-cache = <&L2_200>;
104 qcom,freq-domain = <&cpufreq_hw 0>;
105 operating-points-v2 = <&cpu0_opp_table>;
106 interconnects = <&gem_noc MASTER_AMPSS_M0 3 &mc_virt SLAVE_EBI_CH0 3>,
107 <&osm_l3 MASTER_OSM_L3_APPS &osm_l3 SLAVE_OSM_L3>;
108 power-domains = <&CPU_PD2>;
109 power-domain-names = "psci";
110 #cooling-cells = <2>;
111 clocks = <&cpufreq_hw 0>;
114 compatible = "cache";
117 next-level-cache = <&L3_0>;
123 compatible = "qcom,kryo485";
125 enable-method = "psci";
126 capacity-dmips-mhz = <602>;
127 next-level-cache = <&L2_300>;
128 qcom,freq-domain = <&cpufreq_hw 0>;
129 operating-points-v2 = <&cpu0_opp_table>;
130 interconnects = <&gem_noc MASTER_AMPSS_M0 3 &mc_virt SLAVE_EBI_CH0 3>,
131 <&osm_l3 MASTER_OSM_L3_APPS &osm_l3 SLAVE_OSM_L3>;
132 power-domains = <&CPU_PD3>;
133 power-domain-names = "psci";
134 #cooling-cells = <2>;
135 clocks = <&cpufreq_hw 0>;
138 compatible = "cache";
141 next-level-cache = <&L3_0>;
147 compatible = "qcom,kryo485";
149 enable-method = "psci";
150 capacity-dmips-mhz = <1024>;
151 next-level-cache = <&L2_400>;
152 qcom,freq-domain = <&cpufreq_hw 1>;
153 operating-points-v2 = <&cpu4_opp_table>;
154 interconnects = <&gem_noc MASTER_AMPSS_M0 3 &mc_virt SLAVE_EBI_CH0 3>,
155 <&osm_l3 MASTER_OSM_L3_APPS &osm_l3 SLAVE_OSM_L3>;
156 power-domains = <&CPU_PD4>;
157 power-domain-names = "psci";
158 #cooling-cells = <2>;
159 clocks = <&cpufreq_hw 1>;
162 compatible = "cache";
165 next-level-cache = <&L3_0>;
171 compatible = "qcom,kryo485";
173 enable-method = "psci";
174 capacity-dmips-mhz = <1024>;
175 next-level-cache = <&L2_500>;
176 qcom,freq-domain = <&cpufreq_hw 1>;
177 operating-points-v2 = <&cpu4_opp_table>;
178 interconnects = <&gem_noc MASTER_AMPSS_M0 3 &mc_virt SLAVE_EBI_CH0 3>,
179 <&osm_l3 MASTER_OSM_L3_APPS &osm_l3 SLAVE_OSM_L3>;
180 power-domains = <&CPU_PD5>;
181 power-domain-names = "psci";
182 #cooling-cells = <2>;
183 clocks = <&cpufreq_hw 1>;
186 compatible = "cache";
189 next-level-cache = <&L3_0>;
195 compatible = "qcom,kryo485";
197 enable-method = "psci";
198 capacity-dmips-mhz = <1024>;
199 next-level-cache = <&L2_600>;
200 qcom,freq-domain = <&cpufreq_hw 1>;
201 operating-points-v2 = <&cpu4_opp_table>;
202 interconnects = <&gem_noc MASTER_AMPSS_M0 3 &mc_virt SLAVE_EBI_CH0 3>,
203 <&osm_l3 MASTER_OSM_L3_APPS &osm_l3 SLAVE_OSM_L3>;
204 power-domains = <&CPU_PD6>;
205 power-domain-names = "psci";
206 #cooling-cells = <2>;
207 clocks = <&cpufreq_hw 1>;
210 compatible = "cache";
213 next-level-cache = <&L3_0>;
219 compatible = "qcom,kryo485";
221 enable-method = "psci";
222 capacity-dmips-mhz = <1024>;
223 next-level-cache = <&L2_700>;
224 qcom,freq-domain = <&cpufreq_hw 1>;
225 operating-points-v2 = <&cpu4_opp_table>;
226 interconnects = <&gem_noc MASTER_AMPSS_M0 3 &mc_virt SLAVE_EBI_CH0 3>,
227 <&osm_l3 MASTER_OSM_L3_APPS &osm_l3 SLAVE_OSM_L3>;
228 power-domains = <&CPU_PD7>;
229 power-domain-names = "psci";
230 #cooling-cells = <2>;
231 clocks = <&cpufreq_hw 1>;
234 compatible = "cache";
237 next-level-cache = <&L3_0>;
278 entry-method = "psci";
280 LITTLE_CPU_SLEEP_0: cpu-sleep-0-0 {
281 compatible = "arm,idle-state";
282 arm,psci-suspend-param = <0x40000004>;
283 entry-latency-us = <355>;
284 exit-latency-us = <909>;
285 min-residency-us = <3934>;
289 BIG_CPU_SLEEP_0: cpu-sleep-1-0 {
290 compatible = "arm,idle-state";
291 arm,psci-suspend-param = <0x40000004>;
292 entry-latency-us = <241>;
293 exit-latency-us = <1461>;
294 min-residency-us = <4488>;
300 CLUSTER_SLEEP_0: cluster-sleep-0 {
301 compatible = "domain-idle-state";
302 arm,psci-suspend-param = <0x4100a344>;
303 entry-latency-us = <3263>;
304 exit-latency-us = <6562>;
305 min-residency-us = <9987>;
310 cpu0_opp_table: opp-table-cpu0 {
311 compatible = "operating-points-v2";
315 opp-hz = /bits/ 64 <300000000>;
316 opp-peak-kBps = <800000 9600000>;
320 opp-hz = /bits/ 64 <422400000>;
321 opp-peak-kBps = <800000 9600000>;
325 opp-hz = /bits/ 64 <537600000>;
326 opp-peak-kBps = <800000 12902400>;
330 opp-hz = /bits/ 64 <652800000>;
331 opp-peak-kBps = <800000 12902400>;
335 opp-hz = /bits/ 64 <768000000>;
336 opp-peak-kBps = <800000 15974400>;
340 opp-hz = /bits/ 64 <883200000>;
341 opp-peak-kBps = <1804000 19660800>;
345 opp-hz = /bits/ 64 <998400000>;
346 opp-peak-kBps = <1804000 19660800>;
350 opp-hz = /bits/ 64 <1113600000>;
351 opp-peak-kBps = <1804000 22732800>;
355 opp-hz = /bits/ 64 <1228800000>;
356 opp-peak-kBps = <1804000 22732800>;
360 opp-hz = /bits/ 64 <1363200000>;
361 opp-peak-kBps = <2188000 25804800>;
365 opp-hz = /bits/ 64 <1478400000>;
366 opp-peak-kBps = <2188000 31948800>;
370 opp-hz = /bits/ 64 <1574400000>;
371 opp-peak-kBps = <3072000 31948800>;
375 opp-hz = /bits/ 64 <1670400000>;
376 opp-peak-kBps = <3072000 31948800>;
380 opp-hz = /bits/ 64 <1766400000>;
381 opp-peak-kBps = <3072000 31948800>;
385 cpu4_opp_table: opp-table-cpu4 {
386 compatible = "operating-points-v2";
390 opp-hz = /bits/ 64 <825600000>;
391 opp-peak-kBps = <1804000 15974400>;
395 opp-hz = /bits/ 64 <940800000>;
396 opp-peak-kBps = <2188000 19660800>;
400 opp-hz = /bits/ 64 <1056000000>;
401 opp-peak-kBps = <2188000 22732800>;
405 opp-hz = /bits/ 64 <1171200000>;
406 opp-peak-kBps = <3072000 25804800>;
410 opp-hz = /bits/ 64 <1286400000>;
411 opp-peak-kBps = <3072000 31948800>;
415 opp-hz = /bits/ 64 <1420800000>;
416 opp-peak-kBps = <4068000 31948800>;
420 opp-hz = /bits/ 64 <1536000000>;
421 opp-peak-kBps = <4068000 31948800>;
425 opp-hz = /bits/ 64 <1651200000>;
426 opp-peak-kBps = <4068000 40550400>;
430 opp-hz = /bits/ 64 <1766400000>;
431 opp-peak-kBps = <4068000 40550400>;
435 opp-hz = /bits/ 64 <1881600000>;
436 opp-peak-kBps = <4068000 43008000>;
440 opp-hz = /bits/ 64 <1996800000>;
441 opp-peak-kBps = <6220000 43008000>;
445 opp-hz = /bits/ 64 <2131200000>;
446 opp-peak-kBps = <6220000 49152000>;
450 opp-hz = /bits/ 64 <2246400000>;
451 opp-peak-kBps = <7216000 49152000>;
455 opp-hz = /bits/ 64 <2361600000>;
456 opp-peak-kBps = <8368000 49152000>;
460 opp-hz = /bits/ 64 <2457600000>;
461 opp-peak-kBps = <8368000 51609600>;
465 opp-hz = /bits/ 64 <2553600000>;
466 opp-peak-kBps = <8368000 51609600>;
470 opp-hz = /bits/ 64 <2649600000>;
471 opp-peak-kBps = <8368000 51609600>;
475 opp-hz = /bits/ 64 <2745600000>;
476 opp-peak-kBps = <8368000 51609600>;
480 opp-hz = /bits/ 64 <2841600000>;
481 opp-peak-kBps = <8368000 51609600>;
485 opp-hz = /bits/ 64 <2918400000>;
486 opp-peak-kBps = <8368000 51609600>;
490 opp-hz = /bits/ 64 <2995200000>;
491 opp-peak-kBps = <8368000 51609600>;
497 compatible = "qcom,scm-sc8180x", "qcom,scm";
501 camnoc_virt: interconnect-camnoc-virt {
502 compatible = "qcom,sc8180x-camnoc-virt";
503 #interconnect-cells = <2>;
504 qcom,bcm-voters = <&apps_bcm_voter>;
507 mc_virt: interconnect-mc-virt {
508 compatible = "qcom,sc8180x-mc-virt";
509 #interconnect-cells = <2>;
510 qcom,bcm-voters = <&apps_bcm_voter>;
513 qup_virt: interconnect-qup-virt {
514 compatible = "qcom,sc8180x-qup-virt";
515 #interconnect-cells = <2>;
516 qcom,bcm-voters = <&apps_bcm_voter>;
520 device_type = "memory";
521 /* We expect the bootloader to fill in the size */
522 reg = <0x0 0x80000000 0x0 0x0>;
526 compatible = "arm,armv8-pmuv3";
527 interrupts = <GIC_PPI 5 IRQ_TYPE_LEVEL_HIGH>;
531 compatible = "arm,psci-1.0";
534 CPU_PD0: power-domain-cpu0 {
535 #power-domain-cells = <0>;
536 power-domains = <&CLUSTER_PD>;
537 domain-idle-states = <&LITTLE_CPU_SLEEP_0>;
540 CPU_PD1: power-domain-cpu1 {
541 #power-domain-cells = <0>;
542 power-domains = <&CLUSTER_PD>;
543 domain-idle-states = <&LITTLE_CPU_SLEEP_0>;
546 CPU_PD2: power-domain-cpu2 {
547 #power-domain-cells = <0>;
548 power-domains = <&CLUSTER_PD>;
549 domain-idle-states = <&LITTLE_CPU_SLEEP_0>;
552 CPU_PD3: power-domain-cpu3 {
553 #power-domain-cells = <0>;
554 power-domains = <&CLUSTER_PD>;
555 domain-idle-states = <&LITTLE_CPU_SLEEP_0>;
558 CPU_PD4: power-domain-cpu4 {
559 #power-domain-cells = <0>;
560 power-domains = <&CLUSTER_PD>;
561 domain-idle-states = <&BIG_CPU_SLEEP_0>;
564 CPU_PD5: power-domain-cpu5 {
565 #power-domain-cells = <0>;
566 power-domains = <&CLUSTER_PD>;
567 domain-idle-states = <&BIG_CPU_SLEEP_0>;
570 CPU_PD6: power-domain-cpu6 {
571 #power-domain-cells = <0>;
572 power-domains = <&CLUSTER_PD>;
573 domain-idle-states = <&BIG_CPU_SLEEP_0>;
576 CPU_PD7: power-domain-cpu7 {
577 #power-domain-cells = <0>;
578 power-domains = <&CLUSTER_PD>;
579 domain-idle-states = <&BIG_CPU_SLEEP_0>;
582 CLUSTER_PD: power-domain-cpu-cluster0 {
583 #power-domain-cells = <0>;
584 domain-idle-states = <&CLUSTER_SLEEP_0>;
589 #address-cells = <2>;
593 hyp_mem: hyp@85700000 {
594 reg = <0x0 0x85700000 0x0 0x600000>;
598 xbl_mem: xbl@85d00000 {
599 reg = <0x0 0x85d00000 0x0 0x140000>;
603 aop_mem: aop@85f00000 {
604 reg = <0x0 0x85f00000 0x0 0x20000>;
608 aop_cmd_db: cmd-db@85f20000 {
609 compatible = "qcom,cmd-db";
610 reg = <0x0 0x85f20000 0x0 0x20000>;
615 reg = <0x0 0x85f40000 0x0 0x10000>;
619 smem_mem: smem@86000000 {
620 compatible = "qcom,smem";
621 reg = <0x0 0x86000000 0x0 0x200000>;
623 hwlocks = <&tcsr_mutex 3>;
627 reg = <0x0 0x86200000 0x0 0x3900000>;
632 reg = <0x0 0x89b00000 0x0 0x1c00000>;
637 reg = <0x0 0x9d400000 0x0 0x1000000>;
642 reg = <0x0 0x9e400000 0x0 0x1400000>;
647 reg = <0x0 0x9f800000 0x0 0x800000>;
653 compatible = "qcom,smp2p";
654 qcom,smem = <94>, <432>;
656 interrupts = <GIC_SPI 576 IRQ_TYPE_EDGE_RISING>;
658 mboxes = <&apss_shared 6>;
660 qcom,local-pid = <0>;
661 qcom,remote-pid = <5>;
663 cdsp_smp2p_out: master-kernel {
664 qcom,entry-name = "master-kernel";
665 #qcom,smem-state-cells = <1>;
668 cdsp_smp2p_in: slave-kernel {
669 qcom,entry-name = "slave-kernel";
671 interrupt-controller;
672 #interrupt-cells = <2>;
677 compatible = "qcom,smp2p";
678 qcom,smem = <443>, <429>;
680 interrupts = <GIC_SPI 158 IRQ_TYPE_EDGE_RISING>;
682 mboxes = <&apss_shared 10>;
684 qcom,local-pid = <0>;
685 qcom,remote-pid = <2>;
687 adsp_smp2p_out: master-kernel {
688 qcom,entry-name = "master-kernel";
689 #qcom,smem-state-cells = <1>;
692 adsp_smp2p_in: slave-kernel {
693 qcom,entry-name = "slave-kernel";
695 interrupt-controller;
696 #interrupt-cells = <2>;
701 compatible = "qcom,smp2p";
702 qcom,smem = <435>, <428>;
704 interrupts = <GIC_SPI 451 IRQ_TYPE_EDGE_RISING>;
706 mboxes = <&apss_shared 14>;
708 qcom,local-pid = <0>;
709 qcom,remote-pid = <1>;
711 modem_smp2p_out: master-kernel {
712 qcom,entry-name = "master-kernel";
713 #qcom,smem-state-cells = <1>;
716 modem_smp2p_in: slave-kernel {
717 qcom,entry-name = "slave-kernel";
719 interrupt-controller;
720 #interrupt-cells = <2>;
723 modem_smp2p_ipa_out: ipa-ap-to-modem {
724 qcom,entry-name = "ipa";
725 #qcom,smem-state-cells = <1>;
728 modem_smp2p_ipa_in: ipa-modem-to-ap {
729 qcom,entry-name = "ipa";
730 interrupt-controller;
731 #interrupt-cells = <2>;
734 modem_smp2p_wlan_in: wlan-wpss-to-ap {
735 qcom,entry-name = "wlan";
736 interrupt-controller;
737 #interrupt-cells = <2>;
742 compatible = "qcom,smp2p";
743 qcom,smem = <481>, <430>;
745 interrupts = <GIC_SPI 172 IRQ_TYPE_EDGE_RISING>;
747 mboxes = <&apss_shared 26>;
749 qcom,local-pid = <0>;
750 qcom,remote-pid = <3>;
752 slpi_smp2p_out: master-kernel {
753 qcom,entry-name = "master-kernel";
754 #qcom,smem-state-cells = <1>;
757 slpi_smp2p_in: slave-kernel {
758 qcom,entry-name = "slave-kernel";
760 interrupt-controller;
761 #interrupt-cells = <2>;
766 compatible = "simple-bus";
767 #address-cells = <2>;
769 ranges = <0 0 0 0 0x10 0>;
770 dma-ranges = <0 0 0 0 0x10 0>;
772 gcc: clock-controller@100000 {
773 compatible = "qcom,gcc-sc8180x";
774 reg = <0x0 0x00100000 0x0 0x1f0000>;
777 #power-domain-cells = <1>;
778 clocks = <&rpmhcc RPMH_CXO_CLK>,
779 <&rpmhcc RPMH_CXO_CLK_A>,
781 clock-names = "bi_tcxo",
786 qupv3_id_0: geniqup@8c0000 {
787 compatible = "qcom,geni-se-qup";
788 reg = <0 0x008c0000 0 0x6000>;
789 clocks = <&gcc GCC_QUPV3_WRAP_0_M_AHB_CLK>,
790 <&gcc GCC_QUPV3_WRAP_0_S_AHB_CLK>;
791 clock-names = "m-ahb", "s-ahb";
792 #address-cells = <2>;
795 iommus = <&apps_smmu 0x4c3 0>;
799 compatible = "qcom,geni-i2c";
800 reg = <0 0x00880000 0 0x4000>;
801 clocks = <&gcc GCC_QUPV3_WRAP0_S0_CLK>;
803 interrupts = <GIC_SPI 601 IRQ_TYPE_LEVEL_HIGH>;
804 interconnects = <&qup_virt MASTER_QUP_CORE_0 0 &qup_virt SLAVE_QUP_CORE_0 0>,
805 <&gem_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_QUP_0 0>,
806 <&aggre2_noc MASTER_QUP_0 0 &mc_virt SLAVE_EBI_CH0 0>;
807 interconnect-names = "qup-core", "qup-config", "qup-memory";
808 #address-cells = <1>;
814 compatible = "qcom,geni-spi";
815 reg = <0 0x00880000 0 0x4000>;
816 clocks = <&gcc GCC_QUPV3_WRAP0_S0_CLK>;
818 interrupts = <GIC_SPI 601 IRQ_TYPE_LEVEL_HIGH>;
819 interconnects = <&qup_virt MASTER_QUP_CORE_0 0 &qup_virt SLAVE_QUP_CORE_0 0>,
820 <&gem_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_QUP_0 0>;
821 interconnect-names = "qup-core", "qup-config";
822 #address-cells = <1>;
827 uart0: serial@880000 {
828 compatible = "qcom,geni-uart";
829 reg = <0 0x00880000 0 0x4000>;
830 clocks = <&gcc GCC_QUPV3_WRAP0_S0_CLK>;
832 interrupts = <GIC_SPI 601 IRQ_TYPE_LEVEL_HIGH>;
833 interconnects = <&qup_virt MASTER_QUP_CORE_0 0 &qup_virt SLAVE_QUP_CORE_0 0>,
834 <&gem_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_QUP_0 0>;
835 interconnect-names = "qup-core", "qup-config";
840 compatible = "qcom,geni-i2c";
841 reg = <0 0x00884000 0 0x4000>;
842 clocks = <&gcc GCC_QUPV3_WRAP0_S1_CLK>;
844 interrupts = <GIC_SPI 602 IRQ_TYPE_LEVEL_HIGH>;
845 interconnects = <&qup_virt MASTER_QUP_CORE_0 0 &qup_virt SLAVE_QUP_CORE_0 0>,
846 <&gem_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_QUP_0 0>,
847 <&aggre2_noc MASTER_QUP_0 0 &mc_virt SLAVE_EBI_CH0 0>;
848 interconnect-names = "qup-core", "qup-config", "qup-memory";
849 #address-cells = <1>;
855 compatible = "qcom,geni-spi";
856 reg = <0 0x00884000 0 0x4000>;
857 clocks = <&gcc GCC_QUPV3_WRAP0_S1_CLK>;
859 interrupts = <GIC_SPI 602 IRQ_TYPE_LEVEL_HIGH>;
860 interconnects = <&qup_virt MASTER_QUP_CORE_0 0 &qup_virt SLAVE_QUP_CORE_0 0>,
861 <&gem_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_QUP_0 0>;
862 interconnect-names = "qup-core", "qup-config";
863 #address-cells = <1>;
868 uart1: serial@884000 {
869 compatible = "qcom,geni-uart";
870 reg = <0 0x00884000 0 0x4000>;
871 clocks = <&gcc GCC_QUPV3_WRAP0_S1_CLK>;
873 interrupts = <GIC_SPI 602 IRQ_TYPE_LEVEL_HIGH>;
874 interconnects = <&qup_virt MASTER_QUP_CORE_0 0 &qup_virt SLAVE_QUP_CORE_0 0>,
875 <&gem_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_QUP_0 0>;
876 interconnect-names = "qup-core", "qup-config";
881 compatible = "qcom,geni-i2c";
882 reg = <0 0x00888000 0 0x4000>;
883 clocks = <&gcc GCC_QUPV3_WRAP0_S2_CLK>;
885 interrupts = <GIC_SPI 603 IRQ_TYPE_LEVEL_HIGH>;
886 interconnects = <&qup_virt MASTER_QUP_CORE_0 0 &qup_virt SLAVE_QUP_CORE_0 0>,
887 <&gem_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_QUP_0 0>,
888 <&aggre2_noc MASTER_QUP_0 0 &mc_virt SLAVE_EBI_CH0 0>;
889 interconnect-names = "qup-core", "qup-config", "qup-memory";
890 #address-cells = <1>;
896 compatible = "qcom,geni-spi";
897 reg = <0 0x00888000 0 0x4000>;
898 clocks = <&gcc GCC_QUPV3_WRAP0_S2_CLK>;
900 interrupts = <GIC_SPI 603 IRQ_TYPE_LEVEL_HIGH>;
901 interconnects = <&qup_virt MASTER_QUP_CORE_0 0 &qup_virt SLAVE_QUP_CORE_0 0>,
902 <&gem_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_QUP_0 0>;
903 interconnect-names = "qup-core", "qup-config";
904 #address-cells = <1>;
909 uart2: serial@888000 {
910 compatible = "qcom,geni-uart";
911 reg = <0 0x00888000 0 0x4000>;
912 clocks = <&gcc GCC_QUPV3_WRAP0_S2_CLK>;
914 interrupts = <GIC_SPI 603 IRQ_TYPE_LEVEL_HIGH>;
915 interconnects = <&qup_virt MASTER_QUP_CORE_0 0 &qup_virt SLAVE_QUP_CORE_0 0>,
916 <&gem_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_QUP_0 0>;
917 interconnect-names = "qup-core", "qup-config";
922 compatible = "qcom,geni-i2c";
923 reg = <0 0x0088c000 0 0x4000>;
924 clocks = <&gcc GCC_QUPV3_WRAP0_S3_CLK>;
926 interrupts = <GIC_SPI 604 IRQ_TYPE_LEVEL_HIGH>;
927 interconnects = <&qup_virt MASTER_QUP_CORE_0 0 &qup_virt SLAVE_QUP_CORE_0 0>,
928 <&gem_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_QUP_0 0>,
929 <&aggre2_noc MASTER_QUP_0 0 &mc_virt SLAVE_EBI_CH0 0>;
930 interconnect-names = "qup-core", "qup-config", "qup-memory";
931 #address-cells = <1>;
937 compatible = "qcom,geni-spi";
938 reg = <0 0x0088c000 0 0x4000>;
939 clocks = <&gcc GCC_QUPV3_WRAP0_S3_CLK>;
941 interrupts = <GIC_SPI 604 IRQ_TYPE_LEVEL_HIGH>;
942 interconnects = <&qup_virt MASTER_QUP_CORE_0 0 &qup_virt SLAVE_QUP_CORE_0 0>,
943 <&gem_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_QUP_0 0>;
944 interconnect-names = "qup-core", "qup-config";
945 #address-cells = <1>;
950 uart3: serial@88c000 {
951 compatible = "qcom,geni-uart";
952 reg = <0 0x0088c000 0 0x4000>;
953 clocks = <&gcc GCC_QUPV3_WRAP0_S3_CLK>;
955 interrupts = <GIC_SPI 604 IRQ_TYPE_LEVEL_HIGH>;
956 interconnects = <&qup_virt MASTER_QUP_CORE_0 0 &qup_virt SLAVE_QUP_CORE_0 0>,
957 <&gem_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_QUP_0 0>;
958 interconnect-names = "qup-core", "qup-config";
963 compatible = "qcom,geni-i2c";
964 reg = <0 0x00890000 0 0x4000>;
965 clocks = <&gcc GCC_QUPV3_WRAP0_S4_CLK>;
967 interrupts = <GIC_SPI 605 IRQ_TYPE_LEVEL_HIGH>;
968 interconnects = <&qup_virt MASTER_QUP_CORE_0 0 &qup_virt SLAVE_QUP_CORE_0 0>,
969 <&gem_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_QUP_0 0>,
970 <&aggre2_noc MASTER_QUP_0 0 &mc_virt SLAVE_EBI_CH0 0>;
971 interconnect-names = "qup-core", "qup-config", "qup-memory";
972 #address-cells = <1>;
978 compatible = "qcom,geni-spi";
979 reg = <0 0x00890000 0 0x4000>;
980 clocks = <&gcc GCC_QUPV3_WRAP0_S4_CLK>;
982 interrupts = <GIC_SPI 605 IRQ_TYPE_LEVEL_HIGH>;
983 interconnects = <&qup_virt MASTER_QUP_CORE_0 0 &qup_virt SLAVE_QUP_CORE_0 0>,
984 <&gem_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_QUP_0 0>;
985 interconnect-names = "qup-core", "qup-config";
986 #address-cells = <1>;
991 uart4: serial@890000 {
992 compatible = "qcom,geni-uart";
993 reg = <0 0x00890000 0 0x4000>;
994 clocks = <&gcc GCC_QUPV3_WRAP0_S4_CLK>;
996 interrupts = <GIC_SPI 605 IRQ_TYPE_LEVEL_HIGH>;
997 interconnects = <&qup_virt MASTER_QUP_CORE_0 0 &qup_virt SLAVE_QUP_CORE_0 0>,
998 <&gem_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_QUP_0 0>;
999 interconnect-names = "qup-core", "qup-config";
1000 status = "disabled";
1004 compatible = "qcom,geni-i2c";
1005 reg = <0 0x00894000 0 0x4000>;
1006 clocks = <&gcc GCC_QUPV3_WRAP0_S5_CLK>;
1008 interrupts = <GIC_SPI 606 IRQ_TYPE_LEVEL_HIGH>;
1009 interconnects = <&qup_virt MASTER_QUP_CORE_0 0 &qup_virt SLAVE_QUP_CORE_0 0>,
1010 <&gem_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_QUP_0 0>,
1011 <&aggre2_noc MASTER_QUP_0 0 &mc_virt SLAVE_EBI_CH0 0>;
1012 interconnect-names = "qup-core", "qup-config", "qup-memory";
1013 #address-cells = <1>;
1015 status = "disabled";
1019 compatible = "qcom,geni-spi";
1020 reg = <0 0x00894000 0 0x4000>;
1021 clocks = <&gcc GCC_QUPV3_WRAP0_S5_CLK>;
1023 interrupts = <GIC_SPI 606 IRQ_TYPE_LEVEL_HIGH>;
1024 interconnects = <&qup_virt MASTER_QUP_CORE_0 0 &qup_virt SLAVE_QUP_CORE_0 0>,
1025 <&gem_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_QUP_0 0>;
1026 interconnect-names = "qup-core", "qup-config";
1027 #address-cells = <1>;
1029 status = "disabled";
1032 uart5: serial@894000 {
1033 compatible = "qcom,geni-uart";
1034 reg = <0 0x00894000 0 0x4000>;
1035 clocks = <&gcc GCC_QUPV3_WRAP0_S5_CLK>;
1037 interrupts = <GIC_SPI 606 IRQ_TYPE_LEVEL_HIGH>;
1038 interconnects = <&qup_virt MASTER_QUP_CORE_0 0 &qup_virt SLAVE_QUP_CORE_0 0>,
1039 <&gem_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_QUP_0 0>;
1040 interconnect-names = "qup-core", "qup-config";
1041 status = "disabled";
1045 compatible = "qcom,geni-i2c";
1046 reg = <0 0x00898000 0 0x4000>;
1047 clocks = <&gcc GCC_QUPV3_WRAP0_S6_CLK>;
1049 interrupts = <GIC_SPI 607 IRQ_TYPE_LEVEL_HIGH>;
1050 interconnects = <&qup_virt MASTER_QUP_CORE_0 0 &qup_virt SLAVE_QUP_CORE_0 0>,
1051 <&gem_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_QUP_0 0>,
1052 <&aggre2_noc MASTER_QUP_0 0 &mc_virt SLAVE_EBI_CH0 0>;
1053 interconnect-names = "qup-core", "qup-config", "qup-memory";
1054 #address-cells = <1>;
1056 status = "disabled";
1060 compatible = "qcom,geni-spi";
1061 reg = <0 0x00898000 0 0x4000>;
1062 clocks = <&gcc GCC_QUPV3_WRAP0_S6_CLK>;
1064 interrupts = <GIC_SPI 607 IRQ_TYPE_LEVEL_HIGH>;
1065 interconnects = <&qup_virt MASTER_QUP_CORE_0 0 &qup_virt SLAVE_QUP_CORE_0 0>,
1066 <&gem_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_QUP_0 0>;
1067 interconnect-names = "qup-core", "qup-config";
1068 #address-cells = <1>;
1070 status = "disabled";
1073 uart6: serial@898000 {
1074 compatible = "qcom,geni-uart";
1075 reg = <0 0x00898000 0 0x4000>;
1076 clocks = <&gcc GCC_QUPV3_WRAP0_S6_CLK>;
1078 interrupts = <GIC_SPI 607 IRQ_TYPE_LEVEL_HIGH>;
1079 interconnects = <&qup_virt MASTER_QUP_CORE_0 0 &qup_virt SLAVE_QUP_CORE_0 0>,
1080 <&gem_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_QUP_0 0>;
1081 interconnect-names = "qup-core", "qup-config";
1082 status = "disabled";
1086 compatible = "qcom,geni-i2c";
1087 reg = <0 0x0089c000 0 0x4000>;
1088 clocks = <&gcc GCC_QUPV3_WRAP0_S7_CLK>;
1090 interrupts = <GIC_SPI 608 IRQ_TYPE_LEVEL_HIGH>;
1091 interconnects = <&qup_virt MASTER_QUP_CORE_0 0 &qup_virt SLAVE_QUP_CORE_0 0>,
1092 <&gem_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_QUP_0 0>,
1093 <&aggre2_noc MASTER_QUP_0 0 &mc_virt SLAVE_EBI_CH0 0>;
1094 interconnect-names = "qup-core", "qup-config", "qup-memory";
1095 #address-cells = <1>;
1097 status = "disabled";
1101 compatible = "qcom,geni-spi";
1102 reg = <0 0x0089c000 0 0x4000>;
1103 clocks = <&gcc GCC_QUPV3_WRAP0_S7_CLK>;
1105 interrupts = <GIC_SPI 608 IRQ_TYPE_LEVEL_HIGH>;
1106 interconnects = <&qup_virt MASTER_QUP_CORE_0 0 &qup_virt SLAVE_QUP_CORE_0 0>,
1107 <&gem_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_QUP_0 0>;
1108 interconnect-names = "qup-core", "qup-config";
1109 #address-cells = <1>;
1111 status = "disabled";
1114 uart7: serial@89c000 {
1115 compatible = "qcom,geni-uart";
1116 reg = <0 0x0089c000 0 0x4000>;
1117 clocks = <&gcc GCC_QUPV3_WRAP0_S7_CLK>;
1119 interrupts = <GIC_SPI 608 IRQ_TYPE_LEVEL_HIGH>;
1120 interconnects = <&qup_virt MASTER_QUP_CORE_0 0 &qup_virt SLAVE_QUP_CORE_0 0>,
1121 <&gem_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_QUP_0 0>;
1122 interconnect-names = "qup-core", "qup-config";
1123 status = "disabled";
1127 qupv3_id_1: geniqup@ac0000 {
1128 compatible = "qcom,geni-se-qup";
1129 reg = <0x0 0x00ac0000 0x0 0x6000>;
1130 clocks = <&gcc GCC_QUPV3_WRAP_1_M_AHB_CLK>,
1131 <&gcc GCC_QUPV3_WRAP_1_S_AHB_CLK>;
1132 clock-names = "m-ahb", "s-ahb";
1133 #address-cells = <2>;
1136 iommus = <&apps_smmu 0x603 0>;
1137 status = "disabled";
1140 compatible = "qcom,geni-i2c";
1141 reg = <0 0x00a80000 0 0x4000>;
1142 clocks = <&gcc GCC_QUPV3_WRAP1_S0_CLK>;
1144 interrupts = <GIC_SPI 353 IRQ_TYPE_LEVEL_HIGH>;
1145 interconnects = <&qup_virt MASTER_QUP_CORE_1 0 &qup_virt SLAVE_QUP_CORE_1 0>,
1146 <&gem_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_QUP_1 0>,
1147 <&aggre2_noc MASTER_QUP_1 0 &mc_virt SLAVE_EBI_CH0 0>;
1148 interconnect-names = "qup-core", "qup-config", "qup-memory";
1149 #address-cells = <1>;
1151 status = "disabled";
1155 compatible = "qcom,geni-spi";
1156 reg = <0 0x00a80000 0 0x4000>;
1157 clocks = <&gcc GCC_QUPV3_WRAP1_S0_CLK>;
1159 interrupts = <GIC_SPI 353 IRQ_TYPE_LEVEL_HIGH>;
1160 interconnects = <&qup_virt MASTER_QUP_CORE_1 0 &qup_virt SLAVE_QUP_CORE_1 0>,
1161 <&gem_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_QUP_1 0>;
1162 interconnect-names = "qup-core", "qup-config";
1163 #address-cells = <1>;
1165 status = "disabled";
1168 uart8: serial@a80000 {
1169 compatible = "qcom,geni-uart";
1170 reg = <0 0x00a80000 0 0x4000>;
1171 clocks = <&gcc GCC_QUPV3_WRAP1_S0_CLK>;
1173 interrupts = <GIC_SPI 353 IRQ_TYPE_LEVEL_HIGH>;
1174 interconnects = <&qup_virt MASTER_QUP_CORE_1 0 &qup_virt SLAVE_QUP_CORE_1 0>,
1175 <&gem_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_QUP_1 0>;
1176 interconnect-names = "qup-core", "qup-config";
1177 status = "disabled";
1181 compatible = "qcom,geni-i2c";
1182 reg = <0 0x00a84000 0 0x4000>;
1183 clocks = <&gcc GCC_QUPV3_WRAP1_S1_CLK>;
1185 interrupts = <GIC_SPI 354 IRQ_TYPE_LEVEL_HIGH>;
1186 interconnects = <&qup_virt MASTER_QUP_CORE_1 0 &qup_virt SLAVE_QUP_CORE_1 0>,
1187 <&gem_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_QUP_1 0>,
1188 <&aggre2_noc MASTER_QUP_1 0 &mc_virt SLAVE_EBI_CH0 0>;
1189 interconnect-names = "qup-core", "qup-config", "qup-memory";
1190 #address-cells = <1>;
1192 status = "disabled";
1196 compatible = "qcom,geni-spi";
1197 reg = <0 0x00a84000 0 0x4000>;
1198 clocks = <&gcc GCC_QUPV3_WRAP1_S1_CLK>;
1200 interrupts = <GIC_SPI 354 IRQ_TYPE_LEVEL_HIGH>;
1201 interconnects = <&qup_virt MASTER_QUP_CORE_1 0 &qup_virt SLAVE_QUP_CORE_1 0>,
1202 <&gem_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_QUP_1 0>;
1203 interconnect-names = "qup-core", "qup-config";
1204 #address-cells = <1>;
1206 status = "disabled";
1209 uart9: serial@a84000 {
1210 compatible = "qcom,geni-debug-uart";
1211 reg = <0 0x00a84000 0 0x4000>;
1212 clocks = <&gcc GCC_QUPV3_WRAP1_S1_CLK>;
1214 interrupts = <GIC_SPI 354 IRQ_TYPE_LEVEL_HIGH>;
1215 interconnects = <&qup_virt MASTER_QUP_CORE_1 0 &qup_virt SLAVE_QUP_CORE_1 0>,
1216 <&gem_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_QUP_1 0>;
1217 interconnect-names = "qup-core", "qup-config";
1218 status = "disabled";
1222 compatible = "qcom,geni-i2c";
1223 reg = <0 0x00a88000 0 0x4000>;
1224 clocks = <&gcc GCC_QUPV3_WRAP1_S2_CLK>;
1226 interrupts = <GIC_SPI 355 IRQ_TYPE_LEVEL_HIGH>;
1227 interconnects = <&qup_virt MASTER_QUP_CORE_1 0 &qup_virt SLAVE_QUP_CORE_1 0>,
1228 <&gem_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_QUP_1 0>,
1229 <&aggre2_noc MASTER_QUP_1 0 &mc_virt SLAVE_EBI_CH0 0>;
1230 interconnect-names = "qup-core", "qup-config", "qup-memory";
1231 #address-cells = <1>;
1233 status = "disabled";
1237 compatible = "qcom,geni-spi";
1238 reg = <0 0x00a88000 0 0x4000>;
1239 clocks = <&gcc GCC_QUPV3_WRAP1_S2_CLK>;
1241 interrupts = <GIC_SPI 355 IRQ_TYPE_LEVEL_HIGH>;
1242 interconnects = <&qup_virt MASTER_QUP_CORE_1 0 &qup_virt SLAVE_QUP_CORE_1 0>,
1243 <&gem_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_QUP_1 0>;
1244 interconnect-names = "qup-core", "qup-config";
1245 #address-cells = <1>;
1247 status = "disabled";
1250 uart10: serial@a88000 {
1251 compatible = "qcom,geni-uart";
1252 reg = <0 0x00a88000 0 0x4000>;
1253 clocks = <&gcc GCC_QUPV3_WRAP1_S2_CLK>;
1255 interrupts = <GIC_SPI 355 IRQ_TYPE_LEVEL_HIGH>;
1256 interconnects = <&qup_virt MASTER_QUP_CORE_1 0 &qup_virt SLAVE_QUP_CORE_1 0>,
1257 <&gem_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_QUP_1 0>;
1258 interconnect-names = "qup-core", "qup-config";
1259 status = "disabled";
1263 compatible = "qcom,geni-i2c";
1264 reg = <0 0x00a8c000 0 0x4000>;
1265 clocks = <&gcc GCC_QUPV3_WRAP1_S3_CLK>;
1267 interrupts = <GIC_SPI 356 IRQ_TYPE_LEVEL_HIGH>;
1268 interconnects = <&qup_virt MASTER_QUP_CORE_1 0 &qup_virt SLAVE_QUP_CORE_1 0>,
1269 <&gem_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_QUP_1 0>,
1270 <&aggre2_noc MASTER_QUP_1 0 &mc_virt SLAVE_EBI_CH0 0>;
1271 interconnect-names = "qup-core", "qup-config", "qup-memory";
1272 #address-cells = <1>;
1274 status = "disabled";
1278 compatible = "qcom,geni-spi";
1279 reg = <0 0x00a8c000 0 0x4000>;
1280 clocks = <&gcc GCC_QUPV3_WRAP1_S3_CLK>;
1282 interrupts = <GIC_SPI 356 IRQ_TYPE_LEVEL_HIGH>;
1283 interconnects = <&qup_virt MASTER_QUP_CORE_1 0 &qup_virt SLAVE_QUP_CORE_1 0>,
1284 <&gem_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_QUP_1 0>;
1285 interconnect-names = "qup-core", "qup-config";
1286 #address-cells = <1>;
1288 status = "disabled";
1291 uart11: serial@a8c000 {
1292 compatible = "qcom,geni-uart";
1293 reg = <0 0x00a8c000 0 0x4000>;
1294 clocks = <&gcc GCC_QUPV3_WRAP1_S3_CLK>;
1296 interrupts = <GIC_SPI 356 IRQ_TYPE_LEVEL_HIGH>;
1297 interconnects = <&qup_virt MASTER_QUP_CORE_1 0 &qup_virt SLAVE_QUP_CORE_1 0>,
1298 <&gem_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_QUP_1 0>;
1299 interconnect-names = "qup-core", "qup-config";
1300 status = "disabled";
1304 compatible = "qcom,geni-i2c";
1305 reg = <0 0x00a90000 0 0x4000>;
1306 clocks = <&gcc GCC_QUPV3_WRAP1_S4_CLK>;
1308 interrupts = <GIC_SPI 357 IRQ_TYPE_LEVEL_HIGH>;
1309 interconnects = <&qup_virt MASTER_QUP_CORE_1 0 &qup_virt SLAVE_QUP_CORE_1 0>,
1310 <&gem_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_QUP_1 0>,
1311 <&aggre2_noc MASTER_QUP_1 0 &mc_virt SLAVE_EBI_CH0 0>;
1312 interconnect-names = "qup-core", "qup-config", "qup-memory";
1313 #address-cells = <1>;
1315 status = "disabled";
1319 compatible = "qcom,geni-spi";
1320 reg = <0 0x00a90000 0 0x4000>;
1321 clocks = <&gcc GCC_QUPV3_WRAP1_S4_CLK>;
1323 interrupts = <GIC_SPI 357 IRQ_TYPE_LEVEL_HIGH>;
1324 interconnects = <&qup_virt MASTER_QUP_CORE_1 0 &qup_virt SLAVE_QUP_CORE_1 0>,
1325 <&gem_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_QUP_1 0>;
1326 interconnect-names = "qup-core", "qup-config";
1327 #address-cells = <1>;
1329 status = "disabled";
1332 uart12: serial@a90000 {
1333 compatible = "qcom,geni-uart";
1334 reg = <0 0x00a90000 0 0x4000>;
1335 clocks = <&gcc GCC_QUPV3_WRAP1_S4_CLK>;
1337 interrupts = <GIC_SPI 357 IRQ_TYPE_LEVEL_HIGH>;
1338 interconnects = <&qup_virt MASTER_QUP_CORE_1 0 &qup_virt SLAVE_QUP_CORE_1 0>,
1339 <&gem_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_QUP_1 0>;
1340 interconnect-names = "qup-core", "qup-config";
1341 status = "disabled";
1345 compatible = "qcom,geni-i2c";
1346 reg = <0 0x00a94000 0 0x4000>;
1347 clocks = <&gcc GCC_QUPV3_WRAP1_S5_CLK>;
1349 interrupts = <GIC_SPI 358 IRQ_TYPE_LEVEL_HIGH>;
1350 interconnects = <&qup_virt MASTER_QUP_CORE_1 0 &qup_virt SLAVE_QUP_CORE_1 0>,
1351 <&gem_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_QUP_1 0>,
1352 <&aggre2_noc MASTER_QUP_1 0 &mc_virt SLAVE_EBI_CH0 0>;
1353 interconnect-names = "qup-core", "qup-config", "qup-memory";
1354 #address-cells = <1>;
1356 status = "disabled";
1360 compatible = "qcom,geni-spi";
1361 reg = <0 0x00a94000 0 0x4000>;
1362 clocks = <&gcc GCC_QUPV3_WRAP1_S5_CLK>;
1364 interrupts = <GIC_SPI 358 IRQ_TYPE_LEVEL_HIGH>;
1365 interconnects = <&qup_virt MASTER_QUP_CORE_1 0 &qup_virt SLAVE_QUP_CORE_1 0>,
1366 <&gem_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_QUP_1 0>;
1367 interconnect-names = "qup-core", "qup-config";
1368 #address-cells = <1>;
1370 status = "disabled";
1373 uart16: serial@a94000 {
1374 compatible = "qcom,geni-uart";
1375 reg = <0 0x00a94000 0 0x4000>;
1376 clocks = <&gcc GCC_QUPV3_WRAP1_S5_CLK>;
1378 interrupts = <GIC_SPI 358 IRQ_TYPE_LEVEL_HIGH>;
1379 interconnects = <&qup_virt MASTER_QUP_CORE_1 0 &qup_virt SLAVE_QUP_CORE_1 0>,
1380 <&gem_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_QUP_1 0>;
1381 interconnect-names = "qup-core", "qup-config";
1382 status = "disabled";
1386 qupv3_id_2: geniqup@cc0000 {
1387 compatible = "qcom,geni-se-qup";
1388 reg = <0x0 0x00cc0000 0x0 0x6000>;
1389 clocks = <&gcc GCC_QUPV3_WRAP_2_M_AHB_CLK>,
1390 <&gcc GCC_QUPV3_WRAP_2_S_AHB_CLK>;
1391 clock-names = "m-ahb", "s-ahb";
1392 #address-cells = <2>;
1395 iommus = <&apps_smmu 0x7a3 0>;
1396 status = "disabled";
1399 compatible = "qcom,geni-i2c";
1400 reg = <0 0x00c80000 0 0x4000>;
1401 clocks = <&gcc GCC_QUPV3_WRAP2_S0_CLK>;
1403 interrupts = <GIC_SPI 373 IRQ_TYPE_LEVEL_HIGH>;
1404 interconnects = <&qup_virt MASTER_QUP_CORE_2 0 &qup_virt SLAVE_QUP_CORE_2 0>,
1405 <&gem_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_QUP_2 0>,
1406 <&aggre2_noc MASTER_QUP_2 0 &mc_virt SLAVE_EBI_CH0 0>;
1407 interconnect-names = "qup-core", "qup-config", "qup-memory";
1408 #address-cells = <1>;
1410 status = "disabled";
1414 compatible = "qcom,geni-spi";
1415 reg = <0 0x00c80000 0 0x4000>;
1416 clocks = <&gcc GCC_QUPV3_WRAP2_S0_CLK>;
1418 interrupts = <GIC_SPI 373 IRQ_TYPE_LEVEL_HIGH>;
1419 interconnects = <&qup_virt MASTER_QUP_CORE_2 0 &qup_virt SLAVE_QUP_CORE_2 0>,
1420 <&gem_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_QUP_2 0>;
1421 interconnect-names = "qup-core", "qup-config";
1422 #address-cells = <1>;
1424 status = "disabled";
1427 uart17: serial@c80000 {
1428 compatible = "qcom,geni-uart";
1429 reg = <0 0x00c80000 0 0x4000>;
1430 clocks = <&gcc GCC_QUPV3_WRAP2_S0_CLK>;
1432 interrupts = <GIC_SPI 373 IRQ_TYPE_LEVEL_HIGH>;
1433 interconnects = <&qup_virt MASTER_QUP_CORE_2 0 &qup_virt SLAVE_QUP_CORE_2 0>,
1434 <&gem_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_QUP_2 0>;
1435 interconnect-names = "qup-core", "qup-config";
1436 status = "disabled";
1440 compatible = "qcom,geni-i2c";
1441 reg = <0 0x00c84000 0 0x4000>;
1442 clocks = <&gcc GCC_QUPV3_WRAP2_S1_CLK>;
1444 interrupts = <GIC_SPI 583 IRQ_TYPE_LEVEL_HIGH>;
1445 interconnects = <&qup_virt MASTER_QUP_CORE_2 0 &qup_virt SLAVE_QUP_CORE_2 0>,
1446 <&gem_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_QUP_2 0>,
1447 <&aggre2_noc MASTER_QUP_2 0 &mc_virt SLAVE_EBI_CH0 0>;
1448 interconnect-names = "qup-core", "qup-config", "qup-memory";
1449 #address-cells = <1>;
1451 status = "disabled";
1455 compatible = "qcom,geni-spi";
1456 reg = <0 0x00c84000 0 0x4000>;
1457 clocks = <&gcc GCC_QUPV3_WRAP2_S1_CLK>;
1459 interrupts = <GIC_SPI 583 IRQ_TYPE_LEVEL_HIGH>;
1460 interconnects = <&qup_virt MASTER_QUP_CORE_2 0 &qup_virt SLAVE_QUP_CORE_2 0>,
1461 <&gem_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_QUP_2 0>;
1462 interconnect-names = "qup-core", "qup-config";
1463 #address-cells = <1>;
1465 status = "disabled";
1468 uart18: serial@c84000 {
1469 compatible = "qcom,geni-uart";
1470 reg = <0 0x00c84000 0 0x4000>;
1471 clocks = <&gcc GCC_QUPV3_WRAP2_S1_CLK>;
1473 interrupts = <GIC_SPI 583 IRQ_TYPE_LEVEL_HIGH>;
1474 interconnects = <&qup_virt MASTER_QUP_CORE_2 0 &qup_virt SLAVE_QUP_CORE_2 0>,
1475 <&gem_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_QUP_2 0>;
1476 interconnect-names = "qup-core", "qup-config";
1477 status = "disabled";
1481 compatible = "qcom,geni-i2c";
1482 reg = <0 0x00c88000 0 0x4000>;
1483 clocks = <&gcc GCC_QUPV3_WRAP2_S2_CLK>;
1485 interrupts = <GIC_SPI 584 IRQ_TYPE_LEVEL_HIGH>;
1486 interconnects = <&qup_virt MASTER_QUP_CORE_2 0 &qup_virt SLAVE_QUP_CORE_2 0>,
1487 <&gem_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_QUP_2 0>,
1488 <&aggre2_noc MASTER_QUP_2 0 &mc_virt SLAVE_EBI_CH0 0>;
1489 interconnect-names = "qup-core", "qup-config", "qup-memory";
1490 #address-cells = <1>;
1492 status = "disabled";
1496 compatible = "qcom,geni-spi";
1497 reg = <0 0x00c88000 0 0x4000>;
1498 clocks = <&gcc GCC_QUPV3_WRAP2_S2_CLK>;
1500 interrupts = <GIC_SPI 584 IRQ_TYPE_LEVEL_HIGH>;
1501 interconnects = <&qup_virt MASTER_QUP_CORE_2 0 &qup_virt SLAVE_QUP_CORE_2 0>,
1502 <&gem_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_QUP_2 0>;
1503 interconnect-names = "qup-core", "qup-config";
1504 #address-cells = <1>;
1506 status = "disabled";
1509 uart19: serial@c88000 {
1510 compatible = "qcom,geni-uart";
1511 reg = <0 0x00c88000 0 0x4000>;
1512 clocks = <&gcc GCC_QUPV3_WRAP2_S2_CLK>;
1514 interrupts = <GIC_SPI 584 IRQ_TYPE_LEVEL_HIGH>;
1515 interconnects = <&qup_virt MASTER_QUP_CORE_2 0 &qup_virt SLAVE_QUP_CORE_2 0>,
1516 <&gem_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_QUP_2 0>;
1517 interconnect-names = "qup-core", "qup-config";
1518 status = "disabled";
1522 compatible = "qcom,geni-i2c";
1523 reg = <0 0x00c8c000 0 0x4000>;
1524 clocks = <&gcc GCC_QUPV3_WRAP2_S3_CLK>;
1526 interrupts = <GIC_SPI 585 IRQ_TYPE_LEVEL_HIGH>;
1527 interconnects = <&qup_virt MASTER_QUP_CORE_2 0 &qup_virt SLAVE_QUP_CORE_2 0>,
1528 <&gem_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_QUP_2 0>,
1529 <&aggre2_noc MASTER_QUP_2 0 &mc_virt SLAVE_EBI_CH0 0>;
1530 interconnect-names = "qup-core", "qup-config", "qup-memory";
1531 #address-cells = <1>;
1533 status = "disabled";
1537 compatible = "qcom,geni-spi";
1538 reg = <0 0x00c8c000 0 0x4000>;
1539 clocks = <&gcc GCC_QUPV3_WRAP2_S3_CLK>;
1541 interrupts = <GIC_SPI 585 IRQ_TYPE_LEVEL_HIGH>;
1542 interconnects = <&qup_virt MASTER_QUP_CORE_2 0 &qup_virt SLAVE_QUP_CORE_2 0>,
1543 <&gem_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_QUP_2 0>;
1544 interconnect-names = "qup-core", "qup-config";
1545 #address-cells = <1>;
1547 status = "disabled";
1550 uart13: serial@c8c000 {
1551 compatible = "qcom,geni-uart";
1552 reg = <0 0x00c8c000 0 0x4000>;
1553 clocks = <&gcc GCC_QUPV3_WRAP2_S3_CLK>;
1555 interrupts = <GIC_SPI 585 IRQ_TYPE_LEVEL_HIGH>;
1556 interconnects = <&qup_virt MASTER_QUP_CORE_2 0 &qup_virt SLAVE_QUP_CORE_2 0>,
1557 <&gem_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_QUP_2 0>;
1558 interconnect-names = "qup-core", "qup-config";
1559 status = "disabled";
1563 compatible = "qcom,geni-i2c";
1564 reg = <0 0x00c90000 0 0x4000>;
1565 clocks = <&gcc GCC_QUPV3_WRAP2_S4_CLK>;
1567 interrupts = <GIC_SPI 586 IRQ_TYPE_LEVEL_HIGH>;
1568 interconnects = <&qup_virt MASTER_QUP_CORE_2 0 &qup_virt SLAVE_QUP_CORE_2 0>,
1569 <&gem_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_QUP_2 0>,
1570 <&aggre2_noc MASTER_QUP_2 0 &mc_virt SLAVE_EBI_CH0 0>;
1571 interconnect-names = "qup-core", "qup-config", "qup-memory";
1572 #address-cells = <1>;
1574 status = "disabled";
1578 compatible = "qcom,geni-spi";
1579 reg = <0 0x00c90000 0 0x4000>;
1580 clocks = <&gcc GCC_QUPV3_WRAP2_S4_CLK>;
1582 interrupts = <GIC_SPI 586 IRQ_TYPE_LEVEL_HIGH>;
1583 interconnects = <&qup_virt MASTER_QUP_CORE_2 0 &qup_virt SLAVE_QUP_CORE_2 0>,
1584 <&gem_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_QUP_2 0>;
1585 interconnect-names = "qup-core", "qup-config";
1586 #address-cells = <1>;
1588 status = "disabled";
1591 uart14: serial@c90000 {
1592 compatible = "qcom,geni-uart";
1593 reg = <0 0x00c90000 0 0x4000>;
1594 clocks = <&gcc GCC_QUPV3_WRAP2_S4_CLK>;
1596 interrupts = <GIC_SPI 586 IRQ_TYPE_LEVEL_HIGH>;
1597 interconnects = <&qup_virt MASTER_QUP_CORE_2 0 &qup_virt SLAVE_QUP_CORE_2 0>,
1598 <&gem_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_QUP_2 0>;
1599 interconnect-names = "qup-core", "qup-config";
1600 status = "disabled";
1604 compatible = "qcom,geni-i2c";
1605 reg = <0 0x00c94000 0 0x4000>;
1606 clocks = <&gcc GCC_QUPV3_WRAP2_S5_CLK>;
1608 interrupts = <GIC_SPI 587 IRQ_TYPE_LEVEL_HIGH>;
1609 interconnects = <&qup_virt MASTER_QUP_CORE_2 0 &qup_virt SLAVE_QUP_CORE_2 0>,
1610 <&gem_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_QUP_2 0>,
1611 <&aggre2_noc MASTER_QUP_2 0 &mc_virt SLAVE_EBI_CH0 0>;
1612 interconnect-names = "qup-core", "qup-config", "qup-memory";
1613 #address-cells = <1>;
1615 status = "disabled";
1619 compatible = "qcom,geni-spi";
1620 reg = <0 0x00c94000 0 0x4000>;
1621 clocks = <&gcc GCC_QUPV3_WRAP2_S5_CLK>;
1623 interrupts = <GIC_SPI 587 IRQ_TYPE_LEVEL_HIGH>;
1624 interconnects = <&qup_virt MASTER_QUP_CORE_2 0 &qup_virt SLAVE_QUP_CORE_2 0>,
1625 <&gem_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_QUP_2 0>;
1626 interconnect-names = "qup-core", "qup-config";
1627 #address-cells = <1>;
1629 status = "disabled";
1632 uart15: serial@c94000 {
1633 compatible = "qcom,geni-uart";
1634 reg = <0 0x00c94000 0 0x4000>;
1635 clocks = <&gcc GCC_QUPV3_WRAP2_S5_CLK>;
1637 interrupts = <GIC_SPI 587 IRQ_TYPE_LEVEL_HIGH>;
1638 interconnects = <&qup_virt MASTER_QUP_CORE_2 0 &qup_virt SLAVE_QUP_CORE_2 0>,
1639 <&gem_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_QUP_2 0>;
1640 interconnect-names = "qup-core", "qup-config";
1641 status = "disabled";
1645 config_noc: interconnect@1500000 {
1646 compatible = "qcom,sc8180x-config-noc";
1647 reg = <0 0x01500000 0 0x7400>;
1648 #interconnect-cells = <2>;
1649 qcom,bcm-voters = <&apps_bcm_voter>;
1652 system_noc: interconnect@1620000 {
1653 compatible = "qcom,sc8180x-system-noc";
1654 reg = <0 0x01620000 0 0x19400>;
1655 #interconnect-cells = <2>;
1656 qcom,bcm-voters = <&apps_bcm_voter>;
1659 aggre1_noc: interconnect@16e0000 {
1660 compatible = "qcom,sc8180x-aggre1-noc";
1661 reg = <0 0x016e0000 0 0xd080>;
1662 #interconnect-cells = <2>;
1663 qcom,bcm-voters = <&apps_bcm_voter>;
1666 aggre2_noc: interconnect@1700000 {
1667 compatible = "qcom,sc8180x-aggre2-noc";
1668 reg = <0 0x01700000 0 0x20000>;
1669 #interconnect-cells = <2>;
1670 qcom,bcm-voters = <&apps_bcm_voter>;
1673 compute_noc: interconnect@1720000 {
1674 compatible = "qcom,sc8180x-compute-noc";
1675 reg = <0 0x01720000 0 0x7000>;
1676 #interconnect-cells = <2>;
1677 qcom,bcm-voters = <&apps_bcm_voter>;
1680 mmss_noc: interconnect@1740000 {
1681 compatible = "qcom,sc8180x-mmss-noc";
1682 reg = <0 0x01740000 0 0x1c100>;
1683 #interconnect-cells = <2>;
1684 qcom,bcm-voters = <&apps_bcm_voter>;
1687 pcie0: pci@1c00000 {
1688 compatible = "qcom,pcie-sc8180x";
1689 reg = <0 0x01c00000 0 0x3000>,
1690 <0 0x60000000 0 0xf1d>,
1691 <0 0x60000f20 0 0xa8>,
1692 <0 0x60001000 0 0x1000>,
1693 <0 0x60100000 0 0x100000>;
1699 device_type = "pci";
1700 linux,pci-domain = <0>;
1701 bus-range = <0x00 0xff>;
1704 #address-cells = <3>;
1707 ranges = <0x01000000 0x0 0x60200000 0x0 0x60200000 0x0 0x100000>,
1708 <0x02000000 0x0 0x60300000 0x0 0x60300000 0x0 0x3d00000>;
1710 interrupts = <GIC_SPI 141 IRQ_TYPE_LEVEL_HIGH>;
1711 interrupt-names = "msi";
1712 #interrupt-cells = <1>;
1713 interrupt-map-mask = <0 0 0 0x7>;
1714 interrupt-map = <0 0 0 1 &intc 0 149 IRQ_TYPE_LEVEL_HIGH>, /* int_a */
1715 <0 0 0 2 &intc 0 150 IRQ_TYPE_LEVEL_HIGH>, /* int_b */
1716 <0 0 0 3 &intc 0 151 IRQ_TYPE_LEVEL_HIGH>, /* int_c */
1717 <0 0 0 4 &intc 0 152 IRQ_TYPE_LEVEL_HIGH>; /* int_d */
1719 clocks = <&gcc GCC_PCIE_0_PIPE_CLK>,
1720 <&gcc GCC_PCIE_0_AUX_CLK>,
1721 <&gcc GCC_PCIE_0_CFG_AHB_CLK>,
1722 <&gcc GCC_PCIE_0_MSTR_AXI_CLK>,
1723 <&gcc GCC_PCIE_0_SLV_AXI_CLK>,
1724 <&gcc GCC_PCIE_0_SLV_Q2A_AXI_CLK>,
1725 <&gcc GCC_PCIE_0_CLKREF_CLK>,
1726 <&gcc GCC_AGGRE_NOC_PCIE_TBU_CLK>;
1727 clock-names = "pipe",
1736 assigned-clocks = <&gcc GCC_PCIE_0_AUX_CLK>;
1737 assigned-clock-rates = <19200000>;
1739 iommus = <&apps_smmu 0x1d80 0x7f>;
1740 iommu-map = <0x0 &apps_smmu 0x1d80 0x1>,
1741 <0x100 &apps_smmu 0x1d81 0x1>;
1743 resets = <&gcc GCC_PCIE_0_BCR>;
1744 reset-names = "pci";
1746 power-domains = <&gcc PCIE_0_GDSC>;
1748 interconnects = <&aggre2_noc MASTER_PCIE 0 &mc_virt SLAVE_EBI_CH0 0>,
1749 <&gem_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_PCIE_0 0>;
1750 interconnect-names = "pcie-mem", "cpu-pcie";
1752 phys = <&pcie0_phy>;
1753 phy-names = "pciephy";
1755 status = "disabled";
1758 pcie0_phy: phy@1c06000 {
1759 compatible = "qcom,sc8180x-qmp-pcie-phy";
1760 reg = <0 0x01c06000 0 0x1000>;
1761 clocks = <&gcc GCC_PCIE_PHY_AUX_CLK>,
1762 <&gcc GCC_PCIE_0_CFG_AHB_CLK>,
1763 <&gcc GCC_PCIE_0_CLKREF_CLK>,
1764 <&gcc GCC_PCIE1_PHY_REFGEN_CLK>,
1765 <&gcc GCC_PCIE_0_PIPE_CLK>;
1766 clock-names = "aux",
1772 clock-output-names = "pcie_0_pipe_clk";
1775 resets = <&gcc GCC_PCIE_0_PHY_BCR>;
1776 reset-names = "phy";
1778 assigned-clocks = <&gcc GCC_PCIE0_PHY_REFGEN_CLK>;
1779 assigned-clock-rates = <100000000>;
1781 status = "disabled";
1784 pcie3: pci@1c08000 {
1785 compatible = "qcom,pcie-sc8180x";
1786 reg = <0 0x01c08000 0 0x3000>,
1787 <0 0x40000000 0 0xf1d>,
1788 <0 0x40000f20 0 0xa8>,
1789 <0 0x40001000 0 0x1000>,
1790 <0 0x40100000 0 0x100000>;
1796 device_type = "pci";
1797 linux,pci-domain = <3>;
1798 bus-range = <0x00 0xff>;
1801 #address-cells = <3>;
1804 ranges = <0x01000000 0x0 0x40200000 0x0 0x40200000 0x0 0x100000>,
1805 <0x02000000 0x0 0x40300000 0x0 0x40300000 0x0 0x1fd00000>;
1807 interrupts = <GIC_SPI 307 IRQ_TYPE_LEVEL_HIGH>;
1808 interrupt-names = "msi";
1809 #interrupt-cells = <1>;
1810 interrupt-map-mask = <0 0 0 0x7>;
1811 interrupt-map = <0 0 0 1 &intc 0 434 IRQ_TYPE_LEVEL_HIGH>, /* int_a */
1812 <0 0 0 2 &intc 0 435 IRQ_TYPE_LEVEL_HIGH>, /* int_b */
1813 <0 0 0 3 &intc 0 438 IRQ_TYPE_LEVEL_HIGH>, /* int_c */
1814 <0 0 0 4 &intc 0 439 IRQ_TYPE_LEVEL_HIGH>; /* int_d */
1816 clocks = <&gcc GCC_PCIE_3_PIPE_CLK>,
1817 <&gcc GCC_PCIE_3_AUX_CLK>,
1818 <&gcc GCC_PCIE_3_CFG_AHB_CLK>,
1819 <&gcc GCC_PCIE_3_MSTR_AXI_CLK>,
1820 <&gcc GCC_PCIE_3_SLV_AXI_CLK>,
1821 <&gcc GCC_PCIE_3_SLV_Q2A_AXI_CLK>,
1822 <&gcc GCC_PCIE_3_CLKREF_CLK>,
1823 <&gcc GCC_AGGRE_NOC_PCIE_TBU_CLK>;
1824 clock-names = "pipe",
1833 assigned-clocks = <&gcc GCC_PCIE_3_AUX_CLK>;
1834 assigned-clock-rates = <19200000>;
1836 iommus = <&apps_smmu 0x1e00 0x7f>;
1837 iommu-map = <0x0 &apps_smmu 0x1e00 0x1>,
1838 <0x100 &apps_smmu 0x1e01 0x1>;
1840 resets = <&gcc GCC_PCIE_3_BCR>;
1841 reset-names = "pci";
1843 power-domains = <&gcc PCIE_3_GDSC>;
1845 interconnects = <&aggre2_noc MASTER_PCIE_3 0 &mc_virt SLAVE_EBI_CH0 0>,
1846 <&gem_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_PCIE_0 0>;
1847 interconnect-names = "pcie-mem", "cpu-pcie";
1849 phys = <&pcie3_phy>;
1850 phy-names = "pciephy";
1852 status = "disabled";
1855 pcie3_phy: phy@1c0c000 {
1856 compatible = "qcom,sc8180x-qmp-pcie-phy";
1857 reg = <0 0x01c0c000 0 0x1000>;
1858 clocks = <&gcc GCC_PCIE_PHY_AUX_CLK>,
1859 <&gcc GCC_PCIE_3_CFG_AHB_CLK>,
1860 <&gcc GCC_PCIE_3_CLKREF_CLK>,
1861 <&gcc GCC_PCIE2_PHY_REFGEN_CLK>,
1862 <&gcc GCC_PCIE_3_PIPE_CLK>;
1863 clock-names = "aux",
1869 clock-output-names = "pcie_3_pipe_clk";
1873 resets = <&gcc GCC_PCIE_3_PHY_BCR>;
1874 reset-names = "phy";
1876 assigned-clocks = <&gcc GCC_PCIE3_PHY_REFGEN_CLK>;
1877 assigned-clock-rates = <100000000>;
1879 status = "disabled";
1882 pcie1: pci@1c10000 {
1883 compatible = "qcom,pcie-sc8180x";
1884 reg = <0 0x01c10000 0 0x3000>,
1885 <0 0x68000000 0 0xf1d>,
1886 <0 0x68000f20 0 0xa8>,
1887 <0 0x68001000 0 0x1000>,
1888 <0 0x68100000 0 0x100000>;
1894 device_type = "pci";
1895 linux,pci-domain = <1>;
1896 bus-range = <0x00 0xff>;
1899 #address-cells = <3>;
1902 ranges = <0x01000000 0x0 0x68200000 0x0 0x68200000 0x0 0x100000>,
1903 <0x02000000 0x0 0x68300000 0x0 0x68300000 0x0 0x3d00000>;
1905 interrupts = <GIC_SPI 755 IRQ_TYPE_LEVEL_HIGH>;
1906 interrupt-names = "msi";
1907 #interrupt-cells = <1>;
1908 interrupt-map-mask = <0 0 0 0x7>;
1909 interrupt-map = <0 0 0 1 &intc 0 747 IRQ_TYPE_LEVEL_HIGH>, /* int_a */
1910 <0 0 0 2 &intc 0 746 IRQ_TYPE_LEVEL_HIGH>, /* int_b */
1911 <0 0 0 3 &intc 0 745 IRQ_TYPE_LEVEL_HIGH>, /* int_c */
1912 <0 0 0 4 &intc 0 744 IRQ_TYPE_LEVEL_HIGH>; /* int_d */
1914 clocks = <&gcc GCC_PCIE_1_PIPE_CLK>,
1915 <&gcc GCC_PCIE_1_AUX_CLK>,
1916 <&gcc GCC_PCIE_1_CFG_AHB_CLK>,
1917 <&gcc GCC_PCIE_1_MSTR_AXI_CLK>,
1918 <&gcc GCC_PCIE_1_SLV_AXI_CLK>,
1919 <&gcc GCC_PCIE_1_SLV_Q2A_AXI_CLK>,
1920 <&gcc GCC_PCIE_1_CLKREF_CLK>,
1921 <&gcc GCC_AGGRE_NOC_PCIE_TBU_CLK>;
1922 clock-names = "pipe",
1931 assigned-clocks = <&gcc GCC_PCIE_1_AUX_CLK>;
1932 assigned-clock-rates = <19200000>;
1934 iommus = <&apps_smmu 0x1c80 0x7f>;
1935 iommu-map = <0x0 &apps_smmu 0x1c80 0x1>,
1936 <0x100 &apps_smmu 0x1c81 0x1>;
1938 resets = <&gcc GCC_PCIE_1_BCR>;
1939 reset-names = "pci";
1941 power-domains = <&gcc PCIE_1_GDSC>;
1943 interconnects = <&aggre2_noc MASTER_PCIE_1 0 &mc_virt SLAVE_EBI_CH0 0>,
1944 <&gem_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_PCIE_0 0>;
1945 interconnect-names = "pcie-mem", "cpu-pcie";
1947 phys = <&pcie1_phy>;
1948 phy-names = "pciephy";
1950 status = "disabled";
1953 pcie1_phy: phy@1c16000 {
1954 compatible = "qcom,sc8180x-qmp-pcie-phy";
1955 reg = <0 0x01c16000 0 0x1000>;
1956 clocks = <&gcc GCC_PCIE_PHY_AUX_CLK>,
1957 <&gcc GCC_PCIE_1_CFG_AHB_CLK>,
1958 <&gcc GCC_PCIE_1_CLKREF_CLK>,
1959 <&gcc GCC_PCIE1_PHY_REFGEN_CLK>,
1960 <&gcc GCC_PCIE_1_PIPE_CLK>;
1961 clock-names = "aux",
1967 clock-output-names = "pcie_1_pipe_clk";
1971 resets = <&gcc GCC_PCIE_1_PHY_BCR>;
1972 reset-names = "phy";
1974 assigned-clocks = <&gcc GCC_PCIE1_PHY_REFGEN_CLK>;
1975 assigned-clock-rates = <100000000>;
1977 status = "disabled";
1980 pcie2: pci@1c18000 {
1981 compatible = "qcom,pcie-sc8180x";
1982 reg = <0 0x01c18000 0 0x3000>,
1983 <0 0x70000000 0 0xf1d>,
1984 <0 0x70000f20 0 0xa8>,
1985 <0 0x70001000 0 0x1000>,
1986 <0 0x70100000 0 0x100000>;
1992 device_type = "pci";
1993 linux,pci-domain = <2>;
1994 bus-range = <0x00 0xff>;
1997 #address-cells = <3>;
2000 ranges = <0x01000000 0x0 0x70200000 0x0 0x70200000 0x0 0x100000>,
2001 <0x02000000 0x0 0x70300000 0x0 0x70300000 0x0 0x3d00000>;
2003 interrupts = <GIC_SPI 671 IRQ_TYPE_LEVEL_HIGH>;
2004 interrupt-names = "msi";
2005 #interrupt-cells = <1>;
2006 interrupt-map-mask = <0 0 0 0x7>;
2007 interrupt-map = <0 0 0 1 &intc 0 663 IRQ_TYPE_LEVEL_HIGH>, /* int_a */
2008 <0 0 0 2 &intc 0 662 IRQ_TYPE_LEVEL_HIGH>, /* int_b */
2009 <0 0 0 3 &intc 0 661 IRQ_TYPE_LEVEL_HIGH>, /* int_c */
2010 <0 0 0 4 &intc 0 660 IRQ_TYPE_LEVEL_HIGH>; /* int_d */
2012 clocks = <&gcc GCC_PCIE_2_PIPE_CLK>,
2013 <&gcc GCC_PCIE_2_AUX_CLK>,
2014 <&gcc GCC_PCIE_2_CFG_AHB_CLK>,
2015 <&gcc GCC_PCIE_2_MSTR_AXI_CLK>,
2016 <&gcc GCC_PCIE_2_SLV_AXI_CLK>,
2017 <&gcc GCC_PCIE_2_SLV_Q2A_AXI_CLK>,
2018 <&gcc GCC_PCIE_2_CLKREF_CLK>,
2019 <&gcc GCC_AGGRE_NOC_PCIE_TBU_CLK>;
2020 clock-names = "pipe",
2029 assigned-clocks = <&gcc GCC_PCIE_2_AUX_CLK>;
2030 assigned-clock-rates = <19200000>;
2032 iommus = <&apps_smmu 0x1d00 0x7f>;
2033 iommu-map = <0x0 &apps_smmu 0x1d00 0x1>,
2034 <0x100 &apps_smmu 0x1d01 0x1>;
2036 resets = <&gcc GCC_PCIE_2_BCR>;
2037 reset-names = "pci";
2039 power-domains = <&gcc PCIE_2_GDSC>;
2041 interconnects = <&aggre2_noc MASTER_PCIE_2 0 &mc_virt SLAVE_EBI_CH0 0>,
2042 <&gem_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_PCIE_0 0>;
2043 interconnect-names = "pcie-mem", "cpu-pcie";
2045 phys = <&pcie2_phy>;
2046 phy-names = "pciephy";
2048 status = "disabled";
2051 pcie2_phy: phy@1c1c000 {
2052 compatible = "qcom,sc8180x-qmp-pcie-phy";
2053 reg = <0 0x01c1c000 0 0x1000>;
2054 clocks = <&gcc GCC_PCIE_PHY_AUX_CLK>,
2055 <&gcc GCC_PCIE_2_CFG_AHB_CLK>,
2056 <&gcc GCC_PCIE_2_CLKREF_CLK>,
2057 <&gcc GCC_PCIE2_PHY_REFGEN_CLK>,
2058 <&gcc GCC_PCIE_2_PIPE_CLK>;
2059 clock-names = "aux",
2065 clock-output-names = "pcie_3_pipe_clk";
2069 resets = <&gcc GCC_PCIE_2_PHY_BCR>;
2070 reset-names = "phy";
2072 assigned-clocks = <&gcc GCC_PCIE2_PHY_REFGEN_CLK>;
2073 assigned-clock-rates = <100000000>;
2075 status = "disabled";
2078 ufs_mem_hc: ufshc@1d84000 {
2079 compatible = "qcom,sc8180x-ufshc", "qcom,ufshc",
2081 reg = <0 0x01d84000 0 0x2500>;
2082 interrupts = <GIC_SPI 265 IRQ_TYPE_LEVEL_HIGH>;
2083 phys = <&ufs_mem_phy>;
2084 phy-names = "ufsphy";
2085 lanes-per-direction = <2>;
2087 resets = <&gcc GCC_UFS_PHY_BCR>;
2088 reset-names = "rst";
2090 iommus = <&apps_smmu 0x300 0>;
2092 clocks = <&gcc GCC_UFS_PHY_AXI_CLK>,
2093 <&gcc GCC_AGGRE_UFS_PHY_AXI_CLK>,
2094 <&gcc GCC_UFS_PHY_AHB_CLK>,
2095 <&gcc GCC_UFS_PHY_UNIPRO_CORE_CLK>,
2096 <&rpmhcc RPMH_CXO_CLK>,
2097 <&gcc GCC_UFS_PHY_TX_SYMBOL_0_CLK>,
2098 <&gcc GCC_UFS_PHY_RX_SYMBOL_0_CLK>,
2099 <&gcc GCC_UFS_PHY_RX_SYMBOL_1_CLK>;
2100 clock-names = "core_clk",
2105 "tx_lane0_sync_clk",
2106 "rx_lane0_sync_clk",
2107 "rx_lane1_sync_clk";
2108 freq-table-hz = <37500000 300000000>,
2111 <37500000 300000000>,
2117 status = "disabled";
2120 ufs_mem_phy: phy-wrapper@1d87000 {
2121 compatible = "qcom,sc8180x-qmp-ufs-phy";
2122 reg = <0 0x01d87000 0 0x1000>;
2124 clocks = <&rpmhcc RPMH_CXO_CLK>,
2125 <&gcc GCC_UFS_PHY_PHY_AUX_CLK>;
2126 clock-names = "ref",
2129 resets = <&ufs_mem_hc 0>;
2130 reset-names = "ufsphy";
2134 status = "disabled";
2137 ipa_virt: interconnect@1e00000 {
2138 compatible = "qcom,sc8180x-ipa-virt";
2139 reg = <0 0x01e00000 0 0x1000>;
2140 #interconnect-cells = <2>;
2141 qcom,bcm-voters = <&apps_bcm_voter>;
2144 tcsr_mutex: hwlock@1f40000 {
2145 compatible = "qcom,tcsr-mutex";
2146 reg = <0x0 0x01f40000 0x0 0x40000>;
2147 #hwlock-cells = <1>;
2151 compatible = "qcom,adreno-680.1", "qcom,adreno";
2152 #stream-id-cells = <16>;
2154 reg = <0 0x02c00000 0 0x40000>;
2155 reg-names = "kgsl_3d0_reg_memory";
2157 interrupts = <GIC_SPI 300 IRQ_TYPE_LEVEL_HIGH>;
2159 iommus = <&adreno_smmu 0 0xc01>;
2161 operating-points-v2 = <&gpu_opp_table>;
2163 interconnects = <&gem_noc MASTER_GRAPHICS_3D 0 &mc_virt SLAVE_EBI_CH0 0>;
2164 interconnect-names = "gfx-mem";
2167 status = "disabled";
2169 gpu_opp_table: opp-table {
2170 compatible = "operating-points-v2";
2173 opp-hz = /bits/ 64 <514000000>;
2174 opp-level = <RPMH_REGULATOR_LEVEL_TURBO_L1>;
2178 opp-hz = /bits/ 64 <500000000>;
2179 opp-level = <RPMH_REGULATOR_LEVEL_TURBO>;
2183 opp-hz = /bits/ 64 <461000000>;
2184 opp-level = <RPMH_REGULATOR_LEVEL_NOM_L1>;
2188 opp-hz = /bits/ 64 <405000000>;
2189 opp-level = <RPMH_REGULATOR_LEVEL_NOM>;
2193 opp-hz = /bits/ 64 <315000000>;
2194 opp-level = <RPMH_REGULATOR_LEVEL_SVS_L1>;
2198 opp-hz = /bits/ 64 <256000000>;
2199 opp-level = <RPMH_REGULATOR_LEVEL_SVS>;
2203 opp-hz = /bits/ 64 <177000000>;
2204 opp-level = <RPMH_REGULATOR_LEVEL_LOW_SVS>;
2210 compatible = "qcom,adreno-gmu-680.1", "qcom,adreno-gmu";
2212 reg = <0 0x02c6a000 0 0x30000>,
2213 <0 0x0b290000 0 0x10000>,
2214 <0 0x0b490000 0 0x10000>;
2219 interrupts = <GIC_SPI 304 IRQ_TYPE_LEVEL_HIGH>,
2220 <GIC_SPI 305 IRQ_TYPE_LEVEL_HIGH>;
2221 interrupt-names = "hfi", "gmu";
2223 clocks = <&gpucc GPU_CC_AHB_CLK>,
2224 <&gpucc GPU_CC_CX_GMU_CLK>,
2225 <&gpucc GPU_CC_CXO_CLK>,
2226 <&gcc GCC_DDRSS_GPU_AXI_CLK>,
2227 <&gcc GCC_GPU_MEMNOC_GFX_CLK>;
2228 clock-names = "ahb", "gmu", "cxo", "axi", "memnoc";
2230 power-domains = <&gpucc GPU_CX_GDSC>,
2231 <&gpucc GPU_GX_GDSC>;
2232 power-domain-names = "cx", "gx";
2234 iommus = <&adreno_smmu 5 0xc00>;
2236 operating-points-v2 = <&gmu_opp_table>;
2238 gmu_opp_table: opp-table {
2239 compatible = "operating-points-v2";
2242 opp-hz = /bits/ 64 <200000000>;
2243 opp-level = <RPMH_REGULATOR_LEVEL_MIN_SVS>;
2247 opp-hz = /bits/ 64 <500000000>;
2248 opp-level = <RPMH_REGULATOR_LEVEL_SVS_L1>;
2253 gpucc: clock-controller@2c90000 {
2254 compatible = "qcom,sc8180x-gpucc";
2255 reg = <0 0x02c90000 0 0x9000>;
2256 clocks = <&rpmhcc RPMH_CXO_CLK>,
2257 <&gcc GCC_GPU_GPLL0_CLK_SRC>,
2258 <&gcc GCC_GPU_GPLL0_DIV_CLK_SRC>;
2259 clock-names = "bi_tcxo",
2260 "gcc_gpu_gpll0_clk_src",
2261 "gcc_gpu_gpll0_div_clk_src";
2264 #power-domain-cells = <1>;
2267 adreno_smmu: iommu@2ca0000 {
2268 compatible = "qcom,sc8180x-smmu-500", "qcom,adreno-smmu",
2269 "qcom,smmu-500", "arm,mmu-500";
2270 reg = <0 0x02ca0000 0 0x10000>;
2272 #global-interrupts = <1>;
2273 interrupts = <GIC_SPI 674 IRQ_TYPE_LEVEL_HIGH>,
2274 <GIC_SPI 681 IRQ_TYPE_LEVEL_HIGH>,
2275 <GIC_SPI 682 IRQ_TYPE_LEVEL_HIGH>,
2276 <GIC_SPI 683 IRQ_TYPE_LEVEL_HIGH>,
2277 <GIC_SPI 684 IRQ_TYPE_LEVEL_HIGH>,
2278 <GIC_SPI 685 IRQ_TYPE_LEVEL_HIGH>,
2279 <GIC_SPI 686 IRQ_TYPE_LEVEL_HIGH>,
2280 <GIC_SPI 687 IRQ_TYPE_LEVEL_HIGH>,
2281 <GIC_SPI 688 IRQ_TYPE_LEVEL_HIGH>;
2282 clocks = <&gpucc GPU_CC_AHB_CLK>,
2283 <&gcc GCC_GPU_MEMNOC_GFX_CLK>,
2284 <&gcc GCC_GPU_SNOC_DVM_GFX_CLK>;
2285 clock-names = "ahb", "bus", "iface";
2287 power-domains = <&gpucc GPU_CX_GDSC>;
2290 tlmm: pinctrl@3100000 {
2291 compatible = "qcom,sc8180x-tlmm";
2292 reg = <0 0x03100000 0 0x300000>,
2293 <0 0x03500000 0 0x700000>,
2294 <0 0x03d00000 0 0x300000>;
2295 reg-names = "west", "east", "south";
2296 interrupts = <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>;
2299 interrupt-controller;
2300 #interrupt-cells = <2>;
2301 gpio-ranges = <&tlmm 0 0 191>;
2302 wakeup-parent = <&pdc>;
2305 remoteproc_mpss: remoteproc@4080000 {
2306 compatible = "qcom,sc8180x-mpss-pas";
2307 reg = <0x0 0x04080000 0x0 0x4040>;
2309 interrupts-extended = <&intc GIC_SPI 266 IRQ_TYPE_EDGE_RISING>,
2310 <&modem_smp2p_in 0 IRQ_TYPE_EDGE_RISING>,
2311 <&modem_smp2p_in 1 IRQ_TYPE_EDGE_RISING>,
2312 <&modem_smp2p_in 2 IRQ_TYPE_EDGE_RISING>,
2313 <&modem_smp2p_in 3 IRQ_TYPE_EDGE_RISING>,
2314 <&modem_smp2p_in 7 IRQ_TYPE_EDGE_RISING>;
2315 interrupt-names = "wdog", "fatal", "ready", "handover",
2316 "stop-ack", "shutdown-ack";
2318 clocks = <&rpmhcc RPMH_CXO_CLK>;
2321 power-domains = <&rpmhpd SC8180X_CX>,
2322 <&rpmhpd SC8180X_MSS>;
2323 power-domain-names = "cx", "mss";
2325 qcom,qmp = <&aoss_qmp>;
2327 qcom,smem-states = <&modem_smp2p_out 0>;
2328 qcom,smem-state-names = "stop";
2331 interrupts = <GIC_SPI 449 IRQ_TYPE_EDGE_RISING>;
2333 qcom,remote-pid = <1>;
2334 mboxes = <&apss_shared 12>;
2338 remoteproc_cdsp: remoteproc@8300000 {
2339 compatible = "qcom,sc8180x-cdsp-pas";
2340 reg = <0x0 0x08300000 0x0 0x4040>;
2342 interrupts-extended = <&intc GIC_SPI 578 IRQ_TYPE_EDGE_RISING>,
2343 <&cdsp_smp2p_in 0 IRQ_TYPE_EDGE_RISING>,
2344 <&cdsp_smp2p_in 1 IRQ_TYPE_EDGE_RISING>,
2345 <&cdsp_smp2p_in 2 IRQ_TYPE_EDGE_RISING>,
2346 <&cdsp_smp2p_in 3 IRQ_TYPE_EDGE_RISING>;
2347 interrupt-names = "wdog", "fatal", "ready",
2348 "handover", "stop-ack";
2350 clocks = <&rpmhcc RPMH_CXO_CLK>;
2353 power-domains = <&rpmhpd SC8180X_CX>;
2354 power-domain-names = "cx";
2356 qcom,qmp = <&aoss_qmp>;
2358 qcom,smem-states = <&cdsp_smp2p_out 0>;
2359 qcom,smem-state-names = "stop";
2361 status = "disabled";
2364 interrupts = <GIC_SPI 574 IRQ_TYPE_EDGE_RISING>;
2366 qcom,remote-pid = <5>;
2367 mboxes = <&apss_shared 4>;
2371 usb_prim_hsphy: phy@88e2000 {
2372 compatible = "qcom,sc8180x-usb-hs-phy",
2373 "qcom,usb-snps-hs-7nm-phy";
2374 reg = <0 0x088e2000 0 0x400>;
2375 clocks = <&rpmhcc RPMH_CXO_CLK>;
2376 clock-names = "ref";
2377 resets = <&gcc GCC_QUSB2PHY_PRIM_BCR>;
2381 status = "disabled";
2384 usb_sec_hsphy: phy@88e3000 {
2385 compatible = "qcom,sc8180x-usb-hs-phy",
2386 "qcom,usb-snps-hs-7nm-phy";
2387 reg = <0 0x088e3000 0 0x400>;
2388 clocks = <&rpmhcc RPMH_CXO_CLK>;
2389 clock-names = "ref";
2390 resets = <&gcc GCC_QUSB2PHY_SEC_BCR>;
2394 status = "disabled";
2397 usb_prim_qmpphy: phy@88e9000 {
2398 compatible = "qcom,sc8180x-qmp-usb3-dp-phy";
2399 reg = <0 0x088e9000 0 0x18c>,
2400 <0 0x088e8000 0 0x38>,
2401 <0 0x088ea000 0 0x40>;
2402 reg-names = "reg-base", "dp_com";
2403 clocks = <&gcc GCC_USB3_PRIM_PHY_AUX_CLK>,
2404 <&rpmhcc RPMH_CXO_CLK>,
2405 <&gcc GCC_USB3_PRIM_CLKREF_CLK>,
2406 <&gcc GCC_USB3_PRIM_PHY_COM_AUX_CLK>;
2407 clock-names = "aux",
2411 resets = <&gcc GCC_USB3_DP_PHY_PRIM_SP0_BCR>,
2412 <&gcc GCC_USB3_PHY_PRIM_SP0_BCR>;
2413 reset-names = "phy", "common";
2416 #address-cells = <2>;
2420 status = "disabled";
2423 #address-cells = <1>;
2429 usb_prim_qmpphy_out: endpoint {};
2435 usb_prim_qmpphy_dp_in: endpoint {};
2439 usb_prim_ssphy: usb3-phy@88e9200 {
2440 reg = <0 0x088e9200 0 0x200>,
2441 <0 0x088e9400 0 0x200>,
2442 <0 0x088e9c00 0 0x218>,
2443 <0 0x088e9600 0 0x200>,
2444 <0 0x088e9800 0 0x200>,
2445 <0 0x088e9a00 0 0x100>;
2447 clocks = <&gcc GCC_USB3_PRIM_PHY_PIPE_CLK>;
2448 clock-names = "pipe0";
2449 clock-output-names = "usb3_prim_phy_pipe_clk_src";
2452 usb_prim_dpphy: dp-phy@88ea200 {
2453 reg = <0 0x088ea200 0 0x200>,
2454 <0 0x088ea400 0 0x200>,
2455 <0 0x088eaa00 0 0x200>,
2456 <0 0x088ea600 0 0x200>,
2457 <0 0x088ea800 0 0x200>;
2463 usb_sec_qmpphy: phy@88ee000 {
2464 compatible = "qcom,sc8180x-qmp-usb3-dp-phy";
2465 reg = <0 0x088ee000 0 0x18c>,
2466 <0 0x088ed000 0 0x10>,
2467 <0 0x088ef000 0 0x40>;
2468 reg-names = "reg-base", "dp_com";
2469 clocks = <&gcc GCC_USB3_SEC_PHY_AUX_CLK>,
2470 <&rpmhcc RPMH_CXO_CLK>,
2471 <&gcc GCC_USB3_SEC_CLKREF_CLK>,
2472 <&gcc GCC_USB3_SEC_PHY_COM_AUX_CLK>;
2473 clock-names = "aux",
2477 resets = <&gcc GCC_USB3_DP_PHY_SEC_BCR>,
2478 <&gcc GCC_USB3_PHY_SEC_BCR>;
2479 reset-names = "phy", "common";
2482 #address-cells = <2>;
2486 status = "disabled";
2489 #address-cells = <1>;
2495 usb_sec_qmpphy_out: endpoint {};
2501 usb_sec_qmpphy_dp_in: endpoint {};
2505 usb_sec_ssphy: usb3-phy@88e9200 {
2506 reg = <0 0x088ee200 0 0x200>,
2507 <0 0x088ee400 0 0x200>,
2508 <0 0x088eec00 0 0x218>,
2509 <0 0x088ee600 0 0x200>,
2510 <0 0x088ee800 0 0x200>,
2511 <0 0x088eea00 0 0x100>;
2513 clocks = <&gcc GCC_USB3_SEC_PHY_PIPE_CLK>;
2514 clock-names = "pipe0";
2515 clock-output-names = "usb3_sec_phy_pipe_clk_src";
2518 usb_sec_dpphy: dp-phy@88ef200 {
2519 reg = <0 0x088ef200 0 0x200>,
2520 <0 0x088ef400 0 0x200>,
2521 <0 0x088efa00 0 0x200>,
2522 <0 0x088ef600 0 0x200>,
2523 <0 0x088ef800 0 0x200>;
2526 clock-output-names = "qmp_dptx1_phy_pll_link_clk",
2527 "qmp_dptx1_phy_pll_vco_div_clk";
2531 system-cache-controller@9200000 {
2532 compatible = "qcom,sc8180x-llcc";
2533 reg = <0 0x09200000 0 0x50000>, <0 0x09280000 0 0x50000>,
2534 <0 0x09300000 0 0x50000>, <0 0x09380000 0 0x50000>,
2535 <0 0x09600000 0 0x50000>;
2536 reg-names = "llcc0_base", "llcc1_base", "llcc2_base",
2537 "llcc3_base", "llcc_broadcast_base";
2538 interrupts = <GIC_SPI 582 IRQ_TYPE_LEVEL_HIGH>;
2541 gem_noc: interconnect@9680000 {
2542 compatible = "qcom,sc8180x-gem-noc";
2543 reg = <0 0x09680000 0 0x58200>;
2544 #interconnect-cells = <2>;
2545 qcom,bcm-voters = <&apps_bcm_voter>;
2548 usb_prim: usb@a6f8800 {
2549 compatible = "qcom,sc8180x-dwc3", "qcom,dwc3";
2550 reg = <0 0x0a6f8800 0 0x400>;
2551 interrupts = <GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH>,
2552 <GIC_SPI 486 IRQ_TYPE_LEVEL_HIGH>,
2553 <GIC_SPI 488 IRQ_TYPE_LEVEL_HIGH>,
2554 <GIC_SPI 489 IRQ_TYPE_LEVEL_HIGH>;
2555 interrupt-names = "hs_phy_irq",
2560 clocks = <&gcc GCC_CFG_NOC_USB3_PRIM_AXI_CLK>,
2561 <&gcc GCC_USB30_PRIM_MASTER_CLK>,
2562 <&gcc GCC_AGGRE_USB3_PRIM_AXI_CLK>,
2563 <&gcc GCC_USB30_PRIM_SLEEP_CLK>,
2564 <&gcc GCC_USB30_PRIM_MOCK_UTMI_CLK>,
2565 <&gcc GCC_USB3_SEC_CLKREF_CLK>;
2566 clock-names = "cfg_noc",
2572 resets = <&gcc GCC_USB30_PRIM_BCR>;
2573 power-domains = <&gcc USB30_PRIM_GDSC>;
2575 interconnects = <&aggre1_noc MASTER_USB3 0 &mc_virt SLAVE_EBI_CH0 0>,
2576 <&gem_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_USB3 0>;
2577 interconnect-names = "usb-ddr", "apps-usb";
2579 assigned-clocks = <&gcc GCC_USB30_PRIM_MOCK_UTMI_CLK>,
2580 <&gcc GCC_USB30_PRIM_MASTER_CLK>;
2581 assigned-clock-rates = <19200000>, <200000000>;
2583 #address-cells = <2>;
2588 status = "disabled";
2590 usb_prim_dwc3: usb@a600000 {
2591 compatible = "snps,dwc3";
2592 reg = <0 0x0a600000 0 0xcd00>;
2593 interrupts = <GIC_SPI 133 IRQ_TYPE_LEVEL_HIGH>;
2594 iommus = <&apps_smmu 0x140 0>;
2595 snps,dis_u2_susphy_quirk;
2596 snps,dis_enblslpm_quirk;
2597 phys = <&usb_prim_hsphy>, <&usb_prim_ssphy>;
2598 phy-names = "usb2-phy", "usb3-phy";
2601 usb_prim_role_switch: endpoint {
2607 usb_sec: usb@a8f8800 {
2608 compatible = "qcom,sc8180x-dwc3", "qcom,dwc3";
2609 reg = <0 0x0a8f8800 0 0x400>;
2611 clocks = <&gcc GCC_CFG_NOC_USB3_SEC_AXI_CLK>,
2612 <&gcc GCC_USB30_SEC_MASTER_CLK>,
2613 <&gcc GCC_AGGRE_USB3_SEC_AXI_CLK>,
2614 <&gcc GCC_USB30_SEC_SLEEP_CLK>,
2615 <&gcc GCC_USB30_SEC_MOCK_UTMI_CLK>,
2616 <&gcc GCC_USB3_SEC_CLKREF_CLK>;
2617 clock-names = "cfg_noc",
2623 resets = <&gcc GCC_USB30_SEC_BCR>;
2624 power-domains = <&gcc USB30_SEC_GDSC>;
2625 interrupts = <GIC_SPI 136 IRQ_TYPE_LEVEL_HIGH>,
2626 <GIC_SPI 487 IRQ_TYPE_LEVEL_HIGH>,
2627 <GIC_SPI 490 IRQ_TYPE_LEVEL_HIGH>,
2628 <GIC_SPI 491 IRQ_TYPE_LEVEL_HIGH>;
2629 interrupt-names = "hs_phy_irq", "ss_phy_irq",
2630 "dm_hs_phy_irq", "dp_hs_phy_irq";
2632 assigned-clocks = <&gcc GCC_USB30_SEC_MOCK_UTMI_CLK>,
2633 <&gcc GCC_USB30_SEC_MASTER_CLK>;
2634 assigned-clock-rates = <19200000>, <200000000>;
2636 interconnects = <&aggre1_noc MASTER_USB3_1 0 &mc_virt SLAVE_EBI_CH0 0>,
2637 <&gem_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_USB3_1 0>;
2638 interconnect-names = "usb-ddr", "apps-usb";
2640 #address-cells = <2>;
2645 status = "disabled";
2647 usb_sec_dwc3: usb@a800000 {
2648 compatible = "snps,dwc3";
2649 reg = <0 0x0a800000 0 0xcd00>;
2650 interrupts = <GIC_SPI 138 IRQ_TYPE_LEVEL_HIGH>;
2651 iommus = <&apps_smmu 0x160 0>;
2652 snps,dis_u2_susphy_quirk;
2653 snps,dis_enblslpm_quirk;
2654 phys = <&usb_sec_hsphy>, <&usb_sec_ssphy>;
2655 phy-names = "usb2-phy", "usb3-phy";
2658 usb_sec_role_switch: endpoint {
2664 mdss: mdss@ae00000 {
2665 compatible = "qcom,sc8180x-mdss";
2666 reg = <0 0x0ae00000 0 0x1000>;
2669 power-domains = <&dispcc MDSS_GDSC>;
2671 clocks = <&dispcc DISP_CC_MDSS_AHB_CLK>,
2672 <&gcc GCC_DISP_HF_AXI_CLK>,
2673 <&gcc GCC_DISP_SF_AXI_CLK>,
2674 <&dispcc DISP_CC_MDSS_MDP_CLK>;
2675 clock-names = "iface",
2680 resets = <&dispcc DISP_CC_MDSS_CORE_BCR>;
2682 interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>;
2683 interrupt-controller;
2684 #interrupt-cells = <1>;
2686 interconnects = <&mmss_noc MASTER_MDP_PORT0 0 &mc_virt SLAVE_EBI_CH0 0>,
2687 <&mmss_noc MASTER_MDP_PORT1 0 &mc_virt SLAVE_EBI_CH0 0>;
2688 interconnect-names = "mdp0-mem", "mdp1-mem";
2690 iommus = <&apps_smmu 0x800 0x420>;
2692 #address-cells = <2>;
2696 status = "disabled";
2698 mdss_mdp: mdp@ae01000 {
2699 compatible = "qcom,sc8180x-dpu";
2700 reg = <0 0x0ae01000 0 0x8f000>,
2701 <0 0x0aeb0000 0 0x2008>;
2702 reg-names = "mdp", "vbif";
2704 clocks = <&dispcc DISP_CC_MDSS_AHB_CLK>,
2705 <&gcc GCC_DISP_HF_AXI_CLK>,
2706 <&dispcc DISP_CC_MDSS_MDP_CLK>,
2707 <&dispcc DISP_CC_MDSS_VSYNC_CLK>;
2708 clock-names = "iface",
2713 assigned-clocks = <&dispcc DISP_CC_MDSS_MDP_CLK>,
2714 <&dispcc DISP_CC_MDSS_VSYNC_CLK>;
2715 assigned-clock-rates = <460000000>,
2718 operating-points-v2 = <&mdp_opp_table>;
2719 power-domains = <&rpmhpd SC8180X_MMCX>;
2721 interrupt-parent = <&mdss>;
2722 interrupts = <0 IRQ_TYPE_LEVEL_HIGH>;
2725 #address-cells = <1>;
2730 dpu_intf0_out: endpoint {
2731 remote-endpoint = <&dp0_in>;
2737 dpu_intf1_out: endpoint {
2738 remote-endpoint = <&mdss_dsi0_in>;
2744 dpu_intf2_out: endpoint {
2745 remote-endpoint = <&mdss_dsi1_in>;
2751 dpu_intf4_out: endpoint {
2752 remote-endpoint = <&dp1_in>;
2758 dpu_intf5_out: endpoint {
2759 remote-endpoint = <&edp_in>;
2764 mdp_opp_table: opp-table {
2765 compatible = "operating-points-v2";
2768 opp-hz = /bits/ 64 <200000000>;
2769 required-opps = <&rpmhpd_opp_low_svs>;
2773 opp-hz = /bits/ 64 <300000000>;
2774 required-opps = <&rpmhpd_opp_svs>;
2778 opp-hz = /bits/ 64 <345000000>;
2779 required-opps = <&rpmhpd_opp_svs_l1>;
2783 opp-hz = /bits/ 64 <460000000>;
2784 required-opps = <&rpmhpd_opp_nom>;
2789 mdss_dsi0: dsi@ae94000 {
2790 compatible = "qcom,mdss-dsi-ctrl";
2791 reg = <0 0x0ae94000 0 0x400>;
2792 reg-names = "dsi_ctrl";
2794 interrupt-parent = <&mdss>;
2795 interrupts = <4 IRQ_TYPE_LEVEL_HIGH>;
2797 clocks = <&dispcc DISP_CC_MDSS_BYTE0_CLK>,
2798 <&dispcc DISP_CC_MDSS_BYTE0_INTF_CLK>,
2799 <&dispcc DISP_CC_MDSS_PCLK0_CLK>,
2800 <&dispcc DISP_CC_MDSS_ESC0_CLK>,
2801 <&dispcc DISP_CC_MDSS_AHB_CLK>,
2802 <&gcc GCC_DISP_HF_AXI_CLK>;
2803 clock-names = "byte",
2810 operating-points-v2 = <&dsi_opp_table>;
2811 power-domains = <&rpmhpd SC8180X_MMCX>;
2813 phys = <&mdss_dsi0_phy>;
2816 status = "disabled";
2819 #address-cells = <1>;
2824 mdss_dsi0_in: endpoint {
2825 remote-endpoint = <&dpu_intf1_out>;
2831 mdss_dsi0_out: endpoint {
2836 dsi_opp_table: opp-table {
2837 compatible = "operating-points-v2";
2840 opp-hz = /bits/ 64 <187500000>;
2841 required-opps = <&rpmhpd_opp_low_svs>;
2845 opp-hz = /bits/ 64 <300000000>;
2846 required-opps = <&rpmhpd_opp_svs>;
2850 opp-hz = /bits/ 64 <358000000>;
2851 required-opps = <&rpmhpd_opp_svs_l1>;
2856 mdss_dsi0_phy: dsi-phy@ae94400 {
2857 compatible = "qcom,dsi-phy-7nm";
2858 reg = <0 0x0ae94400 0 0x200>,
2859 <0 0x0ae94600 0 0x280>,
2860 <0 0x0ae94900 0 0x260>;
2861 reg-names = "dsi_phy",
2868 clocks = <&dispcc DISP_CC_MDSS_AHB_CLK>,
2869 <&rpmhcc RPMH_CXO_CLK>;
2870 clock-names = "iface", "ref";
2872 status = "disabled";
2875 mdss_dsi1: dsi@ae96000 {
2876 compatible = "qcom,mdss-dsi-ctrl";
2877 reg = <0 0x0ae96000 0 0x400>;
2878 reg-names = "dsi_ctrl";
2880 interrupt-parent = <&mdss>;
2881 interrupts = <5 IRQ_TYPE_LEVEL_HIGH>;
2883 clocks = <&dispcc DISP_CC_MDSS_BYTE1_CLK>,
2884 <&dispcc DISP_CC_MDSS_BYTE1_INTF_CLK>,
2885 <&dispcc DISP_CC_MDSS_PCLK1_CLK>,
2886 <&dispcc DISP_CC_MDSS_ESC1_CLK>,
2887 <&dispcc DISP_CC_MDSS_AHB_CLK>,
2888 <&gcc GCC_DISP_HF_AXI_CLK>;
2889 clock-names = "byte",
2896 operating-points-v2 = <&dsi_opp_table>;
2897 power-domains = <&rpmhpd SC8180X_MMCX>;
2899 phys = <&mdss_dsi1_phy>;
2902 status = "disabled";
2905 #address-cells = <1>;
2910 mdss_dsi1_in: endpoint {
2911 remote-endpoint = <&dpu_intf2_out>;
2917 mdss_dsi1_out: endpoint {
2923 mdss_dsi1_phy: dsi-phy@ae96400 {
2924 compatible = "qcom,dsi-phy-7nm";
2925 reg = <0 0x0ae96400 0 0x200>,
2926 <0 0x0ae96600 0 0x280>,
2927 <0 0x0ae96900 0 0x260>;
2928 reg-names = "dsi_phy",
2935 clocks = <&dispcc DISP_CC_MDSS_AHB_CLK>,
2936 <&rpmhcc RPMH_CXO_CLK>;
2937 clock-names = "iface", "ref";
2939 status = "disabled";
2942 mdss_dp0: displayport-controller@ae90000 {
2943 compatible = "qcom,sc8180x-dp";
2944 reg = <0 0xae90000 0 0x200>,
2945 <0 0xae90200 0 0x200>,
2946 <0 0xae90400 0 0x600>,
2947 <0 0xae90a00 0 0x400>;
2948 interrupt-parent = <&mdss>;
2950 clocks = <&dispcc DISP_CC_MDSS_AHB_CLK>,
2951 <&dispcc DISP_CC_MDSS_DP_AUX_CLK>,
2952 <&dispcc DISP_CC_MDSS_DP_LINK_CLK>,
2953 <&dispcc DISP_CC_MDSS_DP_LINK_INTF_CLK>,
2954 <&dispcc DISP_CC_MDSS_DP_PIXEL_CLK>;
2955 clock-names = "core_iface",
2961 assigned-clocks = <&dispcc DISP_CC_MDSS_DP_LINK_CLK_SRC>,
2962 <&dispcc DISP_CC_MDSS_DP_PIXEL_CLK_SRC>;
2963 assigned-clock-parents = <&usb_prim_dpphy 0>, <&usb_prim_dpphy 1>;
2965 phys = <&usb_prim_dpphy>;
2968 #sound-dai-cells = <0>;
2970 operating-points-v2 = <&dp0_opp_table>;
2971 power-domains = <&rpmhpd SC8180X_MMCX>;
2973 status = "disabled";
2976 #address-cells = <1>;
2982 remote-endpoint = <&dpu_intf0_out>;
2988 mdss_dp0_out: endpoint {
2993 dp0_opp_table: opp-table {
2994 compatible = "operating-points-v2";
2997 opp-hz = /bits/ 64 <160000000>;
2998 required-opps = <&rpmhpd_opp_low_svs>;
3002 opp-hz = /bits/ 64 <270000000>;
3003 required-opps = <&rpmhpd_opp_svs>;
3007 opp-hz = /bits/ 64 <540000000>;
3008 required-opps = <&rpmhpd_opp_svs_l1>;
3012 opp-hz = /bits/ 64 <810000000>;
3013 required-opps = <&rpmhpd_opp_nom>;
3018 mdss_dp1: displayport-controller@ae98000 {
3019 compatible = "qcom,sc8180x-dp";
3020 reg = <0 0xae98000 0 0x200>,
3021 <0 0xae98200 0 0x200>,
3022 <0 0xae98400 0 0x600>,
3023 <0 0xae98a00 0 0x400>;
3024 interrupt-parent = <&mdss>;
3026 clocks = <&dispcc DISP_CC_MDSS_AHB_CLK>,
3027 <&dispcc DISP_CC_MDSS_DP_AUX1_CLK>,
3028 <&dispcc DISP_CC_MDSS_DP_LINK1_CLK>,
3029 <&dispcc DISP_CC_MDSS_DP_LINK1_INTF_CLK>,
3030 <&dispcc DISP_CC_MDSS_DP_PIXEL2_CLK>;
3031 clock-names = "core_iface",
3037 assigned-clocks = <&dispcc DISP_CC_MDSS_DP_LINK1_CLK_SRC>,
3038 <&dispcc DISP_CC_MDSS_DP_PIXEL2_CLK_SRC>;
3039 assigned-clock-parents = <&usb_sec_dpphy 0>, <&usb_sec_dpphy 1>;
3041 phys = <&usb_sec_dpphy>;
3044 #sound-dai-cells = <0>;
3046 operating-points-v2 = <&dp0_opp_table>;
3047 power-domains = <&rpmhpd SC8180X_MMCX>;
3049 status = "disabled";
3052 #address-cells = <1>;
3058 remote-endpoint = <&dpu_intf4_out>;
3064 mdss_dp1_out: endpoint {
3069 dp1_opp_table: opp-table {
3070 compatible = "operating-points-v2";
3073 opp-hz = /bits/ 64 <160000000>;
3074 required-opps = <&rpmhpd_opp_low_svs>;
3078 opp-hz = /bits/ 64 <270000000>;
3079 required-opps = <&rpmhpd_opp_svs>;
3083 opp-hz = /bits/ 64 <540000000>;
3084 required-opps = <&rpmhpd_opp_svs_l1>;
3088 opp-hz = /bits/ 64 <810000000>;
3089 required-opps = <&rpmhpd_opp_nom>;
3094 mdss_edp: displayport-controller@ae9a000 {
3095 compatible = "qcom,sc8180x-edp";
3096 reg = <0 0xae9a000 0 0x200>,
3097 <0 0xae9a200 0 0x200>,
3098 <0 0xae9a400 0 0x600>,
3099 <0 0xae9aa00 0 0x400>;
3100 interrupt-parent = <&mdss>;
3102 clocks = <&dispcc DISP_CC_MDSS_AHB_CLK>,
3103 <&dispcc DISP_CC_MDSS_EDP_AUX_CLK>,
3104 <&dispcc DISP_CC_MDSS_EDP_LINK_CLK>,
3105 <&dispcc DISP_CC_MDSS_EDP_LINK_INTF_CLK>,
3106 <&dispcc DISP_CC_MDSS_EDP_PIXEL_CLK>;
3107 clock-names = "core_iface",
3113 assigned-clocks = <&dispcc DISP_CC_MDSS_EDP_LINK_CLK_SRC>,
3114 <&dispcc DISP_CC_MDSS_EDP_PIXEL_CLK_SRC>;
3115 assigned-clock-parents = <&edp_phy 0>, <&edp_phy 1>;
3120 #sound-dai-cells = <0>;
3122 operating-points-v2 = <&edp_opp_table>;
3123 power-domains = <&rpmhpd SC8180X_MMCX>;
3125 status = "disabled";
3128 #address-cells = <1>;
3134 remote-endpoint = <&dpu_intf5_out>;
3139 edp_opp_table: opp-table {
3140 compatible = "operating-points-v2";
3143 opp-hz = /bits/ 64 <160000000>;
3144 required-opps = <&rpmhpd_opp_low_svs>;
3148 opp-hz = /bits/ 64 <270000000>;
3149 required-opps = <&rpmhpd_opp_svs>;
3153 opp-hz = /bits/ 64 <540000000>;
3154 required-opps = <&rpmhpd_opp_svs_l1>;
3158 opp-hz = /bits/ 64 <810000000>;
3159 required-opps = <&rpmhpd_opp_nom>;
3165 edp_phy: phy@aec2a00 {
3166 compatible = "qcom,sc8180x-edp-phy";
3167 reg = <0 0x0aec2a00 0 0x1c0>,
3168 <0 0x0aec2200 0 0xa0>,
3169 <0 0x0aec2600 0 0xa0>,
3170 <0 0x0aec2000 0 0x19c>;
3172 clocks = <&dispcc DISP_CC_MDSS_EDP_AUX_CLK>,
3173 <&dispcc DISP_CC_MDSS_AHB_CLK>;
3174 clock-names = "aux", "cfg_ahb";
3176 power-domains = <&dispcc MDSS_GDSC>;
3182 dispcc: clock-controller@af00000 {
3183 compatible = "qcom,sc8180x-dispcc";
3184 reg = <0 0x0af00000 0 0x20000>;
3185 clocks = <&rpmhcc RPMH_CXO_CLK>,
3187 <&usb_prim_dpphy 0>,
3188 <&usb_prim_dpphy 1>,
3193 clock-names = "bi_tcxo",
3195 "dp_phy_pll_link_clk",
3196 "dp_phy_pll_vco_div_clk",
3197 "dptx1_phy_pll_link_clk",
3198 "dptx1_phy_pll_vco_div_clk",
3199 "edp_phy_pll_link_clk",
3200 "edp_phy_pll_vco_div_clk";
3201 power-domains = <&rpmhpd SC8180X_MMCX>;
3204 #power-domain-cells = <1>;
3207 pdc: interrupt-controller@b220000 {
3208 compatible = "qcom,sc8180x-pdc", "qcom,pdc";
3209 reg = <0 0x0b220000 0 0x30000>;
3210 qcom,pdc-ranges = <0 480 94>, <94 609 31>;
3211 #interrupt-cells = <2>;
3212 interrupt-parent = <&intc>;
3213 interrupt-controller;
3216 tsens0: thermal-sensor@c263000 {
3217 compatible = "qcom,sc8180x-tsens", "qcom,tsens-v2";
3218 reg = <0 0x0c263000 0 0x1ff>, /* TM */
3219 <0 0x0c222000 0 0x1ff>; /* SROT */
3220 #qcom,sensors = <16>;
3221 interrupts = <GIC_SPI 506 IRQ_TYPE_LEVEL_HIGH>,
3222 <GIC_SPI 508 IRQ_TYPE_LEVEL_HIGH>;
3223 interrupt-names = "uplow", "critical";
3224 #thermal-sensor-cells = <1>;
3227 tsens1: thermal-sensor@c265000 {
3228 compatible = "qcom,sc8180x-tsens", "qcom,tsens-v2";
3229 reg = <0 0x0c265000 0 0x1ff>, /* TM */
3230 <0 0x0c223000 0 0x1ff>; /* SROT */
3231 #qcom,sensors = <9>;
3232 interrupts = <GIC_SPI 507 IRQ_TYPE_LEVEL_HIGH>,
3233 <GIC_SPI 509 IRQ_TYPE_LEVEL_HIGH>;
3234 interrupt-names = "uplow", "critical";
3235 #thermal-sensor-cells = <1>;
3238 aoss_qmp: power-controller@c300000 {
3239 compatible = "qcom,sc8180x-aoss-qmp", "qcom,aoss-qmp";
3240 reg = <0x0 0x0c300000 0x0 0x100000>;
3241 interrupts = <GIC_SPI 389 IRQ_TYPE_EDGE_RISING>;
3242 mboxes = <&apss_shared 0>;
3245 #power-domain-cells = <1>;
3248 spmi_bus: spmi@c440000 {
3249 compatible = "qcom,spmi-pmic-arb";
3250 reg = <0x0 0x0c440000 0x0 0x0001100>,
3251 <0x0 0x0c600000 0x0 0x2000000>,
3252 <0x0 0x0e600000 0x0 0x0100000>,
3253 <0x0 0x0e700000 0x0 0x00a0000>,
3254 <0x0 0x0c40a000 0x0 0x0026000>;
3255 reg-names = "core", "chnls", "obsrvr", "intr", "cnfg";
3256 interrupt-names = "periph_irq";
3257 interrupts = <GIC_SPI 481 IRQ_TYPE_LEVEL_HIGH>;
3260 #address-cells = <2>;
3262 interrupt-controller;
3263 #interrupt-cells = <4>;
3266 apps_smmu: iommu@15000000 {
3267 compatible = "qcom,sc8180x-smmu-500", "arm,mmu-500";
3268 reg = <0 0x15000000 0 0x100000>;
3270 #global-interrupts = <1>;
3271 interrupts = <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>,
3272 <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>,
3273 <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>,
3274 <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>,
3275 <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>,
3276 <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>,
3277 <GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH>,
3278 <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>,
3279 <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>,
3280 <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>,
3281 <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>,
3282 <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>,
3283 <GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>,
3284 <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>,
3285 <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>,
3286 <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>,
3287 <GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>,
3288 <GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>,
3289 <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>,
3290 <GIC_SPI 115 IRQ_TYPE_LEVEL_HIGH>,
3291 <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>,
3292 <GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH>,
3293 <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>,
3294 <GIC_SPI 181 IRQ_TYPE_LEVEL_HIGH>,
3295 <GIC_SPI 182 IRQ_TYPE_LEVEL_HIGH>,
3296 <GIC_SPI 183 IRQ_TYPE_LEVEL_HIGH>,
3297 <GIC_SPI 184 IRQ_TYPE_LEVEL_HIGH>,
3298 <GIC_SPI 185 IRQ_TYPE_LEVEL_HIGH>,
3299 <GIC_SPI 186 IRQ_TYPE_LEVEL_HIGH>,
3300 <GIC_SPI 187 IRQ_TYPE_LEVEL_HIGH>,
3301 <GIC_SPI 188 IRQ_TYPE_LEVEL_HIGH>,
3302 <GIC_SPI 189 IRQ_TYPE_LEVEL_HIGH>,
3303 <GIC_SPI 190 IRQ_TYPE_LEVEL_HIGH>,
3304 <GIC_SPI 191 IRQ_TYPE_LEVEL_HIGH>,
3305 <GIC_SPI 192 IRQ_TYPE_LEVEL_HIGH>,
3306 <GIC_SPI 315 IRQ_TYPE_LEVEL_HIGH>,
3307 <GIC_SPI 316 IRQ_TYPE_LEVEL_HIGH>,
3308 <GIC_SPI 317 IRQ_TYPE_LEVEL_HIGH>,
3309 <GIC_SPI 318 IRQ_TYPE_LEVEL_HIGH>,
3310 <GIC_SPI 319 IRQ_TYPE_LEVEL_HIGH>,
3311 <GIC_SPI 320 IRQ_TYPE_LEVEL_HIGH>,
3312 <GIC_SPI 321 IRQ_TYPE_LEVEL_HIGH>,
3313 <GIC_SPI 322 IRQ_TYPE_LEVEL_HIGH>,
3314 <GIC_SPI 323 IRQ_TYPE_LEVEL_HIGH>,
3315 <GIC_SPI 324 IRQ_TYPE_LEVEL_HIGH>,
3316 <GIC_SPI 325 IRQ_TYPE_LEVEL_HIGH>,
3317 <GIC_SPI 326 IRQ_TYPE_LEVEL_HIGH>,
3318 <GIC_SPI 327 IRQ_TYPE_LEVEL_HIGH>,
3319 <GIC_SPI 328 IRQ_TYPE_LEVEL_HIGH>,
3320 <GIC_SPI 329 IRQ_TYPE_LEVEL_HIGH>,
3321 <GIC_SPI 330 IRQ_TYPE_LEVEL_HIGH>,
3322 <GIC_SPI 331 IRQ_TYPE_LEVEL_HIGH>,
3323 <GIC_SPI 332 IRQ_TYPE_LEVEL_HIGH>,
3324 <GIC_SPI 333 IRQ_TYPE_LEVEL_HIGH>,
3325 <GIC_SPI 334 IRQ_TYPE_LEVEL_HIGH>,
3326 <GIC_SPI 335 IRQ_TYPE_LEVEL_HIGH>,
3327 <GIC_SPI 336 IRQ_TYPE_LEVEL_HIGH>,
3328 <GIC_SPI 337 IRQ_TYPE_LEVEL_HIGH>,
3329 <GIC_SPI 338 IRQ_TYPE_LEVEL_HIGH>,
3330 <GIC_SPI 339 IRQ_TYPE_LEVEL_HIGH>,
3331 <GIC_SPI 340 IRQ_TYPE_LEVEL_HIGH>,
3332 <GIC_SPI 341 IRQ_TYPE_LEVEL_HIGH>,
3333 <GIC_SPI 342 IRQ_TYPE_LEVEL_HIGH>,
3334 <GIC_SPI 343 IRQ_TYPE_LEVEL_HIGH>,
3335 <GIC_SPI 344 IRQ_TYPE_LEVEL_HIGH>,
3336 <GIC_SPI 345 IRQ_TYPE_LEVEL_HIGH>,
3337 <GIC_SPI 395 IRQ_TYPE_LEVEL_HIGH>,
3338 <GIC_SPI 396 IRQ_TYPE_LEVEL_HIGH>,
3339 <GIC_SPI 397 IRQ_TYPE_LEVEL_HIGH>,
3340 <GIC_SPI 398 IRQ_TYPE_LEVEL_HIGH>,
3341 <GIC_SPI 399 IRQ_TYPE_LEVEL_HIGH>,
3342 <GIC_SPI 400 IRQ_TYPE_LEVEL_HIGH>,
3343 <GIC_SPI 401 IRQ_TYPE_LEVEL_HIGH>,
3344 <GIC_SPI 402 IRQ_TYPE_LEVEL_HIGH>,
3345 <GIC_SPI 403 IRQ_TYPE_LEVEL_HIGH>,
3346 <GIC_SPI 404 IRQ_TYPE_LEVEL_HIGH>,
3347 <GIC_SPI 405 IRQ_TYPE_LEVEL_HIGH>,
3348 <GIC_SPI 406 IRQ_TYPE_LEVEL_HIGH>,
3349 <GIC_SPI 407 IRQ_TYPE_LEVEL_HIGH>,
3350 <GIC_SPI 408 IRQ_TYPE_LEVEL_HIGH>,
3351 <GIC_SPI 409 IRQ_TYPE_LEVEL_HIGH>,
3352 <GIC_SPI 410 IRQ_TYPE_LEVEL_HIGH>,
3353 <GIC_SPI 411 IRQ_TYPE_LEVEL_HIGH>,
3354 <GIC_SPI 412 IRQ_TYPE_LEVEL_HIGH>,
3355 <GIC_SPI 413 IRQ_TYPE_LEVEL_HIGH>,
3356 <GIC_SPI 706 IRQ_TYPE_LEVEL_HIGH>,
3357 <GIC_SPI 707 IRQ_TYPE_LEVEL_HIGH>,
3358 <GIC_SPI 708 IRQ_TYPE_LEVEL_HIGH>,
3359 <GIC_SPI 709 IRQ_TYPE_LEVEL_HIGH>,
3360 <GIC_SPI 710 IRQ_TYPE_LEVEL_HIGH>,
3361 <GIC_SPI 711 IRQ_TYPE_LEVEL_HIGH>,
3362 <GIC_SPI 712 IRQ_TYPE_LEVEL_HIGH>,
3363 <GIC_SPI 713 IRQ_TYPE_LEVEL_HIGH>,
3364 <GIC_SPI 714 IRQ_TYPE_LEVEL_HIGH>,
3365 <GIC_SPI 715 IRQ_TYPE_LEVEL_HIGH>,
3366 <GIC_SPI 643 IRQ_TYPE_LEVEL_HIGH>,
3367 <GIC_SPI 642 IRQ_TYPE_LEVEL_HIGH>,
3368 <GIC_SPI 641 IRQ_TYPE_LEVEL_HIGH>,
3369 <GIC_SPI 640 IRQ_TYPE_LEVEL_HIGH>,
3370 <GIC_SPI 768 IRQ_TYPE_LEVEL_HIGH>,
3371 <GIC_SPI 769 IRQ_TYPE_LEVEL_HIGH>,
3372 <GIC_SPI 770 IRQ_TYPE_LEVEL_HIGH>,
3373 <GIC_SPI 771 IRQ_TYPE_LEVEL_HIGH>,
3374 <GIC_SPI 772 IRQ_TYPE_LEVEL_HIGH>,
3375 <GIC_SPI 773 IRQ_TYPE_LEVEL_HIGH>,
3376 <GIC_SPI 774 IRQ_TYPE_LEVEL_HIGH>,
3377 <GIC_SPI 775 IRQ_TYPE_LEVEL_HIGH>;
3381 remoteproc_adsp: remoteproc@17300000 {
3382 compatible = "qcom,sc8180x-adsp-pas";
3383 reg = <0x0 0x17300000 0x0 0x4040>;
3385 interrupts-extended = <&intc GIC_SPI 162 IRQ_TYPE_EDGE_RISING>,
3386 <&adsp_smp2p_in 0 IRQ_TYPE_EDGE_RISING>,
3387 <&adsp_smp2p_in 1 IRQ_TYPE_EDGE_RISING>,
3388 <&adsp_smp2p_in 2 IRQ_TYPE_EDGE_RISING>,
3389 <&adsp_smp2p_in 3 IRQ_TYPE_EDGE_RISING>;
3390 interrupt-names = "wdog", "fatal", "ready",
3391 "handover", "stop-ack";
3393 clocks = <&rpmhcc RPMH_CXO_CLK>;
3396 power-domains = <&rpmhpd SC8180X_CX>;
3397 power-domain-names = "cx";
3399 qcom,qmp = <&aoss_qmp>;
3401 qcom,smem-states = <&adsp_smp2p_out 0>;
3402 qcom,smem-state-names = "stop";
3404 status = "disabled";
3406 remoteproc_adsp_glink: glink-edge {
3407 interrupts = <GIC_SPI 156 IRQ_TYPE_EDGE_RISING>;
3409 qcom,remote-pid = <2>;
3410 mboxes = <&apss_shared 8>;
3414 intc: interrupt-controller@17a00000 {
3415 compatible = "arm,gic-v3";
3416 interrupt-controller;
3417 #interrupt-cells = <3>;
3418 reg = <0x0 0x17a00000 0x0 0x10000>, /* GICD */
3419 <0x0 0x17a60000 0x0 0x100000>; /* GICR * 8 */
3420 interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>;
3423 apss_shared: mailbox@17c00000 {
3424 compatible = "qcom,sc8180x-apss-shared";
3425 reg = <0x0 0x17c00000 0x0 0x1000>;
3430 compatible = "arm,armv7-timer-mem";
3431 reg = <0x0 0x17c20000 0x0 0x1000>;
3433 #address-cells = <1>;
3435 ranges = <0 0 0 0x20000000>;
3438 reg = <0x17c21000 0x1000>,
3439 <0x17c22000 0x1000>;
3441 interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>,
3442 <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>;
3446 reg = <0x17c23000 0x1000>;
3448 interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>;
3449 status = "disabled";
3453 reg = <0x17c25000 0x1000>;
3455 interrupts = <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>;
3456 status = "disabled";
3460 reg = <0x17c26000 0x1000>;
3462 interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>;
3463 status = "disabled";
3467 reg = <0x17c29000 0x1000>;
3469 interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>;
3470 status = "disabled";
3474 reg = <0x17c2b000 0x1000>;
3476 interrupts = <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>;
3477 status = "disabled";
3481 reg = <0x17c2d000 0x1000>;
3483 interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>;
3484 status = "disabled";
3488 apps_rsc: rsc@18200000 {
3489 compatible = "qcom,rpmh-rsc";
3490 reg = <0x0 0x18200000 0x0 0x10000>,
3491 <0x0 0x18210000 0x0 0x10000>,
3492 <0x0 0x18220000 0x0 0x10000>;
3493 reg-names = "drv-0", "drv-1", "drv-2";
3494 interrupts = <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>,
3495 <GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>,
3496 <GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH>;
3497 qcom,tcs-offset = <0xd00>;
3499 qcom,tcs-config = <ACTIVE_TCS 2>,
3504 power-domains = <&CLUSTER_PD>;
3506 apps_bcm_voter: bcm-voter {
3507 compatible = "qcom,bcm-voter";
3510 rpmhcc: clock-controller {
3511 compatible = "qcom,sc8180x-rpmh-clk";
3514 clocks = <&xo_board_clk>;
3517 rpmhpd: power-controller {
3518 compatible = "qcom,sc8180x-rpmhpd";
3519 #power-domain-cells = <1>;
3520 operating-points-v2 = <&rpmhpd_opp_table>;
3522 rpmhpd_opp_table: opp-table {
3523 compatible = "operating-points-v2";
3525 rpmhpd_opp_ret: opp1 {
3526 opp-level = <RPMH_REGULATOR_LEVEL_RETENTION>;
3529 rpmhpd_opp_min_svs: opp2 {
3530 opp-level = <RPMH_REGULATOR_LEVEL_MIN_SVS>;
3533 rpmhpd_opp_low_svs: opp3 {
3534 opp-level = <RPMH_REGULATOR_LEVEL_LOW_SVS>;
3537 rpmhpd_opp_svs: opp4 {
3538 opp-level = <RPMH_REGULATOR_LEVEL_SVS>;
3541 rpmhpd_opp_svs_l1: opp5 {
3542 opp-level = <RPMH_REGULATOR_LEVEL_SVS_L1>;
3545 rpmhpd_opp_nom: opp6 {
3546 opp-level = <RPMH_REGULATOR_LEVEL_NOM>;
3549 rpmhpd_opp_nom_l1: opp7 {
3550 opp-level = <RPMH_REGULATOR_LEVEL_NOM_L1>;
3553 rpmhpd_opp_nom_l2: opp8 {
3554 opp-level = <RPMH_REGULATOR_LEVEL_NOM_L2>;
3557 rpmhpd_opp_turbo: opp9 {
3558 opp-level = <RPMH_REGULATOR_LEVEL_TURBO>;
3561 rpmhpd_opp_turbo_l1: opp10 {
3562 opp-level = <RPMH_REGULATOR_LEVEL_TURBO_L1>;
3568 osm_l3: interconnect@18321000 {
3569 compatible = "qcom,sc8180x-osm-l3", "qcom,osm-l3";
3570 reg = <0 0x18321000 0 0x1400>;
3572 clocks = <&rpmhcc RPMH_CXO_CLK>, <&gcc GPLL0>;
3573 clock-names = "xo", "alternate";
3575 #interconnect-cells = <1>;
3579 compatible = "qcom,sc8180x-lmh";
3580 reg = <0 0x18350800 0 0x400>;
3581 interrupts = <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>;
3583 qcom,lmh-temp-arm-millicelsius = <65000>;
3584 qcom,lmh-temp-low-millicelsius = <94500>;
3585 qcom,lmh-temp-high-millicelsius = <95000>;
3586 interrupt-controller;
3587 #interrupt-cells = <1>;
3591 compatible = "qcom,sc8180x-lmh";
3592 reg = <0 0x18358800 0 0x400>;
3593 interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>;
3595 qcom,lmh-temp-arm-millicelsius = <65000>;
3596 qcom,lmh-temp-low-millicelsius = <94500>;
3597 qcom,lmh-temp-high-millicelsius = <95000>;
3598 interrupt-controller;
3599 #interrupt-cells = <1>;
3602 cpufreq_hw: cpufreq@18323000 {
3603 compatible = "qcom,cpufreq-hw";
3604 reg = <0 0x18323000 0 0x1400>, <0 0x18325800 0 0x1400>;
3605 reg-names = "freq-domain0", "freq-domain1";
3607 clocks = <&rpmhcc RPMH_CXO_CLK>, <&gcc GPLL0>;
3608 clock-names = "xo", "alternate";
3610 #freq-domain-cells = <1>;
3614 wifi: wifi@18800000 {
3615 compatible = "qcom,wcn3990-wifi";
3616 reg = <0 0x18800000 0 0x800000>;
3617 reg-names = "membase";
3618 clock-names = "cxo_ref_clk_pin";
3619 clocks = <&rpmhcc RPMH_RF_CLK2>;
3620 interrupts = <GIC_SPI 414 IRQ_TYPE_LEVEL_HIGH>,
3621 <GIC_SPI 415 IRQ_TYPE_LEVEL_HIGH>,
3622 <GIC_SPI 416 IRQ_TYPE_LEVEL_HIGH>,
3623 <GIC_SPI 417 IRQ_TYPE_LEVEL_HIGH>,
3624 <GIC_SPI 418 IRQ_TYPE_LEVEL_HIGH>,
3625 <GIC_SPI 419 IRQ_TYPE_LEVEL_HIGH>,
3626 <GIC_SPI 420 IRQ_TYPE_LEVEL_HIGH>,
3627 <GIC_SPI 421 IRQ_TYPE_LEVEL_HIGH>,
3628 <GIC_SPI 422 IRQ_TYPE_LEVEL_HIGH>,
3629 <GIC_SPI 423 IRQ_TYPE_LEVEL_HIGH>,
3630 <GIC_SPI 424 IRQ_TYPE_LEVEL_HIGH>,
3631 <GIC_SPI 425 IRQ_TYPE_LEVEL_HIGH>;
3632 iommus = <&apps_smmu 0x0640 0x1>;
3633 qcom,msa-fixed-perm;
3634 status = "disabled";
3640 polling-delay-passive = <250>;
3641 polling-delay = <1000>;
3643 thermal-sensors = <&tsens0 1>;
3647 temperature = <110000>;
3648 hysteresis = <1000>;
3655 polling-delay-passive = <250>;
3656 polling-delay = <1000>;
3658 thermal-sensors = <&tsens0 2>;
3662 temperature = <110000>;
3663 hysteresis = <1000>;
3670 polling-delay-passive = <250>;
3671 polling-delay = <1000>;
3673 thermal-sensors = <&tsens0 3>;
3677 temperature = <110000>;
3678 hysteresis = <1000>;
3685 polling-delay-passive = <250>;
3686 polling-delay = <1000>;
3688 thermal-sensors = <&tsens0 4>;
3692 temperature = <110000>;
3693 hysteresis = <1000>;
3700 polling-delay-passive = <250>;
3701 polling-delay = <1000>;
3703 thermal-sensors = <&tsens0 7>;
3707 temperature = <110000>;
3708 hysteresis = <1000>;
3715 polling-delay-passive = <250>;
3716 polling-delay = <1000>;
3718 thermal-sensors = <&tsens0 8>;
3722 temperature = <110000>;
3723 hysteresis = <1000>;
3730 polling-delay-passive = <250>;
3731 polling-delay = <1000>;
3733 thermal-sensors = <&tsens0 9>;
3737 temperature = <110000>;
3738 hysteresis = <1000>;
3745 polling-delay-passive = <250>;
3746 polling-delay = <1000>;
3748 thermal-sensors = <&tsens0 10>;
3752 temperature = <110000>;
3753 hysteresis = <1000>;
3759 cpu4-bottom-thermal {
3760 polling-delay-passive = <250>;
3761 polling-delay = <1000>;
3763 thermal-sensors = <&tsens0 11>;
3767 temperature = <110000>;
3768 hysteresis = <1000>;
3774 cpu5-bottom-thermal {
3775 polling-delay-passive = <250>;
3776 polling-delay = <1000>;
3778 thermal-sensors = <&tsens0 12>;
3782 temperature = <110000>;
3783 hysteresis = <1000>;
3789 cpu6-bottom-thermal {
3790 polling-delay-passive = <250>;
3791 polling-delay = <1000>;
3793 thermal-sensors = <&tsens0 13>;
3797 temperature = <110000>;
3798 hysteresis = <1000>;
3804 cpu7-bottom-thermal {
3805 polling-delay-passive = <250>;
3806 polling-delay = <1000>;
3808 thermal-sensors = <&tsens0 14>;
3812 temperature = <110000>;
3813 hysteresis = <1000>;
3820 polling-delay-passive = <250>;
3821 polling-delay = <1000>;
3823 thermal-sensors = <&tsens0 0>;
3827 temperature = <90000>;
3828 hysteresis = <2000>;
3835 polling-delay-passive = <250>;
3836 polling-delay = <1000>;
3838 thermal-sensors = <&tsens0 5>;
3842 temperature = <110000>;
3843 hysteresis = <2000>;
3850 polling-delay-passive = <250>;
3851 polling-delay = <1000>;
3853 thermal-sensors = <&tsens0 6>;
3857 temperature = <110000>;
3858 hysteresis = <2000>;
3865 polling-delay-passive = <250>;
3866 polling-delay = <1000>;
3868 thermal-sensors = <&tsens0 15>;
3872 temperature = <90000>;
3873 hysteresis = <2000>;
3880 polling-delay-passive = <250>;
3881 polling-delay = <1000>;
3883 thermal-sensors = <&tsens1 0>;
3887 temperature = <90000>;
3888 hysteresis = <2000>;
3895 polling-delay-passive = <250>;
3896 polling-delay = <1000>;
3898 thermal-sensors = <&tsens1 1>;
3902 temperature = <90000>;
3903 hysteresis = <2000>;
3910 polling-delay-passive = <250>;
3911 polling-delay = <1000>;
3913 thermal-sensors = <&tsens1 2>;
3917 temperature = <90000>;
3918 hysteresis = <2000>;
3925 polling-delay-passive = <250>;
3926 polling-delay = <1000>;
3928 thermal-sensors = <&tsens1 3>;
3932 temperature = <90000>;
3933 hysteresis = <2000>;
3940 polling-delay-passive = <250>;
3941 polling-delay = <1000>;
3943 thermal-sensors = <&tsens1 4>;
3947 temperature = <90000>;
3948 hysteresis = <2000>;
3955 polling-delay-passive = <250>;
3956 polling-delay = <1000>;
3958 thermal-sensors = <&tsens1 5>;
3962 temperature = <90000>;
3963 hysteresis = <2000>;
3970 polling-delay-passive = <250>;
3971 polling-delay = <1000>;
3973 thermal-sensors = <&tsens1 6>;
3977 temperature = <90000>;
3978 hysteresis = <2000>;
3985 polling-delay-passive = <250>;
3986 polling-delay = <1000>;
3988 thermal-sensors = <&tsens1 7>;
3992 temperature = <90000>;
3993 hysteresis = <2000>;
4000 polling-delay-passive = <250>;
4001 polling-delay = <1000>;
4003 thermal-sensors = <&tsens1 8>;
4007 temperature = <90000>;
4008 hysteresis = <2000>;
4014 gpu-bottom-thermal {
4015 polling-delay-passive = <250>;
4016 polling-delay = <1000>;
4018 thermal-sensors = <&tsens1 11>;
4022 temperature = <90000>;
4023 hysteresis = <2000>;
4031 compatible = "arm,armv8-timer";
4032 interrupts = <GIC_PPI 1 IRQ_TYPE_LEVEL_LOW>,
4033 <GIC_PPI 2 IRQ_TYPE_LEVEL_LOW>,
4034 <GIC_PPI 3 IRQ_TYPE_LEVEL_LOW>,
4035 <GIC_PPI 0 IRQ_TYPE_LEVEL_LOW>;