xref: /openbmc/linux/scripts/dtc/include-prefixes/arm64/qcom/ipq6018.dtsi (revision bf74ee101d3403d72dac5997be083ac41028c66b)
11e827785SSricharan R// SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause)
21e827785SSricharan R/*
31e827785SSricharan R * IPQ6018 SoC device tree source
41e827785SSricharan R *
51e827785SSricharan R * Copyright (c) 2019, The Linux Foundation. All rights reserved.
61e827785SSricharan R */
71e827785SSricharan R
81e827785SSricharan R#include <dt-bindings/interrupt-controller/arm-gic.h>
91e827785SSricharan R#include <dt-bindings/clock/qcom,gcc-ipq6018.h>
105bf63562SSivaprakash Murugesan#include <dt-bindings/reset/qcom,gcc-ipq6018.h>
1136f91e63SKathiravan T#include <dt-bindings/clock/qcom,apss-ipq.h>
121e827785SSricharan R
131e827785SSricharan R/ {
141e827785SSricharan R	#address-cells = <2>;
151e827785SSricharan R	#size-cells = <2>;
161e827785SSricharan R	interrupt-parent = <&intc>;
171e827785SSricharan R
181e827785SSricharan R	clocks {
191e827785SSricharan R		sleep_clk: sleep-clk {
201e827785SSricharan R			compatible = "fixed-clock";
211e827785SSricharan R			clock-frequency = <32000>;
221e827785SSricharan R			#clock-cells = <0>;
231e827785SSricharan R		};
241e827785SSricharan R
251e827785SSricharan R		xo: xo {
261e827785SSricharan R			compatible = "fixed-clock";
271e827785SSricharan R			clock-frequency = <24000000>;
281e827785SSricharan R			#clock-cells = <0>;
291e827785SSricharan R		};
301e827785SSricharan R	};
311e827785SSricharan R
321e827785SSricharan R	cpus: cpus {
331e827785SSricharan R		#address-cells = <1>;
341e827785SSricharan R		#size-cells = <0>;
351e827785SSricharan R
361e827785SSricharan R		CPU0: cpu@0 {
371e827785SSricharan R			device_type = "cpu";
381e827785SSricharan R			compatible = "arm,cortex-a53";
391e827785SSricharan R			reg = <0x0>;
401e827785SSricharan R			enable-method = "psci";
411e827785SSricharan R			next-level-cache = <&L2_0>;
4236f91e63SKathiravan T			clocks = <&apcs_glb APCS_ALIAS0_CORE_CLK>;
4336f91e63SKathiravan T			clock-names = "cpu";
4436f91e63SKathiravan T			operating-points-v2 = <&cpu_opp_table>;
4536f91e63SKathiravan T			cpu-supply = <&ipq6018_s2>;
461e827785SSricharan R		};
471e827785SSricharan R
481e827785SSricharan R		CPU1: cpu@1 {
491e827785SSricharan R			device_type = "cpu";
501e827785SSricharan R			compatible = "arm,cortex-a53";
511e827785SSricharan R			enable-method = "psci";
521e827785SSricharan R			reg = <0x1>;
531e827785SSricharan R			next-level-cache = <&L2_0>;
5436f91e63SKathiravan T			clocks = <&apcs_glb APCS_ALIAS0_CORE_CLK>;
5536f91e63SKathiravan T			clock-names = "cpu";
5636f91e63SKathiravan T			operating-points-v2 = <&cpu_opp_table>;
5736f91e63SKathiravan T			cpu-supply = <&ipq6018_s2>;
581e827785SSricharan R		};
591e827785SSricharan R
601e827785SSricharan R		CPU2: cpu@2 {
611e827785SSricharan R			device_type = "cpu";
621e827785SSricharan R			compatible = "arm,cortex-a53";
631e827785SSricharan R			enable-method = "psci";
641e827785SSricharan R			reg = <0x2>;
651e827785SSricharan R			next-level-cache = <&L2_0>;
6636f91e63SKathiravan T			clocks = <&apcs_glb APCS_ALIAS0_CORE_CLK>;
6736f91e63SKathiravan T			clock-names = "cpu";
6836f91e63SKathiravan T			operating-points-v2 = <&cpu_opp_table>;
6936f91e63SKathiravan T			cpu-supply = <&ipq6018_s2>;
701e827785SSricharan R		};
711e827785SSricharan R
721e827785SSricharan R		CPU3: cpu@3 {
731e827785SSricharan R			device_type = "cpu";
741e827785SSricharan R			compatible = "arm,cortex-a53";
751e827785SSricharan R			enable-method = "psci";
761e827785SSricharan R			reg = <0x3>;
771e827785SSricharan R			next-level-cache = <&L2_0>;
7836f91e63SKathiravan T			clocks = <&apcs_glb APCS_ALIAS0_CORE_CLK>;
7936f91e63SKathiravan T			clock-names = "cpu";
8036f91e63SKathiravan T			operating-points-v2 = <&cpu_opp_table>;
8136f91e63SKathiravan T			cpu-supply = <&ipq6018_s2>;
821e827785SSricharan R		};
831e827785SSricharan R
841e827785SSricharan R		L2_0: l2-cache {
851e827785SSricharan R			compatible = "cache";
8608465709SKrzysztof Kozlowski			cache-level = <2>;
879c6e72fbSKrzysztof Kozlowski			cache-unified;
881e827785SSricharan R		};
891e827785SSricharan R	};
901e827785SSricharan R
912c6e322aSKonrad Dybcio	firmware {
922c6e322aSKonrad Dybcio		scm {
932c6e322aSKonrad Dybcio			compatible = "qcom,scm-ipq6018", "qcom,scm";
949b2406aaSVignesh Viswanathan			qcom,dload-mode = <&tcsr 0x6100>;
952c6e322aSKonrad Dybcio		};
962c6e322aSKonrad Dybcio	};
972c6e322aSKonrad Dybcio
980e3e6546SKrzysztof Kozlowski	cpu_opp_table: opp-table-cpu {
9936f91e63SKathiravan T		compatible = "operating-points-v2";
10036f91e63SKathiravan T		opp-shared;
10136f91e63SKathiravan T
10236f91e63SKathiravan T		opp-864000000 {
10336f91e63SKathiravan T			opp-hz = /bits/ 64 <864000000>;
10436f91e63SKathiravan T			opp-microvolt = <725000>;
10536f91e63SKathiravan T			clock-latency-ns = <200000>;
10636f91e63SKathiravan T		};
1076db9ed9aSKonrad Dybcio
10836f91e63SKathiravan T		opp-1056000000 {
10936f91e63SKathiravan T			opp-hz = /bits/ 64 <1056000000>;
11036f91e63SKathiravan T			opp-microvolt = <787500>;
11136f91e63SKathiravan T			clock-latency-ns = <200000>;
11236f91e63SKathiravan T		};
1136db9ed9aSKonrad Dybcio
11436f91e63SKathiravan T		opp-1320000000 {
11536f91e63SKathiravan T			opp-hz = /bits/ 64 <1320000000>;
11636f91e63SKathiravan T			opp-microvolt = <862500>;
11736f91e63SKathiravan T			clock-latency-ns = <200000>;
11836f91e63SKathiravan T		};
1196db9ed9aSKonrad Dybcio
12036f91e63SKathiravan T		opp-1440000000 {
12136f91e63SKathiravan T			opp-hz = /bits/ 64 <1440000000>;
12236f91e63SKathiravan T			opp-microvolt = <925000>;
12336f91e63SKathiravan T			clock-latency-ns = <200000>;
12436f91e63SKathiravan T		};
1256db9ed9aSKonrad Dybcio
12636f91e63SKathiravan T		opp-1608000000 {
12736f91e63SKathiravan T			opp-hz = /bits/ 64 <1608000000>;
12836f91e63SKathiravan T			opp-microvolt = <987500>;
12936f91e63SKathiravan T			clock-latency-ns = <200000>;
13036f91e63SKathiravan T		};
1316db9ed9aSKonrad Dybcio
13236f91e63SKathiravan T		opp-1800000000 {
13336f91e63SKathiravan T			opp-hz = /bits/ 64 <1800000000>;
13436f91e63SKathiravan T			opp-microvolt = <1062500>;
13536f91e63SKathiravan T			clock-latency-ns = <200000>;
13636f91e63SKathiravan T		};
13736f91e63SKathiravan T	};
13836f91e63SKathiravan T
1391e827785SSricharan R	pmuv8: pmu {
1401e827785SSricharan R		compatible = "arm,cortex-a53-pmu";
1416db9ed9aSKonrad Dybcio		interrupts = <GIC_PPI 7 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>;
1421e827785SSricharan R	};
1431e827785SSricharan R
1441e827785SSricharan R	psci: psci {
1451e827785SSricharan R		compatible = "arm,psci-1.0";
1461e827785SSricharan R		method = "smc";
1471e827785SSricharan R	};
1481e827785SSricharan R
1497e1acc8bSStephan Gerhold	rpm: remoteproc {
1507e1acc8bSStephan Gerhold		compatible = "qcom,ipq6018-rpm-proc", "qcom,rpm-proc";
1517e1acc8bSStephan Gerhold
1527e1acc8bSStephan Gerhold		glink-edge {
1537e1acc8bSStephan Gerhold			compatible = "qcom,glink-rpm";
1547e1acc8bSStephan Gerhold			interrupts = <GIC_SPI 168 IRQ_TYPE_EDGE_RISING>;
1557e1acc8bSStephan Gerhold			qcom,rpm-msg-ram = <&rpm_msg_ram>;
1567e1acc8bSStephan Gerhold			mboxes = <&apcs_glb 0>;
1577e1acc8bSStephan Gerhold
1587e1acc8bSStephan Gerhold			rpm_requests: rpm-requests {
1597e1acc8bSStephan Gerhold				compatible = "qcom,rpm-ipq6018";
1607e1acc8bSStephan Gerhold				qcom,glink-channels = "rpm_requests";
1617e1acc8bSStephan Gerhold
1627e1acc8bSStephan Gerhold				regulators {
1637e1acc8bSStephan Gerhold					compatible = "qcom,rpm-mp5496-regulators";
1647e1acc8bSStephan Gerhold
1657e1acc8bSStephan Gerhold					ipq6018_s2: s2 {
1667e1acc8bSStephan Gerhold						regulator-min-microvolt = <725000>;
1677e1acc8bSStephan Gerhold						regulator-max-microvolt = <1062500>;
1687e1acc8bSStephan Gerhold						regulator-always-on;
1697e1acc8bSStephan Gerhold					};
1707e1acc8bSStephan Gerhold				};
1717e1acc8bSStephan Gerhold			};
1727e1acc8bSStephan Gerhold		};
1737e1acc8bSStephan Gerhold	};
1747e1acc8bSStephan Gerhold
1751e827785SSricharan R	reserved-memory {
1761e827785SSricharan R		#address-cells = <2>;
1771e827785SSricharan R		#size-cells = <2>;
1781e827785SSricharan R		ranges;
1791e827785SSricharan R
1801b91b8efSVinod Koul		rpm_msg_ram: memory@60000 {
181647380e4SKonrad Dybcio			reg = <0x0 0x00060000 0x0 0x6000>;
18236f91e63SKathiravan T			no-map;
18336f91e63SKathiravan T		};
18436f91e63SKathiravan T
1850cd4e90cSVignesh Viswanathan		bootloader@4a100000 {
1860cd4e90cSVignesh Viswanathan			reg = <0x0 0x4a100000 0x0 0x400000>;
1870cd4e90cSVignesh Viswanathan			no-map;
1880cd4e90cSVignesh Viswanathan		};
1890cd4e90cSVignesh Viswanathan
1900cd4e90cSVignesh Viswanathan		sbl@4a500000 {
1910cd4e90cSVignesh Viswanathan			reg = <0x0 0x4a500000 0x0 0x100000>;
1920cd4e90cSVignesh Viswanathan			no-map;
1930cd4e90cSVignesh Viswanathan		};
1940cd4e90cSVignesh Viswanathan
1954af5c6dcSKathiravan T		tz: memory@4a600000 {
1960cd4e90cSVignesh Viswanathan			reg = <0x0 0x4a600000 0x0 0x400000>;
1971e827785SSricharan R			no-map;
1981e827785SSricharan R		};
1995bf63562SSivaprakash Murugesan
2005bf63562SSivaprakash Murugesan		smem_region: memory@4aa00000 {
2010cd4e90cSVignesh Viswanathan			reg = <0x0 0x4aa00000 0x0 0x100000>;
2025bf63562SSivaprakash Murugesan			no-map;
2035bf63562SSivaprakash Murugesan		};
2045bf63562SSivaprakash Murugesan
2055bf63562SSivaprakash Murugesan		q6_region: memory@4ab00000 {
2060cd4e90cSVignesh Viswanathan			reg = <0x0 0x4ab00000 0x0 0x5500000>;
2075bf63562SSivaprakash Murugesan			no-map;
2085bf63562SSivaprakash Murugesan		};
2095bf63562SSivaprakash Murugesan	};
2105bf63562SSivaprakash Murugesan
2115bf63562SSivaprakash Murugesan	smem {
2125bf63562SSivaprakash Murugesan		compatible = "qcom,smem";
2135bf63562SSivaprakash Murugesan		memory-region = <&smem_region>;
214aeefe80cSVignesh Viswanathan		hwlocks = <&tcsr_mutex 3>;
2151e827785SSricharan R	};
2161e827785SSricharan R
217393595d4SKrzysztof Kozlowski	soc: soc@0 {
21877e9c198SZhen Lei		#address-cells = <2>;
21977e9c198SZhen Lei		#size-cells = <2>;
22077e9c198SZhen Lei		ranges = <0 0 0 0 0x0 0xffffffff>;
2211e827785SSricharan R		dma-ranges;
2221e827785SSricharan R		compatible = "simple-bus";
2231e827785SSricharan R
2242c6e322aSKonrad Dybcio		qusb_phy_1: qusb@59000 {
2252c6e322aSKonrad Dybcio			compatible = "qcom,ipq6018-qusb2-phy";
2262c6e322aSKonrad Dybcio			reg = <0x0 0x00059000 0x0 0x180>;
2272c6e322aSKonrad Dybcio			#phy-cells = <0>;
2282c6e322aSKonrad Dybcio
2292c6e322aSKonrad Dybcio			clocks = <&gcc GCC_USB1_PHY_CFG_AHB_CLK>,
2302c6e322aSKonrad Dybcio				 <&xo>;
2312c6e322aSKonrad Dybcio			clock-names = "cfg_ahb", "ref";
2322c6e322aSKonrad Dybcio
2332c6e322aSKonrad Dybcio			resets = <&gcc GCC_QUSB2_1_PHY_BCR>;
2342c6e322aSKonrad Dybcio			status = "disabled";
2352c6e322aSKonrad Dybcio		};
2362c6e322aSKonrad Dybcio
2372c6e322aSKonrad Dybcio		ssphy_0: ssphy@78000 {
2382c6e322aSKonrad Dybcio			compatible = "qcom,ipq6018-qmp-usb3-phy";
2392c6e322aSKonrad Dybcio			reg = <0x0 0x00078000 0x0 0x1c4>;
2402c6e322aSKonrad Dybcio			#address-cells = <2>;
2412c6e322aSKonrad Dybcio			#size-cells = <2>;
2422c6e322aSKonrad Dybcio			ranges;
2432c6e322aSKonrad Dybcio
2442c6e322aSKonrad Dybcio			clocks = <&gcc GCC_USB0_AUX_CLK>,
2452c6e322aSKonrad Dybcio				 <&gcc GCC_USB0_PHY_CFG_AHB_CLK>, <&xo>;
2462c6e322aSKonrad Dybcio			clock-names = "aux", "cfg_ahb", "ref";
2472c6e322aSKonrad Dybcio
2482c6e322aSKonrad Dybcio			resets = <&gcc GCC_USB0_PHY_BCR>,
2492c6e322aSKonrad Dybcio				 <&gcc GCC_USB3PHY_0_PHY_BCR>;
2502c6e322aSKonrad Dybcio			reset-names = "phy","common";
2512c6e322aSKonrad Dybcio			status = "disabled";
2522c6e322aSKonrad Dybcio
2532c6e322aSKonrad Dybcio			usb0_ssphy: phy@78200 {
2542c6e322aSKonrad Dybcio				reg = <0x0 0x00078200 0x0 0x130>, /* Tx */
2552c6e322aSKonrad Dybcio				      <0x0 0x00078400 0x0 0x200>, /* Rx */
2562c6e322aSKonrad Dybcio				      <0x0 0x00078800 0x0 0x1f8>, /* PCS */
2572c6e322aSKonrad Dybcio				      <0x0 0x00078600 0x0 0x044>; /* PCS misc */
2582c6e322aSKonrad Dybcio				#phy-cells = <0>;
2592c6e322aSKonrad Dybcio				#clock-cells = <0>;
2602c6e322aSKonrad Dybcio				clocks = <&gcc GCC_USB0_PIPE_CLK>;
2612c6e322aSKonrad Dybcio				clock-names = "pipe0";
2622c6e322aSKonrad Dybcio				clock-output-names = "gcc_usb0_pipe_clk_src";
2632c6e322aSKonrad Dybcio			};
2642c6e322aSKonrad Dybcio		};
2652c6e322aSKonrad Dybcio
2662c6e322aSKonrad Dybcio		qusb_phy_0: qusb@79000 {
2672c6e322aSKonrad Dybcio			compatible = "qcom,ipq6018-qusb2-phy";
2682c6e322aSKonrad Dybcio			reg = <0x0 0x00079000 0x0 0x180>;
2692c6e322aSKonrad Dybcio			#phy-cells = <0>;
2702c6e322aSKonrad Dybcio
2712c6e322aSKonrad Dybcio			clocks = <&gcc GCC_USB0_PHY_CFG_AHB_CLK>,
2722c6e322aSKonrad Dybcio				<&xo>;
2732c6e322aSKonrad Dybcio			clock-names = "cfg_ahb", "ref";
2742c6e322aSKonrad Dybcio
2752c6e322aSKonrad Dybcio			resets = <&gcc GCC_QUSB2_0_PHY_BCR>;
2762c6e322aSKonrad Dybcio			status = "disabled";
2772c6e322aSKonrad Dybcio		};
2782c6e322aSKonrad Dybcio
2792c6e322aSKonrad Dybcio		pcie_phy: phy@84000 {
2802c6e322aSKonrad Dybcio			compatible = "qcom,ipq6018-qmp-pcie-phy";
2812c6e322aSKonrad Dybcio			reg = <0x0 0x00084000 0x0 0x1bc>; /* Serdes PLL */
2822c6e322aSKonrad Dybcio			status = "disabled";
2832c6e322aSKonrad Dybcio			#address-cells = <2>;
2842c6e322aSKonrad Dybcio			#size-cells = <2>;
2852c6e322aSKonrad Dybcio			ranges;
2862c6e322aSKonrad Dybcio
2872c6e322aSKonrad Dybcio			clocks = <&gcc GCC_PCIE0_AUX_CLK>,
2882c6e322aSKonrad Dybcio				<&gcc GCC_PCIE0_AHB_CLK>;
2892c6e322aSKonrad Dybcio			clock-names = "aux", "cfg_ahb";
2902c6e322aSKonrad Dybcio
2912c6e322aSKonrad Dybcio			resets = <&gcc GCC_PCIE0_PHY_BCR>,
2922c6e322aSKonrad Dybcio				<&gcc GCC_PCIE0PHY_PHY_BCR>;
2932c6e322aSKonrad Dybcio			reset-names = "phy",
2942c6e322aSKonrad Dybcio				      "common";
2952c6e322aSKonrad Dybcio
2962c6e322aSKonrad Dybcio			pcie_phy0: phy@84200 {
2972c6e322aSKonrad Dybcio				reg = <0x0 0x00084200 0x0 0x16c>, /* Serdes Tx */
2982c6e322aSKonrad Dybcio				      <0x0 0x00084400 0x0 0x200>, /* Serdes Rx */
2992c6e322aSKonrad Dybcio				      <0x0 0x00084800 0x0 0x1f0>, /* PCS: Lane0, COM, PCIE */
3002c6e322aSKonrad Dybcio				      <0x0 0x00084c00 0x0 0xf4>; /* pcs_misc */
3012c6e322aSKonrad Dybcio				#phy-cells = <0>;
3022c6e322aSKonrad Dybcio
3032c6e322aSKonrad Dybcio				clocks = <&gcc GCC_PCIE0_PIPE_CLK>;
3042c6e322aSKonrad Dybcio				clock-names = "pipe0";
3052c6e322aSKonrad Dybcio				clock-output-names = "gcc_pcie0_pipe_clk_src";
3062c6e322aSKonrad Dybcio				#clock-cells = <0>;
3072c6e322aSKonrad Dybcio			};
3082c6e322aSKonrad Dybcio		};
3092c6e322aSKonrad Dybcio
3102c6e322aSKonrad Dybcio		mdio: mdio@90000 {
3112c6e322aSKonrad Dybcio			#address-cells = <1>;
3122c6e322aSKonrad Dybcio			#size-cells = <0>;
3132c6e322aSKonrad Dybcio			compatible = "qcom,ipq6018-mdio", "qcom,ipq4019-mdio";
3142c6e322aSKonrad Dybcio			reg = <0x0 0x00090000 0x0 0x64>;
3152c6e322aSKonrad Dybcio			clocks = <&gcc GCC_MDIO_AHB_CLK>;
3162c6e322aSKonrad Dybcio			clock-names = "gcc_mdio_ahb_clk";
3172c6e322aSKonrad Dybcio			status = "disabled";
3182c6e322aSKonrad Dybcio		};
3192c6e322aSKonrad Dybcio
320546f0617SKathiravan T		qfprom: efuse@a4000 {
321546f0617SKathiravan T			compatible = "qcom,ipq6018-qfprom", "qcom,qfprom";
322546f0617SKathiravan T			reg = <0x0 0x000a4000 0x0 0x2000>;
323546f0617SKathiravan T			#address-cells = <1>;
324546f0617SKathiravan T			#size-cells = <1>;
325546f0617SKathiravan T		};
326546f0617SKathiravan T
32708505878SKrzysztof Kozlowski		prng: qrng@e3000 {
3285bf63562SSivaprakash Murugesan			compatible = "qcom,prng-ee";
329647380e4SKonrad Dybcio			reg = <0x0 0x000e3000 0x0 0x1000>;
3305bf63562SSivaprakash Murugesan			clocks = <&gcc GCC_PRNG_AHB_CLK>;
3315bf63562SSivaprakash Murugesan			clock-names = "core";
3325bf63562SSivaprakash Murugesan		};
3335bf63562SSivaprakash Murugesan
33458acbcdcSVinod Koul		cryptobam: dma-controller@704000 {
3355bf63562SSivaprakash Murugesan			compatible = "qcom,bam-v1.7.0";
33677e9c198SZhen Lei			reg = <0x0 0x00704000 0x0 0x20000>;
3375bf63562SSivaprakash Murugesan			interrupts = <GIC_SPI 207 IRQ_TYPE_LEVEL_HIGH>;
3385bf63562SSivaprakash Murugesan			clocks = <&gcc GCC_CRYPTO_AHB_CLK>;
3395bf63562SSivaprakash Murugesan			clock-names = "bam_clk";
3405bf63562SSivaprakash Murugesan			#dma-cells = <1>;
3415bf63562SSivaprakash Murugesan			qcom,ee = <1>;
3423509de75SShawn Guo			qcom,controlled-remotely;
3435bf63562SSivaprakash Murugesan		};
3445bf63562SSivaprakash Murugesan
3455bf63562SSivaprakash Murugesan		crypto: crypto@73a000 {
3465bf63562SSivaprakash Murugesan			compatible = "qcom,crypto-v5.1";
34777e9c198SZhen Lei			reg = <0x0 0x0073a000 0x0 0x6000>;
3485bf63562SSivaprakash Murugesan			clocks = <&gcc GCC_CRYPTO_AHB_CLK>,
3495bf63562SSivaprakash Murugesan				 <&gcc GCC_CRYPTO_AXI_CLK>,
3505bf63562SSivaprakash Murugesan				 <&gcc GCC_CRYPTO_CLK>;
3515bf63562SSivaprakash Murugesan			clock-names = "iface", "bus", "core";
3525bf63562SSivaprakash Murugesan			dmas = <&cryptobam 2>, <&cryptobam 3>;
3535bf63562SSivaprakash Murugesan			dma-names = "rx", "tx";
3545bf63562SSivaprakash Murugesan		};
3555bf63562SSivaprakash Murugesan
3561e827785SSricharan R		tlmm: pinctrl@1000000 {
3571e827785SSricharan R			compatible = "qcom,ipq6018-pinctrl";
35877e9c198SZhen Lei			reg = <0x0 0x01000000 0x0 0x300000>;
3591e827785SSricharan R			interrupts = <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>;
3601e827785SSricharan R			gpio-controller;
3611e827785SSricharan R			#gpio-cells = <2>;
36272cb4c48SBaruch Siach			gpio-ranges = <&tlmm 0 0 80>;
3631e827785SSricharan R			interrupt-controller;
3641e827785SSricharan R			#interrupt-cells = <2>;
3651e827785SSricharan R
36620afb675SKrzysztof Kozlowski			serial_3_pins: serial3-state {
3671e827785SSricharan R				pins = "gpio44", "gpio45";
3681e827785SSricharan R				function = "blsp2_uart";
3691e827785SSricharan R				drive-strength = <8>;
3701e827785SSricharan R				bias-pull-down;
3711e827785SSricharan R			};
37274ab8ccfSKathiravan T
37320afb675SKrzysztof Kozlowski			qpic_pins: qpic-state {
37474ab8ccfSKathiravan T				pins = "gpio1", "gpio3", "gpio4",
37574ab8ccfSKathiravan T					"gpio5", "gpio6", "gpio7",
37674ab8ccfSKathiravan T					"gpio8", "gpio10", "gpio11",
37774ab8ccfSKathiravan T					"gpio12", "gpio13", "gpio14",
37874ab8ccfSKathiravan T					"gpio15", "gpio17";
37974ab8ccfSKathiravan T				function = "qpic_pad";
38074ab8ccfSKathiravan T				drive-strength = <8>;
38174ab8ccfSKathiravan T				bias-disable;
38274ab8ccfSKathiravan T			};
3831e827785SSricharan R		};
3841e827785SSricharan R
3851e827785SSricharan R		gcc: gcc@1800000 {
3861e827785SSricharan R			compatible = "qcom,gcc-ipq6018";
38777e9c198SZhen Lei			reg = <0x0 0x01800000 0x0 0x80000>;
3881e827785SSricharan R			clocks = <&xo>, <&sleep_clk>;
3891e827785SSricharan R			clock-names = "xo", "sleep_clk";
3901e827785SSricharan R			#clock-cells = <1>;
3911e827785SSricharan R			#reset-cells = <1>;
3921e827785SSricharan R		};
3931e827785SSricharan R
394f5e303aeSKrzysztof Kozlowski		tcsr_mutex: hwlock@1905000 {
395f5e303aeSKrzysztof Kozlowski			compatible = "qcom,ipq6018-tcsr-mutex", "qcom,tcsr-mutex";
396afa23368SVignesh Viswanathan			reg = <0x0 0x01905000 0x0 0x20000>;
397f5e303aeSKrzysztof Kozlowski			#hwlock-cells = <1>;
3985bf63562SSivaprakash Murugesan		};
3995bf63562SSivaprakash Murugesan
40053bc6b41SBaruch Siach		tcsr: syscon@1937000 {
401d30bcfa4SKrzysztof Kozlowski			compatible = "qcom,tcsr-ipq6018", "syscon";
40253bc6b41SBaruch Siach			reg = <0x0 0x01937000 0x0 0x21000>;
4035bf63562SSivaprakash Murugesan		};
4045bf63562SSivaprakash Murugesan
4052c6e322aSKonrad Dybcio		usb2: usb@70f8800 {
4062c6e322aSKonrad Dybcio			compatible = "qcom,ipq6018-dwc3", "qcom,dwc3";
4077356ae3eSKonrad Dybcio			reg = <0x0 0x070f8800 0x0 0x400>;
4082c6e322aSKonrad Dybcio			#address-cells = <2>;
4092c6e322aSKonrad Dybcio			#size-cells = <2>;
4102c6e322aSKonrad Dybcio			ranges;
4112c6e322aSKonrad Dybcio			clocks = <&gcc GCC_USB1_MASTER_CLK>,
4122c6e322aSKonrad Dybcio				 <&gcc GCC_USB1_SLEEP_CLK>,
4132c6e322aSKonrad Dybcio				 <&gcc GCC_USB1_MOCK_UTMI_CLK>;
4142c6e322aSKonrad Dybcio			clock-names = "core",
4152c6e322aSKonrad Dybcio				      "sleep",
4162c6e322aSKonrad Dybcio				      "mock_utmi";
4172c6e322aSKonrad Dybcio
4182c6e322aSKonrad Dybcio			assigned-clocks = <&gcc GCC_USB1_MASTER_CLK>,
4192c6e322aSKonrad Dybcio					  <&gcc GCC_USB1_MOCK_UTMI_CLK>;
4202c6e322aSKonrad Dybcio			assigned-clock-rates = <133330000>,
4212c6e322aSKonrad Dybcio					       <24000000>;
4222c6e322aSKonrad Dybcio			resets = <&gcc GCC_USB1_BCR>;
4232c6e322aSKonrad Dybcio			status = "disabled";
4242c6e322aSKonrad Dybcio
4252c6e322aSKonrad Dybcio			dwc_1: usb@7000000 {
4262c6e322aSKonrad Dybcio				compatible = "snps,dwc3";
4272c6e322aSKonrad Dybcio				reg = <0x0 0x07000000 0x0 0xcd00>;
4282c6e322aSKonrad Dybcio				interrupts = <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>;
4292c6e322aSKonrad Dybcio				phys = <&qusb_phy_1>;
4302c6e322aSKonrad Dybcio				phy-names = "usb2-phy";
4312c6e322aSKonrad Dybcio				tx-fifo-resize;
4322c6e322aSKonrad Dybcio				snps,is-utmi-l1-suspend;
4332c6e322aSKonrad Dybcio				snps,hird-threshold = /bits/ 8 <0x0>;
4342c6e322aSKonrad Dybcio				snps,dis_u2_susphy_quirk;
4352c6e322aSKonrad Dybcio				snps,dis_u3_susphy_quirk;
4362c6e322aSKonrad Dybcio				dr_mode = "host";
4372c6e322aSKonrad Dybcio			};
4382c6e322aSKonrad Dybcio		};
4392c6e322aSKonrad Dybcio
44058acbcdcSVinod Koul		blsp_dma: dma-controller@7884000 {
4415bf63562SSivaprakash Murugesan			compatible = "qcom,bam-v1.7.0";
44277e9c198SZhen Lei			reg = <0x0 0x07884000 0x0 0x2b000>;
4435bf63562SSivaprakash Murugesan			interrupts = <GIC_SPI 238 IRQ_TYPE_LEVEL_HIGH>;
4445bf63562SSivaprakash Murugesan			clocks = <&gcc GCC_BLSP1_AHB_CLK>;
4455bf63562SSivaprakash Murugesan			clock-names = "bam_clk";
4465bf63562SSivaprakash Murugesan			#dma-cells = <1>;
4475bf63562SSivaprakash Murugesan			qcom,ee = <0>;
4485bf63562SSivaprakash Murugesan		};
4495bf63562SSivaprakash Murugesan
4501e827785SSricharan R		blsp1_uart3: serial@78b1000 {
4511e827785SSricharan R			compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm";
45277e9c198SZhen Lei			reg = <0x0 0x078b1000 0x0 0x200>;
4531e827785SSricharan R			interrupts = <GIC_SPI 306 IRQ_TYPE_LEVEL_HIGH>;
4541e827785SSricharan R			clocks = <&gcc GCC_BLSP1_UART3_APPS_CLK>,
4551e827785SSricharan R				 <&gcc GCC_BLSP1_AHB_CLK>;
4561e827785SSricharan R			clock-names = "core", "iface";
4571e827785SSricharan R			status = "disabled";
4581e827785SSricharan R		};
4591e827785SSricharan R
460f82c48d4SRobert Marko		blsp1_spi1: spi@78b5000 {
4615bf63562SSivaprakash Murugesan			compatible = "qcom,spi-qup-v2.2.1";
4625bf63562SSivaprakash Murugesan			#address-cells = <1>;
4635bf63562SSivaprakash Murugesan			#size-cells = <0>;
46477e9c198SZhen Lei			reg = <0x0 0x078b5000 0x0 0x600>;
4655bf63562SSivaprakash Murugesan			interrupts = <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>;
4665bf63562SSivaprakash Murugesan			clocks = <&gcc GCC_BLSP1_QUP1_SPI_APPS_CLK>,
4675bf63562SSivaprakash Murugesan				 <&gcc GCC_BLSP1_AHB_CLK>;
4685bf63562SSivaprakash Murugesan			clock-names = "core", "iface";
4695bf63562SSivaprakash Murugesan			dmas = <&blsp_dma 12>, <&blsp_dma 13>;
4705bf63562SSivaprakash Murugesan			dma-names = "tx", "rx";
4715bf63562SSivaprakash Murugesan			status = "disabled";
4725bf63562SSivaprakash Murugesan		};
4735bf63562SSivaprakash Murugesan
474f82c48d4SRobert Marko		blsp1_spi2: spi@78b6000 {
4755bf63562SSivaprakash Murugesan			compatible = "qcom,spi-qup-v2.2.1";
4765bf63562SSivaprakash Murugesan			#address-cells = <1>;
4775bf63562SSivaprakash Murugesan			#size-cells = <0>;
47877e9c198SZhen Lei			reg = <0x0 0x078b6000 0x0 0x600>;
4795bf63562SSivaprakash Murugesan			interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>;
4805bf63562SSivaprakash Murugesan			clocks = <&gcc GCC_BLSP1_QUP2_SPI_APPS_CLK>,
4815bf63562SSivaprakash Murugesan				 <&gcc GCC_BLSP1_AHB_CLK>;
4825bf63562SSivaprakash Murugesan			clock-names = "core", "iface";
4835bf63562SSivaprakash Murugesan			dmas = <&blsp_dma 14>, <&blsp_dma 15>;
4845bf63562SSivaprakash Murugesan			dma-names = "tx", "rx";
4855bf63562SSivaprakash Murugesan			status = "disabled";
4865bf63562SSivaprakash Murugesan		};
4875bf63562SSivaprakash Murugesan
488f82c48d4SRobert Marko		blsp1_i2c2: i2c@78b6000 {
4895bf63562SSivaprakash Murugesan			compatible = "qcom,i2c-qup-v2.2.1";
4905bf63562SSivaprakash Murugesan			#address-cells = <1>;
4915bf63562SSivaprakash Murugesan			#size-cells = <0>;
49277e9c198SZhen Lei			reg = <0x0 0x078b6000 0x0 0x600>;
4935bf63562SSivaprakash Murugesan			interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>;
4942374b99eSKrzysztof Kozlowski			clocks = <&gcc GCC_BLSP1_QUP2_I2C_APPS_CLK>,
4952374b99eSKrzysztof Kozlowski				 <&gcc GCC_BLSP1_AHB_CLK>;
4962374b99eSKrzysztof Kozlowski			clock-names = "core", "iface";
4975bf63562SSivaprakash Murugesan			clock-frequency = <400000>;
4980e1b27f4SKrzysztof Kozlowski			dmas = <&blsp_dma 14>, <&blsp_dma 15>;
4990e1b27f4SKrzysztof Kozlowski			dma-names = "tx", "rx";
5005bf63562SSivaprakash Murugesan			status = "disabled";
5015bf63562SSivaprakash Murugesan		};
5025bf63562SSivaprakash Murugesan
503f82c48d4SRobert Marko		blsp1_i2c3: i2c@78b7000 {
5045bf63562SSivaprakash Murugesan			compatible = "qcom,i2c-qup-v2.2.1";
5055bf63562SSivaprakash Murugesan			#address-cells = <1>;
5065bf63562SSivaprakash Murugesan			#size-cells = <0>;
50777e9c198SZhen Lei			reg = <0x0 0x078b7000 0x0 0x600>;
5085bf63562SSivaprakash Murugesan			interrupts = <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>;
5092374b99eSKrzysztof Kozlowski			clocks = <&gcc GCC_BLSP1_QUP3_I2C_APPS_CLK>,
5102374b99eSKrzysztof Kozlowski				 <&gcc GCC_BLSP1_AHB_CLK>;
5112374b99eSKrzysztof Kozlowski			clock-names = "core", "iface";
5125bf63562SSivaprakash Murugesan			clock-frequency = <400000>;
5130e1b27f4SKrzysztof Kozlowski			dmas = <&blsp_dma 16>, <&blsp_dma 17>;
5140e1b27f4SKrzysztof Kozlowski			dma-names = "tx", "rx";
5155bf63562SSivaprakash Murugesan			status = "disabled";
5165bf63562SSivaprakash Murugesan		};
5175bf63562SSivaprakash Murugesan
51874ab8ccfSKathiravan T		qpic_bam: dma-controller@7984000 {
51974ab8ccfSKathiravan T			compatible = "qcom,bam-v1.7.0";
52074ab8ccfSKathiravan T			reg = <0x0 0x07984000 0x0 0x1a000>;
52174ab8ccfSKathiravan T			interrupts = <GIC_SPI 146 IRQ_TYPE_LEVEL_HIGH>;
52282f07cbdSBhupesh Sharma			clocks = <&gcc GCC_QPIC_AHB_CLK>;
52382f07cbdSBhupesh Sharma			clock-names = "bam_clk";
52474ab8ccfSKathiravan T			#dma-cells = <1>;
52574ab8ccfSKathiravan T			qcom,ee = <0>;
52674ab8ccfSKathiravan T			status = "disabled";
52774ab8ccfSKathiravan T		};
52874ab8ccfSKathiravan T
5298857b0abSRobert Marko		qpic_nand: nand-controller@79b0000 {
53074ab8ccfSKathiravan T			compatible = "qcom,ipq6018-nand";
53174ab8ccfSKathiravan T			reg = <0x0 0x079b0000 0x0 0x10000>;
53274ab8ccfSKathiravan T			#address-cells = <1>;
53374ab8ccfSKathiravan T			#size-cells = <0>;
53474ab8ccfSKathiravan T			clocks = <&gcc GCC_QPIC_CLK>,
53574ab8ccfSKathiravan T				 <&gcc GCC_QPIC_AHB_CLK>;
53674ab8ccfSKathiravan T			clock-names = "core", "aon";
53774ab8ccfSKathiravan T
53874ab8ccfSKathiravan T			dmas = <&qpic_bam 0>,
53974ab8ccfSKathiravan T			       <&qpic_bam 1>,
54074ab8ccfSKathiravan T			       <&qpic_bam 2>;
54174ab8ccfSKathiravan T			dma-names = "tx", "rx", "cmd";
54274ab8ccfSKathiravan T			pinctrl-0 = <&qpic_pins>;
54374ab8ccfSKathiravan T			pinctrl-names = "default";
54474ab8ccfSKathiravan T			status = "disabled";
54574ab8ccfSKathiravan T		};
54674ab8ccfSKathiravan T
5472c6e322aSKonrad Dybcio		usb3: usb@8af8800 {
5482c6e322aSKonrad Dybcio			compatible = "qcom,ipq6018-dwc3", "qcom,dwc3";
5492c6e322aSKonrad Dybcio			reg = <0x0 0x08af8800 0x0 0x400>;
5502c6e322aSKonrad Dybcio			#address-cells = <2>;
5512c6e322aSKonrad Dybcio			#size-cells = <2>;
5522c6e322aSKonrad Dybcio			ranges;
5532c6e322aSKonrad Dybcio
5542c6e322aSKonrad Dybcio			clocks = <&gcc GCC_SYS_NOC_USB0_AXI_CLK>,
5552c6e322aSKonrad Dybcio				<&gcc GCC_USB0_MASTER_CLK>,
5562c6e322aSKonrad Dybcio				<&gcc GCC_USB0_SLEEP_CLK>,
5572c6e322aSKonrad Dybcio				<&gcc GCC_USB0_MOCK_UTMI_CLK>;
5582c6e322aSKonrad Dybcio			clock-names = "cfg_noc",
5592c6e322aSKonrad Dybcio				"core",
5602c6e322aSKonrad Dybcio				"sleep",
5612c6e322aSKonrad Dybcio				"mock_utmi";
5622c6e322aSKonrad Dybcio
5632c6e322aSKonrad Dybcio			assigned-clocks = <&gcc GCC_SYS_NOC_USB0_AXI_CLK>,
5642c6e322aSKonrad Dybcio					  <&gcc GCC_USB0_MASTER_CLK>,
5652c6e322aSKonrad Dybcio					  <&gcc GCC_USB0_MOCK_UTMI_CLK>;
5662c6e322aSKonrad Dybcio			assigned-clock-rates = <133330000>,
5672c6e322aSKonrad Dybcio					       <133330000>,
56855c87e64SChukun Pan					       <24000000>;
5692c6e322aSKonrad Dybcio
5702c6e322aSKonrad Dybcio			resets = <&gcc GCC_USB0_BCR>;
5712c6e322aSKonrad Dybcio			status = "disabled";
5722c6e322aSKonrad Dybcio
5732c6e322aSKonrad Dybcio			dwc_0: usb@8a00000 {
5742c6e322aSKonrad Dybcio				compatible = "snps,dwc3";
5752c6e322aSKonrad Dybcio				reg = <0x0 0x08a00000 0x0 0xcd00>;
5762c6e322aSKonrad Dybcio				interrupts = <GIC_SPI 140 IRQ_TYPE_LEVEL_HIGH>;
5772c6e322aSKonrad Dybcio				phys = <&qusb_phy_0>, <&usb0_ssphy>;
5782c6e322aSKonrad Dybcio				phy-names = "usb2-phy", "usb3-phy";
5792c6e322aSKonrad Dybcio				clocks = <&xo>;
5802c6e322aSKonrad Dybcio				clock-names = "ref";
5812c6e322aSKonrad Dybcio				tx-fifo-resize;
582*9583ad41SKrishna Kurapati				snps,parkmode-disable-ss-quirk;
5832c6e322aSKonrad Dybcio				snps,is-utmi-l1-suspend;
5842c6e322aSKonrad Dybcio				snps,hird-threshold = /bits/ 8 <0x0>;
5852c6e322aSKonrad Dybcio				snps,dis_u2_susphy_quirk;
5862c6e322aSKonrad Dybcio				snps,dis_u3_susphy_quirk;
5872c6e322aSKonrad Dybcio				dr_mode = "host";
5882c6e322aSKonrad Dybcio			};
5892c6e322aSKonrad Dybcio		};
5902c6e322aSKonrad Dybcio
5911e827785SSricharan R		intc: interrupt-controller@b000000 {
5921e827785SSricharan R			compatible = "qcom,msm-qgic2";
5933d44861dSKathiravan T			#address-cells = <2>;
5943d44861dSKathiravan T			#size-cells = <2>;
5951e827785SSricharan R			interrupt-controller;
596674631c3SAndrew Halaney			#interrupt-cells = <3>;
59777e9c198SZhen Lei			reg = <0x0 0x0b000000 0x0 0x1000>,  /*GICD*/
59877e9c198SZhen Lei			      <0x0 0x0b002000 0x0 0x1000>,  /*GICC*/
59977e9c198SZhen Lei			      <0x0 0x0b001000 0x0 0x1000>,  /*GICH*/
60077e9c198SZhen Lei			      <0x0 0x0b004000 0x0 0x1000>;  /*GICV*/
6011e827785SSricharan R			interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>;
6023d44861dSKathiravan T			ranges = <0 0 0 0xb00a000 0 0xffd>;
6033d44861dSKathiravan T
6043d44861dSKathiravan T			v2m@0 {
6053d44861dSKathiravan T				compatible = "arm,gic-v2m-frame";
6063d44861dSKathiravan T				msi-controller;
6073d44861dSKathiravan T				reg = <0x0 0x0 0x0 0xffd>;
6083d44861dSKathiravan T			};
6091e827785SSricharan R		};
6101e827785SSricharan R
6115bf63562SSivaprakash Murugesan		watchdog@b017000 {
6125bf63562SSivaprakash Murugesan			compatible = "qcom,kpss-wdt";
6135bf63562SSivaprakash Murugesan			interrupts = <GIC_SPI 3 IRQ_TYPE_EDGE_RISING>;
61477e9c198SZhen Lei			reg = <0x0 0x0b017000 0x0 0x40>;
6155bf63562SSivaprakash Murugesan			clocks = <&sleep_clk>;
6165bf63562SSivaprakash Murugesan			timeout-sec = <10>;
6175bf63562SSivaprakash Murugesan		};
6185bf63562SSivaprakash Murugesan
6195bf63562SSivaprakash Murugesan		apcs_glb: mailbox@b111000 {
62036f91e63SKathiravan T			compatible = "qcom,ipq6018-apcs-apps-global";
62177e9c198SZhen Lei			reg = <0x0 0x0b111000 0x0 0x1000>;
62236f91e63SKathiravan T			#clock-cells = <1>;
62336f91e63SKathiravan T			clocks = <&a53pll>, <&xo>;
62436f91e63SKathiravan T			clock-names = "pll", "xo";
6255bf63562SSivaprakash Murugesan			#mbox-cells = <1>;
6265bf63562SSivaprakash Murugesan		};
6275bf63562SSivaprakash Murugesan
62836f91e63SKathiravan T		a53pll: clock@b116000 {
62936f91e63SKathiravan T			compatible = "qcom,ipq6018-a53pll";
63077e9c198SZhen Lei			reg = <0x0 0x0b116000 0x0 0x40>;
63136f91e63SKathiravan T			#clock-cells = <0>;
63236f91e63SKathiravan T			clocks = <&xo>;
63336f91e63SKathiravan T			clock-names = "xo";
63436f91e63SKathiravan T		};
63536f91e63SKathiravan T
6361e827785SSricharan R		timer@b120000 {
637458ebdbbSDavid Heidelberg			#address-cells = <1>;
638458ebdbbSDavid Heidelberg			#size-cells = <1>;
639458ebdbbSDavid Heidelberg			ranges = <0 0 0 0x10000000>;
6401e827785SSricharan R			compatible = "arm,armv7-timer-mem";
64177e9c198SZhen Lei			reg = <0x0 0x0b120000 0x0 0x1000>;
6421e827785SSricharan R
6431e827785SSricharan R			frame@b120000 {
6441e827785SSricharan R				frame-number = <0>;
6451e827785SSricharan R				interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>,
6461e827785SSricharan R					     <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>;
647458ebdbbSDavid Heidelberg				reg = <0x0b121000 0x1000>,
648458ebdbbSDavid Heidelberg				      <0x0b122000 0x1000>;
6491e827785SSricharan R			};
6501e827785SSricharan R
6511e827785SSricharan R			frame@b123000 {
6521e827785SSricharan R				frame-number = <1>;
6531e827785SSricharan R				interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>;
654458ebdbbSDavid Heidelberg				reg = <0x0b123000 0x1000>;
6551e827785SSricharan R				status = "disabled";
6561e827785SSricharan R			};
6571e827785SSricharan R
6581e827785SSricharan R			frame@b124000 {
6591e827785SSricharan R				frame-number = <2>;
6601e827785SSricharan R				interrupts = <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>;
661458ebdbbSDavid Heidelberg				reg = <0x0b124000 0x1000>;
6621e827785SSricharan R				status = "disabled";
6631e827785SSricharan R			};
6641e827785SSricharan R
6651e827785SSricharan R			frame@b125000 {
6661e827785SSricharan R				frame-number = <3>;
6671e827785SSricharan R				interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>;
668458ebdbbSDavid Heidelberg				reg = <0x0b125000 0x1000>;
6691e827785SSricharan R				status = "disabled";
6701e827785SSricharan R			};
6711e827785SSricharan R
6721e827785SSricharan R			frame@b126000 {
6731e827785SSricharan R				frame-number = <4>;
6741e827785SSricharan R				interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>;
675458ebdbbSDavid Heidelberg				reg = <0x0b126000 0x1000>;
6761e827785SSricharan R				status = "disabled";
6771e827785SSricharan R			};
6781e827785SSricharan R
6791e827785SSricharan R			frame@b127000 {
6801e827785SSricharan R				frame-number = <5>;
6811e827785SSricharan R				interrupts = <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>;
682458ebdbbSDavid Heidelberg				reg = <0x0b127000 0x1000>;
6831e827785SSricharan R				status = "disabled";
6841e827785SSricharan R			};
6851e827785SSricharan R
6861e827785SSricharan R			frame@b128000 {
6871e827785SSricharan R				frame-number = <6>;
6881e827785SSricharan R				interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>;
689458ebdbbSDavid Heidelberg				reg = <0x0b128000 0x1000>;
6901e827785SSricharan R				status = "disabled";
6911e827785SSricharan R			};
6921e827785SSricharan R		};
6931e827785SSricharan R
6945bf63562SSivaprakash Murugesan		q6v5_wcss: remoteproc@cd00000 {
695af5f967cSGokul Sriram Palanisamy			compatible = "qcom,ipq6018-wcss-pil";
69677e9c198SZhen Lei			reg = <0x0 0x0cd00000 0x0 0x4040>,
69777e9c198SZhen Lei			      <0x0 0x004ab000 0x0 0x20>;
6985bf63562SSivaprakash Murugesan			reg-names = "qdsp6",
6995bf63562SSivaprakash Murugesan				    "rmb";
7005bf63562SSivaprakash Murugesan			interrupts-extended = <&intc GIC_SPI 325 IRQ_TYPE_EDGE_RISING>,
7015bf63562SSivaprakash Murugesan					      <&wcss_smp2p_in 0 0>,
7025bf63562SSivaprakash Murugesan					      <&wcss_smp2p_in 1 0>,
7035bf63562SSivaprakash Murugesan					      <&wcss_smp2p_in 2 0>,
7045bf63562SSivaprakash Murugesan					      <&wcss_smp2p_in 3 0>;
7055bf63562SSivaprakash Murugesan			interrupt-names = "wdog",
7065bf63562SSivaprakash Murugesan					  "fatal",
7075bf63562SSivaprakash Murugesan					  "ready",
7085bf63562SSivaprakash Murugesan					  "handover",
7095bf63562SSivaprakash Murugesan					  "stop-ack";
7105bf63562SSivaprakash Murugesan
7115bf63562SSivaprakash Murugesan			resets = <&gcc GCC_WCSSAON_RESET>,
7125bf63562SSivaprakash Murugesan				 <&gcc GCC_WCSS_BCR>,
7135bf63562SSivaprakash Murugesan				 <&gcc GCC_WCSS_Q6_BCR>;
7145bf63562SSivaprakash Murugesan
7155bf63562SSivaprakash Murugesan			reset-names = "wcss_aon_reset",
7165bf63562SSivaprakash Murugesan				      "wcss_reset",
7175bf63562SSivaprakash Murugesan				      "wcss_q6_reset";
7185bf63562SSivaprakash Murugesan
7195bf63562SSivaprakash Murugesan			clocks = <&gcc GCC_PRNG_AHB_CLK>;
7205bf63562SSivaprakash Murugesan			clock-names = "prng";
7215bf63562SSivaprakash Murugesan
72253bc6b41SBaruch Siach			qcom,halt-regs = <&tcsr 0x18000 0x1b000 0xe000>;
7235bf63562SSivaprakash Murugesan
7245bf63562SSivaprakash Murugesan			qcom,smem-states = <&wcss_smp2p_out 0>,
7255bf63562SSivaprakash Murugesan					   <&wcss_smp2p_out 1>;
7265bf63562SSivaprakash Murugesan			qcom,smem-state-names = "shutdown",
7275bf63562SSivaprakash Murugesan						"stop";
7285bf63562SSivaprakash Murugesan
7295bf63562SSivaprakash Murugesan			memory-region = <&q6_region>;
7305bf63562SSivaprakash Murugesan
7315bf63562SSivaprakash Murugesan			glink-edge {
7325bf63562SSivaprakash Murugesan				interrupts = <GIC_SPI 321 IRQ_TYPE_EDGE_RISING>;
733f0b255b4SKrzysztof Kozlowski				label = "rtr";
7345bf63562SSivaprakash Murugesan				qcom,remote-pid = <1>;
7355bf63562SSivaprakash Murugesan				mboxes = <&apcs_glb 8>;
7365bf63562SSivaprakash Murugesan
7375bf63562SSivaprakash Murugesan				qrtr_requests {
7385bf63562SSivaprakash Murugesan					qcom,glink-channels = "IPCRTR";
7395bf63562SSivaprakash Murugesan				};
7405bf63562SSivaprakash Murugesan			};
7415bf63562SSivaprakash Murugesan		};
7425bf63562SSivaprakash Murugesan
7432c6e322aSKonrad Dybcio		pcie0: pci@20000000 {
7442c6e322aSKonrad Dybcio			compatible = "qcom,pcie-ipq6018";
7452c6e322aSKonrad Dybcio			reg = <0x0 0x20000000 0x0 0xf1d>,
7462c6e322aSKonrad Dybcio			      <0x0 0x20000f20 0x0 0xa8>,
7472c6e322aSKonrad Dybcio			      <0x0 0x20001000 0x0 0x1000>,
7482c6e322aSKonrad Dybcio			      <0x0 0x80000 0x0 0x4000>,
7492c6e322aSKonrad Dybcio			      <0x0 0x20100000 0x0 0x1000>;
7502c6e322aSKonrad Dybcio			reg-names = "dbi", "elbi", "atu", "parf", "config";
751a2d2c809SBaruch Siach
7522c6e322aSKonrad Dybcio			device_type = "pci";
7532c6e322aSKonrad Dybcio			linux,pci-domain = <0>;
7542c6e322aSKonrad Dybcio			bus-range = <0x00 0xff>;
7552c6e322aSKonrad Dybcio			num-lanes = <1>;
7562c6e322aSKonrad Dybcio			max-link-speed = <3>;
7572c6e322aSKonrad Dybcio			#address-cells = <3>;
758e1746c6dSKathiravan T			#size-cells = <2>;
7592c6e322aSKonrad Dybcio
7602c6e322aSKonrad Dybcio			phys = <&pcie_phy0>;
7612c6e322aSKonrad Dybcio			phy-names = "pciephy";
7622c6e322aSKonrad Dybcio
76375a6e1fdSManivannan Sadhasivam			ranges = <0x81000000 0x0 0x00000000 0x0 0x20200000 0x0 0x10000>,
76475a6e1fdSManivannan Sadhasivam				 <0x82000000 0x0 0x20220000 0x0 0x20220000 0x0 0xfde0000>;
7652c6e322aSKonrad Dybcio
7662c6e322aSKonrad Dybcio			interrupts = <GIC_SPI 52 IRQ_TYPE_LEVEL_HIGH>;
7672c6e322aSKonrad Dybcio			interrupt-names = "msi";
7682c6e322aSKonrad Dybcio
7692c6e322aSKonrad Dybcio			#interrupt-cells = <1>;
7702c6e322aSKonrad Dybcio			interrupt-map-mask = <0 0 0 0x7>;
771024fb877SRob Herring			interrupt-map = <0 0 0 1 &intc 0 0 0 75 IRQ_TYPE_LEVEL_HIGH>, /* int_a */
772024fb877SRob Herring					<0 0 0 2 &intc 0 0 0 78 IRQ_TYPE_LEVEL_HIGH>, /* int_b */
773024fb877SRob Herring					<0 0 0 3 &intc 0 0 0 79 IRQ_TYPE_LEVEL_HIGH>, /* int_c */
774024fb877SRob Herring					<0 0 0 4 &intc 0 0 0 83 IRQ_TYPE_LEVEL_HIGH>; /* int_d */
7752c6e322aSKonrad Dybcio
7762c6e322aSKonrad Dybcio			clocks = <&gcc GCC_SYS_NOC_PCIE0_AXI_CLK>,
7772c6e322aSKonrad Dybcio				 <&gcc GCC_PCIE0_AXI_M_CLK>,
7782c6e322aSKonrad Dybcio				 <&gcc GCC_PCIE0_AXI_S_CLK>,
7792c6e322aSKonrad Dybcio				 <&gcc GCC_PCIE0_AXI_S_BRIDGE_CLK>,
7802c6e322aSKonrad Dybcio				 <&gcc PCIE0_RCHNG_CLK>;
7812c6e322aSKonrad Dybcio			clock-names = "iface",
7822c6e322aSKonrad Dybcio				      "axi_m",
7832c6e322aSKonrad Dybcio				      "axi_s",
7842c6e322aSKonrad Dybcio				      "axi_bridge",
7852c6e322aSKonrad Dybcio				      "rchng";
7862c6e322aSKonrad Dybcio
7872c6e322aSKonrad Dybcio			resets = <&gcc GCC_PCIE0_PIPE_ARES>,
7882c6e322aSKonrad Dybcio				 <&gcc GCC_PCIE0_SLEEP_ARES>,
7892c6e322aSKonrad Dybcio				 <&gcc GCC_PCIE0_CORE_STICKY_ARES>,
7902c6e322aSKonrad Dybcio				 <&gcc GCC_PCIE0_AXI_MASTER_ARES>,
7912c6e322aSKonrad Dybcio				 <&gcc GCC_PCIE0_AXI_SLAVE_ARES>,
7922c6e322aSKonrad Dybcio				 <&gcc GCC_PCIE0_AHB_ARES>,
7932c6e322aSKonrad Dybcio				 <&gcc GCC_PCIE0_AXI_MASTER_STICKY_ARES>,
7942c6e322aSKonrad Dybcio				 <&gcc GCC_PCIE0_AXI_SLAVE_STICKY_ARES>;
7952c6e322aSKonrad Dybcio			reset-names = "pipe",
796e1746c6dSKathiravan T				      "sleep",
7972c6e322aSKonrad Dybcio				      "sticky",
7982c6e322aSKonrad Dybcio				      "axi_m",
7992c6e322aSKonrad Dybcio				      "axi_s",
8002c6e322aSKonrad Dybcio				      "ahb",
8012c6e322aSKonrad Dybcio				      "axi_m_sticky",
8022c6e322aSKonrad Dybcio				      "axi_s_sticky";
803e1746c6dSKathiravan T
804e1746c6dSKathiravan T			status = "disabled";
80520bb9e3dSKathiravan T		};
8065bf63562SSivaprakash Murugesan	};
8075bf63562SSivaprakash Murugesan
808feeef118SRobert Marko	timer {
809feeef118SRobert Marko		compatible = "arm,armv8-timer";
810feeef118SRobert Marko		interrupts = <GIC_PPI 2 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
811feeef118SRobert Marko			     <GIC_PPI 3 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
812feeef118SRobert Marko			     <GIC_PPI 4 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
813feeef118SRobert Marko			     <GIC_PPI 1 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>;
814feeef118SRobert Marko	};
815feeef118SRobert Marko
8165bf63562SSivaprakash Murugesan	wcss: wcss-smp2p {
8175bf63562SSivaprakash Murugesan		compatible = "qcom,smp2p";
8185bf63562SSivaprakash Murugesan		qcom,smem = <435>, <428>;
8195bf63562SSivaprakash Murugesan
8205bf63562SSivaprakash Murugesan		interrupt-parent = <&intc>;
8215bf63562SSivaprakash Murugesan		interrupts = <GIC_SPI 322 IRQ_TYPE_EDGE_RISING>;
8225bf63562SSivaprakash Murugesan
8235bf63562SSivaprakash Murugesan		mboxes = <&apcs_glb 9>;
8245bf63562SSivaprakash Murugesan
8255bf63562SSivaprakash Murugesan		qcom,local-pid = <0>;
8265bf63562SSivaprakash Murugesan		qcom,remote-pid = <1>;
8275bf63562SSivaprakash Murugesan
8285bf63562SSivaprakash Murugesan		wcss_smp2p_out: master-kernel {
8295bf63562SSivaprakash Murugesan			qcom,entry-name = "master-kernel";
8305bf63562SSivaprakash Murugesan			#qcom,smem-state-cells = <1>;
8315bf63562SSivaprakash Murugesan		};
8325bf63562SSivaprakash Murugesan
8335bf63562SSivaprakash Murugesan		wcss_smp2p_in: slave-kernel {
8345bf63562SSivaprakash Murugesan			qcom,entry-name = "slave-kernel";
8355bf63562SSivaprakash Murugesan			interrupt-controller;
8365bf63562SSivaprakash Murugesan			#interrupt-cells = <2>;
8375bf63562SSivaprakash Murugesan		};
8381e827785SSricharan R	};
8391e827785SSricharan R};
840