1 /* Copyright (c) 2014-2015, The Linux Foundation. All rights reserved.
3 * This program is free software; you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License version 2 and
5 * only version 2 as published by the Free Software Foundation.
7 * This program is distributed in the hope that it will be useful,
8 * but WITHOUT ANY WARRANTY; without even the implied warranty of
9 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10 * GNU General Public License for more details.
13 #include <dt-bindings/interrupt-controller/arm-gic.h>
14 #include <dt-bindings/clock/qcom,gcc-msm8996.h>
15 #include <dt-bindings/clock/qcom,mmcc-msm8996.h>
16 #include <dt-bindings/clock/qcom,rpmcc.h>
19 model = "Qualcomm Technologies, Inc. MSM8996";
21 interrupt-parent = <&intc>;
29 device_type = "memory";
30 /* We expect the bootloader to fill in the reg */
39 mba_region: mba@91500000 {
40 reg = <0x0 0x91500000 0x0 0x200000>;
44 slpi_region: slpi@90b00000 {
45 reg = <0x0 0x90b00000 0x0 0xa00000>;
49 venus_region: venus@90400000 {
50 reg = <0x0 0x90400000 0x0 0x700000>;
54 adsp_region: adsp@8ea00000 {
55 reg = <0x0 0x8ea00000 0x0 0x1a00000>;
59 mpss_region: mpss@88800000 {
60 reg = <0x0 0x88800000 0x0 0x6200000>;
64 smem_mem: smem-mem@86000000 {
65 reg = <0x0 0x86000000 0x0 0x200000>;
70 reg = <0x0 0x85800000 0x0 0x800000>;
75 reg = <0x0 0x86200000 0x0 0x2600000>;
86 compatible = "qcom,kryo";
88 enable-method = "psci";
89 next-level-cache = <&L2_0>;
98 compatible = "qcom,kryo";
100 enable-method = "psci";
101 next-level-cache = <&L2_0>;
106 compatible = "qcom,kryo";
108 enable-method = "psci";
109 next-level-cache = <&L2_1>;
111 compatible = "cache";
118 compatible = "qcom,kryo";
120 enable-method = "psci";
121 next-level-cache = <&L2_1>;
149 polling-delay-passive = <250>;
150 polling-delay = <1000>;
152 thermal-sensors = <&tsens0 3>;
156 temperature = <75000>;
162 temperature = <110000>;
170 polling-delay-passive = <250>;
171 polling-delay = <1000>;
173 thermal-sensors = <&tsens0 5>;
177 temperature = <75000>;
183 temperature = <110000>;
191 polling-delay-passive = <250>;
192 polling-delay = <1000>;
194 thermal-sensors = <&tsens0 8>;
198 temperature = <75000>;
204 temperature = <110000>;
212 polling-delay-passive = <250>;
213 polling-delay = <1000>;
215 thermal-sensors = <&tsens0 10>;
219 temperature = <75000>;
225 temperature = <110000>;
234 compatible = "arm,armv8-timer";
235 interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
236 <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
237 <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
238 <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>;
243 compatible = "fixed-clock";
245 clock-frequency = <19200000>;
246 clock-output-names = "xo_board";
249 sleep_clk: sleep_clk {
250 compatible = "fixed-clock";
252 clock-frequency = <32764>;
253 clock-output-names = "sleep_clk";
258 compatible = "arm,psci-1.0";
264 compatible = "qcom,scm-msm8996";
266 qcom,dload-mode = <&tcsr 0x13000>;
271 compatible = "qcom,tcsr-mutex";
272 syscon = <&tcsr_mutex_regs 0 0x1000>;
277 compatible = "qcom,smem";
278 memory-region = <&smem_mem>;
279 hwlocks = <&tcsr_mutex 3>;
283 compatible = "qcom,glink-rpm";
285 interrupts = <GIC_SPI 168 IRQ_TYPE_EDGE_RISING>;
287 qcom,rpm-msg-ram = <&rpm_msg_ram>;
289 mboxes = <&apcs_glb 0>;
292 compatible = "qcom,rpm-msm8996";
293 qcom,glink-channels = "rpm_requests";
296 compatible = "qcom,rpmcc-msm8996";
301 compatible = "qcom,rpm-pm8994-regulators";
354 #address-cells = <1>;
356 ranges = <0 0 0 0xffffffff>;
357 compatible = "simple-bus";
359 rpm_msg_ram: memory@68000 {
360 compatible = "qcom,rpm-msg-ram";
361 reg = <0x68000 0x6000>;
364 tcsr_mutex_regs: syscon@740000 {
365 compatible = "syscon";
366 reg = <0x740000 0x20000>;
369 tcsr: syscon@7a0000 {
370 compatible = "qcom,tcsr-msm8996", "syscon";
371 reg = <0x7a0000 0x18000>;
374 intc: interrupt-controller@9bc0000 {
375 compatible = "arm,gic-v3";
376 #interrupt-cells = <3>;
377 interrupt-controller;
378 #redistributor-regions = <1>;
379 redistributor-stride = <0x0 0x40000>;
380 reg = <0x09bc0000 0x10000>,
381 <0x09c00000 0x100000>;
382 interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>;
385 apcs: syscon@9820000 {
386 compatible = "syscon";
387 reg = <0x9820000 0x1000>;
390 apcs_glb: mailbox@9820000 {
391 compatible = "qcom,msm8996-apcs-hmss-global";
392 reg = <0x9820000 0x1000>;
397 gcc: clock-controller@300000 {
398 compatible = "qcom,gcc-msm8996";
401 #power-domain-cells = <1>;
402 reg = <0x300000 0x90000>;
405 kryocc: clock-controller@6400000 {
406 compatible = "qcom,apcc-msm8996";
407 reg = <0x6400000 0x90000>;
411 blsp1_spi0: spi@7575000 {
412 compatible = "qcom,spi-qup-v2.2.1";
413 reg = <0x07575000 0x600>;
414 interrupts = <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>;
415 clocks = <&gcc GCC_BLSP1_QUP1_SPI_APPS_CLK>,
416 <&gcc GCC_BLSP1_AHB_CLK>;
417 clock-names = "core", "iface";
418 pinctrl-names = "default", "sleep";
419 pinctrl-0 = <&blsp1_spi0_default>;
420 pinctrl-1 = <&blsp1_spi0_sleep>;
421 #address-cells = <1>;
426 blsp2_i2c0: i2c@75b5000 {
427 compatible = "qcom,i2c-qup-v2.2.1";
428 reg = <0x075b5000 0x1000>;
429 interrupts = <GIC_SPI 101 0>;
430 clocks = <&gcc GCC_BLSP2_AHB_CLK>,
431 <&gcc GCC_BLSP2_QUP1_I2C_APPS_CLK>;
432 clock-names = "iface", "core";
433 pinctrl-names = "default", "sleep";
434 pinctrl-0 = <&blsp2_i2c0_default>;
435 pinctrl-1 = <&blsp2_i2c0_sleep>;
436 #address-cells = <1>;
441 tsens0: thermal-sensor@4a8000 {
442 compatible = "qcom,msm8996-tsens";
443 reg = <0x4a8000 0x2000>;
444 #thermal-sensor-cells = <1>;
447 blsp2_uart1: serial@75b0000 {
448 compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm";
449 reg = <0x75b0000 0x1000>;
450 interrupts = <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>;
451 clocks = <&gcc GCC_BLSP2_UART2_APPS_CLK>,
452 <&gcc GCC_BLSP2_AHB_CLK>;
453 clock-names = "core", "iface";
457 blsp2_i2c1: i2c@75b6000 {
458 compatible = "qcom,i2c-qup-v2.2.1";
459 reg = <0x075b6000 0x1000>;
460 interrupts = <GIC_SPI 102 0>;
461 clocks = <&gcc GCC_BLSP2_AHB_CLK>,
462 <&gcc GCC_BLSP2_QUP2_I2C_APPS_CLK>;
463 clock-names = "iface", "core";
464 pinctrl-names = "default", "sleep";
465 pinctrl-0 = <&blsp2_i2c1_default>;
466 pinctrl-1 = <&blsp2_i2c1_sleep>;
467 #address-cells = <1>;
472 blsp2_uart2: serial@75b1000 {
473 compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm";
474 reg = <0x075b1000 0x1000>;
475 interrupts = <GIC_SPI 115 IRQ_TYPE_LEVEL_HIGH>;
476 clocks = <&gcc GCC_BLSP2_UART3_APPS_CLK>,
477 <&gcc GCC_BLSP2_AHB_CLK>;
478 clock-names = "core", "iface";
482 blsp1_i2c2: i2c@7577000 {
483 compatible = "qcom,i2c-qup-v2.2.1";
484 reg = <0x07577000 0x1000>;
485 interrupts = <GIC_SPI 97 0>;
486 clocks = <&gcc GCC_BLSP1_AHB_CLK>,
487 <&gcc GCC_BLSP1_QUP3_I2C_APPS_CLK>;
488 clock-names = "iface", "core";
489 pinctrl-names = "default", "sleep";
490 pinctrl-0 = <&blsp1_i2c2_default>;
491 pinctrl-1 = <&blsp1_i2c2_sleep>;
492 #address-cells = <1>;
497 blsp2_spi5: spi@75ba000{
498 compatible = "qcom,spi-qup-v2.2.1";
499 reg = <0x075ba000 0x600>;
500 interrupts = <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>;
501 clocks = <&gcc GCC_BLSP2_QUP5_SPI_APPS_CLK>,
502 <&gcc GCC_BLSP2_AHB_CLK>;
503 clock-names = "core", "iface";
504 pinctrl-names = "default", "sleep";
505 pinctrl-0 = <&blsp2_spi5_default>;
506 pinctrl-1 = <&blsp2_spi5_sleep>;
507 #address-cells = <1>;
512 sdhc2: sdhci@74a4900 {
514 compatible = "qcom,sdhci-msm-v4";
515 reg = <0x74a4900 0x314>, <0x74a4000 0x800>;
516 reg-names = "hc_mem", "core_mem";
518 interrupts = <0 125 0>, <0 221 0>;
519 interrupt-names = "hc_irq", "pwr_irq";
521 clock-names = "iface", "core", "xo";
522 clocks = <&gcc GCC_SDCC2_AHB_CLK>,
523 <&gcc GCC_SDCC2_APPS_CLK>,
528 msmgpio: pinctrl@1010000 {
529 compatible = "qcom,msm8996-pinctrl";
530 reg = <0x01010000 0x300000>;
531 interrupts = <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>;
534 interrupt-controller;
535 #interrupt-cells = <2>;
539 #address-cells = <1>;
542 compatible = "arm,armv7-timer-mem";
543 reg = <0x09840000 0x1000>;
544 clock-frequency = <19200000>;
548 interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>,
549 <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>;
550 reg = <0x09850000 0x1000>,
556 interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>;
557 reg = <0x09870000 0x1000>;
563 interrupts = <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>;
564 reg = <0x09880000 0x1000>;
570 interrupts = <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>;
571 reg = <0x09890000 0x1000>;
577 interrupts = <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>;
578 reg = <0x098a0000 0x1000>;
584 interrupts = <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>;
585 reg = <0x098b0000 0x1000>;
591 interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>;
592 reg = <0x098c0000 0x1000>;
597 spmi_bus: qcom,spmi@400f000 {
598 compatible = "qcom,spmi-pmic-arb";
599 reg = <0x400f000 0x1000>,
600 <0x4400000 0x800000>,
601 <0x4c00000 0x800000>,
602 <0x5800000 0x200000>,
603 <0x400a000 0x002100>;
604 reg-names = "core", "chnls", "obsrvr", "intr", "cnfg";
605 interrupt-names = "periph_irq";
606 interrupts = <GIC_SPI 326 IRQ_TYPE_LEVEL_HIGH>;
609 #address-cells = <2>;
611 interrupt-controller;
612 #interrupt-cells = <4>;
615 mmcc: clock-controller@8c0000 {
616 compatible = "qcom,mmcc-msm8996";
619 #power-domain-cells = <1>;
620 reg = <0x8c0000 0x40000>;
621 assigned-clocks = <&mmcc MMPLL9_PLL>,
626 assigned-clock-rates = <624000000>,
634 compatible = "qcom,qfprom";
635 reg = <0x74000 0x8ff>;
636 #address-cells = <1>;
639 qusb2p_hstx_trim: hstx_trim@24e {
644 qusb2s_hstx_trim: hstx_trim@24f {
651 compatible = "qcom,msm8996-qmp-pcie-phy";
652 reg = <0x34000 0x488>;
654 #address-cells = <1>;
658 clocks = <&gcc GCC_PCIE_PHY_AUX_CLK>,
659 <&gcc GCC_PCIE_PHY_CFG_AHB_CLK>,
660 <&gcc GCC_PCIE_CLKREF_CLK>;
661 clock-names = "aux", "cfg_ahb", "ref";
663 vdda-phy-supply = <&pm8994_l28>;
664 vdda-pll-supply = <&pm8994_l12>;
666 resets = <&gcc GCC_PCIE_PHY_BCR>,
667 <&gcc GCC_PCIE_PHY_COM_BCR>,
668 <&gcc GCC_PCIE_PHY_COM_NOCSR_BCR>;
669 reset-names = "phy", "common", "cfg";
672 pciephy_0: lane@35000 {
673 reg = <0x035000 0x130>,
678 clock-output-names = "pcie_0_pipe_clk_src";
679 clocks = <&gcc GCC_PCIE_0_PIPE_CLK>;
680 clock-names = "pipe0";
681 resets = <&gcc GCC_PCIE_0_PHY_BCR>;
682 reset-names = "lane0";
685 pciephy_1: lane@36000 {
686 reg = <0x036000 0x130>,
691 clock-output-names = "pcie_1_pipe_clk_src";
692 clocks = <&gcc GCC_PCIE_1_PIPE_CLK>;
693 clock-names = "pipe1";
694 resets = <&gcc GCC_PCIE_1_PHY_BCR>;
695 reset-names = "lane1";
698 pciephy_2: lane@37000 {
699 reg = <0x037000 0x130>,
704 clock-output-names = "pcie_2_pipe_clk_src";
705 clocks = <&gcc GCC_PCIE_2_PIPE_CLK>;
706 clock-names = "pipe2";
707 resets = <&gcc GCC_PCIE_2_PHY_BCR>;
708 reset-names = "lane2";
713 compatible = "qcom,msm8996-qmp-usb3-phy";
714 reg = <0x7410000 0x1c4>;
716 #address-cells = <1>;
720 clocks = <&gcc GCC_USB3_PHY_AUX_CLK>,
721 <&gcc GCC_USB_PHY_CFG_AHB2PHY_CLK>,
722 <&gcc GCC_USB3_CLKREF_CLK>;
723 clock-names = "aux", "cfg_ahb", "ref";
725 vdda-phy-supply = <&pm8994_l28>;
726 vdda-pll-supply = <&pm8994_l12>;
728 resets = <&gcc GCC_USB3_PHY_BCR>,
729 <&gcc GCC_USB3PHY_PHY_BCR>;
730 reset-names = "phy", "common";
733 ssusb_phy_0: lane@7410200 {
734 reg = <0x7410200 0x200>,
739 clock-output-names = "usb3_phy_pipe_clk_src";
740 clocks = <&gcc GCC_USB3_PHY_PIPE_CLK>;
741 clock-names = "pipe0";
745 hsusb_phy1: phy@7411000 {
746 compatible = "qcom,msm8996-qusb2-phy";
747 reg = <0x7411000 0x180>;
750 clocks = <&gcc GCC_USB_PHY_CFG_AHB2PHY_CLK>,
751 <&gcc GCC_RX1_USB2_CLKREF_CLK>;
752 clock-names = "cfg_ahb", "ref";
754 vdda-pll-supply = <&pm8994_l12>;
755 vdda-phy-dpdm-supply = <&pm8994_l24>;
757 resets = <&gcc GCC_QUSB2PHY_PRIM_BCR>;
758 nvmem-cells = <&qusb2p_hstx_trim>;
762 hsusb_phy2: phy@7412000 {
763 compatible = "qcom,msm8996-qusb2-phy";
764 reg = <0x7412000 0x180>;
767 clocks = <&gcc GCC_USB_PHY_CFG_AHB2PHY_CLK>,
768 <&gcc GCC_RX2_USB2_CLKREF_CLK>;
769 clock-names = "cfg_ahb", "ref";
771 vdda-pll-supply = <&pm8994_l12>;
772 vdda-phy-dpdm-supply = <&pm8994_l24>;
774 resets = <&gcc GCC_QUSB2PHY_SEC_BCR>;
775 nvmem-cells = <&qusb2s_hstx_trim>;
780 compatible = "qcom,dwc3";
781 #address-cells = <1>;
785 clocks = <&gcc GCC_PERIPH_NOC_USB20_AHB_CLK>,
786 <&gcc GCC_USB20_MASTER_CLK>,
787 <&gcc GCC_USB20_MOCK_UTMI_CLK>,
788 <&gcc GCC_USB20_SLEEP_CLK>,
789 <&gcc GCC_USB_PHY_CFG_AHB2PHY_CLK>;
791 assigned-clocks = <&gcc GCC_USB20_MOCK_UTMI_CLK>,
792 <&gcc GCC_USB20_MASTER_CLK>;
793 assigned-clock-rates = <19200000>, <60000000>;
795 power-domains = <&gcc USB30_GDSC>;
799 compatible = "snps,dwc3";
800 reg = <0x7600000 0xcc00>;
801 interrupts = <0 138 0>;
802 phys = <&hsusb_phy2>;
803 phy-names = "usb2-phy";
808 compatible = "qcom,dwc3";
809 #address-cells = <1>;
813 clocks = <&gcc GCC_SYS_NOC_USB3_AXI_CLK>,
814 <&gcc GCC_USB30_MASTER_CLK>,
815 <&gcc GCC_AGGRE2_USB3_AXI_CLK>,
816 <&gcc GCC_USB30_MOCK_UTMI_CLK>,
817 <&gcc GCC_USB30_SLEEP_CLK>,
818 <&gcc GCC_USB_PHY_CFG_AHB2PHY_CLK>;
820 assigned-clocks = <&gcc GCC_USB30_MOCK_UTMI_CLK>,
821 <&gcc GCC_USB30_MASTER_CLK>;
822 assigned-clock-rates = <19200000>, <120000000>;
824 power-domains = <&gcc USB30_GDSC>;
828 compatible = "snps,dwc3";
829 reg = <0x6a00000 0xcc00>;
830 interrupts = <0 131 0>;
831 phys = <&hsusb_phy1>, <&ssusb_phy_0>;
832 phy-names = "usb2-phy", "usb3-phy";
837 power-domains = <&gcc AGGRE0_NOC_GDSC>;
838 compatible = "simple-pm-bus";
839 #address-cells = <1>;
843 pcie0: qcom,pcie@600000 {
844 compatible = "qcom,pcie-msm8996", "snps,dw-pcie";
846 power-domains = <&gcc PCIE0_GDSC>;
847 bus-range = <0x00 0xff>;
850 reg = <0x00600000 0x2000>,
853 <0x0c100000 0x100000>;
854 reg-names = "parf", "dbi", "elbi","config";
857 phy-names = "pciephy";
859 #address-cells = <3>;
861 ranges = <0x01000000 0x0 0x0c200000 0x0c200000 0x0 0x100000>,
862 <0x02000000 0x0 0x0c300000 0x0c300000 0x0 0xd00000>;
864 interrupts = <GIC_SPI 405 IRQ_TYPE_NONE>;
865 interrupt-names = "msi";
866 #interrupt-cells = <1>;
867 interrupt-map-mask = <0 0 0 0x7>;
868 interrupt-map = <0 0 0 1 &intc 0 244 IRQ_TYPE_LEVEL_HIGH>, /* int_a */
869 <0 0 0 2 &intc 0 245 IRQ_TYPE_LEVEL_HIGH>, /* int_b */
870 <0 0 0 3 &intc 0 247 IRQ_TYPE_LEVEL_HIGH>, /* int_c */
871 <0 0 0 4 &intc 0 248 IRQ_TYPE_LEVEL_HIGH>; /* int_d */
873 pinctrl-names = "default", "sleep";
874 pinctrl-0 = <&pcie0_clkreq_default &pcie0_perst_default &pcie0_wake_default>;
875 pinctrl-1 = <&pcie0_clkreq_sleep &pcie0_perst_default &pcie0_wake_sleep>;
878 vdda-supply = <&pm8994_l28>;
880 linux,pci-domain = <0>;
882 clocks = <&gcc GCC_PCIE_0_PIPE_CLK>,
883 <&gcc GCC_PCIE_0_AUX_CLK>,
884 <&gcc GCC_PCIE_0_CFG_AHB_CLK>,
885 <&gcc GCC_PCIE_0_MSTR_AXI_CLK>,
886 <&gcc GCC_PCIE_0_SLV_AXI_CLK>;
888 clock-names = "pipe",
896 pcie1: qcom,pcie@608000 {
897 compatible = "qcom,pcie-msm8996", "snps,dw-pcie";
898 power-domains = <&gcc PCIE1_GDSC>;
899 bus-range = <0x00 0xff>;
904 reg = <0x00608000 0x2000>,
907 <0x0d100000 0x100000>;
909 reg-names = "parf", "dbi", "elbi","config";
912 phy-names = "pciephy";
914 #address-cells = <3>;
916 ranges = <0x01000000 0x0 0x0d200000 0x0d200000 0x0 0x100000>,
917 <0x02000000 0x0 0x0d300000 0x0d300000 0x0 0xd00000>;
919 interrupts = <GIC_SPI 413 IRQ_TYPE_NONE>;
920 interrupt-names = "msi";
921 #interrupt-cells = <1>;
922 interrupt-map-mask = <0 0 0 0x7>;
923 interrupt-map = <0 0 0 1 &intc 0 272 IRQ_TYPE_LEVEL_HIGH>, /* int_a */
924 <0 0 0 2 &intc 0 273 IRQ_TYPE_LEVEL_HIGH>, /* int_b */
925 <0 0 0 3 &intc 0 274 IRQ_TYPE_LEVEL_HIGH>, /* int_c */
926 <0 0 0 4 &intc 0 275 IRQ_TYPE_LEVEL_HIGH>; /* int_d */
928 pinctrl-names = "default", "sleep";
929 pinctrl-0 = <&pcie1_clkreq_default &pcie1_perst_default &pcie1_wake_default>;
930 pinctrl-1 = <&pcie1_clkreq_sleep &pcie1_perst_default &pcie1_wake_sleep>;
933 vdda-supply = <&pm8994_l28>;
934 linux,pci-domain = <1>;
936 clocks = <&gcc GCC_PCIE_1_PIPE_CLK>,
937 <&gcc GCC_PCIE_1_AUX_CLK>,
938 <&gcc GCC_PCIE_1_CFG_AHB_CLK>,
939 <&gcc GCC_PCIE_1_MSTR_AXI_CLK>,
940 <&gcc GCC_PCIE_1_SLV_AXI_CLK>;
942 clock-names = "pipe",
949 pcie2: qcom,pcie@610000 {
950 compatible = "qcom,pcie-msm8996", "snps,dw-pcie";
951 power-domains = <&gcc PCIE2_GDSC>;
952 bus-range = <0x00 0xff>;
955 reg = <0x00610000 0x2000>,
958 <0x0e100000 0x100000>;
960 reg-names = "parf", "dbi", "elbi","config";
963 phy-names = "pciephy";
965 #address-cells = <3>;
967 ranges = <0x01000000 0x0 0x0e200000 0x0e200000 0x0 0x100000>,
968 <0x02000000 0x0 0x0e300000 0x0e300000 0x0 0x1d00000>;
972 interrupts = <GIC_SPI 421 IRQ_TYPE_NONE>;
973 interrupt-names = "msi";
974 #interrupt-cells = <1>;
975 interrupt-map-mask = <0 0 0 0x7>;
976 interrupt-map = <0 0 0 1 &intc 0 142 IRQ_TYPE_LEVEL_HIGH>, /* int_a */
977 <0 0 0 2 &intc 0 143 IRQ_TYPE_LEVEL_HIGH>, /* int_b */
978 <0 0 0 3 &intc 0 144 IRQ_TYPE_LEVEL_HIGH>, /* int_c */
979 <0 0 0 4 &intc 0 145 IRQ_TYPE_LEVEL_HIGH>; /* int_d */
981 pinctrl-names = "default", "sleep";
982 pinctrl-0 = <&pcie2_clkreq_default &pcie2_perst_default &pcie2_wake_default>;
983 pinctrl-1 = <&pcie2_clkreq_sleep &pcie2_perst_default &pcie2_wake_sleep >;
985 vdda-supply = <&pm8994_l28>;
987 linux,pci-domain = <2>;
988 clocks = <&gcc GCC_PCIE_2_PIPE_CLK>,
989 <&gcc GCC_PCIE_2_AUX_CLK>,
990 <&gcc GCC_PCIE_2_CFG_AHB_CLK>,
991 <&gcc GCC_PCIE_2_MSTR_AXI_CLK>,
992 <&gcc GCC_PCIE_2_SLV_AXI_CLK>;
994 clock-names = "pipe",
1004 compatible = "qcom,msm8996-adsp-pil";
1006 interrupts-extended = <&intc 0 162 IRQ_TYPE_EDGE_RISING>,
1007 <&adsp_smp2p_in 0 IRQ_TYPE_EDGE_RISING>,
1008 <&adsp_smp2p_in 1 IRQ_TYPE_EDGE_RISING>,
1009 <&adsp_smp2p_in 2 IRQ_TYPE_EDGE_RISING>,
1010 <&adsp_smp2p_in 3 IRQ_TYPE_EDGE_RISING>;
1011 interrupt-names = "wdog", "fatal", "ready",
1012 "handover", "stop-ack";
1014 clocks = <&xo_board>;
1017 memory-region = <&adsp_region>;
1019 qcom,smem-states = <&adsp_smp2p_out 0>;
1020 qcom,smem-state-names = "stop";
1023 interrupts = <GIC_SPI 156 IRQ_TYPE_EDGE_RISING>;
1026 qcom,ipc = <&apcs 16 8>;
1027 qcom,smd-edge = <1>;
1028 qcom,remote-pid = <2>;
1033 compatible = "qcom,smp2p";
1034 qcom,smem = <443>, <429>;
1036 interrupts = <0 158 IRQ_TYPE_EDGE_RISING>;
1038 qcom,ipc = <&apcs 16 10>;
1040 qcom,local-pid = <0>;
1041 qcom,remote-pid = <2>;
1043 adsp_smp2p_out: master-kernel {
1044 qcom,entry-name = "master-kernel";
1045 #qcom,smem-state-cells = <1>;
1048 adsp_smp2p_in: slave-kernel {
1049 qcom,entry-name = "slave-kernel";
1051 interrupt-controller;
1052 #interrupt-cells = <2>;
1057 compatible = "qcom,smp2p";
1058 qcom,smem = <435>, <428>;
1060 interrupts = <GIC_SPI 451 IRQ_TYPE_EDGE_RISING>;
1062 qcom,ipc = <&apcs 16 14>;
1064 qcom,local-pid = <0>;
1065 qcom,remote-pid = <1>;
1067 modem_smp2p_out: master-kernel {
1068 qcom,entry-name = "master-kernel";
1069 #qcom,smem-state-cells = <1>;
1072 modem_smp2p_in: slave-kernel {
1073 qcom,entry-name = "slave-kernel";
1075 interrupt-controller;
1076 #interrupt-cells = <2>;
1081 compatible = "qcom,smp2p";
1082 qcom,smem = <481>, <430>;
1084 interrupts = <GIC_SPI 178 IRQ_TYPE_EDGE_RISING>;
1086 qcom,ipc = <&apcs 16 26>;
1088 qcom,local-pid = <0>;
1089 qcom,remote-pid = <3>;
1091 slpi_smp2p_in: slave-kernel {
1092 qcom,entry-name = "slave-kernel";
1093 interrupt-controller;
1094 #interrupt-cells = <2>;
1097 slpi_smp2p_out: master-kernel {
1098 qcom,entry-name = "master-kernel";
1099 #qcom,smem-state-cells = <1>;
1104 #include "msm8996-pins.dtsi"