1 // SPDX-License-Identifier: BSD-3-Clause
3 * Copyright (c) 2020, The Linux Foundation. All rights reserved.
6 #include <dt-bindings/interrupt-controller/arm-gic.h>
7 #include <dt-bindings/clock/qcom,dispcc-sm8250.h>
8 #include <dt-bindings/clock/qcom,gcc-sm8250.h>
9 #include <dt-bindings/clock/qcom,gpucc-sm8250.h>
10 #include <dt-bindings/clock/qcom,rpmh.h>
11 #include <dt-bindings/interconnect/qcom,osm-l3.h>
12 #include <dt-bindings/interconnect/qcom,sm8250.h>
13 #include <dt-bindings/mailbox/qcom-ipcc.h>
14 #include <dt-bindings/power/qcom-aoss-qmp.h>
15 #include <dt-bindings/power/qcom-rpmpd.h>
16 #include <dt-bindings/soc/qcom,apr.h>
17 #include <dt-bindings/soc/qcom,rpmh-rsc.h>
18 #include <dt-bindings/sound/qcom,q6afe.h>
19 #include <dt-bindings/thermal/thermal.h>
22 interrupt-parent = <&intc>;
74 compatible = "fixed-clock";
76 clock-frequency = <38400000>;
77 clock-output-names = "xo_board";
80 sleep_clk: sleep-clk {
81 compatible = "fixed-clock";
82 clock-frequency = <32768>;
93 compatible = "qcom,kryo485";
95 enable-method = "psci";
96 next-level-cache = <&L2_0>;
97 qcom,freq-domain = <&cpufreq_hw 0>;
100 compatible = "cache";
101 next-level-cache = <&L3_0>;
103 compatible = "cache";
110 compatible = "qcom,kryo485";
112 enable-method = "psci";
113 next-level-cache = <&L2_100>;
114 qcom,freq-domain = <&cpufreq_hw 0>;
115 #cooling-cells = <2>;
117 compatible = "cache";
118 next-level-cache = <&L3_0>;
124 compatible = "qcom,kryo485";
126 enable-method = "psci";
127 next-level-cache = <&L2_200>;
128 qcom,freq-domain = <&cpufreq_hw 0>;
129 #cooling-cells = <2>;
131 compatible = "cache";
132 next-level-cache = <&L3_0>;
138 compatible = "qcom,kryo485";
140 enable-method = "psci";
141 next-level-cache = <&L2_300>;
142 qcom,freq-domain = <&cpufreq_hw 0>;
143 #cooling-cells = <2>;
145 compatible = "cache";
146 next-level-cache = <&L3_0>;
152 compatible = "qcom,kryo485";
154 enable-method = "psci";
155 next-level-cache = <&L2_400>;
156 qcom,freq-domain = <&cpufreq_hw 1>;
157 #cooling-cells = <2>;
159 compatible = "cache";
160 next-level-cache = <&L3_0>;
166 compatible = "qcom,kryo485";
168 enable-method = "psci";
169 next-level-cache = <&L2_500>;
170 qcom,freq-domain = <&cpufreq_hw 1>;
171 #cooling-cells = <2>;
173 compatible = "cache";
174 next-level-cache = <&L3_0>;
181 compatible = "qcom,kryo485";
183 enable-method = "psci";
184 next-level-cache = <&L2_600>;
185 qcom,freq-domain = <&cpufreq_hw 1>;
186 #cooling-cells = <2>;
188 compatible = "cache";
189 next-level-cache = <&L3_0>;
195 compatible = "qcom,kryo485";
197 enable-method = "psci";
198 next-level-cache = <&L2_700>;
199 qcom,freq-domain = <&cpufreq_hw 2>;
200 #cooling-cells = <2>;
202 compatible = "cache";
203 next-level-cache = <&L3_0>;
210 compatible = "qcom,scm";
216 device_type = "memory";
217 /* We expect the bootloader to fill in the size */
218 reg = <0x0 0x80000000 0x0 0x0>;
222 compatible = "regulator-fixed-domain";
223 power-domains = <&rpmhpd SM8250_MMCX>;
224 required-opps = <&rpmhpd_opp_low_svs>;
225 regulator-name = "MMCX";
229 compatible = "arm,armv8-pmuv3";
230 interrupts = <GIC_PPI 7 IRQ_TYPE_LEVEL_HIGH>;
234 compatible = "arm,psci-1.0";
239 #address-cells = <2>;
243 hyp_mem: memory@80000000 {
244 reg = <0x0 0x80000000 0x0 0x600000>;
248 xbl_aop_mem: memory@80700000 {
249 reg = <0x0 0x80700000 0x0 0x160000>;
253 cmd_db: memory@80860000 {
254 compatible = "qcom,cmd-db";
255 reg = <0x0 0x80860000 0x0 0x20000>;
259 smem_mem: memory@80900000 {
260 reg = <0x0 0x80900000 0x0 0x200000>;
264 removed_mem: memory@80b00000 {
265 reg = <0x0 0x80b00000 0x0 0x5300000>;
269 camera_mem: memory@86200000 {
270 reg = <0x0 0x86200000 0x0 0x500000>;
274 wlan_mem: memory@86700000 {
275 reg = <0x0 0x86700000 0x0 0x100000>;
279 ipa_fw_mem: memory@86800000 {
280 reg = <0x0 0x86800000 0x0 0x10000>;
284 ipa_gsi_mem: memory@86810000 {
285 reg = <0x0 0x86810000 0x0 0xa000>;
289 gpu_mem: memory@8681a000 {
290 reg = <0x0 0x8681a000 0x0 0x2000>;
294 npu_mem: memory@86900000 {
295 reg = <0x0 0x86900000 0x0 0x500000>;
299 video_mem: memory@86e00000 {
300 reg = <0x0 0x86e00000 0x0 0x500000>;
304 cvp_mem: memory@87300000 {
305 reg = <0x0 0x87300000 0x0 0x500000>;
309 cdsp_mem: memory@87800000 {
310 reg = <0x0 0x87800000 0x0 0x1400000>;
314 slpi_mem: memory@88c00000 {
315 reg = <0x0 0x88c00000 0x0 0x1500000>;
319 adsp_mem: memory@8a100000 {
320 reg = <0x0 0x8a100000 0x0 0x1d00000>;
324 spss_mem: memory@8be00000 {
325 reg = <0x0 0x8be00000 0x0 0x100000>;
329 cdsp_secure_heap: memory@8bf00000 {
330 reg = <0x0 0x8bf00000 0x0 0x4600000>;
336 compatible = "qcom,smem";
337 memory-region = <&smem_mem>;
338 hwlocks = <&tcsr_mutex 3>;
342 compatible = "qcom,smp2p";
343 qcom,smem = <443>, <429>;
344 interrupts-extended = <&ipcc IPCC_CLIENT_LPASS
345 IPCC_MPROC_SIGNAL_SMP2P
346 IRQ_TYPE_EDGE_RISING>;
347 mboxes = <&ipcc IPCC_CLIENT_LPASS
348 IPCC_MPROC_SIGNAL_SMP2P>;
350 qcom,local-pid = <0>;
351 qcom,remote-pid = <2>;
353 smp2p_adsp_out: master-kernel {
354 qcom,entry-name = "master-kernel";
355 #qcom,smem-state-cells = <1>;
358 smp2p_adsp_in: slave-kernel {
359 qcom,entry-name = "slave-kernel";
360 interrupt-controller;
361 #interrupt-cells = <2>;
366 compatible = "qcom,smp2p";
367 qcom,smem = <94>, <432>;
368 interrupts-extended = <&ipcc IPCC_CLIENT_CDSP
369 IPCC_MPROC_SIGNAL_SMP2P
370 IRQ_TYPE_EDGE_RISING>;
371 mboxes = <&ipcc IPCC_CLIENT_CDSP
372 IPCC_MPROC_SIGNAL_SMP2P>;
374 qcom,local-pid = <0>;
375 qcom,remote-pid = <5>;
377 smp2p_cdsp_out: master-kernel {
378 qcom,entry-name = "master-kernel";
379 #qcom,smem-state-cells = <1>;
382 smp2p_cdsp_in: slave-kernel {
383 qcom,entry-name = "slave-kernel";
384 interrupt-controller;
385 #interrupt-cells = <2>;
390 compatible = "qcom,smp2p";
391 qcom,smem = <481>, <430>;
392 interrupts-extended = <&ipcc IPCC_CLIENT_SLPI
393 IPCC_MPROC_SIGNAL_SMP2P
394 IRQ_TYPE_EDGE_RISING>;
395 mboxes = <&ipcc IPCC_CLIENT_SLPI
396 IPCC_MPROC_SIGNAL_SMP2P>;
398 qcom,local-pid = <0>;
399 qcom,remote-pid = <3>;
401 smp2p_slpi_out: master-kernel {
402 qcom,entry-name = "master-kernel";
403 #qcom,smem-state-cells = <1>;
406 smp2p_slpi_in: slave-kernel {
407 qcom,entry-name = "slave-kernel";
408 interrupt-controller;
409 #interrupt-cells = <2>;
414 #address-cells = <2>;
416 ranges = <0 0 0 0 0x10 0>;
417 dma-ranges = <0 0 0 0 0x10 0>;
418 compatible = "simple-bus";
420 gcc: clock-controller@100000 {
421 compatible = "qcom,gcc-sm8250";
422 reg = <0x0 0x00100000 0x0 0x1f0000>;
425 #power-domain-cells = <1>;
426 clock-names = "bi_tcxo",
429 clocks = <&rpmhcc RPMH_CXO_CLK>,
430 <&rpmhcc RPMH_CXO_CLK_A>,
434 ipcc: mailbox@408000 {
435 compatible = "qcom,sm8250-ipcc", "qcom,ipcc";
436 reg = <0 0x00408000 0 0x1000>;
437 interrupts = <GIC_SPI 229 IRQ_TYPE_LEVEL_HIGH>;
438 interrupt-controller;
439 #interrupt-cells = <3>;
444 compatible = "qcom,prng-ee";
445 reg = <0 0x00793000 0 0x1000>;
446 clocks = <&gcc GCC_PRNG_AHB_CLK>;
447 clock-names = "core";
450 qup_opp_table: qup-opp-table {
451 compatible = "operating-points-v2";
454 opp-hz = /bits/ 64 <50000000>;
455 required-opps = <&rpmhpd_opp_min_svs>;
459 opp-hz = /bits/ 64 <75000000>;
460 required-opps = <&rpmhpd_opp_low_svs>;
464 opp-hz = /bits/ 64 <120000000>;
465 required-opps = <&rpmhpd_opp_svs>;
469 qupv3_id_2: geniqup@8c0000 {
470 compatible = "qcom,geni-se-qup";
471 reg = <0x0 0x008c0000 0x0 0x6000>;
472 clock-names = "m-ahb", "s-ahb";
473 clocks = <&gcc GCC_QUPV3_WRAP_2_M_AHB_CLK>,
474 <&gcc GCC_QUPV3_WRAP_2_S_AHB_CLK>;
475 #address-cells = <2>;
477 iommus = <&apps_smmu 0x63 0x0>;
482 compatible = "qcom,geni-i2c";
483 reg = <0 0x00880000 0 0x4000>;
485 clocks = <&gcc GCC_QUPV3_WRAP2_S0_CLK>;
486 pinctrl-names = "default";
487 pinctrl-0 = <&qup_i2c14_default>;
488 interrupts = <GIC_SPI 373 IRQ_TYPE_LEVEL_HIGH>;
489 #address-cells = <1>;
495 compatible = "qcom,geni-spi";
496 reg = <0 0x00880000 0 0x4000>;
498 clocks = <&gcc GCC_QUPV3_WRAP2_S0_CLK>;
499 pinctrl-names = "default";
500 pinctrl-0 = <&qup_spi14_default>;
501 interrupts = <GIC_SPI 373 IRQ_TYPE_LEVEL_HIGH>;
502 #address-cells = <1>;
504 power-domains = <&rpmhpd SM8250_CX>;
505 operating-points-v2 = <&qup_opp_table>;
510 compatible = "qcom,geni-i2c";
511 reg = <0 0x00884000 0 0x4000>;
513 clocks = <&gcc GCC_QUPV3_WRAP2_S1_CLK>;
514 pinctrl-names = "default";
515 pinctrl-0 = <&qup_i2c15_default>;
516 interrupts = <GIC_SPI 583 IRQ_TYPE_LEVEL_HIGH>;
517 #address-cells = <1>;
523 compatible = "qcom,geni-spi";
524 reg = <0 0x00884000 0 0x4000>;
526 clocks = <&gcc GCC_QUPV3_WRAP2_S1_CLK>;
527 pinctrl-names = "default";
528 pinctrl-0 = <&qup_spi15_default>;
529 interrupts = <GIC_SPI 583 IRQ_TYPE_LEVEL_HIGH>;
530 #address-cells = <1>;
532 power-domains = <&rpmhpd SM8250_CX>;
533 operating-points-v2 = <&qup_opp_table>;
538 compatible = "qcom,geni-i2c";
539 reg = <0 0x00888000 0 0x4000>;
541 clocks = <&gcc GCC_QUPV3_WRAP2_S2_CLK>;
542 pinctrl-names = "default";
543 pinctrl-0 = <&qup_i2c16_default>;
544 interrupts = <GIC_SPI 584 IRQ_TYPE_LEVEL_HIGH>;
545 #address-cells = <1>;
551 compatible = "qcom,geni-spi";
552 reg = <0 0x00888000 0 0x4000>;
554 clocks = <&gcc GCC_QUPV3_WRAP2_S2_CLK>;
555 pinctrl-names = "default";
556 pinctrl-0 = <&qup_spi16_default>;
557 interrupts = <GIC_SPI 584 IRQ_TYPE_LEVEL_HIGH>;
558 #address-cells = <1>;
560 power-domains = <&rpmhpd SM8250_CX>;
561 operating-points-v2 = <&qup_opp_table>;
566 compatible = "qcom,geni-i2c";
567 reg = <0 0x0088c000 0 0x4000>;
569 clocks = <&gcc GCC_QUPV3_WRAP2_S3_CLK>;
570 pinctrl-names = "default";
571 pinctrl-0 = <&qup_i2c17_default>;
572 interrupts = <GIC_SPI 585 IRQ_TYPE_LEVEL_HIGH>;
573 #address-cells = <1>;
579 compatible = "qcom,geni-spi";
580 reg = <0 0x0088c000 0 0x4000>;
582 clocks = <&gcc GCC_QUPV3_WRAP2_S3_CLK>;
583 pinctrl-names = "default";
584 pinctrl-0 = <&qup_spi17_default>;
585 interrupts = <GIC_SPI 585 IRQ_TYPE_LEVEL_HIGH>;
586 #address-cells = <1>;
588 power-domains = <&rpmhpd SM8250_CX>;
589 operating-points-v2 = <&qup_opp_table>;
593 uart17: serial@88c000 {
594 compatible = "qcom,geni-uart";
595 reg = <0 0x0088c000 0 0x4000>;
597 clocks = <&gcc GCC_QUPV3_WRAP2_S3_CLK>;
598 pinctrl-names = "default";
599 pinctrl-0 = <&qup_uart17_default>;
600 interrupts = <GIC_SPI 585 IRQ_TYPE_LEVEL_HIGH>;
601 power-domains = <&rpmhpd SM8250_CX>;
602 operating-points-v2 = <&qup_opp_table>;
607 compatible = "qcom,geni-i2c";
608 reg = <0 0x00890000 0 0x4000>;
610 clocks = <&gcc GCC_QUPV3_WRAP2_S4_CLK>;
611 pinctrl-names = "default";
612 pinctrl-0 = <&qup_i2c18_default>;
613 interrupts = <GIC_SPI 586 IRQ_TYPE_LEVEL_HIGH>;
614 #address-cells = <1>;
620 compatible = "qcom,geni-spi";
621 reg = <0 0x00890000 0 0x4000>;
623 clocks = <&gcc GCC_QUPV3_WRAP2_S4_CLK>;
624 pinctrl-names = "default";
625 pinctrl-0 = <&qup_spi18_default>;
626 interrupts = <GIC_SPI 586 IRQ_TYPE_LEVEL_HIGH>;
627 #address-cells = <1>;
629 power-domains = <&rpmhpd SM8250_CX>;
630 operating-points-v2 = <&qup_opp_table>;
634 uart18: serial@890000 {
635 compatible = "qcom,geni-uart";
636 reg = <0 0x00890000 0 0x4000>;
638 clocks = <&gcc GCC_QUPV3_WRAP2_S4_CLK>;
639 pinctrl-names = "default";
640 pinctrl-0 = <&qup_uart18_default>;
641 interrupts = <GIC_SPI 586 IRQ_TYPE_LEVEL_HIGH>;
642 power-domains = <&rpmhpd SM8250_CX>;
643 operating-points-v2 = <&qup_opp_table>;
648 compatible = "qcom,geni-i2c";
649 reg = <0 0x00894000 0 0x4000>;
651 clocks = <&gcc GCC_QUPV3_WRAP2_S5_CLK>;
652 pinctrl-names = "default";
653 pinctrl-0 = <&qup_i2c19_default>;
654 interrupts = <GIC_SPI 587 IRQ_TYPE_LEVEL_HIGH>;
655 #address-cells = <1>;
661 compatible = "qcom,geni-spi";
662 reg = <0 0x00894000 0 0x4000>;
664 clocks = <&gcc GCC_QUPV3_WRAP2_S5_CLK>;
665 pinctrl-names = "default";
666 pinctrl-0 = <&qup_spi19_default>;
667 interrupts = <GIC_SPI 587 IRQ_TYPE_LEVEL_HIGH>;
668 #address-cells = <1>;
670 power-domains = <&rpmhpd SM8250_CX>;
671 operating-points-v2 = <&qup_opp_table>;
676 qupv3_id_0: geniqup@9c0000 {
677 compatible = "qcom,geni-se-qup";
678 reg = <0x0 0x009c0000 0x0 0x6000>;
679 clock-names = "m-ahb", "s-ahb";
680 clocks = <&gcc GCC_QUPV3_WRAP_0_M_AHB_CLK>,
681 <&gcc GCC_QUPV3_WRAP_0_S_AHB_CLK>;
682 #address-cells = <2>;
684 iommus = <&apps_smmu 0x5a3 0x0>;
689 compatible = "qcom,geni-i2c";
690 reg = <0 0x00980000 0 0x4000>;
692 clocks = <&gcc GCC_QUPV3_WRAP0_S0_CLK>;
693 pinctrl-names = "default";
694 pinctrl-0 = <&qup_i2c0_default>;
695 interrupts = <GIC_SPI 601 IRQ_TYPE_LEVEL_HIGH>;
696 #address-cells = <1>;
702 compatible = "qcom,geni-spi";
703 reg = <0 0x00980000 0 0x4000>;
705 clocks = <&gcc GCC_QUPV3_WRAP0_S0_CLK>;
706 pinctrl-names = "default";
707 pinctrl-0 = <&qup_spi0_default>;
708 interrupts = <GIC_SPI 601 IRQ_TYPE_LEVEL_HIGH>;
709 #address-cells = <1>;
711 power-domains = <&rpmhpd SM8250_CX>;
712 operating-points-v2 = <&qup_opp_table>;
717 compatible = "qcom,geni-i2c";
718 reg = <0 0x00984000 0 0x4000>;
720 clocks = <&gcc GCC_QUPV3_WRAP0_S1_CLK>;
721 pinctrl-names = "default";
722 pinctrl-0 = <&qup_i2c1_default>;
723 interrupts = <GIC_SPI 602 IRQ_TYPE_LEVEL_HIGH>;
724 #address-cells = <1>;
730 compatible = "qcom,geni-spi";
731 reg = <0 0x00984000 0 0x4000>;
733 clocks = <&gcc GCC_QUPV3_WRAP0_S1_CLK>;
734 pinctrl-names = "default";
735 pinctrl-0 = <&qup_spi1_default>;
736 interrupts = <GIC_SPI 602 IRQ_TYPE_LEVEL_HIGH>;
737 #address-cells = <1>;
739 power-domains = <&rpmhpd SM8250_CX>;
740 operating-points-v2 = <&qup_opp_table>;
745 compatible = "qcom,geni-i2c";
746 reg = <0 0x00988000 0 0x4000>;
748 clocks = <&gcc GCC_QUPV3_WRAP0_S2_CLK>;
749 pinctrl-names = "default";
750 pinctrl-0 = <&qup_i2c2_default>;
751 interrupts = <GIC_SPI 603 IRQ_TYPE_LEVEL_HIGH>;
752 #address-cells = <1>;
758 compatible = "qcom,geni-spi";
759 reg = <0 0x00988000 0 0x4000>;
761 clocks = <&gcc GCC_QUPV3_WRAP0_S2_CLK>;
762 pinctrl-names = "default";
763 pinctrl-0 = <&qup_spi2_default>;
764 interrupts = <GIC_SPI 603 IRQ_TYPE_LEVEL_HIGH>;
765 #address-cells = <1>;
767 power-domains = <&rpmhpd SM8250_CX>;
768 operating-points-v2 = <&qup_opp_table>;
772 uart2: serial@988000 {
773 compatible = "qcom,geni-debug-uart";
774 reg = <0 0x00988000 0 0x4000>;
776 clocks = <&gcc GCC_QUPV3_WRAP0_S2_CLK>;
777 pinctrl-names = "default";
778 pinctrl-0 = <&qup_uart2_default>;
779 interrupts = <GIC_SPI 603 IRQ_TYPE_LEVEL_HIGH>;
780 power-domains = <&rpmhpd SM8250_CX>;
781 operating-points-v2 = <&qup_opp_table>;
786 compatible = "qcom,geni-i2c";
787 reg = <0 0x0098c000 0 0x4000>;
789 clocks = <&gcc GCC_QUPV3_WRAP0_S3_CLK>;
790 pinctrl-names = "default";
791 pinctrl-0 = <&qup_i2c3_default>;
792 interrupts = <GIC_SPI 604 IRQ_TYPE_LEVEL_HIGH>;
793 #address-cells = <1>;
799 compatible = "qcom,geni-spi";
800 reg = <0 0x0098c000 0 0x4000>;
802 clocks = <&gcc GCC_QUPV3_WRAP0_S3_CLK>;
803 pinctrl-names = "default";
804 pinctrl-0 = <&qup_spi3_default>;
805 interrupts = <GIC_SPI 604 IRQ_TYPE_LEVEL_HIGH>;
806 #address-cells = <1>;
808 power-domains = <&rpmhpd SM8250_CX>;
809 operating-points-v2 = <&qup_opp_table>;
814 compatible = "qcom,geni-i2c";
815 reg = <0 0x00990000 0 0x4000>;
817 clocks = <&gcc GCC_QUPV3_WRAP0_S4_CLK>;
818 pinctrl-names = "default";
819 pinctrl-0 = <&qup_i2c4_default>;
820 interrupts = <GIC_SPI 605 IRQ_TYPE_LEVEL_HIGH>;
821 #address-cells = <1>;
827 compatible = "qcom,geni-spi";
828 reg = <0 0x00990000 0 0x4000>;
830 clocks = <&gcc GCC_QUPV3_WRAP0_S4_CLK>;
831 pinctrl-names = "default";
832 pinctrl-0 = <&qup_spi4_default>;
833 interrupts = <GIC_SPI 605 IRQ_TYPE_LEVEL_HIGH>;
834 #address-cells = <1>;
836 power-domains = <&rpmhpd SM8250_CX>;
837 operating-points-v2 = <&qup_opp_table>;
842 compatible = "qcom,geni-i2c";
843 reg = <0 0x00994000 0 0x4000>;
845 clocks = <&gcc GCC_QUPV3_WRAP0_S5_CLK>;
846 pinctrl-names = "default";
847 pinctrl-0 = <&qup_i2c5_default>;
848 interrupts = <GIC_SPI 606 IRQ_TYPE_LEVEL_HIGH>;
849 #address-cells = <1>;
855 compatible = "qcom,geni-spi";
856 reg = <0 0x00994000 0 0x4000>;
858 clocks = <&gcc GCC_QUPV3_WRAP0_S5_CLK>;
859 pinctrl-names = "default";
860 pinctrl-0 = <&qup_spi5_default>;
861 interrupts = <GIC_SPI 606 IRQ_TYPE_LEVEL_HIGH>;
862 #address-cells = <1>;
864 power-domains = <&rpmhpd SM8250_CX>;
865 operating-points-v2 = <&qup_opp_table>;
870 compatible = "qcom,geni-i2c";
871 reg = <0 0x00998000 0 0x4000>;
873 clocks = <&gcc GCC_QUPV3_WRAP0_S6_CLK>;
874 pinctrl-names = "default";
875 pinctrl-0 = <&qup_i2c6_default>;
876 interrupts = <GIC_SPI 607 IRQ_TYPE_LEVEL_HIGH>;
877 #address-cells = <1>;
883 compatible = "qcom,geni-spi";
884 reg = <0 0x00998000 0 0x4000>;
886 clocks = <&gcc GCC_QUPV3_WRAP0_S6_CLK>;
887 pinctrl-names = "default";
888 pinctrl-0 = <&qup_spi6_default>;
889 interrupts = <GIC_SPI 607 IRQ_TYPE_LEVEL_HIGH>;
890 #address-cells = <1>;
892 power-domains = <&rpmhpd SM8250_CX>;
893 operating-points-v2 = <&qup_opp_table>;
897 uart6: serial@998000 {
898 compatible = "qcom,geni-uart";
899 reg = <0 0x00998000 0 0x4000>;
901 clocks = <&gcc GCC_QUPV3_WRAP0_S6_CLK>;
902 pinctrl-names = "default";
903 pinctrl-0 = <&qup_uart6_default>;
904 interrupts = <GIC_SPI 607 IRQ_TYPE_LEVEL_HIGH>;
905 power-domains = <&rpmhpd SM8250_CX>;
906 operating-points-v2 = <&qup_opp_table>;
911 compatible = "qcom,geni-i2c";
912 reg = <0 0x0099c000 0 0x4000>;
914 clocks = <&gcc GCC_QUPV3_WRAP0_S7_CLK>;
915 pinctrl-names = "default";
916 pinctrl-0 = <&qup_i2c7_default>;
917 interrupts = <GIC_SPI 608 IRQ_TYPE_LEVEL_HIGH>;
918 #address-cells = <1>;
924 compatible = "qcom,geni-spi";
925 reg = <0 0x0099c000 0 0x4000>;
927 clocks = <&gcc GCC_QUPV3_WRAP0_S7_CLK>;
928 pinctrl-names = "default";
929 pinctrl-0 = <&qup_spi7_default>;
930 interrupts = <GIC_SPI 608 IRQ_TYPE_LEVEL_HIGH>;
931 #address-cells = <1>;
933 power-domains = <&rpmhpd SM8250_CX>;
934 operating-points-v2 = <&qup_opp_table>;
939 qupv3_id_1: geniqup@ac0000 {
940 compatible = "qcom,geni-se-qup";
941 reg = <0x0 0x00ac0000 0x0 0x6000>;
942 clock-names = "m-ahb", "s-ahb";
943 clocks = <&gcc GCC_QUPV3_WRAP_1_M_AHB_CLK>,
944 <&gcc GCC_QUPV3_WRAP_1_S_AHB_CLK>;
945 #address-cells = <2>;
947 iommus = <&apps_smmu 0x43 0x0>;
952 compatible = "qcom,geni-i2c";
953 reg = <0 0x00a80000 0 0x4000>;
955 clocks = <&gcc GCC_QUPV3_WRAP1_S0_CLK>;
956 pinctrl-names = "default";
957 pinctrl-0 = <&qup_i2c8_default>;
958 interrupts = <GIC_SPI 353 IRQ_TYPE_LEVEL_HIGH>;
959 #address-cells = <1>;
965 compatible = "qcom,geni-spi";
966 reg = <0 0x00a80000 0 0x4000>;
968 clocks = <&gcc GCC_QUPV3_WRAP1_S0_CLK>;
969 pinctrl-names = "default";
970 pinctrl-0 = <&qup_spi8_default>;
971 interrupts = <GIC_SPI 353 IRQ_TYPE_LEVEL_HIGH>;
972 #address-cells = <1>;
974 power-domains = <&rpmhpd SM8250_CX>;
975 operating-points-v2 = <&qup_opp_table>;
980 compatible = "qcom,geni-i2c";
981 reg = <0 0x00a84000 0 0x4000>;
983 clocks = <&gcc GCC_QUPV3_WRAP1_S1_CLK>;
984 pinctrl-names = "default";
985 pinctrl-0 = <&qup_i2c9_default>;
986 interrupts = <GIC_SPI 354 IRQ_TYPE_LEVEL_HIGH>;
987 #address-cells = <1>;
993 compatible = "qcom,geni-spi";
994 reg = <0 0x00a84000 0 0x4000>;
996 clocks = <&gcc GCC_QUPV3_WRAP1_S1_CLK>;
997 pinctrl-names = "default";
998 pinctrl-0 = <&qup_spi9_default>;
999 interrupts = <GIC_SPI 354 IRQ_TYPE_LEVEL_HIGH>;
1000 #address-cells = <1>;
1002 power-domains = <&rpmhpd SM8250_CX>;
1003 operating-points-v2 = <&qup_opp_table>;
1004 status = "disabled";
1008 compatible = "qcom,geni-i2c";
1009 reg = <0 0x00a88000 0 0x4000>;
1011 clocks = <&gcc GCC_QUPV3_WRAP1_S2_CLK>;
1012 pinctrl-names = "default";
1013 pinctrl-0 = <&qup_i2c10_default>;
1014 interrupts = <GIC_SPI 355 IRQ_TYPE_LEVEL_HIGH>;
1015 #address-cells = <1>;
1017 status = "disabled";
1021 compatible = "qcom,geni-spi";
1022 reg = <0 0x00a88000 0 0x4000>;
1024 clocks = <&gcc GCC_QUPV3_WRAP1_S2_CLK>;
1025 pinctrl-names = "default";
1026 pinctrl-0 = <&qup_spi10_default>;
1027 interrupts = <GIC_SPI 355 IRQ_TYPE_LEVEL_HIGH>;
1028 #address-cells = <1>;
1030 power-domains = <&rpmhpd SM8250_CX>;
1031 operating-points-v2 = <&qup_opp_table>;
1032 status = "disabled";
1036 compatible = "qcom,geni-i2c";
1037 reg = <0 0x00a8c000 0 0x4000>;
1039 clocks = <&gcc GCC_QUPV3_WRAP1_S3_CLK>;
1040 pinctrl-names = "default";
1041 pinctrl-0 = <&qup_i2c11_default>;
1042 interrupts = <GIC_SPI 356 IRQ_TYPE_LEVEL_HIGH>;
1043 #address-cells = <1>;
1045 status = "disabled";
1049 compatible = "qcom,geni-spi";
1050 reg = <0 0x00a8c000 0 0x4000>;
1052 clocks = <&gcc GCC_QUPV3_WRAP1_S3_CLK>;
1053 pinctrl-names = "default";
1054 pinctrl-0 = <&qup_spi11_default>;
1055 interrupts = <GIC_SPI 356 IRQ_TYPE_LEVEL_HIGH>;
1056 #address-cells = <1>;
1058 power-domains = <&rpmhpd SM8250_CX>;
1059 operating-points-v2 = <&qup_opp_table>;
1060 status = "disabled";
1064 compatible = "qcom,geni-i2c";
1065 reg = <0 0x00a90000 0 0x4000>;
1067 clocks = <&gcc GCC_QUPV3_WRAP1_S4_CLK>;
1068 pinctrl-names = "default";
1069 pinctrl-0 = <&qup_i2c12_default>;
1070 interrupts = <GIC_SPI 357 IRQ_TYPE_LEVEL_HIGH>;
1071 #address-cells = <1>;
1073 status = "disabled";
1077 compatible = "qcom,geni-spi";
1078 reg = <0 0x00a90000 0 0x4000>;
1080 clocks = <&gcc GCC_QUPV3_WRAP1_S4_CLK>;
1081 pinctrl-names = "default";
1082 pinctrl-0 = <&qup_spi12_default>;
1083 interrupts = <GIC_SPI 357 IRQ_TYPE_LEVEL_HIGH>;
1084 #address-cells = <1>;
1086 power-domains = <&rpmhpd SM8250_CX>;
1087 operating-points-v2 = <&qup_opp_table>;
1088 status = "disabled";
1091 uart12: serial@a90000 {
1092 compatible = "qcom,geni-debug-uart";
1093 reg = <0x0 0x00a90000 0x0 0x4000>;
1095 clocks = <&gcc GCC_QUPV3_WRAP1_S4_CLK>;
1096 pinctrl-names = "default";
1097 pinctrl-0 = <&qup_uart12_default>;
1098 interrupts = <GIC_SPI 357 IRQ_TYPE_LEVEL_HIGH>;
1099 power-domains = <&rpmhpd SM8250_CX>;
1100 operating-points-v2 = <&qup_opp_table>;
1101 status = "disabled";
1105 compatible = "qcom,geni-i2c";
1106 reg = <0 0x00a94000 0 0x4000>;
1108 clocks = <&gcc GCC_QUPV3_WRAP1_S5_CLK>;
1109 pinctrl-names = "default";
1110 pinctrl-0 = <&qup_i2c13_default>;
1111 interrupts = <GIC_SPI 358 IRQ_TYPE_LEVEL_HIGH>;
1112 #address-cells = <1>;
1114 status = "disabled";
1118 compatible = "qcom,geni-spi";
1119 reg = <0 0x00a94000 0 0x4000>;
1121 clocks = <&gcc GCC_QUPV3_WRAP1_S5_CLK>;
1122 pinctrl-names = "default";
1123 pinctrl-0 = <&qup_spi13_default>;
1124 interrupts = <GIC_SPI 358 IRQ_TYPE_LEVEL_HIGH>;
1125 #address-cells = <1>;
1127 power-domains = <&rpmhpd SM8250_CX>;
1128 operating-points-v2 = <&qup_opp_table>;
1129 status = "disabled";
1133 config_noc: interconnect@1500000 {
1134 compatible = "qcom,sm8250-config-noc";
1135 reg = <0 0x01500000 0 0xa580>;
1136 #interconnect-cells = <1>;
1137 qcom,bcm-voters = <&apps_bcm_voter>;
1140 system_noc: interconnect@1620000 {
1141 compatible = "qcom,sm8250-system-noc";
1142 reg = <0 0x01620000 0 0x1c200>;
1143 #interconnect-cells = <1>;
1144 qcom,bcm-voters = <&apps_bcm_voter>;
1147 mc_virt: interconnect@163d000 {
1148 compatible = "qcom,sm8250-mc-virt";
1149 reg = <0 0x0163d000 0 0x1000>;
1150 #interconnect-cells = <1>;
1151 qcom,bcm-voters = <&apps_bcm_voter>;
1154 aggre1_noc: interconnect@16e0000 {
1155 compatible = "qcom,sm8250-aggre1-noc";
1156 reg = <0 0x016e0000 0 0x1f180>;
1157 #interconnect-cells = <1>;
1158 qcom,bcm-voters = <&apps_bcm_voter>;
1161 aggre2_noc: interconnect@1700000 {
1162 compatible = "qcom,sm8250-aggre2-noc";
1163 reg = <0 0x01700000 0 0x33000>;
1164 #interconnect-cells = <1>;
1165 qcom,bcm-voters = <&apps_bcm_voter>;
1168 compute_noc: interconnect@1733000 {
1169 compatible = "qcom,sm8250-compute-noc";
1170 reg = <0 0x01733000 0 0xa180>;
1171 #interconnect-cells = <1>;
1172 qcom,bcm-voters = <&apps_bcm_voter>;
1175 mmss_noc: interconnect@1740000 {
1176 compatible = "qcom,sm8250-mmss-noc";
1177 reg = <0 0x01740000 0 0x1f080>;
1178 #interconnect-cells = <1>;
1179 qcom,bcm-voters = <&apps_bcm_voter>;
1182 ufs_mem_hc: ufshc@1d84000 {
1183 compatible = "qcom,sm8250-ufshc", "qcom,ufshc",
1185 reg = <0 0x01d84000 0 0x3000>;
1186 interrupts = <GIC_SPI 265 IRQ_TYPE_LEVEL_HIGH>;
1187 phys = <&ufs_mem_phy_lanes>;
1188 phy-names = "ufsphy";
1189 lanes-per-direction = <2>;
1191 resets = <&gcc GCC_UFS_PHY_BCR>;
1192 reset-names = "rst";
1194 power-domains = <&gcc UFS_PHY_GDSC>;
1196 iommus = <&apps_smmu 0x0e0 0>, <&apps_smmu 0x4e0 0>;
1204 "tx_lane0_sync_clk",
1205 "rx_lane0_sync_clk",
1206 "rx_lane1_sync_clk";
1208 <&gcc GCC_UFS_PHY_AXI_CLK>,
1209 <&gcc GCC_AGGRE_UFS_PHY_AXI_CLK>,
1210 <&gcc GCC_UFS_PHY_AHB_CLK>,
1211 <&gcc GCC_UFS_PHY_UNIPRO_CORE_CLK>,
1212 <&rpmhcc RPMH_CXO_CLK>,
1213 <&gcc GCC_UFS_PHY_TX_SYMBOL_0_CLK>,
1214 <&gcc GCC_UFS_PHY_RX_SYMBOL_0_CLK>,
1215 <&gcc GCC_UFS_PHY_RX_SYMBOL_1_CLK>;
1217 <37500000 300000000>,
1220 <37500000 300000000>,
1226 status = "disabled";
1229 ufs_mem_phy: phy@1d87000 {
1230 compatible = "qcom,sm8250-qmp-ufs-phy";
1231 reg = <0 0x01d87000 0 0x1c0>;
1232 #address-cells = <2>;
1235 clock-names = "ref",
1237 clocks = <&rpmhcc RPMH_CXO_CLK>,
1238 <&gcc GCC_UFS_PHY_PHY_AUX_CLK>;
1240 resets = <&ufs_mem_hc 0>;
1241 reset-names = "ufsphy";
1242 status = "disabled";
1244 ufs_mem_phy_lanes: lanes@1d87400 {
1245 reg = <0 0x01d87400 0 0x108>,
1246 <0 0x01d87600 0 0x1e0>,
1247 <0 0x01d87c00 0 0x1dc>,
1248 <0 0x01d87800 0 0x108>,
1249 <0 0x01d87a00 0 0x1e0>;
1254 ipa_virt: interconnect@1e00000 {
1255 compatible = "qcom,sm8250-ipa-virt";
1256 reg = <0 0x01e00000 0 0x1000>;
1257 #interconnect-cells = <1>;
1258 qcom,bcm-voters = <&apps_bcm_voter>;
1261 tcsr_mutex: hwlock@1f40000 {
1262 compatible = "qcom,tcsr-mutex";
1263 reg = <0x0 0x01f40000 0x0 0x40000>;
1264 #hwlock-cells = <1>;
1267 audiocc: clock-controller@3300000 {
1268 compatible = "qcom,sm8250-lpass-audiocc";
1269 reg = <0 0x03300000 0 0x30000>;
1271 clocks = <&q6afecc LPASS_HW_MACRO_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
1272 <&q6afecc LPASS_HW_DCODEC_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
1273 <&q6afecc LPASS_CLK_ID_TX_CORE_MCLK LPASS_CLK_ATTRIBUTE_COUPLE_NO>;
1274 clock-names = "core", "audio", "bus";
1277 aoncc: clock-controller@3380000 {
1278 compatible = "qcom,sm8250-lpass-aoncc";
1279 reg = <0 0x03380000 0 0x40000>;
1281 clocks = <&q6afecc LPASS_HW_MACRO_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
1282 <&q6afecc LPASS_HW_DCODEC_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
1283 <&q6afecc LPASS_CLK_ID_TX_CORE_NPL_MCLK LPASS_CLK_ATTRIBUTE_COUPLE_NO>;
1284 clock-names = "core", "audio", "bus";
1288 compatible = "qcom,adreno-650.2",
1290 #stream-id-cells = <16>;
1292 reg = <0 0x03d00000 0 0x40000>;
1293 reg-names = "kgsl_3d0_reg_memory";
1295 interrupts = <GIC_SPI 300 IRQ_TYPE_LEVEL_HIGH>;
1297 iommus = <&adreno_smmu 0 0x401>;
1299 operating-points-v2 = <&gpu_opp_table>;
1304 memory-region = <&gpu_mem>;
1307 /* note: downstream checks gpu binning for 670 Mhz */
1308 gpu_opp_table: opp-table {
1309 compatible = "operating-points-v2";
1312 opp-hz = /bits/ 64 <670000000>;
1313 opp-level = <RPMH_REGULATOR_LEVEL_NOM_L1>;
1317 opp-hz = /bits/ 64 <587000000>;
1318 opp-level = <RPMH_REGULATOR_LEVEL_NOM>;
1322 opp-hz = /bits/ 64 <525000000>;
1323 opp-level = <RPMH_REGULATOR_LEVEL_SVS_L2>;
1327 opp-hz = /bits/ 64 <490000000>;
1328 opp-level = <RPMH_REGULATOR_LEVEL_SVS_L1>;
1332 opp-hz = /bits/ 64 <441600000>;
1333 opp-level = <RPMH_REGULATOR_LEVEL_SVS_L0>;
1337 opp-hz = /bits/ 64 <400000000>;
1338 opp-level = <RPMH_REGULATOR_LEVEL_SVS>;
1342 opp-hz = /bits/ 64 <305000000>;
1343 opp-level = <RPMH_REGULATOR_LEVEL_LOW_SVS>;
1349 compatible="qcom,adreno-gmu-650.2", "qcom,adreno-gmu";
1351 reg = <0 0x03d6a000 0 0x30000>,
1352 <0 0x3de0000 0 0x10000>,
1353 <0 0xb290000 0 0x10000>,
1354 <0 0xb490000 0 0x10000>;
1355 reg-names = "gmu", "rscc", "gmu_pdc", "gmu_pdc_seq";
1357 interrupts = <GIC_SPI 304 IRQ_TYPE_LEVEL_HIGH>,
1358 <GIC_SPI 305 IRQ_TYPE_LEVEL_HIGH>;
1359 interrupt-names = "hfi", "gmu";
1361 clocks = <&gpucc GPU_CC_AHB_CLK>,
1362 <&gpucc GPU_CC_CX_GMU_CLK>,
1363 <&gpucc GPU_CC_CXO_CLK>,
1364 <&gcc GCC_DDRSS_GPU_AXI_CLK>,
1365 <&gcc GCC_GPU_MEMNOC_GFX_CLK>;
1366 clock-names = "ahb", "gmu", "cxo", "axi", "memnoc";
1368 power-domains = <&gpucc GPU_CX_GDSC>,
1369 <&gpucc GPU_GX_GDSC>;
1370 power-domain-names = "cx", "gx";
1372 iommus = <&adreno_smmu 5 0x400>;
1374 operating-points-v2 = <&gmu_opp_table>;
1376 gmu_opp_table: opp-table {
1377 compatible = "operating-points-v2";
1380 opp-hz = /bits/ 64 <200000000>;
1381 opp-level = <RPMH_REGULATOR_LEVEL_MIN_SVS>;
1386 gpucc: clock-controller@3d90000 {
1387 compatible = "qcom,sm8250-gpucc";
1388 reg = <0 0x03d90000 0 0x9000>;
1389 clocks = <&rpmhcc RPMH_CXO_CLK>,
1390 <&gcc GCC_GPU_GPLL0_CLK_SRC>,
1391 <&gcc GCC_GPU_GPLL0_DIV_CLK_SRC>;
1392 clock-names = "bi_tcxo",
1393 "gcc_gpu_gpll0_clk_src",
1394 "gcc_gpu_gpll0_div_clk_src";
1397 #power-domain-cells = <1>;
1400 adreno_smmu: iommu@3da0000 {
1401 compatible = "qcom,sm8250-smmu-500", "arm,mmu-500";
1402 reg = <0 0x03da0000 0 0x10000>;
1404 #global-interrupts = <2>;
1405 interrupts = <GIC_SPI 672 IRQ_TYPE_LEVEL_HIGH>,
1406 <GIC_SPI 673 IRQ_TYPE_LEVEL_HIGH>,
1407 <GIC_SPI 678 IRQ_TYPE_LEVEL_HIGH>,
1408 <GIC_SPI 679 IRQ_TYPE_LEVEL_HIGH>,
1409 <GIC_SPI 680 IRQ_TYPE_LEVEL_HIGH>,
1410 <GIC_SPI 681 IRQ_TYPE_LEVEL_HIGH>,
1411 <GIC_SPI 682 IRQ_TYPE_LEVEL_HIGH>,
1412 <GIC_SPI 683 IRQ_TYPE_LEVEL_HIGH>,
1413 <GIC_SPI 684 IRQ_TYPE_LEVEL_HIGH>,
1414 <GIC_SPI 685 IRQ_TYPE_LEVEL_HIGH>;
1415 clocks = <&gpucc GPU_CC_AHB_CLK>,
1416 <&gcc GCC_GPU_MEMNOC_GFX_CLK>,
1417 <&gcc GCC_GPU_SNOC_DVM_GFX_CLK>;
1418 clock-names = "ahb", "bus", "iface";
1420 power-domains = <&gpucc GPU_CX_GDSC>;
1423 slpi: remoteproc@5c00000 {
1424 compatible = "qcom,sm8250-slpi-pas";
1425 reg = <0 0x05c00000 0 0x4000>;
1427 interrupts-extended = <&pdc 9 IRQ_TYPE_LEVEL_HIGH>,
1428 <&smp2p_slpi_in 0 IRQ_TYPE_EDGE_RISING>,
1429 <&smp2p_slpi_in 1 IRQ_TYPE_EDGE_RISING>,
1430 <&smp2p_slpi_in 2 IRQ_TYPE_EDGE_RISING>,
1431 <&smp2p_slpi_in 3 IRQ_TYPE_EDGE_RISING>;
1432 interrupt-names = "wdog", "fatal", "ready",
1433 "handover", "stop-ack";
1435 clocks = <&rpmhcc RPMH_CXO_CLK>;
1438 power-domains = <&aoss_qmp AOSS_QMP_LS_SLPI>,
1439 <&rpmhpd SM8250_LCX>,
1440 <&rpmhpd SM8250_LMX>;
1441 power-domain-names = "load_state", "lcx", "lmx";
1443 memory-region = <&slpi_mem>;
1445 qcom,smem-states = <&smp2p_slpi_out 0>;
1446 qcom,smem-state-names = "stop";
1448 status = "disabled";
1451 interrupts-extended = <&ipcc IPCC_CLIENT_SLPI
1452 IPCC_MPROC_SIGNAL_GLINK_QMP
1453 IRQ_TYPE_EDGE_RISING>;
1454 mboxes = <&ipcc IPCC_CLIENT_SLPI
1455 IPCC_MPROC_SIGNAL_GLINK_QMP>;
1458 qcom,remote-pid = <3>;
1461 compatible = "qcom,fastrpc";
1462 qcom,glink-channels = "fastrpcglink-apps-dsp";
1464 #address-cells = <1>;
1468 compatible = "qcom,fastrpc-compute-cb";
1470 iommus = <&apps_smmu 0x0541 0x0>;
1474 compatible = "qcom,fastrpc-compute-cb";
1476 iommus = <&apps_smmu 0x0542 0x0>;
1480 compatible = "qcom,fastrpc-compute-cb";
1482 iommus = <&apps_smmu 0x0543 0x0>;
1483 /* note: shared-cb = <4> in downstream */
1489 cdsp: remoteproc@8300000 {
1490 compatible = "qcom,sm8250-cdsp-pas";
1491 reg = <0 0x08300000 0 0x10000>;
1493 interrupts-extended = <&intc GIC_SPI 578 IRQ_TYPE_LEVEL_HIGH>,
1494 <&smp2p_cdsp_in 0 IRQ_TYPE_EDGE_RISING>,
1495 <&smp2p_cdsp_in 1 IRQ_TYPE_EDGE_RISING>,
1496 <&smp2p_cdsp_in 2 IRQ_TYPE_EDGE_RISING>,
1497 <&smp2p_cdsp_in 3 IRQ_TYPE_EDGE_RISING>;
1498 interrupt-names = "wdog", "fatal", "ready",
1499 "handover", "stop-ack";
1501 clocks = <&rpmhcc RPMH_CXO_CLK>;
1504 power-domains = <&aoss_qmp AOSS_QMP_LS_CDSP>,
1505 <&rpmhpd SM8250_CX>;
1506 power-domain-names = "load_state", "cx";
1508 memory-region = <&cdsp_mem>;
1510 qcom,smem-states = <&smp2p_cdsp_out 0>;
1511 qcom,smem-state-names = "stop";
1513 status = "disabled";
1516 interrupts-extended = <&ipcc IPCC_CLIENT_CDSP
1517 IPCC_MPROC_SIGNAL_GLINK_QMP
1518 IRQ_TYPE_EDGE_RISING>;
1519 mboxes = <&ipcc IPCC_CLIENT_CDSP
1520 IPCC_MPROC_SIGNAL_GLINK_QMP>;
1523 qcom,remote-pid = <5>;
1526 compatible = "qcom,fastrpc";
1527 qcom,glink-channels = "fastrpcglink-apps-dsp";
1529 #address-cells = <1>;
1533 compatible = "qcom,fastrpc-compute-cb";
1535 iommus = <&apps_smmu 0x1001 0x0460>;
1539 compatible = "qcom,fastrpc-compute-cb";
1541 iommus = <&apps_smmu 0x1002 0x0460>;
1545 compatible = "qcom,fastrpc-compute-cb";
1547 iommus = <&apps_smmu 0x1003 0x0460>;
1551 compatible = "qcom,fastrpc-compute-cb";
1553 iommus = <&apps_smmu 0x1004 0x0460>;
1557 compatible = "qcom,fastrpc-compute-cb";
1559 iommus = <&apps_smmu 0x1005 0x0460>;
1563 compatible = "qcom,fastrpc-compute-cb";
1565 iommus = <&apps_smmu 0x1006 0x0460>;
1569 compatible = "qcom,fastrpc-compute-cb";
1571 iommus = <&apps_smmu 0x1007 0x0460>;
1575 compatible = "qcom,fastrpc-compute-cb";
1577 iommus = <&apps_smmu 0x1008 0x0460>;
1580 /* note: secure cb9 in downstream */
1585 usb_1_hsphy: phy@88e3000 {
1586 compatible = "qcom,sm8250-usb-hs-phy",
1587 "qcom,usb-snps-hs-7nm-phy";
1588 reg = <0 0x088e3000 0 0x400>;
1589 status = "disabled";
1592 clocks = <&rpmhcc RPMH_CXO_CLK>;
1593 clock-names = "ref";
1595 resets = <&gcc GCC_QUSB2PHY_PRIM_BCR>;
1598 usb_2_hsphy: phy@88e4000 {
1599 compatible = "qcom,sm8250-usb-hs-phy",
1600 "qcom,usb-snps-hs-7nm-phy";
1601 reg = <0 0x088e4000 0 0x400>;
1602 status = "disabled";
1605 clocks = <&rpmhcc RPMH_CXO_CLK>;
1606 clock-names = "ref";
1608 resets = <&gcc GCC_QUSB2PHY_SEC_BCR>;
1611 usb_1_qmpphy: phy@88e9000 {
1612 compatible = "qcom,sm8250-qmp-usb3-phy";
1613 reg = <0 0x088e9000 0 0x200>,
1614 <0 0x088e8000 0 0x20>;
1615 reg-names = "reg-base", "dp_com";
1616 status = "disabled";
1618 #address-cells = <2>;
1622 clocks = <&gcc GCC_USB3_PRIM_PHY_AUX_CLK>,
1623 <&rpmhcc RPMH_CXO_CLK>,
1624 <&gcc GCC_USB3_PRIM_PHY_COM_AUX_CLK>;
1625 clock-names = "aux", "ref_clk_src", "com_aux";
1627 resets = <&gcc GCC_USB3_DP_PHY_PRIM_BCR>,
1628 <&gcc GCC_USB3_PHY_PRIM_BCR>;
1629 reset-names = "phy", "common";
1631 usb_1_ssphy: lanes@88e9200 {
1632 reg = <0 0x088e9200 0 0x200>,
1633 <0 0x088e9400 0 0x200>,
1634 <0 0x088e9c00 0 0x400>,
1635 <0 0x088e9600 0 0x200>,
1636 <0 0x088e9800 0 0x200>,
1637 <0 0x088e9a00 0 0x100>;
1639 clocks = <&gcc GCC_USB3_PRIM_PHY_PIPE_CLK>;
1640 clock-names = "pipe0";
1641 clock-output-names = "usb3_phy_pipe_clk_src";
1645 usb_2_qmpphy: phy@88eb000 {
1646 compatible = "qcom,sm8250-qmp-usb3-uni-phy";
1647 reg = <0 0x088eb000 0 0x200>;
1648 status = "disabled";
1650 #address-cells = <2>;
1654 clocks = <&gcc GCC_USB3_SEC_PHY_AUX_CLK>,
1655 <&rpmhcc RPMH_CXO_CLK>,
1656 <&gcc GCC_USB3_SEC_CLKREF_EN>,
1657 <&gcc GCC_USB3_SEC_PHY_COM_AUX_CLK>;
1658 clock-names = "aux", "ref_clk_src", "ref", "com_aux";
1660 resets = <&gcc GCC_USB3PHY_PHY_SEC_BCR>,
1661 <&gcc GCC_USB3_PHY_SEC_BCR>;
1662 reset-names = "phy", "common";
1664 usb_2_ssphy: lane@88eb200 {
1665 reg = <0 0x088eb200 0 0x200>,
1666 <0 0x088eb400 0 0x200>,
1667 <0 0x088eb800 0 0x800>;
1669 clocks = <&gcc GCC_USB3_SEC_PHY_PIPE_CLK>;
1670 clock-names = "pipe0";
1671 clock-output-names = "usb3_uni_phy_pipe_clk_src";
1675 sdhc_2: sdhci@8804000 {
1676 compatible = "qcom,sm8250-sdhci", "qcom,sdhci-msm-v5";
1677 reg = <0 0x08804000 0 0x1000>;
1679 interrupts = <GIC_SPI 204 IRQ_TYPE_LEVEL_HIGH>,
1680 <GIC_SPI 222 IRQ_TYPE_LEVEL_HIGH>;
1681 interrupt-names = "hc_irq", "pwr_irq";
1683 clocks = <&gcc GCC_SDCC2_AHB_CLK>,
1684 <&gcc GCC_SDCC2_APPS_CLK>,
1686 clock-names = "iface", "core", "xo";
1687 iommus = <&apps_smmu 0x4a0 0x0>;
1688 qcom,dll-config = <0x0007642c>;
1689 qcom,ddr-config = <0x80040868>;
1690 power-domains = <&rpmhpd SM8250_CX>;
1691 operating-points-v2 = <&sdhc2_opp_table>;
1693 status = "disabled";
1695 sdhc2_opp_table: sdhc2-opp-table {
1696 compatible = "operating-points-v2";
1699 opp-hz = /bits/ 64 <19200000>;
1700 required-opps = <&rpmhpd_opp_min_svs>;
1704 opp-hz = /bits/ 64 <50000000>;
1705 required-opps = <&rpmhpd_opp_low_svs>;
1709 opp-hz = /bits/ 64 <100000000>;
1710 required-opps = <&rpmhpd_opp_svs>;
1714 opp-hz = /bits/ 64 <202000000>;
1715 required-opps = <&rpmhpd_opp_svs_l1>;
1720 dc_noc: interconnect@90c0000 {
1721 compatible = "qcom,sm8250-dc-noc";
1722 reg = <0 0x090c0000 0 0x4200>;
1723 #interconnect-cells = <1>;
1724 qcom,bcm-voters = <&apps_bcm_voter>;
1727 gem_noc: interconnect@9100000 {
1728 compatible = "qcom,sm8250-gem-noc";
1729 reg = <0 0x09100000 0 0xb4000>;
1730 #interconnect-cells = <1>;
1731 qcom,bcm-voters = <&apps_bcm_voter>;
1734 npu_noc: interconnect@9990000 {
1735 compatible = "qcom,sm8250-npu-noc";
1736 reg = <0 0x09990000 0 0x1600>;
1737 #interconnect-cells = <1>;
1738 qcom,bcm-voters = <&apps_bcm_voter>;
1741 usb_1: usb@a6f8800 {
1742 compatible = "qcom,sm8250-dwc3", "qcom,dwc3";
1743 reg = <0 0x0a6f8800 0 0x400>;
1744 status = "disabled";
1745 #address-cells = <2>;
1750 clocks = <&gcc GCC_CFG_NOC_USB3_PRIM_AXI_CLK>,
1751 <&gcc GCC_USB30_PRIM_MASTER_CLK>,
1752 <&gcc GCC_AGGRE_USB3_PRIM_AXI_CLK>,
1753 <&gcc GCC_USB30_PRIM_MOCK_UTMI_CLK>,
1754 <&gcc GCC_USB30_PRIM_SLEEP_CLK>,
1755 <&gcc GCC_USB3_SEC_CLKREF_EN>;
1756 clock-names = "cfg_noc", "core", "iface", "mock_utmi",
1759 assigned-clocks = <&gcc GCC_USB30_PRIM_MOCK_UTMI_CLK>,
1760 <&gcc GCC_USB30_PRIM_MASTER_CLK>;
1761 assigned-clock-rates = <19200000>, <200000000>;
1763 interrupts-extended = <&intc GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH>,
1764 <&pdc 14 IRQ_TYPE_EDGE_BOTH>,
1765 <&pdc 15 IRQ_TYPE_EDGE_BOTH>,
1766 <&pdc 17 IRQ_TYPE_LEVEL_HIGH>;
1767 interrupt-names = "hs_phy_irq", "dp_hs_phy_irq",
1768 "dm_hs_phy_irq", "ss_phy_irq";
1770 power-domains = <&gcc USB30_PRIM_GDSC>;
1772 resets = <&gcc GCC_USB30_PRIM_BCR>;
1774 usb_1_dwc3: dwc3@a600000 {
1775 compatible = "snps,dwc3";
1776 reg = <0 0x0a600000 0 0xcd00>;
1777 interrupts = <GIC_SPI 133 IRQ_TYPE_LEVEL_HIGH>;
1778 iommus = <&apps_smmu 0x0 0x0>;
1779 snps,dis_u2_susphy_quirk;
1780 snps,dis_enblslpm_quirk;
1781 phys = <&usb_1_hsphy>, <&usb_1_ssphy>;
1782 phy-names = "usb2-phy", "usb3-phy";
1786 system-cache-controller@9200000 {
1787 compatible = "qcom,sm8250-llcc";
1788 reg = <0 0x09200000 0 0x1d0000>, <0 0x09600000 0 0x50000>;
1789 reg-names = "llcc_base", "llcc_broadcast_base";
1792 usb_2: usb@a8f8800 {
1793 compatible = "qcom,sm8250-dwc3", "qcom,dwc3";
1794 reg = <0 0x0a8f8800 0 0x400>;
1795 status = "disabled";
1796 #address-cells = <2>;
1801 clocks = <&gcc GCC_CFG_NOC_USB3_SEC_AXI_CLK>,
1802 <&gcc GCC_USB30_SEC_MASTER_CLK>,
1803 <&gcc GCC_AGGRE_USB3_SEC_AXI_CLK>,
1804 <&gcc GCC_USB30_SEC_MOCK_UTMI_CLK>,
1805 <&gcc GCC_USB30_SEC_SLEEP_CLK>,
1806 <&gcc GCC_USB3_SEC_CLKREF_EN>;
1807 clock-names = "cfg_noc", "core", "iface", "mock_utmi",
1810 assigned-clocks = <&gcc GCC_USB30_SEC_MOCK_UTMI_CLK>,
1811 <&gcc GCC_USB30_SEC_MASTER_CLK>;
1812 assigned-clock-rates = <19200000>, <200000000>;
1814 interrupts-extended = <&intc GIC_SPI 136 IRQ_TYPE_LEVEL_HIGH>,
1815 <&pdc 12 IRQ_TYPE_EDGE_BOTH>,
1816 <&pdc 13 IRQ_TYPE_EDGE_BOTH>,
1817 <&pdc 16 IRQ_TYPE_LEVEL_HIGH>;
1818 interrupt-names = "hs_phy_irq", "dp_hs_phy_irq",
1819 "dm_hs_phy_irq", "ss_phy_irq";
1821 power-domains = <&gcc USB30_SEC_GDSC>;
1823 resets = <&gcc GCC_USB30_SEC_BCR>;
1825 usb_2_dwc3: dwc3@a800000 {
1826 compatible = "snps,dwc3";
1827 reg = <0 0x0a800000 0 0xcd00>;
1828 interrupts = <GIC_SPI 138 IRQ_TYPE_LEVEL_HIGH>;
1829 iommus = <&apps_smmu 0x20 0>;
1830 snps,dis_u2_susphy_quirk;
1831 snps,dis_enblslpm_quirk;
1832 phys = <&usb_2_hsphy>, <&usb_2_ssphy>;
1833 phy-names = "usb2-phy", "usb3-phy";
1837 mdss: mdss@ae00000 {
1838 compatible = "qcom,sdm845-mdss";
1839 reg = <0 0x0ae00000 0 0x1000>;
1842 interconnects = <&gem_noc MASTER_AMPSS_M0 &config_noc SLAVE_DISPLAY_CFG>,
1843 <&mmss_noc MASTER_MDP_PORT0 &mc_virt SLAVE_EBI_CH0>,
1844 <&mmss_noc MASTER_MDP_PORT1 &mc_virt SLAVE_EBI_CH0>;
1845 interconnect-names = "notused", "mdp0-mem", "mdp1-mem";
1847 power-domains = <&dispcc MDSS_GDSC>;
1849 clocks = <&dispcc DISP_CC_MDSS_AHB_CLK>,
1850 <&gcc GCC_DISP_HF_AXI_CLK>,
1851 <&gcc GCC_DISP_SF_AXI_CLK>,
1852 <&dispcc DISP_CC_MDSS_MDP_CLK>;
1853 clock-names = "iface", "bus", "nrt_bus", "core";
1855 assigned-clocks = <&dispcc DISP_CC_MDSS_MDP_CLK>;
1856 assigned-clock-rates = <460000000>;
1858 interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>;
1859 interrupt-controller;
1860 #interrupt-cells = <1>;
1862 iommus = <&apps_smmu 0x820 0x402>;
1864 status = "disabled";
1866 #address-cells = <2>;
1870 mdss_mdp: mdp@ae01000 {
1871 compatible = "qcom,sdm845-dpu";
1872 reg = <0 0x0ae01000 0 0x8f000>,
1873 <0 0x0aeb0000 0 0x2008>;
1874 reg-names = "mdp", "vbif";
1876 clocks = <&dispcc DISP_CC_MDSS_AHB_CLK>,
1877 <&gcc GCC_DISP_HF_AXI_CLK>,
1878 <&dispcc DISP_CC_MDSS_MDP_CLK>,
1879 <&dispcc DISP_CC_MDSS_VSYNC_CLK>;
1880 clock-names = "iface", "bus", "core", "vsync";
1882 assigned-clocks = <&dispcc DISP_CC_MDSS_MDP_CLK>,
1883 <&dispcc DISP_CC_MDSS_VSYNC_CLK>;
1884 assigned-clock-rates = <460000000>,
1887 operating-points-v2 = <&mdp_opp_table>;
1888 power-domains = <&rpmhpd SM8250_MMCX>;
1890 interrupt-parent = <&mdss>;
1891 interrupts = <0 IRQ_TYPE_LEVEL_HIGH>;
1893 status = "disabled";
1896 #address-cells = <1>;
1901 dpu_intf1_out: endpoint {
1902 remote-endpoint = <&dsi0_in>;
1908 dpu_intf2_out: endpoint {
1909 remote-endpoint = <&dsi1_in>;
1914 mdp_opp_table: mdp-opp-table {
1915 compatible = "operating-points-v2";
1918 opp-hz = /bits/ 64 <200000000>;
1919 required-opps = <&rpmhpd_opp_low_svs>;
1923 opp-hz = /bits/ 64 <300000000>;
1924 required-opps = <&rpmhpd_opp_svs>;
1928 opp-hz = /bits/ 64 <345000000>;
1929 required-opps = <&rpmhpd_opp_svs_l1>;
1933 opp-hz = /bits/ 64 <460000000>;
1934 required-opps = <&rpmhpd_opp_nom>;
1940 compatible = "qcom,mdss-dsi-ctrl";
1941 reg = <0 0x0ae94000 0 0x400>;
1942 reg-names = "dsi_ctrl";
1944 interrupt-parent = <&mdss>;
1945 interrupts = <4 IRQ_TYPE_LEVEL_HIGH>;
1947 clocks = <&dispcc DISP_CC_MDSS_BYTE0_CLK>,
1948 <&dispcc DISP_CC_MDSS_BYTE0_INTF_CLK>,
1949 <&dispcc DISP_CC_MDSS_PCLK0_CLK>,
1950 <&dispcc DISP_CC_MDSS_ESC0_CLK>,
1951 <&dispcc DISP_CC_MDSS_AHB_CLK>,
1952 <&gcc GCC_DISP_HF_AXI_CLK>;
1953 clock-names = "byte",
1960 operating-points-v2 = <&dsi_opp_table>;
1961 power-domains = <&rpmhpd SM8250_MMCX>;
1966 status = "disabled";
1969 #address-cells = <1>;
1975 remote-endpoint = <&dpu_intf1_out>;
1981 dsi0_out: endpoint {
1987 dsi0_phy: dsi-phy@ae94400 {
1988 compatible = "qcom,dsi-phy-7nm";
1989 reg = <0 0x0ae94400 0 0x200>,
1990 <0 0x0ae94600 0 0x280>,
1991 <0 0x0ae94900 0 0x260>;
1992 reg-names = "dsi_phy",
1999 clocks = <&dispcc DISP_CC_MDSS_AHB_CLK>,
2000 <&rpmhcc RPMH_CXO_CLK>;
2001 clock-names = "iface", "ref";
2003 status = "disabled";
2007 compatible = "qcom,mdss-dsi-ctrl";
2008 reg = <0 0x0ae96000 0 0x400>;
2009 reg-names = "dsi_ctrl";
2011 interrupt-parent = <&mdss>;
2012 interrupts = <5 IRQ_TYPE_LEVEL_HIGH>;
2014 clocks = <&dispcc DISP_CC_MDSS_BYTE1_CLK>,
2015 <&dispcc DISP_CC_MDSS_BYTE1_INTF_CLK>,
2016 <&dispcc DISP_CC_MDSS_PCLK1_CLK>,
2017 <&dispcc DISP_CC_MDSS_ESC1_CLK>,
2018 <&dispcc DISP_CC_MDSS_AHB_CLK>,
2019 <&gcc GCC_DISP_HF_AXI_CLK>;
2020 clock-names = "byte",
2027 operating-points-v2 = <&dsi_opp_table>;
2028 power-domains = <&rpmhpd SM8250_MMCX>;
2033 status = "disabled";
2036 #address-cells = <1>;
2042 remote-endpoint = <&dpu_intf2_out>;
2048 dsi1_out: endpoint {
2054 dsi1_phy: dsi-phy@ae96400 {
2055 compatible = "qcom,dsi-phy-7nm";
2056 reg = <0 0x0ae96400 0 0x200>,
2057 <0 0x0ae96600 0 0x280>,
2058 <0 0x0ae96900 0 0x260>;
2059 reg-names = "dsi_phy",
2066 clocks = <&dispcc DISP_CC_MDSS_AHB_CLK>,
2067 <&rpmhcc RPMH_CXO_CLK>;
2068 clock-names = "iface", "ref";
2070 status = "disabled";
2072 dsi_opp_table: dsi-opp-table {
2073 compatible = "operating-points-v2";
2076 opp-hz = /bits/ 64 <187500000>;
2077 required-opps = <&rpmhpd_opp_low_svs>;
2081 opp-hz = /bits/ 64 <300000000>;
2082 required-opps = <&rpmhpd_opp_svs>;
2086 opp-hz = /bits/ 64 <358000000>;
2087 required-opps = <&rpmhpd_opp_svs_l1>;
2093 dispcc: clock-controller@af00000 {
2094 compatible = "qcom,sm8250-dispcc";
2095 reg = <0 0x0af00000 0 0x20000>;
2096 mmcx-supply = <&mmcx_reg>;
2097 clocks = <&rpmhcc RPMH_CXO_CLK>,
2111 clock-names = "bi_tcxo",
2112 "dsi0_phy_pll_out_byteclk",
2113 "dsi0_phy_pll_out_dsiclk",
2114 "dsi1_phy_pll_out_byteclk",
2115 "dsi1_phy_pll_out_dsiclk",
2116 "dp_link_clk_divsel_ten",
2117 "dp_vco_divided_clk_src_mux",
2118 "dptx1_phy_pll_link_clk",
2119 "dptx1_phy_pll_vco_div_clk",
2120 "dptx2_phy_pll_link_clk",
2121 "dptx2_phy_pll_vco_div_clk",
2122 "edp_phy_pll_link_clk",
2123 "edp_phy_pll_vco_div_clk",
2127 #power-domain-cells = <1>;
2130 pdc: interrupt-controller@b220000 {
2131 compatible = "qcom,sm8250-pdc", "qcom,pdc";
2132 reg = <0 0x0b220000 0 0x30000>, <0 0x17c000f0 0 0x60>;
2133 qcom,pdc-ranges = <0 480 94>, <94 609 31>,
2134 <125 63 1>, <126 716 12>;
2135 #interrupt-cells = <2>;
2136 interrupt-parent = <&intc>;
2137 interrupt-controller;
2140 tsens0: thermal-sensor@c263000 {
2141 compatible = "qcom,sm8250-tsens", "qcom,tsens-v2";
2142 reg = <0 0x0c263000 0 0x1ff>, /* TM */
2143 <0 0x0c222000 0 0x1ff>; /* SROT */
2144 #qcom,sensors = <16>;
2145 interrupts = <GIC_SPI 506 IRQ_TYPE_LEVEL_HIGH>,
2146 <GIC_SPI 508 IRQ_TYPE_LEVEL_HIGH>;
2147 interrupt-names = "uplow", "critical";
2148 #thermal-sensor-cells = <1>;
2151 tsens1: thermal-sensor@c265000 {
2152 compatible = "qcom,sm8250-tsens", "qcom,tsens-v2";
2153 reg = <0 0x0c265000 0 0x1ff>, /* TM */
2154 <0 0x0c223000 0 0x1ff>; /* SROT */
2155 #qcom,sensors = <9>;
2156 interrupts = <GIC_SPI 507 IRQ_TYPE_LEVEL_HIGH>,
2157 <GIC_SPI 509 IRQ_TYPE_LEVEL_HIGH>;
2158 interrupt-names = "uplow", "critical";
2159 #thermal-sensor-cells = <1>;
2162 aoss_qmp: qmp@c300000 {
2163 compatible = "qcom,sm8250-aoss-qmp";
2164 reg = <0 0x0c300000 0 0x100000>;
2165 interrupts-extended = <&ipcc IPCC_CLIENT_AOP
2166 IPCC_MPROC_SIGNAL_GLINK_QMP
2167 IRQ_TYPE_EDGE_RISING>;
2168 mboxes = <&ipcc IPCC_CLIENT_AOP
2169 IPCC_MPROC_SIGNAL_GLINK_QMP>;
2172 #power-domain-cells = <1>;
2175 spmi_bus: spmi@c440000 {
2176 compatible = "qcom,spmi-pmic-arb";
2177 reg = <0x0 0x0c440000 0x0 0x0001100>,
2178 <0x0 0x0c600000 0x0 0x2000000>,
2179 <0x0 0x0e600000 0x0 0x0100000>,
2180 <0x0 0x0e700000 0x0 0x00a0000>,
2181 <0x0 0x0c40a000 0x0 0x0026000>;
2182 reg-names = "core", "chnls", "obsrvr", "intr", "cnfg";
2183 interrupt-names = "periph_irq";
2184 interrupts-extended = <&pdc 1 IRQ_TYPE_LEVEL_HIGH>;
2187 #address-cells = <2>;
2189 interrupt-controller;
2190 #interrupt-cells = <4>;
2193 tlmm: pinctrl@f100000 {
2194 compatible = "qcom,sm8250-pinctrl";
2195 reg = <0 0x0f100000 0 0x300000>,
2196 <0 0x0f500000 0 0x300000>,
2197 <0 0x0f900000 0 0x300000>;
2198 reg-names = "west", "south", "north";
2199 interrupts = <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>;
2202 interrupt-controller;
2203 #interrupt-cells = <2>;
2204 gpio-ranges = <&tlmm 0 0 180>;
2205 wakeup-parent = <&pdc>;
2207 qup_i2c0_default: qup-i2c0-default {
2209 pins = "gpio28", "gpio29";
2214 pins = "gpio28", "gpio29";
2215 drive-strength = <2>;
2220 qup_i2c1_default: qup-i2c1-default {
2222 pins = "gpio4", "gpio5";
2227 pins = "gpio4", "gpio5";
2228 drive-strength = <2>;
2233 qup_i2c2_default: qup-i2c2-default {
2235 pins = "gpio115", "gpio116";
2240 pins = "gpio115", "gpio116";
2241 drive-strength = <2>;
2246 qup_i2c3_default: qup-i2c3-default {
2248 pins = "gpio119", "gpio120";
2253 pins = "gpio119", "gpio120";
2254 drive-strength = <2>;
2259 qup_i2c4_default: qup-i2c4-default {
2261 pins = "gpio8", "gpio9";
2266 pins = "gpio8", "gpio9";
2267 drive-strength = <2>;
2272 qup_i2c5_default: qup-i2c5-default {
2274 pins = "gpio12", "gpio13";
2279 pins = "gpio12", "gpio13";
2280 drive-strength = <2>;
2285 qup_i2c6_default: qup-i2c6-default {
2287 pins = "gpio16", "gpio17";
2292 pins = "gpio16", "gpio17";
2293 drive-strength = <2>;
2298 qup_i2c7_default: qup-i2c7-default {
2300 pins = "gpio20", "gpio21";
2305 pins = "gpio20", "gpio21";
2306 drive-strength = <2>;
2311 qup_i2c8_default: qup-i2c8-default {
2313 pins = "gpio24", "gpio25";
2318 pins = "gpio24", "gpio25";
2319 drive-strength = <2>;
2324 qup_i2c9_default: qup-i2c9-default {
2326 pins = "gpio125", "gpio126";
2331 pins = "gpio125", "gpio126";
2332 drive-strength = <2>;
2337 qup_i2c10_default: qup-i2c10-default {
2339 pins = "gpio129", "gpio130";
2344 pins = "gpio129", "gpio130";
2345 drive-strength = <2>;
2350 qup_i2c11_default: qup-i2c11-default {
2352 pins = "gpio60", "gpio61";
2357 pins = "gpio60", "gpio61";
2358 drive-strength = <2>;
2363 qup_i2c12_default: qup-i2c12-default {
2365 pins = "gpio32", "gpio33";
2370 pins = "gpio32", "gpio33";
2371 drive-strength = <2>;
2376 qup_i2c13_default: qup-i2c13-default {
2378 pins = "gpio36", "gpio37";
2383 pins = "gpio36", "gpio37";
2384 drive-strength = <2>;
2389 qup_i2c14_default: qup-i2c14-default {
2391 pins = "gpio40", "gpio41";
2396 pins = "gpio40", "gpio41";
2397 drive-strength = <2>;
2402 qup_i2c15_default: qup-i2c15-default {
2404 pins = "gpio44", "gpio45";
2409 pins = "gpio44", "gpio45";
2410 drive-strength = <2>;
2415 qup_i2c16_default: qup-i2c16-default {
2417 pins = "gpio48", "gpio49";
2422 pins = "gpio48", "gpio49";
2423 drive-strength = <2>;
2428 qup_i2c17_default: qup-i2c17-default {
2430 pins = "gpio52", "gpio53";
2435 pins = "gpio52", "gpio53";
2436 drive-strength = <2>;
2441 qup_i2c18_default: qup-i2c18-default {
2443 pins = "gpio56", "gpio57";
2448 pins = "gpio56", "gpio57";
2449 drive-strength = <2>;
2454 qup_i2c19_default: qup-i2c19-default {
2456 pins = "gpio0", "gpio1";
2461 pins = "gpio0", "gpio1";
2462 drive-strength = <2>;
2467 qup_spi0_default: qup-spi0-default {
2469 pins = "gpio28", "gpio29",
2475 pins = "gpio28", "gpio29",
2477 drive-strength = <6>;
2482 qup_spi1_default: qup-spi1-default {
2484 pins = "gpio4", "gpio5",
2490 pins = "gpio4", "gpio5",
2492 drive-strength = <6>;
2497 qup_spi2_default: qup-spi2-default {
2499 pins = "gpio115", "gpio116",
2500 "gpio117", "gpio118";
2505 pins = "gpio115", "gpio116",
2506 "gpio117", "gpio118";
2507 drive-strength = <6>;
2512 qup_spi3_default: qup-spi3-default {
2514 pins = "gpio119", "gpio120",
2515 "gpio121", "gpio122";
2520 pins = "gpio119", "gpio120",
2521 "gpio121", "gpio122";
2522 drive-strength = <6>;
2527 qup_spi4_default: qup-spi4-default {
2529 pins = "gpio8", "gpio9",
2535 pins = "gpio8", "gpio9",
2537 drive-strength = <6>;
2542 qup_spi5_default: qup-spi5-default {
2544 pins = "gpio12", "gpio13",
2550 pins = "gpio12", "gpio13",
2552 drive-strength = <6>;
2557 qup_spi6_default: qup-spi6-default {
2559 pins = "gpio16", "gpio17",
2565 pins = "gpio16", "gpio17",
2567 drive-strength = <6>;
2572 qup_spi7_default: qup-spi7-default {
2574 pins = "gpio20", "gpio21",
2580 pins = "gpio20", "gpio21",
2582 drive-strength = <6>;
2587 qup_spi8_default: qup-spi8-default {
2589 pins = "gpio24", "gpio25",
2595 pins = "gpio24", "gpio25",
2597 drive-strength = <6>;
2602 qup_spi9_default: qup-spi9-default {
2604 pins = "gpio125", "gpio126",
2605 "gpio127", "gpio128";
2610 pins = "gpio125", "gpio126",
2611 "gpio127", "gpio128";
2612 drive-strength = <6>;
2617 qup_spi10_default: qup-spi10-default {
2619 pins = "gpio129", "gpio130",
2620 "gpio131", "gpio132";
2625 pins = "gpio129", "gpio130",
2626 "gpio131", "gpio132";
2627 drive-strength = <6>;
2632 qup_spi11_default: qup-spi11-default {
2634 pins = "gpio60", "gpio61",
2640 pins = "gpio60", "gpio61",
2642 drive-strength = <6>;
2647 qup_spi12_default: qup-spi12-default {
2649 pins = "gpio32", "gpio33",
2655 pins = "gpio32", "gpio33",
2657 drive-strength = <6>;
2662 qup_spi13_default: qup-spi13-default {
2664 pins = "gpio36", "gpio37",
2670 pins = "gpio36", "gpio37",
2672 drive-strength = <6>;
2677 qup_spi14_default: qup-spi14-default {
2679 pins = "gpio40", "gpio41",
2685 pins = "gpio40", "gpio41",
2687 drive-strength = <6>;
2692 qup_spi15_default: qup-spi15-default {
2694 pins = "gpio44", "gpio45",
2700 pins = "gpio44", "gpio45",
2702 drive-strength = <6>;
2707 qup_spi16_default: qup-spi16-default {
2709 pins = "gpio48", "gpio49",
2715 pins = "gpio48", "gpio49",
2717 drive-strength = <6>;
2722 qup_spi17_default: qup-spi17-default {
2724 pins = "gpio52", "gpio53",
2730 pins = "gpio52", "gpio53",
2732 drive-strength = <6>;
2737 qup_spi18_default: qup-spi18-default {
2739 pins = "gpio56", "gpio57",
2745 pins = "gpio56", "gpio57",
2747 drive-strength = <6>;
2752 qup_spi19_default: qup-spi19-default {
2754 pins = "gpio0", "gpio1",
2760 pins = "gpio0", "gpio1",
2762 drive-strength = <6>;
2767 qup_uart2_default: qup-uart2-default {
2769 pins = "gpio117", "gpio118";
2774 qup_uart6_default: qup-uart6-default {
2776 pins = "gpio16", "gpio17",
2782 qup_uart12_default: qup-uart12-default {
2784 pins = "gpio34", "gpio35";
2789 qup_uart17_default: qup-uart17-default {
2791 pins = "gpio52", "gpio53",
2797 qup_uart18_default: qup-uart18-default {
2799 pins = "gpio58", "gpio59";
2805 apps_smmu: iommu@15000000 {
2806 compatible = "qcom,sm8250-smmu-500", "arm,mmu-500";
2807 reg = <0 0x15000000 0 0x100000>;
2809 #global-interrupts = <2>;
2810 interrupts = <GIC_SPI 64 IRQ_TYPE_LEVEL_HIGH>,
2811 <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>,
2812 <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>,
2813 <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>,
2814 <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>,
2815 <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>,
2816 <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>,
2817 <GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH>,
2818 <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>,
2819 <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>,
2820 <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>,
2821 <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>,
2822 <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>,
2823 <GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>,
2824 <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>,
2825 <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>,
2826 <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>,
2827 <GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>,
2828 <GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>,
2829 <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>,
2830 <GIC_SPI 115 IRQ_TYPE_LEVEL_HIGH>,
2831 <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>,
2832 <GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH>,
2833 <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>,
2834 <GIC_SPI 181 IRQ_TYPE_LEVEL_HIGH>,
2835 <GIC_SPI 182 IRQ_TYPE_LEVEL_HIGH>,
2836 <GIC_SPI 183 IRQ_TYPE_LEVEL_HIGH>,
2837 <GIC_SPI 184 IRQ_TYPE_LEVEL_HIGH>,
2838 <GIC_SPI 185 IRQ_TYPE_LEVEL_HIGH>,
2839 <GIC_SPI 186 IRQ_TYPE_LEVEL_HIGH>,
2840 <GIC_SPI 187 IRQ_TYPE_LEVEL_HIGH>,
2841 <GIC_SPI 188 IRQ_TYPE_LEVEL_HIGH>,
2842 <GIC_SPI 189 IRQ_TYPE_LEVEL_HIGH>,
2843 <GIC_SPI 190 IRQ_TYPE_LEVEL_HIGH>,
2844 <GIC_SPI 191 IRQ_TYPE_LEVEL_HIGH>,
2845 <GIC_SPI 192 IRQ_TYPE_LEVEL_HIGH>,
2846 <GIC_SPI 315 IRQ_TYPE_LEVEL_HIGH>,
2847 <GIC_SPI 316 IRQ_TYPE_LEVEL_HIGH>,
2848 <GIC_SPI 317 IRQ_TYPE_LEVEL_HIGH>,
2849 <GIC_SPI 318 IRQ_TYPE_LEVEL_HIGH>,
2850 <GIC_SPI 319 IRQ_TYPE_LEVEL_HIGH>,
2851 <GIC_SPI 320 IRQ_TYPE_LEVEL_HIGH>,
2852 <GIC_SPI 321 IRQ_TYPE_LEVEL_HIGH>,
2853 <GIC_SPI 322 IRQ_TYPE_LEVEL_HIGH>,
2854 <GIC_SPI 323 IRQ_TYPE_LEVEL_HIGH>,
2855 <GIC_SPI 324 IRQ_TYPE_LEVEL_HIGH>,
2856 <GIC_SPI 325 IRQ_TYPE_LEVEL_HIGH>,
2857 <GIC_SPI 326 IRQ_TYPE_LEVEL_HIGH>,
2858 <GIC_SPI 327 IRQ_TYPE_LEVEL_HIGH>,
2859 <GIC_SPI 328 IRQ_TYPE_LEVEL_HIGH>,
2860 <GIC_SPI 329 IRQ_TYPE_LEVEL_HIGH>,
2861 <GIC_SPI 330 IRQ_TYPE_LEVEL_HIGH>,
2862 <GIC_SPI 331 IRQ_TYPE_LEVEL_HIGH>,
2863 <GIC_SPI 332 IRQ_TYPE_LEVEL_HIGH>,
2864 <GIC_SPI 333 IRQ_TYPE_LEVEL_HIGH>,
2865 <GIC_SPI 334 IRQ_TYPE_LEVEL_HIGH>,
2866 <GIC_SPI 335 IRQ_TYPE_LEVEL_HIGH>,
2867 <GIC_SPI 336 IRQ_TYPE_LEVEL_HIGH>,
2868 <GIC_SPI 337 IRQ_TYPE_LEVEL_HIGH>,
2869 <GIC_SPI 338 IRQ_TYPE_LEVEL_HIGH>,
2870 <GIC_SPI 339 IRQ_TYPE_LEVEL_HIGH>,
2871 <GIC_SPI 340 IRQ_TYPE_LEVEL_HIGH>,
2872 <GIC_SPI 341 IRQ_TYPE_LEVEL_HIGH>,
2873 <GIC_SPI 342 IRQ_TYPE_LEVEL_HIGH>,
2874 <GIC_SPI 343 IRQ_TYPE_LEVEL_HIGH>,
2875 <GIC_SPI 344 IRQ_TYPE_LEVEL_HIGH>,
2876 <GIC_SPI 345 IRQ_TYPE_LEVEL_HIGH>,
2877 <GIC_SPI 395 IRQ_TYPE_LEVEL_HIGH>,
2878 <GIC_SPI 396 IRQ_TYPE_LEVEL_HIGH>,
2879 <GIC_SPI 397 IRQ_TYPE_LEVEL_HIGH>,
2880 <GIC_SPI 398 IRQ_TYPE_LEVEL_HIGH>,
2881 <GIC_SPI 399 IRQ_TYPE_LEVEL_HIGH>,
2882 <GIC_SPI 400 IRQ_TYPE_LEVEL_HIGH>,
2883 <GIC_SPI 401 IRQ_TYPE_LEVEL_HIGH>,
2884 <GIC_SPI 402 IRQ_TYPE_LEVEL_HIGH>,
2885 <GIC_SPI 403 IRQ_TYPE_LEVEL_HIGH>,
2886 <GIC_SPI 404 IRQ_TYPE_LEVEL_HIGH>,
2887 <GIC_SPI 405 IRQ_TYPE_LEVEL_HIGH>,
2888 <GIC_SPI 406 IRQ_TYPE_LEVEL_HIGH>,
2889 <GIC_SPI 407 IRQ_TYPE_LEVEL_HIGH>,
2890 <GIC_SPI 408 IRQ_TYPE_LEVEL_HIGH>,
2891 <GIC_SPI 409 IRQ_TYPE_LEVEL_HIGH>,
2892 <GIC_SPI 412 IRQ_TYPE_LEVEL_HIGH>,
2893 <GIC_SPI 418 IRQ_TYPE_LEVEL_HIGH>,
2894 <GIC_SPI 419 IRQ_TYPE_LEVEL_HIGH>,
2895 <GIC_SPI 421 IRQ_TYPE_LEVEL_HIGH>,
2896 <GIC_SPI 423 IRQ_TYPE_LEVEL_HIGH>,
2897 <GIC_SPI 424 IRQ_TYPE_LEVEL_HIGH>,
2898 <GIC_SPI 425 IRQ_TYPE_LEVEL_HIGH>,
2899 <GIC_SPI 690 IRQ_TYPE_LEVEL_HIGH>,
2900 <GIC_SPI 691 IRQ_TYPE_LEVEL_HIGH>,
2901 <GIC_SPI 692 IRQ_TYPE_LEVEL_HIGH>,
2902 <GIC_SPI 693 IRQ_TYPE_LEVEL_HIGH>,
2903 <GIC_SPI 694 IRQ_TYPE_LEVEL_HIGH>,
2904 <GIC_SPI 695 IRQ_TYPE_LEVEL_HIGH>,
2905 <GIC_SPI 696 IRQ_TYPE_LEVEL_HIGH>,
2906 <GIC_SPI 697 IRQ_TYPE_LEVEL_HIGH>,
2907 <GIC_SPI 707 IRQ_TYPE_LEVEL_HIGH>;
2910 adsp: remoteproc@17300000 {
2911 compatible = "qcom,sm8250-adsp-pas";
2912 reg = <0 0x17300000 0 0x100>;
2914 interrupts-extended = <&pdc 6 IRQ_TYPE_LEVEL_HIGH>,
2915 <&smp2p_adsp_in 0 IRQ_TYPE_EDGE_RISING>,
2916 <&smp2p_adsp_in 1 IRQ_TYPE_EDGE_RISING>,
2917 <&smp2p_adsp_in 2 IRQ_TYPE_EDGE_RISING>,
2918 <&smp2p_adsp_in 3 IRQ_TYPE_EDGE_RISING>;
2919 interrupt-names = "wdog", "fatal", "ready",
2920 "handover", "stop-ack";
2922 clocks = <&rpmhcc RPMH_CXO_CLK>;
2925 power-domains = <&aoss_qmp AOSS_QMP_LS_LPASS>,
2926 <&rpmhpd SM8250_LCX>,
2927 <&rpmhpd SM8250_LMX>;
2928 power-domain-names = "load_state", "lcx", "lmx";
2930 memory-region = <&adsp_mem>;
2932 qcom,smem-states = <&smp2p_adsp_out 0>;
2933 qcom,smem-state-names = "stop";
2935 status = "disabled";
2938 interrupts-extended = <&ipcc IPCC_CLIENT_LPASS
2939 IPCC_MPROC_SIGNAL_GLINK_QMP
2940 IRQ_TYPE_EDGE_RISING>;
2941 mboxes = <&ipcc IPCC_CLIENT_LPASS
2942 IPCC_MPROC_SIGNAL_GLINK_QMP>;
2945 qcom,remote-pid = <2>;
2948 compatible = "qcom,apr-v2";
2949 qcom,glink-channels = "apr_audio_svc";
2950 qcom,apr-domain = <APR_DOMAIN_ADSP>;
2951 #address-cells = <1>;
2955 reg = <APR_SVC_ADSP_CORE>;
2956 compatible = "qcom,q6core";
2957 qcom,protection-domain = "avs/audio", "msm/adsp/audio_pd";
2960 q6afe: apr-service@4 {
2961 compatible = "qcom,q6afe";
2962 reg = <APR_SVC_AFE>;
2963 qcom,protection-domain = "avs/audio", "msm/adsp/audio_pd";
2965 compatible = "qcom,q6afe-dais";
2966 #address-cells = <1>;
2968 #sound-dai-cells = <1>;
2972 compatible = "qcom,q6afe-clocks";
2977 q6asm: apr-service@7 {
2978 compatible = "qcom,q6asm";
2979 reg = <APR_SVC_ASM>;
2980 qcom,protection-domain = "avs/audio", "msm/adsp/audio_pd";
2982 compatible = "qcom,q6asm-dais";
2983 #address-cells = <1>;
2985 #sound-dai-cells = <1>;
2986 iommus = <&apps_smmu 0x1801 0x0>;
2990 q6adm: apr-service@8 {
2991 compatible = "qcom,q6adm";
2992 reg = <APR_SVC_ADM>;
2993 qcom,protection-domain = "avs/audio", "msm/adsp/audio_pd";
2994 q6routing: routing {
2995 compatible = "qcom,q6adm-routing";
2996 #sound-dai-cells = <0>;
3002 compatible = "qcom,fastrpc";
3003 qcom,glink-channels = "fastrpcglink-apps-dsp";
3005 #address-cells = <1>;
3009 compatible = "qcom,fastrpc-compute-cb";
3011 iommus = <&apps_smmu 0x1803 0x0>;
3015 compatible = "qcom,fastrpc-compute-cb";
3017 iommus = <&apps_smmu 0x1804 0x0>;
3021 compatible = "qcom,fastrpc-compute-cb";
3023 iommus = <&apps_smmu 0x1805 0x0>;
3029 intc: interrupt-controller@17a00000 {
3030 compatible = "arm,gic-v3";
3031 #interrupt-cells = <3>;
3032 interrupt-controller;
3033 reg = <0x0 0x17a00000 0x0 0x10000>, /* GICD */
3034 <0x0 0x17a60000 0x0 0x100000>; /* GICR * 8 */
3035 interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>;
3039 compatible = "qcom,apss-wdt-sm8250", "qcom,kpss-wdt";
3040 reg = <0 0x17c10000 0 0x1000>;
3041 clocks = <&sleep_clk>;
3045 #address-cells = <2>;
3048 compatible = "arm,armv7-timer-mem";
3049 reg = <0x0 0x17c20000 0x0 0x1000>;
3050 clock-frequency = <19200000>;
3054 interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>,
3055 <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>;
3056 reg = <0x0 0x17c21000 0x0 0x1000>,
3057 <0x0 0x17c22000 0x0 0x1000>;
3062 interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>;
3063 reg = <0x0 0x17c23000 0x0 0x1000>;
3064 status = "disabled";
3069 interrupts = <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>;
3070 reg = <0x0 0x17c25000 0x0 0x1000>;
3071 status = "disabled";
3076 interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>;
3077 reg = <0x0 0x17c27000 0x0 0x1000>;
3078 status = "disabled";
3083 interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>;
3084 reg = <0x0 0x17c29000 0x0 0x1000>;
3085 status = "disabled";
3090 interrupts = <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>;
3091 reg = <0x0 0x17c2b000 0x0 0x1000>;
3092 status = "disabled";
3097 interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>;
3098 reg = <0x0 0x17c2d000 0x0 0x1000>;
3099 status = "disabled";
3103 apps_rsc: rsc@18200000 {
3105 compatible = "qcom,rpmh-rsc";
3106 reg = <0x0 0x18200000 0x0 0x10000>,
3107 <0x0 0x18210000 0x0 0x10000>,
3108 <0x0 0x18220000 0x0 0x10000>;
3109 reg-names = "drv-0", "drv-1", "drv-2";
3110 interrupts = <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>,
3111 <GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>,
3112 <GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH>;
3113 qcom,tcs-offset = <0xd00>;
3115 qcom,tcs-config = <ACTIVE_TCS 2>, <SLEEP_TCS 3>,
3116 <WAKE_TCS 3>, <CONTROL_TCS 1>;
3118 rpmhcc: clock-controller {
3119 compatible = "qcom,sm8250-rpmh-clk";
3122 clocks = <&xo_board>;
3125 rpmhpd: power-controller {
3126 compatible = "qcom,sm8250-rpmhpd";
3127 #power-domain-cells = <1>;
3128 operating-points-v2 = <&rpmhpd_opp_table>;
3130 rpmhpd_opp_table: opp-table {
3131 compatible = "operating-points-v2";
3133 rpmhpd_opp_ret: opp1 {
3134 opp-level = <RPMH_REGULATOR_LEVEL_RETENTION>;
3137 rpmhpd_opp_min_svs: opp2 {
3138 opp-level = <RPMH_REGULATOR_LEVEL_MIN_SVS>;
3141 rpmhpd_opp_low_svs: opp3 {
3142 opp-level = <RPMH_REGULATOR_LEVEL_LOW_SVS>;
3145 rpmhpd_opp_svs: opp4 {
3146 opp-level = <RPMH_REGULATOR_LEVEL_SVS>;
3149 rpmhpd_opp_svs_l1: opp5 {
3150 opp-level = <RPMH_REGULATOR_LEVEL_SVS_L1>;
3153 rpmhpd_opp_nom: opp6 {
3154 opp-level = <RPMH_REGULATOR_LEVEL_NOM>;
3157 rpmhpd_opp_nom_l1: opp7 {
3158 opp-level = <RPMH_REGULATOR_LEVEL_NOM_L1>;
3161 rpmhpd_opp_nom_l2: opp8 {
3162 opp-level = <RPMH_REGULATOR_LEVEL_NOM_L2>;
3165 rpmhpd_opp_turbo: opp9 {
3166 opp-level = <RPMH_REGULATOR_LEVEL_TURBO>;
3169 rpmhpd_opp_turbo_l1: opp10 {
3170 opp-level = <RPMH_REGULATOR_LEVEL_TURBO_L1>;
3175 apps_bcm_voter: bcm_voter {
3176 compatible = "qcom,bcm-voter";
3180 epss_l3: interconnect@18591000 {
3181 compatible = "qcom,sm8250-epss-l3";
3182 reg = <0 0x18590000 0 0x1000>;
3184 clocks = <&rpmhcc RPMH_CXO_CLK>, <&gcc GPLL0>;
3185 clock-names = "xo", "alternate";
3187 #interconnect-cells = <1>;
3190 cpufreq_hw: cpufreq@18591000 {
3191 compatible = "qcom,sm8250-cpufreq-epss", "qcom,cpufreq-epss";
3192 reg = <0 0x18591000 0 0x1000>,
3193 <0 0x18592000 0 0x1000>,
3194 <0 0x18593000 0 0x1000>;
3195 reg-names = "freq-domain0", "freq-domain1",
3198 clocks = <&rpmhcc RPMH_CXO_CLK>, <&gcc GPLL0>;
3199 clock-names = "xo", "alternate";
3201 #freq-domain-cells = <1>;
3206 compatible = "arm,armv8-timer";
3207 interrupts = <GIC_PPI 13
3208 (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW)>,
3210 (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW)>,
3212 (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW)>,
3214 (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_LOW)>;
3219 polling-delay-passive = <250>;
3220 polling-delay = <1000>;
3222 thermal-sensors = <&tsens0 1>;
3225 cpu0_alert0: trip-point0 {
3226 temperature = <90000>;
3227 hysteresis = <2000>;
3231 cpu0_alert1: trip-point1 {
3232 temperature = <95000>;
3233 hysteresis = <2000>;
3237 cpu0_crit: cpu_crit {
3238 temperature = <110000>;
3239 hysteresis = <1000>;
3246 trip = <&cpu0_alert0>;
3247 cooling-device = <&CPU0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3248 <&CPU1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3249 <&CPU2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3250 <&CPU3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
3253 trip = <&cpu0_alert1>;
3254 cooling-device = <&CPU0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3255 <&CPU1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3256 <&CPU2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3257 <&CPU3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
3263 polling-delay-passive = <250>;
3264 polling-delay = <1000>;
3266 thermal-sensors = <&tsens0 2>;
3269 cpu1_alert0: trip-point0 {
3270 temperature = <90000>;
3271 hysteresis = <2000>;
3275 cpu1_alert1: trip-point1 {
3276 temperature = <95000>;
3277 hysteresis = <2000>;
3281 cpu1_crit: cpu_crit {
3282 temperature = <110000>;
3283 hysteresis = <1000>;
3290 trip = <&cpu1_alert0>;
3291 cooling-device = <&CPU0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3292 <&CPU1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3293 <&CPU2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3294 <&CPU3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
3297 trip = <&cpu1_alert1>;
3298 cooling-device = <&CPU0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3299 <&CPU1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3300 <&CPU2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3301 <&CPU3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
3307 polling-delay-passive = <250>;
3308 polling-delay = <1000>;
3310 thermal-sensors = <&tsens0 3>;
3313 cpu2_alert0: trip-point0 {
3314 temperature = <90000>;
3315 hysteresis = <2000>;
3319 cpu2_alert1: trip-point1 {
3320 temperature = <95000>;
3321 hysteresis = <2000>;
3325 cpu2_crit: cpu_crit {
3326 temperature = <110000>;
3327 hysteresis = <1000>;
3334 trip = <&cpu2_alert0>;
3335 cooling-device = <&CPU0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3336 <&CPU1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3337 <&CPU2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3338 <&CPU3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
3341 trip = <&cpu2_alert1>;
3342 cooling-device = <&CPU0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3343 <&CPU1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3344 <&CPU2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3345 <&CPU3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
3351 polling-delay-passive = <250>;
3352 polling-delay = <1000>;
3354 thermal-sensors = <&tsens0 4>;
3357 cpu3_alert0: trip-point0 {
3358 temperature = <90000>;
3359 hysteresis = <2000>;
3363 cpu3_alert1: trip-point1 {
3364 temperature = <95000>;
3365 hysteresis = <2000>;
3369 cpu3_crit: cpu_crit {
3370 temperature = <110000>;
3371 hysteresis = <1000>;
3378 trip = <&cpu3_alert0>;
3379 cooling-device = <&CPU0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3380 <&CPU1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3381 <&CPU2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3382 <&CPU3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
3385 trip = <&cpu3_alert1>;
3386 cooling-device = <&CPU0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3387 <&CPU1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3388 <&CPU2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3389 <&CPU3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
3395 polling-delay-passive = <250>;
3396 polling-delay = <1000>;
3398 thermal-sensors = <&tsens0 7>;
3401 cpu4_top_alert0: trip-point0 {
3402 temperature = <90000>;
3403 hysteresis = <2000>;
3407 cpu4_top_alert1: trip-point1 {
3408 temperature = <95000>;
3409 hysteresis = <2000>;
3413 cpu4_top_crit: cpu_crit {
3414 temperature = <110000>;
3415 hysteresis = <1000>;
3422 trip = <&cpu4_top_alert0>;
3423 cooling-device = <&CPU4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3424 <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3425 <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3426 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
3429 trip = <&cpu4_top_alert1>;
3430 cooling-device = <&CPU4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3431 <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3432 <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3433 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
3439 polling-delay-passive = <250>;
3440 polling-delay = <1000>;
3442 thermal-sensors = <&tsens0 8>;
3445 cpu5_top_alert0: trip-point0 {
3446 temperature = <90000>;
3447 hysteresis = <2000>;
3451 cpu5_top_alert1: trip-point1 {
3452 temperature = <95000>;
3453 hysteresis = <2000>;
3457 cpu5_top_crit: cpu_crit {
3458 temperature = <110000>;
3459 hysteresis = <1000>;
3466 trip = <&cpu5_top_alert0>;
3467 cooling-device = <&CPU4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3468 <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3469 <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3470 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
3473 trip = <&cpu5_top_alert1>;
3474 cooling-device = <&CPU4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3475 <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3476 <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3477 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
3483 polling-delay-passive = <250>;
3484 polling-delay = <1000>;
3486 thermal-sensors = <&tsens0 9>;
3489 cpu6_top_alert0: trip-point0 {
3490 temperature = <90000>;
3491 hysteresis = <2000>;
3495 cpu6_top_alert1: trip-point1 {
3496 temperature = <95000>;
3497 hysteresis = <2000>;
3501 cpu6_top_crit: cpu_crit {
3502 temperature = <110000>;
3503 hysteresis = <1000>;
3510 trip = <&cpu6_top_alert0>;
3511 cooling-device = <&CPU4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3512 <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3513 <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3514 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
3517 trip = <&cpu6_top_alert1>;
3518 cooling-device = <&CPU4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3519 <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3520 <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3521 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
3527 polling-delay-passive = <250>;
3528 polling-delay = <1000>;
3530 thermal-sensors = <&tsens0 10>;
3533 cpu7_top_alert0: trip-point0 {
3534 temperature = <90000>;
3535 hysteresis = <2000>;
3539 cpu7_top_alert1: trip-point1 {
3540 temperature = <95000>;
3541 hysteresis = <2000>;
3545 cpu7_top_crit: cpu_crit {
3546 temperature = <110000>;
3547 hysteresis = <1000>;
3554 trip = <&cpu7_top_alert0>;
3555 cooling-device = <&CPU4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3556 <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3557 <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3558 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
3561 trip = <&cpu7_top_alert1>;
3562 cooling-device = <&CPU4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3563 <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3564 <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3565 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
3570 cpu4-bottom-thermal {
3571 polling-delay-passive = <250>;
3572 polling-delay = <1000>;
3574 thermal-sensors = <&tsens0 11>;
3577 cpu4_bottom_alert0: trip-point0 {
3578 temperature = <90000>;
3579 hysteresis = <2000>;
3583 cpu4_bottom_alert1: trip-point1 {
3584 temperature = <95000>;
3585 hysteresis = <2000>;
3589 cpu4_bottom_crit: cpu_crit {
3590 temperature = <110000>;
3591 hysteresis = <1000>;
3598 trip = <&cpu4_bottom_alert0>;
3599 cooling-device = <&CPU4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3600 <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3601 <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3602 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
3605 trip = <&cpu4_bottom_alert1>;
3606 cooling-device = <&CPU4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3607 <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3608 <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3609 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
3614 cpu5-bottom-thermal {
3615 polling-delay-passive = <250>;
3616 polling-delay = <1000>;
3618 thermal-sensors = <&tsens0 12>;
3621 cpu5_bottom_alert0: trip-point0 {
3622 temperature = <90000>;
3623 hysteresis = <2000>;
3627 cpu5_bottom_alert1: trip-point1 {
3628 temperature = <95000>;
3629 hysteresis = <2000>;
3633 cpu5_bottom_crit: cpu_crit {
3634 temperature = <110000>;
3635 hysteresis = <1000>;
3642 trip = <&cpu5_bottom_alert0>;
3643 cooling-device = <&CPU4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3644 <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3645 <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3646 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
3649 trip = <&cpu5_bottom_alert1>;
3650 cooling-device = <&CPU4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3651 <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3652 <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3653 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
3658 cpu6-bottom-thermal {
3659 polling-delay-passive = <250>;
3660 polling-delay = <1000>;
3662 thermal-sensors = <&tsens0 13>;
3665 cpu6_bottom_alert0: trip-point0 {
3666 temperature = <90000>;
3667 hysteresis = <2000>;
3671 cpu6_bottom_alert1: trip-point1 {
3672 temperature = <95000>;
3673 hysteresis = <2000>;
3677 cpu6_bottom_crit: cpu_crit {
3678 temperature = <110000>;
3679 hysteresis = <1000>;
3686 trip = <&cpu6_bottom_alert0>;
3687 cooling-device = <&CPU4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3688 <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3689 <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3690 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
3693 trip = <&cpu6_bottom_alert1>;
3694 cooling-device = <&CPU4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3695 <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3696 <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3697 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
3702 cpu7-bottom-thermal {
3703 polling-delay-passive = <250>;
3704 polling-delay = <1000>;
3706 thermal-sensors = <&tsens0 14>;
3709 cpu7_bottom_alert0: trip-point0 {
3710 temperature = <90000>;
3711 hysteresis = <2000>;
3715 cpu7_bottom_alert1: trip-point1 {
3716 temperature = <95000>;
3717 hysteresis = <2000>;
3721 cpu7_bottom_crit: cpu_crit {
3722 temperature = <110000>;
3723 hysteresis = <1000>;
3730 trip = <&cpu7_bottom_alert0>;
3731 cooling-device = <&CPU4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3732 <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3733 <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3734 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
3737 trip = <&cpu7_bottom_alert1>;
3738 cooling-device = <&CPU4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3739 <&CPU5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3740 <&CPU6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
3741 <&CPU7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
3747 polling-delay-passive = <250>;
3748 polling-delay = <1000>;
3750 thermal-sensors = <&tsens0 0>;
3753 aoss0_alert0: trip-point0 {
3754 temperature = <90000>;
3755 hysteresis = <2000>;
3762 polling-delay-passive = <250>;
3763 polling-delay = <1000>;
3765 thermal-sensors = <&tsens0 5>;
3768 cluster0_alert0: trip-point0 {
3769 temperature = <90000>;
3770 hysteresis = <2000>;
3773 cluster0_crit: cluster0_crit {
3774 temperature = <110000>;
3775 hysteresis = <2000>;
3782 polling-delay-passive = <250>;
3783 polling-delay = <1000>;
3785 thermal-sensors = <&tsens0 6>;
3788 cluster1_alert0: trip-point0 {
3789 temperature = <90000>;
3790 hysteresis = <2000>;
3793 cluster1_crit: cluster1_crit {
3794 temperature = <110000>;
3795 hysteresis = <2000>;
3802 polling-delay-passive = <250>;
3803 polling-delay = <1000>;
3805 thermal-sensors = <&tsens0 15>;
3808 gpu1_alert0: trip-point0 {
3809 temperature = <90000>;
3810 hysteresis = <2000>;
3817 polling-delay-passive = <250>;
3818 polling-delay = <1000>;
3820 thermal-sensors = <&tsens1 0>;
3823 aoss1_alert0: trip-point0 {
3824 temperature = <90000>;
3825 hysteresis = <2000>;
3832 polling-delay-passive = <250>;
3833 polling-delay = <1000>;
3835 thermal-sensors = <&tsens1 1>;
3838 wlan_alert0: trip-point0 {
3839 temperature = <90000>;
3840 hysteresis = <2000>;
3847 polling-delay-passive = <250>;
3848 polling-delay = <1000>;
3850 thermal-sensors = <&tsens1 2>;
3853 video_alert0: trip-point0 {
3854 temperature = <90000>;
3855 hysteresis = <2000>;
3862 polling-delay-passive = <250>;
3863 polling-delay = <1000>;
3865 thermal-sensors = <&tsens1 3>;
3868 mem_alert0: trip-point0 {
3869 temperature = <90000>;
3870 hysteresis = <2000>;
3877 polling-delay-passive = <250>;
3878 polling-delay = <1000>;
3880 thermal-sensors = <&tsens1 4>;
3883 q6_hvx_alert0: trip-point0 {
3884 temperature = <90000>;
3885 hysteresis = <2000>;
3892 polling-delay-passive = <250>;
3893 polling-delay = <1000>;
3895 thermal-sensors = <&tsens1 5>;
3898 camera_alert0: trip-point0 {
3899 temperature = <90000>;
3900 hysteresis = <2000>;
3907 polling-delay-passive = <250>;
3908 polling-delay = <1000>;
3910 thermal-sensors = <&tsens1 6>;
3913 compute_alert0: trip-point0 {
3914 temperature = <90000>;
3915 hysteresis = <2000>;
3922 polling-delay-passive = <250>;
3923 polling-delay = <1000>;
3925 thermal-sensors = <&tsens1 7>;
3928 npu_alert0: trip-point0 {
3929 temperature = <90000>;
3930 hysteresis = <2000>;
3936 gpu-thermal-bottom {
3937 polling-delay-passive = <250>;
3938 polling-delay = <1000>;
3940 thermal-sensors = <&tsens1 8>;
3943 gpu2_alert0: trip-point0 {
3944 temperature = <90000>;
3945 hysteresis = <2000>;