1 // SPDX-License-Identifier: GPL-2.0-only
3 * Copyright (c) 2013-2015, The Linux Foundation. All rights reserved.
6 #include <dt-bindings/arm/coresight-cti-dt.h>
7 #include <dt-bindings/interrupt-controller/arm-gic.h>
8 #include <dt-bindings/clock/qcom,gcc-msm8916.h>
9 #include <dt-bindings/reset/qcom,gcc-msm8916.h>
10 #include <dt-bindings/clock/qcom,rpmcc.h>
11 #include <dt-bindings/thermal/thermal.h>
14 interrupt-parent = <&intc>;
20 sdhc1 = &sdhc_1; /* SDC1 eMMC slot */
21 sdhc2 = &sdhc_2; /* SDC2 SD card slot */
27 device_type = "memory";
28 /* We expect the bootloader to fill in the reg */
38 reg = <0x0 0x86000000 0x0 0x300000>;
42 smem_mem: smem_region@86300000 {
43 reg = <0x0 0x86300000 0x0 0x100000>;
48 reg = <0x0 0x86400000 0x0 0x100000>;
53 reg = <0x0 0x86500000 0x0 0x180000>;
58 reg = <0x0 0x86680000 0x0 0x80000>;
63 compatible = "qcom,rmtfs-mem";
64 reg = <0x0 0x86700000 0x0 0xe0000>;
71 reg = <0x0 0x867e0000 0x0 0x20000>;
75 mpss_mem: mpss@86800000 {
76 reg = <0x0 0x86800000 0x0 0x2b00000>;
80 wcnss_mem: wcnss@89300000 {
81 reg = <0x0 0x89300000 0x0 0x600000>;
85 venus_mem: venus@89900000 {
86 reg = <0x0 0x89900000 0x0 0x600000>;
90 mba_mem: mba@8ea00000 {
92 reg = <0 0x8ea00000 0 0x100000>;
102 compatible = "arm,cortex-a53";
104 next-level-cache = <&L2_0>;
105 enable-method = "psci";
107 operating-points-v2 = <&cpu_opp_table>;
108 #cooling-cells = <2>;
109 power-domains = <&CPU_PD0>;
110 power-domain-names = "psci";
115 compatible = "arm,cortex-a53";
117 next-level-cache = <&L2_0>;
118 enable-method = "psci";
120 operating-points-v2 = <&cpu_opp_table>;
121 #cooling-cells = <2>;
122 power-domains = <&CPU_PD1>;
123 power-domain-names = "psci";
128 compatible = "arm,cortex-a53";
130 next-level-cache = <&L2_0>;
131 enable-method = "psci";
133 operating-points-v2 = <&cpu_opp_table>;
134 #cooling-cells = <2>;
135 power-domains = <&CPU_PD2>;
136 power-domain-names = "psci";
141 compatible = "arm,cortex-a53";
143 next-level-cache = <&L2_0>;
144 enable-method = "psci";
146 operating-points-v2 = <&cpu_opp_table>;
147 #cooling-cells = <2>;
148 power-domains = <&CPU_PD3>;
149 power-domain-names = "psci";
153 compatible = "cache";
158 entry-method = "psci";
160 CPU_SLEEP_0: cpu-sleep-0 {
161 compatible = "arm,idle-state";
162 idle-state-name = "standalone-power-collapse";
163 arm,psci-suspend-param = <0x40000002>;
164 entry-latency-us = <130>;
165 exit-latency-us = <150>;
166 min-residency-us = <2000>;
173 CLUSTER_RET: cluster-retention {
174 compatible = "domain-idle-state";
175 arm,psci-suspend-param = <0x41000012>;
176 entry-latency-us = <500>;
177 exit-latency-us = <500>;
178 min-residency-us = <2000>;
181 CLUSTER_PWRDN: cluster-gdhs {
182 compatible = "domain-idle-state";
183 arm,psci-suspend-param = <0x41000032>;
184 entry-latency-us = <2000>;
185 exit-latency-us = <2000>;
186 min-residency-us = <6000>;
192 compatible = "arm,psci-1.0";
195 CPU_PD0: power-domain-cpu0 {
196 #power-domain-cells = <0>;
197 power-domains = <&CLUSTER_PD>;
198 domain-idle-states = <&CPU_SLEEP_0>;
201 CPU_PD1: power-domain-cpu1 {
202 #power-domain-cells = <0>;
203 power-domains = <&CLUSTER_PD>;
204 domain-idle-states = <&CPU_SLEEP_0>;
207 CPU_PD2: power-domain-cpu2 {
208 #power-domain-cells = <0>;
209 power-domains = <&CLUSTER_PD>;
210 domain-idle-states = <&CPU_SLEEP_0>;
213 CPU_PD3: power-domain-cpu3 {
214 #power-domain-cells = <0>;
215 power-domains = <&CLUSTER_PD>;
216 domain-idle-states = <&CPU_SLEEP_0>;
219 CLUSTER_PD: power-domain-cluster {
220 #power-domain-cells = <0>;
221 domain-idle-states = <&CLUSTER_RET>, <&CLUSTER_PWRDN>;
226 compatible = "arm,cortex-a53-pmu";
227 interrupts = <GIC_PPI 7 (GIC_CPU_MASK_SIMPLE(4)| IRQ_TYPE_LEVEL_HIGH)>;
232 polling-delay-passive = <250>;
233 polling-delay = <1000>;
235 thermal-sensors = <&tsens 5>;
238 cpu0_1_alert0: trip-point@0 {
239 temperature = <75000>;
243 cpu0_1_crit: cpu_crit {
244 temperature = <110000>;
252 trip = <&cpu0_1_alert0>;
253 cooling-device = <&CPU0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
254 <&CPU1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
255 <&CPU2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
256 <&CPU3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
262 polling-delay-passive = <250>;
263 polling-delay = <1000>;
265 thermal-sensors = <&tsens 4>;
268 cpu2_3_alert0: trip-point0 {
269 temperature = <75000>;
273 cpu2_3_crit: cpu_crit {
274 temperature = <110000>;
282 trip = <&cpu2_3_alert0>;
283 cooling-device = <&CPU0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
284 <&CPU1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
285 <&CPU2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
286 <&CPU3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
292 polling-delay-passive = <250>;
293 polling-delay = <1000>;
295 thermal-sensors = <&tsens 2>;
298 gpu_alert0: trip-point0 {
299 temperature = <75000>;
304 temperature = <95000>;
312 polling-delay-passive = <250>;
313 polling-delay = <1000>;
315 thermal-sensors = <&tsens 1>;
318 cam_alert0: trip-point0 {
319 temperature = <75000>;
327 polling-delay-passive = <250>;
328 polling-delay = <1000>;
330 thermal-sensors = <&tsens 0>;
333 modem_alert0: trip-point0 {
334 temperature = <85000>;
343 cpu_opp_table: cpu-opp-table {
344 compatible = "operating-points-v2";
348 opp-hz = /bits/ 64 <200000000>;
351 opp-hz = /bits/ 64 <400000000>;
354 opp-hz = /bits/ 64 <800000000>;
357 opp-hz = /bits/ 64 <998400000>;
362 compatible = "arm,armv8-timer";
363 interrupts = <GIC_PPI 2 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
364 <GIC_PPI 3 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
365 <GIC_PPI 4 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
366 <GIC_PPI 1 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>;
371 compatible = "fixed-clock";
373 clock-frequency = <19200000>;
376 sleep_clk: sleep-clk {
377 compatible = "fixed-clock";
379 clock-frequency = <32768>;
384 compatible = "qcom,smem";
386 memory-region = <&smem_mem>;
387 qcom,rpm-msg-ram = <&rpm_msg_ram>;
389 hwlocks = <&tcsr_mutex 3>;
394 compatible = "qcom,scm";
395 clocks = <&gcc GCC_CRYPTO_CLK>, <&gcc GCC_CRYPTO_AXI_CLK>, <&gcc GCC_CRYPTO_AHB_CLK>;
396 clock-names = "core", "bus", "iface";
399 qcom,dload-mode = <&tcsr 0x6100>;
404 #address-cells = <1>;
406 ranges = <0 0 0 0xffffffff>;
407 compatible = "simple-bus";
410 compatible = "qcom,pshold";
411 reg = <0x4ab000 0x4>;
414 msmgpio: pinctrl@1000000 {
415 compatible = "qcom,msm8916-pinctrl";
416 reg = <0x1000000 0x300000>;
417 interrupts = <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>;
419 gpio-ranges = <&msmgpio 0 0 122>;
421 interrupt-controller;
422 #interrupt-cells = <2>;
425 gcc: clock-controller@1800000 {
426 compatible = "qcom,gcc-msm8916";
429 #power-domain-cells = <1>;
430 reg = <0x1800000 0x80000>;
433 tcsr_mutex_regs: syscon@1905000 {
434 compatible = "syscon";
435 reg = <0x1905000 0x20000>;
438 tcsr: syscon@1937000 {
439 compatible = "qcom,tcsr-msm8916", "syscon";
440 reg = <0x1937000 0x30000>;
444 compatible = "qcom,tcsr-mutex";
445 syscon = <&tcsr_mutex_regs 0 0x1000>;
449 rpm_msg_ram: memory@60000 {
450 compatible = "qcom,rpm-msg-ram";
451 reg = <0x60000 0x8000>;
454 blsp1_uart1: serial@78af000 {
455 compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm";
456 reg = <0x78af000 0x200>;
457 interrupts = <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>;
458 clocks = <&gcc GCC_BLSP1_UART1_APPS_CLK>, <&gcc GCC_BLSP1_AHB_CLK>;
459 clock-names = "core", "iface";
460 dmas = <&blsp_dma 1>, <&blsp_dma 0>;
461 dma-names = "rx", "tx";
465 a53pll: clock@b016000 {
466 compatible = "qcom,msm8916-a53pll";
467 reg = <0xb016000 0x40>;
471 apcs: mailbox@b011000 {
472 compatible = "qcom,msm8916-apcs-kpss-global", "syscon";
473 reg = <0xb011000 0x1000>;
475 clocks = <&a53pll>, <&gcc GPLL0_VOTE>;
476 clock-names = "pll", "aux";
480 blsp1_uart2: serial@78b0000 {
481 compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm";
482 reg = <0x78b0000 0x200>;
483 interrupts = <GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>;
484 clocks = <&gcc GCC_BLSP1_UART2_APPS_CLK>, <&gcc GCC_BLSP1_AHB_CLK>;
485 clock-names = "core", "iface";
486 dmas = <&blsp_dma 3>, <&blsp_dma 2>;
487 dma-names = "rx", "tx";
491 blsp_dma: dma@7884000 {
492 compatible = "qcom,bam-v1.7.0";
493 reg = <0x07884000 0x23000>;
494 interrupts = <GIC_SPI 238 IRQ_TYPE_LEVEL_HIGH>;
495 clocks = <&gcc GCC_BLSP1_AHB_CLK>;
496 clock-names = "bam_clk";
502 blsp_spi1: spi@78b5000 {
503 compatible = "qcom,spi-qup-v2.2.1";
504 reg = <0x078b5000 0x500>;
505 interrupts = <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>;
506 clocks = <&gcc GCC_BLSP1_QUP1_SPI_APPS_CLK>,
507 <&gcc GCC_BLSP1_AHB_CLK>;
508 clock-names = "core", "iface";
509 dmas = <&blsp_dma 5>, <&blsp_dma 4>;
510 dma-names = "rx", "tx";
511 pinctrl-names = "default", "sleep";
512 pinctrl-0 = <&spi1_default>;
513 pinctrl-1 = <&spi1_sleep>;
514 #address-cells = <1>;
519 blsp_spi2: spi@78b6000 {
520 compatible = "qcom,spi-qup-v2.2.1";
521 reg = <0x078b6000 0x500>;
522 interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>;
523 clocks = <&gcc GCC_BLSP1_QUP2_SPI_APPS_CLK>,
524 <&gcc GCC_BLSP1_AHB_CLK>;
525 clock-names = "core", "iface";
526 dmas = <&blsp_dma 7>, <&blsp_dma 6>;
527 dma-names = "rx", "tx";
528 pinctrl-names = "default", "sleep";
529 pinctrl-0 = <&spi2_default>;
530 pinctrl-1 = <&spi2_sleep>;
531 #address-cells = <1>;
536 blsp_spi3: spi@78b7000 {
537 compatible = "qcom,spi-qup-v2.2.1";
538 reg = <0x078b7000 0x500>;
539 interrupts = <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>;
540 clocks = <&gcc GCC_BLSP1_QUP3_SPI_APPS_CLK>,
541 <&gcc GCC_BLSP1_AHB_CLK>;
542 clock-names = "core", "iface";
543 dmas = <&blsp_dma 9>, <&blsp_dma 8>;
544 dma-names = "rx", "tx";
545 pinctrl-names = "default", "sleep";
546 pinctrl-0 = <&spi3_default>;
547 pinctrl-1 = <&spi3_sleep>;
548 #address-cells = <1>;
553 blsp_spi4: spi@78b8000 {
554 compatible = "qcom,spi-qup-v2.2.1";
555 reg = <0x078b8000 0x500>;
556 interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>;
557 clocks = <&gcc GCC_BLSP1_QUP4_SPI_APPS_CLK>,
558 <&gcc GCC_BLSP1_AHB_CLK>;
559 clock-names = "core", "iface";
560 dmas = <&blsp_dma 11>, <&blsp_dma 10>;
561 dma-names = "rx", "tx";
562 pinctrl-names = "default", "sleep";
563 pinctrl-0 = <&spi4_default>;
564 pinctrl-1 = <&spi4_sleep>;
565 #address-cells = <1>;
570 blsp_spi5: spi@78b9000 {
571 compatible = "qcom,spi-qup-v2.2.1";
572 reg = <0x078b9000 0x500>;
573 interrupts = <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>;
574 clocks = <&gcc GCC_BLSP1_QUP5_SPI_APPS_CLK>,
575 <&gcc GCC_BLSP1_AHB_CLK>;
576 clock-names = "core", "iface";
577 dmas = <&blsp_dma 13>, <&blsp_dma 12>;
578 dma-names = "rx", "tx";
579 pinctrl-names = "default", "sleep";
580 pinctrl-0 = <&spi5_default>;
581 pinctrl-1 = <&spi5_sleep>;
582 #address-cells = <1>;
587 blsp_spi6: spi@78ba000 {
588 compatible = "qcom,spi-qup-v2.2.1";
589 reg = <0x078ba000 0x500>;
590 interrupts = <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>;
591 clocks = <&gcc GCC_BLSP1_QUP6_SPI_APPS_CLK>,
592 <&gcc GCC_BLSP1_AHB_CLK>;
593 clock-names = "core", "iface";
594 dmas = <&blsp_dma 15>, <&blsp_dma 14>;
595 dma-names = "rx", "tx";
596 pinctrl-names = "default", "sleep";
597 pinctrl-0 = <&spi6_default>;
598 pinctrl-1 = <&spi6_sleep>;
599 #address-cells = <1>;
604 blsp_i2c1: i2c@78b5000 {
605 compatible = "qcom,i2c-qup-v2.2.1";
606 reg = <0x078b5000 0x500>;
607 interrupts = <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>;
608 clocks = <&gcc GCC_BLSP1_AHB_CLK>,
609 <&gcc GCC_BLSP1_QUP1_I2C_APPS_CLK>;
610 clock-names = "iface", "core";
611 pinctrl-names = "default", "sleep";
612 pinctrl-0 = <&i2c1_default>;
613 pinctrl-1 = <&i2c1_sleep>;
614 #address-cells = <1>;
619 blsp_i2c2: i2c@78b6000 {
620 compatible = "qcom,i2c-qup-v2.2.1";
621 reg = <0x078b6000 0x500>;
622 interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>;
623 clocks = <&gcc GCC_BLSP1_AHB_CLK>,
624 <&gcc GCC_BLSP1_QUP2_I2C_APPS_CLK>;
625 clock-names = "iface", "core";
626 pinctrl-names = "default", "sleep";
627 pinctrl-0 = <&i2c2_default>;
628 pinctrl-1 = <&i2c2_sleep>;
629 #address-cells = <1>;
634 blsp_i2c4: i2c@78b8000 {
635 compatible = "qcom,i2c-qup-v2.2.1";
636 reg = <0x078b8000 0x500>;
637 interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>;
638 clocks = <&gcc GCC_BLSP1_AHB_CLK>,
639 <&gcc GCC_BLSP1_QUP4_I2C_APPS_CLK>;
640 clock-names = "iface", "core";
641 pinctrl-names = "default", "sleep";
642 pinctrl-0 = <&i2c4_default>;
643 pinctrl-1 = <&i2c4_sleep>;
644 #address-cells = <1>;
649 blsp_i2c5: i2c@78b9000 {
650 compatible = "qcom,i2c-qup-v2.2.1";
651 reg = <0x078b9000 0x500>;
652 interrupts = <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>;
653 clocks = <&gcc GCC_BLSP1_AHB_CLK>,
654 <&gcc GCC_BLSP1_QUP5_I2C_APPS_CLK>;
655 clock-names = "iface", "core";
656 pinctrl-names = "default", "sleep";
657 pinctrl-0 = <&i2c5_default>;
658 pinctrl-1 = <&i2c5_sleep>;
659 #address-cells = <1>;
664 blsp_i2c6: i2c@78ba000 {
665 compatible = "qcom,i2c-qup-v2.2.1";
666 reg = <0x078ba000 0x500>;
667 interrupts = <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>;
668 clocks = <&gcc GCC_BLSP1_AHB_CLK>,
669 <&gcc GCC_BLSP1_QUP6_I2C_APPS_CLK>;
670 clock-names = "iface", "core";
671 pinctrl-names = "default", "sleep";
672 pinctrl-0 = <&i2c6_default>;
673 pinctrl-1 = <&i2c6_sleep>;
674 #address-cells = <1>;
679 lpass: lpass@7708000 {
681 compatible = "qcom,lpass-cpu-apq8016";
682 clocks = <&gcc GCC_ULTAUDIO_AHBFABRIC_IXFABRIC_CLK>,
683 <&gcc GCC_ULTAUDIO_PCNOC_MPORT_CLK>,
684 <&gcc GCC_ULTAUDIO_PCNOC_SWAY_CLK>,
685 <&gcc GCC_ULTAUDIO_LPAIF_PRI_I2S_CLK>,
686 <&gcc GCC_ULTAUDIO_LPAIF_SEC_I2S_CLK>,
687 <&gcc GCC_ULTAUDIO_LPAIF_SEC_I2S_CLK>,
688 <&gcc GCC_ULTAUDIO_LPAIF_AUX_I2S_CLK>;
690 clock-names = "ahbix-clk",
697 #sound-dai-cells = <1>;
699 interrupts = <0 160 IRQ_TYPE_LEVEL_HIGH>;
700 interrupt-names = "lpass-irq-lpaif";
701 reg = <0x07708000 0x10000>;
702 reg-names = "lpass-lpaif";
706 compatible = "qcom,msm8916-wcd-digital-codec";
707 reg = <0x0771c000 0x400>;
708 clocks = <&gcc GCC_ULTAUDIO_AHBFABRIC_IXFABRIC_CLK>,
709 <&gcc GCC_CODEC_DIGCODEC_CLK>;
710 clock-names = "ahbix-clk", "mclk";
711 #sound-dai-cells = <1>;
714 sdhc_1: sdhci@7824000 {
715 compatible = "qcom,sdhci-msm-v4";
716 reg = <0x07824900 0x11c>, <0x07824000 0x800>;
717 reg-names = "hc_mem", "core_mem";
719 interrupts = <0 123 IRQ_TYPE_LEVEL_HIGH>, <0 138 IRQ_TYPE_LEVEL_HIGH>;
720 interrupt-names = "hc_irq", "pwr_irq";
721 clocks = <&gcc GCC_SDCC1_APPS_CLK>,
722 <&gcc GCC_SDCC1_AHB_CLK>,
724 clock-names = "core", "iface", "xo";
731 sdhc_2: sdhci@7864000 {
732 compatible = "qcom,sdhci-msm-v4";
733 reg = <0x07864900 0x11c>, <0x07864000 0x800>;
734 reg-names = "hc_mem", "core_mem";
736 interrupts = <0 125 IRQ_TYPE_LEVEL_HIGH>, <0 221 IRQ_TYPE_LEVEL_HIGH>;
737 interrupt-names = "hc_irq", "pwr_irq";
738 clocks = <&gcc GCC_SDCC2_APPS_CLK>,
739 <&gcc GCC_SDCC2_AHB_CLK>,
741 clock-names = "core", "iface", "xo";
747 compatible = "qcom,ci-hdrc";
748 reg = <0x78d9000 0x200>,
750 interrupts = <GIC_SPI 134 IRQ_TYPE_LEVEL_HIGH>,
751 <GIC_SPI 140 IRQ_TYPE_LEVEL_HIGH>;
752 clocks = <&gcc GCC_USB_HS_AHB_CLK>,
753 <&gcc GCC_USB_HS_SYSTEM_CLK>;
754 clock-names = "iface", "core";
755 assigned-clocks = <&gcc GCC_USB_HS_SYSTEM_CLK>;
756 assigned-clock-rates = <80000000>;
757 resets = <&gcc GCC_USB_HS_BCR>;
758 reset-names = "core";
761 ahb-burst-config = <0>;
762 phy-names = "usb-phy";
763 phys = <&usb_hs_phy>;
769 compatible = "qcom,usb-hs-phy-msm8916",
772 clocks = <&xo_board>, <&gcc GCC_USB2A_PHY_SLEEP_CLK>;
773 clock-names = "ref", "sleep";
774 resets = <&gcc GCC_USB2A_PHY_BCR>, <&otg 0>;
775 reset-names = "phy", "por";
776 qcom,init-seq = /bits/ 8 <0x0 0x44
777 0x1 0x6b 0x2 0x24 0x3 0x13>;
782 intc: interrupt-controller@b000000 {
783 compatible = "qcom,msm-qgic2";
784 interrupt-controller;
785 #interrupt-cells = <3>;
786 reg = <0x0b000000 0x1000>, <0x0b002000 0x1000>;
790 #address-cells = <1>;
793 compatible = "arm,armv7-timer-mem";
794 reg = <0xb020000 0x1000>;
795 clock-frequency = <19200000>;
799 interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>,
800 <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>;
801 reg = <0xb021000 0x1000>,
807 interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>;
808 reg = <0xb023000 0x1000>;
814 interrupts = <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>;
815 reg = <0xb024000 0x1000>;
821 interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>;
822 reg = <0xb025000 0x1000>;
828 interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>;
829 reg = <0xb026000 0x1000>;
835 interrupts = <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>;
836 reg = <0xb027000 0x1000>;
842 interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>;
843 reg = <0xb028000 0x1000>;
848 spmi_bus: spmi@200f000 {
849 compatible = "qcom,spmi-pmic-arb";
850 reg = <0x200f000 0x001000>,
851 <0x2400000 0x400000>,
852 <0x2c00000 0x400000>,
853 <0x3800000 0x200000>,
854 <0x200a000 0x002100>;
855 reg-names = "core", "chnls", "obsrvr", "intr", "cnfg";
856 interrupt-names = "periph_irq";
857 interrupts = <GIC_SPI 190 IRQ_TYPE_LEVEL_HIGH>;
860 #address-cells = <2>;
862 interrupt-controller;
863 #interrupt-cells = <4>;
867 compatible = "qcom,prng";
868 reg = <0x00022000 0x200>;
869 clocks = <&gcc GCC_PRNG_AHB_CLK>;
870 clock-names = "core";
873 qfprom: qfprom@5c000 {
874 compatible = "qcom,qfprom";
875 reg = <0x5c000 0x1000>;
876 #address-cells = <1>;
878 tsens_caldata: caldata@d0 {
881 tsens_calsel: calsel@ec {
886 tsens: thermal-sensor@4a9000 {
887 compatible = "qcom,msm8916-tsens", "qcom,tsens-v0_1";
888 reg = <0x4a9000 0x1000>, /* TM */
889 <0x4a8000 0x1000>; /* SROT */
890 nvmem-cells = <&tsens_caldata>, <&tsens_calsel>;
891 nvmem-cell-names = "calib", "calib_sel";
893 interrupts = <GIC_SPI 184 IRQ_TYPE_LEVEL_HIGH>;
894 interrupt-names = "uplow";
895 #thermal-sensor-cells = <1>;
898 apps_iommu: iommu@1ef0000 {
899 #address-cells = <1>;
902 compatible = "qcom,msm8916-iommu", "qcom,msm-iommu-v1";
903 ranges = <0 0x1e20000 0x40000>;
904 reg = <0x1ef0000 0x3000>;
905 clocks = <&gcc GCC_SMMU_CFG_CLK>,
906 <&gcc GCC_APSS_TCU_CLK>;
907 clock-names = "iface", "bus";
908 qcom,iommu-secure-id = <17>;
912 compatible = "qcom,msm-iommu-v1-sec";
913 reg = <0x3000 0x1000>;
914 interrupts = <GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH>;
919 compatible = "qcom,msm-iommu-v1-ns";
920 reg = <0x4000 0x1000>;
921 interrupts = <GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH>;
926 compatible = "qcom,msm-iommu-v1-sec";
927 reg = <0x5000 0x1000>;
928 interrupts = <GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH>;
932 gpu_iommu: iommu@1f08000 {
933 #address-cells = <1>;
936 compatible = "qcom,msm8916-iommu", "qcom,msm-iommu-v1";
937 ranges = <0 0x1f08000 0x10000>;
938 clocks = <&gcc GCC_SMMU_CFG_CLK>,
939 <&gcc GCC_GFX_TCU_CLK>;
940 clock-names = "iface", "bus";
941 qcom,iommu-secure-id = <18>;
945 compatible = "qcom,msm-iommu-v1-ns";
946 reg = <0x1000 0x1000>;
947 interrupts = <GIC_SPI 241 IRQ_TYPE_LEVEL_HIGH>;
952 compatible = "qcom,msm-iommu-v1-ns";
953 reg = <0x2000 0x1000>;
954 interrupts = <GIC_SPI 242 IRQ_TYPE_LEVEL_HIGH>;
959 compatible = "qcom,adreno-306.0", "qcom,adreno";
960 reg = <0x01c00000 0x20000>;
961 reg-names = "kgsl_3d0_reg_memory";
962 interrupts = <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>;
963 interrupt-names = "kgsl_3d0_irq";
972 <&gcc GCC_OXILI_GFX3D_CLK>,
973 <&gcc GCC_OXILI_AHB_CLK>,
974 <&gcc GCC_OXILI_GMEM_CLK>,
975 <&gcc GCC_BIMC_GFX_CLK>,
976 <&gcc GCC_BIMC_GPU_CLK>,
977 <&gcc GFX3D_CLK_SRC>;
978 power-domains = <&gcc OXILI_GDSC>;
979 operating-points-v2 = <&gpu_opp_table>;
980 iommus = <&gpu_iommu 1>, <&gpu_iommu 2>;
982 gpu_opp_table: opp-table {
983 compatible = "operating-points-v2";
986 opp-hz = /bits/ 64 <400000000>;
989 opp-hz = /bits/ 64 <19200000>;
995 compatible = "qcom,mdss";
996 reg = <0x1a00000 0x1000>,
998 reg-names = "mdss_phys", "vbif_phys";
1000 power-domains = <&gcc MDSS_GDSC>;
1002 clocks = <&gcc GCC_MDSS_AHB_CLK>,
1003 <&gcc GCC_MDSS_AXI_CLK>,
1004 <&gcc GCC_MDSS_VSYNC_CLK>;
1005 clock-names = "iface",
1009 interrupts = <0 72 IRQ_TYPE_LEVEL_HIGH>;
1011 interrupt-controller;
1012 #interrupt-cells = <1>;
1014 #address-cells = <1>;
1019 compatible = "qcom,mdp5";
1020 reg = <0x1a01000 0x89000>;
1021 reg-names = "mdp_phys";
1023 interrupt-parent = <&mdss>;
1026 clocks = <&gcc GCC_MDSS_AHB_CLK>,
1027 <&gcc GCC_MDSS_AXI_CLK>,
1028 <&gcc GCC_MDSS_MDP_CLK>,
1029 <&gcc GCC_MDSS_VSYNC_CLK>;
1030 clock-names = "iface",
1035 iommus = <&apps_iommu 4>;
1038 #address-cells = <1>;
1043 mdp5_intf1_out: endpoint {
1044 remote-endpoint = <&dsi0_in>;
1051 compatible = "qcom,mdss-dsi-ctrl";
1052 reg = <0x1a98000 0x25c>;
1053 reg-names = "dsi_ctrl";
1055 interrupt-parent = <&mdss>;
1058 assigned-clocks = <&gcc BYTE0_CLK_SRC>,
1059 <&gcc PCLK0_CLK_SRC>;
1060 assigned-clock-parents = <&dsi_phy0 0>,
1063 clocks = <&gcc GCC_MDSS_MDP_CLK>,
1064 <&gcc GCC_MDSS_AHB_CLK>,
1065 <&gcc GCC_MDSS_AXI_CLK>,
1066 <&gcc GCC_MDSS_BYTE0_CLK>,
1067 <&gcc GCC_MDSS_PCLK0_CLK>,
1068 <&gcc GCC_MDSS_ESC0_CLK>;
1069 clock-names = "mdp_core",
1076 phy-names = "dsi-phy";
1079 #address-cells = <1>;
1085 remote-endpoint = <&mdp5_intf1_out>;
1091 dsi0_out: endpoint {
1097 dsi_phy0: dsi-phy@1a98300 {
1098 compatible = "qcom,dsi-phy-28nm-lp";
1099 reg = <0x1a98300 0xd4>,
1102 reg-names = "dsi_pll",
1104 "dsi_phy_regulator";
1109 clocks = <&gcc GCC_MDSS_AHB_CLK>,
1111 clock-names = "iface", "ref";
1117 compatible = "qcom,q6v5-pil";
1118 reg = <0x04080000 0x100>,
1121 reg-names = "qdsp6", "rmb";
1123 interrupts-extended = <&intc 0 24 1>,
1124 <&hexagon_smp2p_in 0 0>,
1125 <&hexagon_smp2p_in 1 0>,
1126 <&hexagon_smp2p_in 2 0>,
1127 <&hexagon_smp2p_in 3 0>;
1128 interrupt-names = "wdog", "fatal", "ready",
1129 "handover", "stop-ack";
1131 clocks = <&gcc GCC_MSS_CFG_AHB_CLK>,
1132 <&gcc GCC_MSS_Q6_BIMC_AXI_CLK>,
1133 <&gcc GCC_BOOT_ROM_AHB_CLK>,
1135 clock-names = "iface", "bus", "mem", "xo";
1137 qcom,smem-states = <&hexagon_smp2p_out 0>;
1138 qcom,smem-state-names = "stop";
1141 reset-names = "mss_restart";
1143 cx-supply = <&pm8916_s1>;
1144 mx-supply = <&pm8916_l3>;
1145 pll-supply = <&pm8916_l7>;
1147 qcom,halt-regs = <&tcsr 0x18000 0x19000 0x1a000>;
1149 status = "disabled";
1152 memory-region = <&mba_mem>;
1156 memory-region = <&mpss_mem>;
1160 interrupts = <0 25 IRQ_TYPE_EDGE_RISING>;
1162 qcom,smd-edge = <0>;
1163 qcom,ipc = <&apcs 8 12>;
1164 qcom,remote-pid = <1>;
1169 compatible = "qcom,fastrpc";
1170 qcom,smd-channels = "fastrpcsmd-apps-dsp";
1173 #address-cells = <1>;
1177 compatible = "qcom,fastrpc-compute-cb";
1184 pronto: wcnss@a21b000 {
1185 compatible = "qcom,pronto-v2-pil", "qcom,pronto";
1186 reg = <0x0a204000 0x2000>, <0x0a202000 0x1000>, <0x0a21b000 0x3000>;
1187 reg-names = "ccu", "dxe", "pmu";
1189 memory-region = <&wcnss_mem>;
1191 interrupts-extended = <&intc 0 149 IRQ_TYPE_EDGE_RISING>,
1192 <&wcnss_smp2p_in 0 IRQ_TYPE_EDGE_RISING>,
1193 <&wcnss_smp2p_in 1 IRQ_TYPE_EDGE_RISING>,
1194 <&wcnss_smp2p_in 2 IRQ_TYPE_EDGE_RISING>,
1195 <&wcnss_smp2p_in 3 IRQ_TYPE_EDGE_RISING>;
1196 interrupt-names = "wdog", "fatal", "ready", "handover", "stop-ack";
1198 vddmx-supply = <&pm8916_l3>;
1199 vddpx-supply = <&pm8916_l7>;
1201 qcom,state = <&wcnss_smp2p_out 0>;
1202 qcom,state-names = "stop";
1204 pinctrl-names = "default";
1205 pinctrl-0 = <&wcnss_pin_a>;
1207 status = "disabled";
1210 compatible = "qcom,wcn3620";
1212 clocks = <&rpmcc RPM_SMD_RF_CLK2>;
1215 vddxo-supply = <&pm8916_l7>;
1216 vddrfa-supply = <&pm8916_s3>;
1217 vddpa-supply = <&pm8916_l9>;
1218 vdddig-supply = <&pm8916_l5>;
1222 interrupts = <0 142 1>;
1224 qcom,ipc = <&apcs 8 17>;
1225 qcom,smd-edge = <6>;
1226 qcom,remote-pid = <4>;
1231 compatible = "qcom,wcnss";
1232 qcom,smd-channels = "WCNSS_CTRL";
1234 qcom,mmio = <&pronto>;
1237 compatible = "qcom,wcnss-bt";
1241 compatible = "qcom,wcnss-wlan";
1243 interrupts = <0 145 IRQ_TYPE_LEVEL_HIGH>,
1244 <0 146 IRQ_TYPE_LEVEL_HIGH>;
1245 interrupt-names = "tx", "rx";
1247 qcom,smem-states = <&apps_smsm 10>, <&apps_smsm 9>;
1248 qcom,smem-state-names = "tx-enable", "tx-rings-empty";
1255 compatible = "arm,coresight-tpiu", "arm,primecell";
1256 reg = <0x820000 0x1000>;
1258 clocks = <&rpmcc RPM_QDSS_CLK>, <&rpmcc RPM_QDSS_A_CLK>;
1259 clock-names = "apb_pclk", "atclk";
1261 status = "disabled";
1266 remote-endpoint = <&replicator_out1>;
1273 compatible = "arm,coresight-dynamic-funnel", "arm,primecell";
1274 reg = <0x821000 0x1000>;
1276 clocks = <&rpmcc RPM_QDSS_CLK>, <&rpmcc RPM_QDSS_A_CLK>;
1277 clock-names = "apb_pclk", "atclk";
1279 status = "disabled";
1282 #address-cells = <1>;
1286 * Not described input ports:
1287 * 0 - connected to Resource and Power Manger CPU ETM
1289 * 2 - connected to Modem CPU ETM
1292 * 6 - connected trought funnel to Wireless CPU ETM
1293 * 7 - connected to STM component
1298 funnel0_in4: endpoint {
1299 remote-endpoint = <&funnel1_out>;
1306 funnel0_out: endpoint {
1307 remote-endpoint = <&etf_in>;
1314 compatible = "arm,coresight-dynamic-replicator", "arm,primecell";
1315 reg = <0x824000 0x1000>;
1317 clocks = <&rpmcc RPM_QDSS_CLK>, <&rpmcc RPM_QDSS_A_CLK>;
1318 clock-names = "apb_pclk", "atclk";
1320 status = "disabled";
1323 #address-cells = <1>;
1328 replicator_out0: endpoint {
1329 remote-endpoint = <&etr_in>;
1334 replicator_out1: endpoint {
1335 remote-endpoint = <&tpiu_in>;
1342 replicator_in: endpoint {
1343 remote-endpoint = <&etf_out>;
1350 compatible = "arm,coresight-tmc", "arm,primecell";
1351 reg = <0x825000 0x1000>;
1353 clocks = <&rpmcc RPM_QDSS_CLK>, <&rpmcc RPM_QDSS_A_CLK>;
1354 clock-names = "apb_pclk", "atclk";
1356 status = "disabled";
1361 remote-endpoint = <&funnel0_out>;
1369 remote-endpoint = <&replicator_in>;
1376 compatible = "arm,coresight-tmc", "arm,primecell";
1377 reg = <0x826000 0x1000>;
1379 clocks = <&rpmcc RPM_QDSS_CLK>, <&rpmcc RPM_QDSS_A_CLK>;
1380 clock-names = "apb_pclk", "atclk";
1382 status = "disabled";
1387 remote-endpoint = <&replicator_out0>;
1393 funnel@841000 { /* APSS funnel only 4 inputs are used */
1394 compatible = "arm,coresight-dynamic-funnel", "arm,primecell";
1395 reg = <0x841000 0x1000>;
1397 clocks = <&rpmcc RPM_QDSS_CLK>, <&rpmcc RPM_QDSS_A_CLK>;
1398 clock-names = "apb_pclk", "atclk";
1400 status = "disabled";
1403 #address-cells = <1>;
1408 funnel1_in0: endpoint {
1409 remote-endpoint = <&etm0_out>;
1414 funnel1_in1: endpoint {
1415 remote-endpoint = <&etm1_out>;
1420 funnel1_in2: endpoint {
1421 remote-endpoint = <&etm2_out>;
1426 funnel1_in3: endpoint {
1427 remote-endpoint = <&etm3_out>;
1434 funnel1_out: endpoint {
1435 remote-endpoint = <&funnel0_in4>;
1442 compatible = "arm,coresight-cpu-debug","arm,primecell";
1443 reg = <0x850000 0x1000>;
1444 clocks = <&rpmcc RPM_QDSS_CLK>;
1445 clock-names = "apb_pclk";
1447 status = "disabled";
1451 compatible = "arm,coresight-cpu-debug","arm,primecell";
1452 reg = <0x852000 0x1000>;
1453 clocks = <&rpmcc RPM_QDSS_CLK>;
1454 clock-names = "apb_pclk";
1456 status = "disabled";
1460 compatible = "arm,coresight-cpu-debug","arm,primecell";
1461 reg = <0x854000 0x1000>;
1462 clocks = <&rpmcc RPM_QDSS_CLK>;
1463 clock-names = "apb_pclk";
1465 status = "disabled";
1469 compatible = "arm,coresight-cpu-debug","arm,primecell";
1470 reg = <0x856000 0x1000>;
1471 clocks = <&rpmcc RPM_QDSS_CLK>;
1472 clock-names = "apb_pclk";
1474 status = "disabled";
1478 compatible = "arm,coresight-etm4x", "arm,primecell";
1479 reg = <0x85c000 0x1000>;
1481 clocks = <&rpmcc RPM_QDSS_CLK>, <&rpmcc RPM_QDSS_A_CLK>;
1482 clock-names = "apb_pclk", "atclk";
1483 arm,coresight-loses-context-with-cpu;
1487 status = "disabled";
1491 etm0_out: endpoint {
1492 remote-endpoint = <&funnel1_in0>;
1499 compatible = "arm,coresight-etm4x", "arm,primecell";
1500 reg = <0x85d000 0x1000>;
1502 clocks = <&rpmcc RPM_QDSS_CLK>, <&rpmcc RPM_QDSS_A_CLK>;
1503 clock-names = "apb_pclk", "atclk";
1504 arm,coresight-loses-context-with-cpu;
1508 status = "disabled";
1512 etm1_out: endpoint {
1513 remote-endpoint = <&funnel1_in1>;
1520 compatible = "arm,coresight-etm4x", "arm,primecell";
1521 reg = <0x85e000 0x1000>;
1523 clocks = <&rpmcc RPM_QDSS_CLK>, <&rpmcc RPM_QDSS_A_CLK>;
1524 clock-names = "apb_pclk", "atclk";
1525 arm,coresight-loses-context-with-cpu;
1529 status = "disabled";
1533 etm2_out: endpoint {
1534 remote-endpoint = <&funnel1_in2>;
1541 compatible = "arm,coresight-etm4x", "arm,primecell";
1542 reg = <0x85f000 0x1000>;
1544 clocks = <&rpmcc RPM_QDSS_CLK>, <&rpmcc RPM_QDSS_A_CLK>;
1545 clock-names = "apb_pclk", "atclk";
1546 arm,coresight-loses-context-with-cpu;
1550 status = "disabled";
1554 etm3_out: endpoint {
1555 remote-endpoint = <&funnel1_in3>;
1562 /* CTI 0 - TMC connections */
1564 compatible = "arm,coresight-cti", "arm,primecell";
1565 reg = <0x810000 0x1000>;
1567 clocks = <&rpmcc RPM_QDSS_CLK>;
1568 clock-names = "apb_pclk";
1570 status = "disabled";
1573 /* CTI 1 - TPIU connections */
1575 compatible = "arm,coresight-cti", "arm,primecell";
1576 reg = <0x811000 0x1000>;
1578 clocks = <&rpmcc RPM_QDSS_CLK>;
1579 clock-names = "apb_pclk";
1581 status = "disabled";
1584 /* CTIs 2-11 - no information - not instantiated */
1586 /* Core CTIs; CTIs 12-15 */
1589 compatible = "arm,coresight-cti-v8-arch", "arm,coresight-cti",
1591 reg = <0x858000 0x1000>;
1593 clocks = <&rpmcc RPM_QDSS_CLK>;
1594 clock-names = "apb_pclk";
1597 arm,cs-dev-assoc = <&etm0>;
1599 status = "disabled";
1604 compatible = "arm,coresight-cti-v8-arch", "arm,coresight-cti",
1606 reg = <0x859000 0x1000>;
1608 clocks = <&rpmcc RPM_QDSS_CLK>;
1609 clock-names = "apb_pclk";
1612 arm,cs-dev-assoc = <&etm1>;
1614 status = "disabled";
1619 compatible = "arm,coresight-cti-v8-arch", "arm,coresight-cti",
1621 reg = <0x85a000 0x1000>;
1623 clocks = <&rpmcc RPM_QDSS_CLK>;
1624 clock-names = "apb_pclk";
1627 arm,cs-dev-assoc = <&etm2>;
1629 status = "disabled";
1634 compatible = "arm,coresight-cti-v8-arch", "arm,coresight-cti",
1636 reg = <0x85b000 0x1000>;
1638 clocks = <&rpmcc RPM_QDSS_CLK>;
1639 clock-names = "apb_pclk";
1642 arm,cs-dev-assoc = <&etm3>;
1644 status = "disabled";
1648 venus: video-codec@1d00000 {
1649 compatible = "qcom,msm8916-venus";
1650 reg = <0x01d00000 0xff000>;
1651 interrupts = <GIC_SPI 44 IRQ_TYPE_LEVEL_HIGH>;
1652 power-domains = <&gcc VENUS_GDSC>;
1653 clocks = <&gcc GCC_VENUS0_VCODEC0_CLK>,
1654 <&gcc GCC_VENUS0_AHB_CLK>,
1655 <&gcc GCC_VENUS0_AXI_CLK>;
1656 clock-names = "core", "iface", "bus";
1657 iommus = <&apps_iommu 5>;
1658 memory-region = <&venus_mem>;
1662 compatible = "venus-decoder";
1666 compatible = "venus-encoder";
1670 camss: camss@1b00000 {
1671 compatible = "qcom,msm8916-camss";
1672 reg = <0x1b0ac00 0x200>,
1681 reg-names = "csiphy0",
1690 interrupts = <GIC_SPI 78 IRQ_TYPE_EDGE_RISING>,
1691 <GIC_SPI 79 IRQ_TYPE_EDGE_RISING>,
1692 <GIC_SPI 51 IRQ_TYPE_EDGE_RISING>,
1693 <GIC_SPI 52 IRQ_TYPE_EDGE_RISING>,
1694 <GIC_SPI 55 IRQ_TYPE_EDGE_RISING>,
1695 <GIC_SPI 57 IRQ_TYPE_EDGE_RISING>;
1696 interrupt-names = "csiphy0",
1702 power-domains = <&gcc VFE_GDSC>;
1703 clocks = <&gcc GCC_CAMSS_TOP_AHB_CLK>,
1704 <&gcc GCC_CAMSS_ISPIF_AHB_CLK>,
1705 <&gcc GCC_CAMSS_CSI0PHYTIMER_CLK>,
1706 <&gcc GCC_CAMSS_CSI1PHYTIMER_CLK>,
1707 <&gcc GCC_CAMSS_CSI0_AHB_CLK>,
1708 <&gcc GCC_CAMSS_CSI0_CLK>,
1709 <&gcc GCC_CAMSS_CSI0PHY_CLK>,
1710 <&gcc GCC_CAMSS_CSI0PIX_CLK>,
1711 <&gcc GCC_CAMSS_CSI0RDI_CLK>,
1712 <&gcc GCC_CAMSS_CSI1_AHB_CLK>,
1713 <&gcc GCC_CAMSS_CSI1_CLK>,
1714 <&gcc GCC_CAMSS_CSI1PHY_CLK>,
1715 <&gcc GCC_CAMSS_CSI1PIX_CLK>,
1716 <&gcc GCC_CAMSS_CSI1RDI_CLK>,
1717 <&gcc GCC_CAMSS_AHB_CLK>,
1718 <&gcc GCC_CAMSS_VFE0_CLK>,
1719 <&gcc GCC_CAMSS_CSI_VFE0_CLK>,
1720 <&gcc GCC_CAMSS_VFE_AHB_CLK>,
1721 <&gcc GCC_CAMSS_VFE_AXI_CLK>;
1722 clock-names = "top_ahb",
1741 vdda-supply = <&pm8916_l2>;
1742 iommus = <&apps_iommu 3>;
1743 status = "disabled";
1745 #address-cells = <1>;
1751 compatible = "qcom,msm8916-cci";
1752 #address-cells = <1>;
1754 reg = <0x1b0c000 0x1000>;
1755 interrupts = <GIC_SPI 50 IRQ_TYPE_EDGE_RISING>;
1756 clocks = <&gcc GCC_CAMSS_TOP_AHB_CLK>,
1757 <&gcc GCC_CAMSS_CCI_AHB_CLK>,
1758 <&gcc GCC_CAMSS_CCI_CLK>,
1759 <&gcc GCC_CAMSS_AHB_CLK>;
1760 clock-names = "camss_top_ahb", "cci_ahb",
1762 assigned-clocks = <&gcc GCC_CAMSS_CCI_AHB_CLK>,
1763 <&gcc GCC_CAMSS_CCI_CLK>;
1764 assigned-clock-rates = <80000000>, <19200000>;
1765 pinctrl-names = "default";
1766 pinctrl-0 = <&cci0_default>;
1767 status = "disabled";
1769 cci_i2c0: i2c-bus@0 {
1771 clock-frequency = <400000>;
1772 #address-cells = <1>;
1779 compatible = "qcom,smd";
1782 interrupts = <GIC_SPI 168 IRQ_TYPE_EDGE_RISING>;
1783 qcom,ipc = <&apcs 8 0>;
1784 qcom,smd-edge = <15>;
1787 compatible = "qcom,rpm-msm8916";
1788 qcom,smd-channels = "rpm_requests";
1791 compatible = "qcom,rpmcc-msm8916";
1795 smd_rpm_regulators: pm8916-regulators {
1796 compatible = "qcom,rpm-pm8916-regulators";
1826 compatible = "qcom,smp2p";
1827 qcom,smem = <435>, <428>;
1829 interrupts = <0 27 IRQ_TYPE_EDGE_RISING>;
1831 qcom,ipc = <&apcs 8 14>;
1833 qcom,local-pid = <0>;
1834 qcom,remote-pid = <1>;
1836 hexagon_smp2p_out: master-kernel {
1837 qcom,entry-name = "master-kernel";
1839 #qcom,smem-state-cells = <1>;
1842 hexagon_smp2p_in: slave-kernel {
1843 qcom,entry-name = "slave-kernel";
1845 interrupt-controller;
1846 #interrupt-cells = <2>;
1851 compatible = "qcom,smp2p";
1852 qcom,smem = <451>, <431>;
1854 interrupts = <0 143 IRQ_TYPE_EDGE_RISING>;
1856 qcom,ipc = <&apcs 8 18>;
1858 qcom,local-pid = <0>;
1859 qcom,remote-pid = <4>;
1861 wcnss_smp2p_out: master-kernel {
1862 qcom,entry-name = "master-kernel";
1864 #qcom,smem-state-cells = <1>;
1867 wcnss_smp2p_in: slave-kernel {
1868 qcom,entry-name = "slave-kernel";
1870 interrupt-controller;
1871 #interrupt-cells = <2>;
1876 compatible = "qcom,smsm";
1878 #address-cells = <1>;
1881 qcom,ipc-1 = <&apcs 8 13>;
1882 qcom,ipc-3 = <&apcs 8 19>;
1887 #qcom,smem-state-cells = <1>;
1890 hexagon_smsm: hexagon@1 {
1892 interrupts = <0 26 IRQ_TYPE_EDGE_RISING>;
1894 interrupt-controller;
1895 #interrupt-cells = <2>;
1898 wcnss_smsm: wcnss@6 {
1900 interrupts = <0 144 IRQ_TYPE_EDGE_RISING>;
1902 interrupt-controller;
1903 #interrupt-cells = <2>;
1908 #include "msm8916-pins.dtsi"