14807c71cSJoonwoo Park// SPDX-License-Identifier: GPL-2.0
24807c71cSJoonwoo Park/* Copyright (c) 2016, The Linux Foundation. All rights reserved. */
34807c71cSJoonwoo Park
44807c71cSJoonwoo Park#include <dt-bindings/interrupt-controller/arm-gic.h>
54807c71cSJoonwoo Park#include <dt-bindings/clock/qcom,gcc-msm8998.h>
6876a7573SJeffrey Hugo#include <dt-bindings/clock/qcom,gpucc-msm8998.h>
7c075a2e3SAngeloGioacchino Del Regno#include <dt-bindings/clock/qcom,mmcc-msm8998.h>
81fb28636SMarc Gonzalez#include <dt-bindings/clock/qcom,rpmcc.h>
9460f13caSSibi Sankar#include <dt-bindings/power/qcom-rpmpd.h>
1023bd4f78SJeffrey Hugo#include <dt-bindings/gpio/gpio.h>
114807c71cSJoonwoo Park
124807c71cSJoonwoo Park/ {
134807c71cSJoonwoo Park	interrupt-parent = <&intc>;
144807c71cSJoonwoo Park
154807c71cSJoonwoo Park	qcom,msm-id = <292 0x0>;
164807c71cSJoonwoo Park
174807c71cSJoonwoo Park	#address-cells = <2>;
184807c71cSJoonwoo Park	#size-cells = <2>;
194807c71cSJoonwoo Park
204807c71cSJoonwoo Park	chosen { };
214807c71cSJoonwoo Park
22d53dc79fSVinod Koul	memory@80000000 {
234807c71cSJoonwoo Park		device_type = "memory";
244807c71cSJoonwoo Park		/* We expect the bootloader to fill in the reg */
25d53dc79fSVinod Koul		reg = <0x0 0x80000000 0x0 0x0>;
264807c71cSJoonwoo Park	};
274807c71cSJoonwoo Park
28c7833949SBjorn Andersson	reserved-memory {
29c7833949SBjorn Andersson		#address-cells = <2>;
30c7833949SBjorn Andersson		#size-cells = <2>;
31c7833949SBjorn Andersson		ranges;
32c7833949SBjorn Andersson
33fda8fba6SSibi Sankar		hyp_mem: memory@85800000 {
34fda8fba6SSibi Sankar			reg = <0x0 0x85800000 0x0 0x600000>;
35fda8fba6SSibi Sankar			no-map;
36fda8fba6SSibi Sankar		};
37fda8fba6SSibi Sankar
38fda8fba6SSibi Sankar		xbl_mem: memory@85e00000 {
39fda8fba6SSibi Sankar			reg = <0x0 0x85e00000 0x0 0x100000>;
40c7833949SBjorn Andersson			no-map;
41c7833949SBjorn Andersson		};
42c7833949SBjorn Andersson
43c7833949SBjorn Andersson		smem_mem: smem-mem@86000000 {
44c7833949SBjorn Andersson			reg = <0x0 0x86000000 0x0 0x200000>;
45c7833949SBjorn Andersson			no-map;
46c7833949SBjorn Andersson		};
47c7833949SBjorn Andersson
48fda8fba6SSibi Sankar		tz_mem: memory@86200000 {
496e533309SMarc Gonzalez			reg = <0x0 0x86200000 0x0 0x2d00000>;
50c7833949SBjorn Andersson			no-map;
51c7833949SBjorn Andersson		};
52c7833949SBjorn Andersson
53fda8fba6SSibi Sankar		rmtfs_mem: memory@88f00000 {
54fda8fba6SSibi Sankar			compatible = "qcom,rmtfs-mem";
55fda8fba6SSibi Sankar			reg = <0x0 0x88f00000 0x0 0x200000>;
56fda8fba6SSibi Sankar			no-map;
57fda8fba6SSibi Sankar
58fda8fba6SSibi Sankar			qcom,client-id = <1>;
59fda8fba6SSibi Sankar			qcom,vmid = <15>;
60fda8fba6SSibi Sankar		};
61fda8fba6SSibi Sankar
62fda8fba6SSibi Sankar		spss_mem: memory@8ab00000 {
63fda8fba6SSibi Sankar			reg = <0x0 0x8ab00000 0x0 0x700000>;
64fda8fba6SSibi Sankar			no-map;
65fda8fba6SSibi Sankar		};
66fda8fba6SSibi Sankar
67fda8fba6SSibi Sankar		adsp_mem: memory@8b200000 {
68fda8fba6SSibi Sankar			reg = <0x0 0x8b200000 0x0 0x1a00000>;
69fda8fba6SSibi Sankar			no-map;
70fda8fba6SSibi Sankar		};
71fda8fba6SSibi Sankar
72fda8fba6SSibi Sankar		mpss_mem: memory@8cc00000 {
73fda8fba6SSibi Sankar			reg = <0x0 0x8cc00000 0x0 0x7000000>;
74fda8fba6SSibi Sankar			no-map;
75fda8fba6SSibi Sankar		};
76fda8fba6SSibi Sankar
77fda8fba6SSibi Sankar		venus_mem: memory@93c00000 {
78fda8fba6SSibi Sankar			reg = <0x0 0x93c00000 0x0 0x500000>;
79fda8fba6SSibi Sankar			no-map;
80fda8fba6SSibi Sankar		};
81fda8fba6SSibi Sankar
82fda8fba6SSibi Sankar		mba_mem: memory@94100000 {
83fda8fba6SSibi Sankar			reg = <0x0 0x94100000 0x0 0x200000>;
84fda8fba6SSibi Sankar			no-map;
85fda8fba6SSibi Sankar		};
86fda8fba6SSibi Sankar
87fda8fba6SSibi Sankar		slpi_mem: memory@94300000 {
88fda8fba6SSibi Sankar			reg = <0x0 0x94300000 0x0 0xf00000>;
89fda8fba6SSibi Sankar			no-map;
90fda8fba6SSibi Sankar		};
91fda8fba6SSibi Sankar
92fda8fba6SSibi Sankar		ipa_fw_mem: memory@95200000 {
93fda8fba6SSibi Sankar			reg = <0x0 0x95200000 0x0 0x10000>;
94fda8fba6SSibi Sankar			no-map;
95fda8fba6SSibi Sankar		};
96fda8fba6SSibi Sankar
97fda8fba6SSibi Sankar		ipa_gsi_mem: memory@95210000 {
98fda8fba6SSibi Sankar			reg = <0x0 0x95210000 0x0 0x5000>;
99fda8fba6SSibi Sankar			no-map;
100fda8fba6SSibi Sankar		};
101fda8fba6SSibi Sankar
102fda8fba6SSibi Sankar		gpu_mem: memory@95600000 {
103fda8fba6SSibi Sankar			reg = <0x0 0x95600000 0x0 0x100000>;
104fda8fba6SSibi Sankar			no-map;
105fda8fba6SSibi Sankar		};
106fda8fba6SSibi Sankar
10719b7caaaSJeffrey Hugo		wlan_msa_mem: memory@95700000 {
10819b7caaaSJeffrey Hugo			reg = <0x0 0x95700000 0x0 0x100000>;
10919b7caaaSJeffrey Hugo			no-map;
11019b7caaaSJeffrey Hugo		};
111c7833949SBjorn Andersson	};
112c7833949SBjorn Andersson
1134807c71cSJoonwoo Park	clocks {
114818046ebSAndy Gross		xo: xo-board {
1154807c71cSJoonwoo Park			compatible = "fixed-clock";
1164807c71cSJoonwoo Park			#clock-cells = <0>;
1174807c71cSJoonwoo Park			clock-frequency = <19200000>;
118818046ebSAndy Gross			clock-output-names = "xo_board";
1194807c71cSJoonwoo Park		};
1204807c71cSJoonwoo Park
1212c2f64aeSMarijn Suijten		sleep_clk: sleep-clk {
1224807c71cSJoonwoo Park			compatible = "fixed-clock";
1234807c71cSJoonwoo Park			#clock-cells = <0>;
1244807c71cSJoonwoo Park			clock-frequency = <32764>;
1254807c71cSJoonwoo Park		};
1264807c71cSJoonwoo Park	};
1274807c71cSJoonwoo Park
1284807c71cSJoonwoo Park	cpus {
1294807c71cSJoonwoo Park		#address-cells = <2>;
1304807c71cSJoonwoo Park		#size-cells = <0>;
1314807c71cSJoonwoo Park
1324807c71cSJoonwoo Park		CPU0: cpu@0 {
1334807c71cSJoonwoo Park			device_type = "cpu";
134663b7d41SAmit Kucheria			compatible = "qcom,kryo280";
1354807c71cSJoonwoo Park			reg = <0x0 0x0>;
1364807c71cSJoonwoo Park			enable-method = "psci";
137c43cfc54SKonrad Dybcio			capacity-dmips-mhz = <1024>;
138c3083c80SAmit Kucheria			cpu-idle-states = <&LITTLE_CPU_SLEEP_0 &LITTLE_CPU_SLEEP_1>;
1394807c71cSJoonwoo Park			next-level-cache = <&L2_0>;
1404807c71cSJoonwoo Park			L2_0: l2-cache {
1414807c71cSJoonwoo Park				compatible = "arm,arch-cache";
1424807c71cSJoonwoo Park				cache-level = <2>;
1434807c71cSJoonwoo Park			};
1444807c71cSJoonwoo Park			L1_I_0: l1-icache {
1454807c71cSJoonwoo Park				compatible = "arm,arch-cache";
1464807c71cSJoonwoo Park			};
1474807c71cSJoonwoo Park			L1_D_0: l1-dcache {
1484807c71cSJoonwoo Park				compatible = "arm,arch-cache";
1494807c71cSJoonwoo Park			};
1504807c71cSJoonwoo Park		};
1514807c71cSJoonwoo Park
1524807c71cSJoonwoo Park		CPU1: cpu@1 {
1534807c71cSJoonwoo Park			device_type = "cpu";
154663b7d41SAmit Kucheria			compatible = "qcom,kryo280";
1554807c71cSJoonwoo Park			reg = <0x0 0x1>;
1564807c71cSJoonwoo Park			enable-method = "psci";
157c43cfc54SKonrad Dybcio			capacity-dmips-mhz = <1024>;
158c3083c80SAmit Kucheria			cpu-idle-states = <&LITTLE_CPU_SLEEP_0 &LITTLE_CPU_SLEEP_1>;
1594807c71cSJoonwoo Park			next-level-cache = <&L2_0>;
1604807c71cSJoonwoo Park			L1_I_1: l1-icache {
1614807c71cSJoonwoo Park				compatible = "arm,arch-cache";
1624807c71cSJoonwoo Park			};
1634807c71cSJoonwoo Park			L1_D_1: l1-dcache {
1644807c71cSJoonwoo Park				compatible = "arm,arch-cache";
1654807c71cSJoonwoo Park			};
1664807c71cSJoonwoo Park		};
1674807c71cSJoonwoo Park
1684807c71cSJoonwoo Park		CPU2: cpu@2 {
1694807c71cSJoonwoo Park			device_type = "cpu";
170663b7d41SAmit Kucheria			compatible = "qcom,kryo280";
1714807c71cSJoonwoo Park			reg = <0x0 0x2>;
1724807c71cSJoonwoo Park			enable-method = "psci";
173c43cfc54SKonrad Dybcio			capacity-dmips-mhz = <1024>;
174c3083c80SAmit Kucheria			cpu-idle-states = <&LITTLE_CPU_SLEEP_0 &LITTLE_CPU_SLEEP_1>;
1754807c71cSJoonwoo Park			next-level-cache = <&L2_0>;
1764807c71cSJoonwoo Park			L1_I_2: l1-icache {
1774807c71cSJoonwoo Park				compatible = "arm,arch-cache";
1784807c71cSJoonwoo Park			};
1794807c71cSJoonwoo Park			L1_D_2: l1-dcache {
1804807c71cSJoonwoo Park				compatible = "arm,arch-cache";
1814807c71cSJoonwoo Park			};
1824807c71cSJoonwoo Park		};
1834807c71cSJoonwoo Park
1844807c71cSJoonwoo Park		CPU3: cpu@3 {
1854807c71cSJoonwoo Park			device_type = "cpu";
186663b7d41SAmit Kucheria			compatible = "qcom,kryo280";
1874807c71cSJoonwoo Park			reg = <0x0 0x3>;
1884807c71cSJoonwoo Park			enable-method = "psci";
189c43cfc54SKonrad Dybcio			capacity-dmips-mhz = <1024>;
190c3083c80SAmit Kucheria			cpu-idle-states = <&LITTLE_CPU_SLEEP_0 &LITTLE_CPU_SLEEP_1>;
1914807c71cSJoonwoo Park			next-level-cache = <&L2_0>;
1924807c71cSJoonwoo Park			L1_I_3: l1-icache {
1934807c71cSJoonwoo Park				compatible = "arm,arch-cache";
1944807c71cSJoonwoo Park			};
1954807c71cSJoonwoo Park			L1_D_3: l1-dcache {
1964807c71cSJoonwoo Park				compatible = "arm,arch-cache";
1974807c71cSJoonwoo Park			};
1984807c71cSJoonwoo Park		};
1994807c71cSJoonwoo Park
2004807c71cSJoonwoo Park		CPU4: cpu@100 {
2014807c71cSJoonwoo Park			device_type = "cpu";
202663b7d41SAmit Kucheria			compatible = "qcom,kryo280";
2034807c71cSJoonwoo Park			reg = <0x0 0x100>;
2044807c71cSJoonwoo Park			enable-method = "psci";
205c43cfc54SKonrad Dybcio			capacity-dmips-mhz = <1536>;
206c3083c80SAmit Kucheria			cpu-idle-states = <&BIG_CPU_SLEEP_0 &BIG_CPU_SLEEP_1>;
2074807c71cSJoonwoo Park			next-level-cache = <&L2_1>;
2084807c71cSJoonwoo Park			L2_1: l2-cache {
2094807c71cSJoonwoo Park				compatible = "arm,arch-cache";
2104807c71cSJoonwoo Park				cache-level = <2>;
2114807c71cSJoonwoo Park			};
2124807c71cSJoonwoo Park			L1_I_100: l1-icache {
2134807c71cSJoonwoo Park				compatible = "arm,arch-cache";
2144807c71cSJoonwoo Park			};
2154807c71cSJoonwoo Park			L1_D_100: l1-dcache {
2164807c71cSJoonwoo Park				compatible = "arm,arch-cache";
2174807c71cSJoonwoo Park			};
2184807c71cSJoonwoo Park		};
2194807c71cSJoonwoo Park
2204807c71cSJoonwoo Park		CPU5: cpu@101 {
2214807c71cSJoonwoo Park			device_type = "cpu";
222663b7d41SAmit Kucheria			compatible = "qcom,kryo280";
2234807c71cSJoonwoo Park			reg = <0x0 0x101>;
2244807c71cSJoonwoo Park			enable-method = "psci";
225c43cfc54SKonrad Dybcio			capacity-dmips-mhz = <1536>;
226c3083c80SAmit Kucheria			cpu-idle-states = <&BIG_CPU_SLEEP_0 &BIG_CPU_SLEEP_1>;
2274807c71cSJoonwoo Park			next-level-cache = <&L2_1>;
2284807c71cSJoonwoo Park			L1_I_101: l1-icache {
2294807c71cSJoonwoo Park				compatible = "arm,arch-cache";
2304807c71cSJoonwoo Park			};
2314807c71cSJoonwoo Park			L1_D_101: l1-dcache {
2324807c71cSJoonwoo Park				compatible = "arm,arch-cache";
2334807c71cSJoonwoo Park			};
2344807c71cSJoonwoo Park		};
2354807c71cSJoonwoo Park
2364807c71cSJoonwoo Park		CPU6: cpu@102 {
2374807c71cSJoonwoo Park			device_type = "cpu";
238663b7d41SAmit Kucheria			compatible = "qcom,kryo280";
2394807c71cSJoonwoo Park			reg = <0x0 0x102>;
2404807c71cSJoonwoo Park			enable-method = "psci";
241c43cfc54SKonrad Dybcio			capacity-dmips-mhz = <1536>;
242c3083c80SAmit Kucheria			cpu-idle-states = <&BIG_CPU_SLEEP_0 &BIG_CPU_SLEEP_1>;
2434807c71cSJoonwoo Park			next-level-cache = <&L2_1>;
2444807c71cSJoonwoo Park			L1_I_102: l1-icache {
2454807c71cSJoonwoo Park				compatible = "arm,arch-cache";
2464807c71cSJoonwoo Park			};
2474807c71cSJoonwoo Park			L1_D_102: l1-dcache {
2484807c71cSJoonwoo Park				compatible = "arm,arch-cache";
2494807c71cSJoonwoo Park			};
2504807c71cSJoonwoo Park		};
2514807c71cSJoonwoo Park
2524807c71cSJoonwoo Park		CPU7: cpu@103 {
2534807c71cSJoonwoo Park			device_type = "cpu";
254663b7d41SAmit Kucheria			compatible = "qcom,kryo280";
2554807c71cSJoonwoo Park			reg = <0x0 0x103>;
2564807c71cSJoonwoo Park			enable-method = "psci";
257c43cfc54SKonrad Dybcio			capacity-dmips-mhz = <1536>;
258c3083c80SAmit Kucheria			cpu-idle-states = <&BIG_CPU_SLEEP_0 &BIG_CPU_SLEEP_1>;
2594807c71cSJoonwoo Park			next-level-cache = <&L2_1>;
2604807c71cSJoonwoo Park			L1_I_103: l1-icache {
2614807c71cSJoonwoo Park				compatible = "arm,arch-cache";
2624807c71cSJoonwoo Park			};
2634807c71cSJoonwoo Park			L1_D_103: l1-dcache {
2644807c71cSJoonwoo Park				compatible = "arm,arch-cache";
2654807c71cSJoonwoo Park			};
2664807c71cSJoonwoo Park		};
2674807c71cSJoonwoo Park
2684807c71cSJoonwoo Park		cpu-map {
2694807c71cSJoonwoo Park			cluster0 {
2704807c71cSJoonwoo Park				core0 {
2714807c71cSJoonwoo Park					cpu = <&CPU0>;
2724807c71cSJoonwoo Park				};
2734807c71cSJoonwoo Park
2744807c71cSJoonwoo Park				core1 {
2754807c71cSJoonwoo Park					cpu = <&CPU1>;
2764807c71cSJoonwoo Park				};
2774807c71cSJoonwoo Park
2784807c71cSJoonwoo Park				core2 {
2794807c71cSJoonwoo Park					cpu = <&CPU2>;
2804807c71cSJoonwoo Park				};
2814807c71cSJoonwoo Park
2824807c71cSJoonwoo Park				core3 {
2834807c71cSJoonwoo Park					cpu = <&CPU3>;
2844807c71cSJoonwoo Park				};
2854807c71cSJoonwoo Park			};
2864807c71cSJoonwoo Park
2874807c71cSJoonwoo Park			cluster1 {
2884807c71cSJoonwoo Park				core0 {
2894807c71cSJoonwoo Park					cpu = <&CPU4>;
2904807c71cSJoonwoo Park				};
2914807c71cSJoonwoo Park
2924807c71cSJoonwoo Park				core1 {
2934807c71cSJoonwoo Park					cpu = <&CPU5>;
2944807c71cSJoonwoo Park				};
2954807c71cSJoonwoo Park
2964807c71cSJoonwoo Park				core2 {
2974807c71cSJoonwoo Park					cpu = <&CPU6>;
2984807c71cSJoonwoo Park				};
2994807c71cSJoonwoo Park
3004807c71cSJoonwoo Park				core3 {
3014807c71cSJoonwoo Park					cpu = <&CPU7>;
3024807c71cSJoonwoo Park				};
3034807c71cSJoonwoo Park			};
3044807c71cSJoonwoo Park		};
305c3083c80SAmit Kucheria
306c3083c80SAmit Kucheria		idle-states {
307c3083c80SAmit Kucheria			entry-method = "psci";
308c3083c80SAmit Kucheria
309c3083c80SAmit Kucheria			LITTLE_CPU_SLEEP_0: cpu-sleep-0-0 {
310c3083c80SAmit Kucheria				compatible = "arm,idle-state";
311c3083c80SAmit Kucheria				idle-state-name = "little-retention";
3123f1dcaffSAngeloGioacchino Del Regno				/* CPU Retention (C2D), L2 Active */
313c3083c80SAmit Kucheria				arm,psci-suspend-param = <0x00000002>;
314c3083c80SAmit Kucheria				entry-latency-us = <81>;
315c3083c80SAmit Kucheria				exit-latency-us = <86>;
3163f1dcaffSAngeloGioacchino Del Regno				min-residency-us = <504>;
317c3083c80SAmit Kucheria			};
318c3083c80SAmit Kucheria
319c3083c80SAmit Kucheria			LITTLE_CPU_SLEEP_1: cpu-sleep-0-1 {
320c3083c80SAmit Kucheria				compatible = "arm,idle-state";
321c3083c80SAmit Kucheria				idle-state-name = "little-power-collapse";
3223f1dcaffSAngeloGioacchino Del Regno				/* CPU + L2 Power Collapse (C3, D4) */
323c3083c80SAmit Kucheria				arm,psci-suspend-param = <0x40000003>;
3243f1dcaffSAngeloGioacchino Del Regno				entry-latency-us = <814>;
3253f1dcaffSAngeloGioacchino Del Regno				exit-latency-us = <4562>;
3263f1dcaffSAngeloGioacchino Del Regno				min-residency-us = <9183>;
327c3083c80SAmit Kucheria				local-timer-stop;
328c3083c80SAmit Kucheria			};
329c3083c80SAmit Kucheria
330c3083c80SAmit Kucheria			BIG_CPU_SLEEP_0: cpu-sleep-1-0 {
331c3083c80SAmit Kucheria				compatible = "arm,idle-state";
332c3083c80SAmit Kucheria				idle-state-name = "big-retention";
3333f1dcaffSAngeloGioacchino Del Regno				/* CPU Retention (C2D), L2 Active */
334c3083c80SAmit Kucheria				arm,psci-suspend-param = <0x00000002>;
335c3083c80SAmit Kucheria				entry-latency-us = <79>;
336c3083c80SAmit Kucheria				exit-latency-us = <82>;
3373f1dcaffSAngeloGioacchino Del Regno				min-residency-us = <1302>;
338c3083c80SAmit Kucheria			};
339c3083c80SAmit Kucheria
340c3083c80SAmit Kucheria			BIG_CPU_SLEEP_1: cpu-sleep-1-1 {
341c3083c80SAmit Kucheria				compatible = "arm,idle-state";
342c3083c80SAmit Kucheria				idle-state-name = "big-power-collapse";
3433f1dcaffSAngeloGioacchino Del Regno				/* CPU + L2 Power Collapse (C3, D4) */
344c3083c80SAmit Kucheria				arm,psci-suspend-param = <0x40000003>;
3453f1dcaffSAngeloGioacchino Del Regno				entry-latency-us = <724>;
3463f1dcaffSAngeloGioacchino Del Regno				exit-latency-us = <2027>;
3473f1dcaffSAngeloGioacchino Del Regno				min-residency-us = <9419>;
348c3083c80SAmit Kucheria				local-timer-stop;
349c3083c80SAmit Kucheria			};
350c3083c80SAmit Kucheria		};
3514807c71cSJoonwoo Park	};
3524807c71cSJoonwoo Park
353d850156aSBjorn Andersson	firmware {
354d850156aSBjorn Andersson		scm {
35570827d9fSBjorn Andersson			compatible = "qcom,scm-msm8998", "qcom,scm";
356d850156aSBjorn Andersson		};
357d850156aSBjorn Andersson	};
358d850156aSBjorn Andersson
359c7833949SBjorn Andersson	tcsr_mutex: hwlock {
360c7833949SBjorn Andersson		compatible = "qcom,tcsr-mutex";
361c7833949SBjorn Andersson		syscon = <&tcsr_mutex_regs 0 0x1000>;
362c7833949SBjorn Andersson		#hwlock-cells = <1>;
363c7833949SBjorn Andersson	};
364c7833949SBjorn Andersson
3654807c71cSJoonwoo Park	psci {
3664807c71cSJoonwoo Park		compatible = "arm,psci-1.0";
3674807c71cSJoonwoo Park		method = "smc";
3684807c71cSJoonwoo Park	};
3694807c71cSJoonwoo Park
37031c1f0e3SBjorn Andersson	rpm-glink {
37131c1f0e3SBjorn Andersson		compatible = "qcom,glink-rpm";
37231c1f0e3SBjorn Andersson
37331c1f0e3SBjorn Andersson		interrupts = <GIC_SPI 168 IRQ_TYPE_EDGE_RISING>;
37431c1f0e3SBjorn Andersson		qcom,rpm-msg-ram = <&rpm_msg_ram>;
37531c1f0e3SBjorn Andersson		mboxes = <&apcs_glb 0>;
37631c1f0e3SBjorn Andersson
37731c1f0e3SBjorn Andersson		rpm_requests: rpm-requests {
37831c1f0e3SBjorn Andersson			compatible = "qcom,rpm-msm8998";
37931c1f0e3SBjorn Andersson			qcom,glink-channels = "rpm_requests";
3801fb28636SMarc Gonzalez
3811fb28636SMarc Gonzalez			rpmcc: clock-controller {
3821fb28636SMarc Gonzalez				compatible = "qcom,rpmcc-msm8998", "qcom,rpmcc";
3831fb28636SMarc Gonzalez				#clock-cells = <1>;
3841fb28636SMarc Gonzalez			};
385460f13caSSibi Sankar
386460f13caSSibi Sankar			rpmpd: power-controller {
387460f13caSSibi Sankar				compatible = "qcom,msm8998-rpmpd";
388460f13caSSibi Sankar				#power-domain-cells = <1>;
389460f13caSSibi Sankar				operating-points-v2 = <&rpmpd_opp_table>;
390460f13caSSibi Sankar
391460f13caSSibi Sankar				rpmpd_opp_table: opp-table {
392460f13caSSibi Sankar					compatible = "operating-points-v2";
393460f13caSSibi Sankar
394460f13caSSibi Sankar					rpmpd_opp_ret: opp1 {
39577901148SAngeloGioacchino Del Regno						opp-level = <RPM_SMD_LEVEL_RETENTION>;
396460f13caSSibi Sankar					};
397460f13caSSibi Sankar
398460f13caSSibi Sankar					rpmpd_opp_ret_plus: opp2 {
39977901148SAngeloGioacchino Del Regno						opp-level = <RPM_SMD_LEVEL_RETENTION_PLUS>;
400460f13caSSibi Sankar					};
401460f13caSSibi Sankar
402460f13caSSibi Sankar					rpmpd_opp_min_svs: opp3 {
40377901148SAngeloGioacchino Del Regno						opp-level = <RPM_SMD_LEVEL_MIN_SVS>;
404460f13caSSibi Sankar					};
405460f13caSSibi Sankar
406460f13caSSibi Sankar					rpmpd_opp_low_svs: opp4 {
40777901148SAngeloGioacchino Del Regno						opp-level = <RPM_SMD_LEVEL_LOW_SVS>;
408460f13caSSibi Sankar					};
409460f13caSSibi Sankar
410460f13caSSibi Sankar					rpmpd_opp_svs: opp5 {
41177901148SAngeloGioacchino Del Regno						opp-level = <RPM_SMD_LEVEL_SVS>;
412460f13caSSibi Sankar					};
413460f13caSSibi Sankar
414460f13caSSibi Sankar					rpmpd_opp_svs_plus: opp6 {
41577901148SAngeloGioacchino Del Regno						opp-level = <RPM_SMD_LEVEL_SVS_PLUS>;
416460f13caSSibi Sankar					};
417460f13caSSibi Sankar
418460f13caSSibi Sankar					rpmpd_opp_nom: opp7 {
41977901148SAngeloGioacchino Del Regno						opp-level = <RPM_SMD_LEVEL_NOM>;
420460f13caSSibi Sankar					};
421460f13caSSibi Sankar
422460f13caSSibi Sankar					rpmpd_opp_nom_plus: opp8 {
42377901148SAngeloGioacchino Del Regno						opp-level = <RPM_SMD_LEVEL_NOM_PLUS>;
424460f13caSSibi Sankar					};
425460f13caSSibi Sankar
426460f13caSSibi Sankar					rpmpd_opp_turbo: opp9 {
42777901148SAngeloGioacchino Del Regno						opp-level = <RPM_SMD_LEVEL_TURBO>;
428460f13caSSibi Sankar					};
429460f13caSSibi Sankar
430460f13caSSibi Sankar					rpmpd_opp_turbo_plus: opp10 {
43177901148SAngeloGioacchino Del Regno						opp-level = <RPM_SMD_LEVEL_BINNING>;
432460f13caSSibi Sankar					};
433460f13caSSibi Sankar				};
434460f13caSSibi Sankar			};
43531c1f0e3SBjorn Andersson		};
43631c1f0e3SBjorn Andersson	};
43731c1f0e3SBjorn Andersson
438c7833949SBjorn Andersson	smem {
439c7833949SBjorn Andersson		compatible = "qcom,smem";
440c7833949SBjorn Andersson		memory-region = <&smem_mem>;
441c7833949SBjorn Andersson		hwlocks = <&tcsr_mutex 3>;
442c7833949SBjorn Andersson	};
443c7833949SBjorn Andersson
444e8d006fdSBjorn Andersson	smp2p-lpass {
445e8d006fdSBjorn Andersson		compatible = "qcom,smp2p";
446e8d006fdSBjorn Andersson		qcom,smem = <443>, <429>;
447e8d006fdSBjorn Andersson
448e8d006fdSBjorn Andersson		interrupts = <GIC_SPI 158 IRQ_TYPE_EDGE_RISING>;
449e8d006fdSBjorn Andersson
450e8d006fdSBjorn Andersson		mboxes = <&apcs_glb 10>;
451e8d006fdSBjorn Andersson
452e8d006fdSBjorn Andersson		qcom,local-pid = <0>;
453e8d006fdSBjorn Andersson		qcom,remote-pid = <2>;
454e8d006fdSBjorn Andersson
455e8d006fdSBjorn Andersson		adsp_smp2p_out: master-kernel {
456e8d006fdSBjorn Andersson			qcom,entry-name = "master-kernel";
457e8d006fdSBjorn Andersson			#qcom,smem-state-cells = <1>;
458e8d006fdSBjorn Andersson		};
459e8d006fdSBjorn Andersson
460e8d006fdSBjorn Andersson		adsp_smp2p_in: slave-kernel {
461e8d006fdSBjorn Andersson			qcom,entry-name = "slave-kernel";
462e8d006fdSBjorn Andersson
463e8d006fdSBjorn Andersson			interrupt-controller;
464e8d006fdSBjorn Andersson			#interrupt-cells = <2>;
465e8d006fdSBjorn Andersson		};
466e8d006fdSBjorn Andersson	};
467e8d006fdSBjorn Andersson
468e8d006fdSBjorn Andersson	smp2p-mpss {
469e8d006fdSBjorn Andersson		compatible = "qcom,smp2p";
470e8d006fdSBjorn Andersson		qcom,smem = <435>, <428>;
471e8d006fdSBjorn Andersson		interrupts = <GIC_SPI 451 IRQ_TYPE_EDGE_RISING>;
472e8d006fdSBjorn Andersson		mboxes = <&apcs_glb 14>;
473e8d006fdSBjorn Andersson		qcom,local-pid = <0>;
474e8d006fdSBjorn Andersson		qcom,remote-pid = <1>;
475e8d006fdSBjorn Andersson
476e8d006fdSBjorn Andersson		modem_smp2p_out: master-kernel {
477e8d006fdSBjorn Andersson			qcom,entry-name = "master-kernel";
478e8d006fdSBjorn Andersson			#qcom,smem-state-cells = <1>;
479e8d006fdSBjorn Andersson		};
480e8d006fdSBjorn Andersson
481e8d006fdSBjorn Andersson		modem_smp2p_in: slave-kernel {
482e8d006fdSBjorn Andersson			qcom,entry-name = "slave-kernel";
483e8d006fdSBjorn Andersson			interrupt-controller;
484e8d006fdSBjorn Andersson			#interrupt-cells = <2>;
485e8d006fdSBjorn Andersson		};
486e8d006fdSBjorn Andersson	};
487e8d006fdSBjorn Andersson
488e8d006fdSBjorn Andersson	smp2p-slpi {
489e8d006fdSBjorn Andersson		compatible = "qcom,smp2p";
490e8d006fdSBjorn Andersson		qcom,smem = <481>, <430>;
491e8d006fdSBjorn Andersson		interrupts = <GIC_SPI 178 IRQ_TYPE_EDGE_RISING>;
492e8d006fdSBjorn Andersson		mboxes = <&apcs_glb 26>;
493e8d006fdSBjorn Andersson		qcom,local-pid = <0>;
494e8d006fdSBjorn Andersson		qcom,remote-pid = <3>;
495e8d006fdSBjorn Andersson
496e8d006fdSBjorn Andersson		slpi_smp2p_out: master-kernel {
497e8d006fdSBjorn Andersson			qcom,entry-name = "master-kernel";
498e8d006fdSBjorn Andersson			#qcom,smem-state-cells = <1>;
499e8d006fdSBjorn Andersson		};
500e8d006fdSBjorn Andersson
501e8d006fdSBjorn Andersson		slpi_smp2p_in: slave-kernel {
502e8d006fdSBjorn Andersson			qcom,entry-name = "slave-kernel";
503e8d006fdSBjorn Andersson			interrupt-controller;
504e8d006fdSBjorn Andersson			#interrupt-cells = <2>;
505e8d006fdSBjorn Andersson		};
506e8d006fdSBjorn Andersson	};
507e8d006fdSBjorn Andersson
5084449b6f2SBjorn Andersson	thermal-zones {
509ae8876ddSAmit Kucheria		cpu0-thermal {
5104449b6f2SBjorn Andersson			polling-delay-passive = <250>;
5114449b6f2SBjorn Andersson			polling-delay = <1000>;
5124449b6f2SBjorn Andersson
513b67d9c5dSAmit Kucheria			thermal-sensors = <&tsens0 1>;
5144449b6f2SBjorn Andersson
5154449b6f2SBjorn Andersson			trips {
516285aa631SAmit Kucheria				cpu0_alert0: trip-point0 {
5174449b6f2SBjorn Andersson					temperature = <75000>;
5184449b6f2SBjorn Andersson					hysteresis = <2000>;
5194449b6f2SBjorn Andersson					type = "passive";
5204449b6f2SBjorn Andersson				};
5214449b6f2SBjorn Andersson
522ae8876ddSAmit Kucheria				cpu0_crit: cpu_crit {
5234449b6f2SBjorn Andersson					temperature = <110000>;
5244449b6f2SBjorn Andersson					hysteresis = <2000>;
5254449b6f2SBjorn Andersson					type = "critical";
5264449b6f2SBjorn Andersson				};
5274449b6f2SBjorn Andersson			};
5284449b6f2SBjorn Andersson		};
5294449b6f2SBjorn Andersson
530ae8876ddSAmit Kucheria		cpu1-thermal {
5314449b6f2SBjorn Andersson			polling-delay-passive = <250>;
5324449b6f2SBjorn Andersson			polling-delay = <1000>;
5334449b6f2SBjorn Andersson
534b67d9c5dSAmit Kucheria			thermal-sensors = <&tsens0 2>;
5354449b6f2SBjorn Andersson
5364449b6f2SBjorn Andersson			trips {
537285aa631SAmit Kucheria				cpu1_alert0: trip-point0 {
5384449b6f2SBjorn Andersson					temperature = <75000>;
5394449b6f2SBjorn Andersson					hysteresis = <2000>;
5404449b6f2SBjorn Andersson					type = "passive";
5414449b6f2SBjorn Andersson				};
5424449b6f2SBjorn Andersson
543ae8876ddSAmit Kucheria				cpu1_crit: cpu_crit {
5444449b6f2SBjorn Andersson					temperature = <110000>;
5454449b6f2SBjorn Andersson					hysteresis = <2000>;
5464449b6f2SBjorn Andersson					type = "critical";
5474449b6f2SBjorn Andersson				};
5484449b6f2SBjorn Andersson			};
5494449b6f2SBjorn Andersson		};
5504449b6f2SBjorn Andersson
551ae8876ddSAmit Kucheria		cpu2-thermal {
5524449b6f2SBjorn Andersson			polling-delay-passive = <250>;
5534449b6f2SBjorn Andersson			polling-delay = <1000>;
5544449b6f2SBjorn Andersson
555b67d9c5dSAmit Kucheria			thermal-sensors = <&tsens0 3>;
5564449b6f2SBjorn Andersson
5574449b6f2SBjorn Andersson			trips {
558285aa631SAmit Kucheria				cpu2_alert0: trip-point0 {
5594449b6f2SBjorn Andersson					temperature = <75000>;
5604449b6f2SBjorn Andersson					hysteresis = <2000>;
5614449b6f2SBjorn Andersson					type = "passive";
5624449b6f2SBjorn Andersson				};
5634449b6f2SBjorn Andersson
564ae8876ddSAmit Kucheria				cpu2_crit: cpu_crit {
5654449b6f2SBjorn Andersson					temperature = <110000>;
5664449b6f2SBjorn Andersson					hysteresis = <2000>;
5674449b6f2SBjorn Andersson					type = "critical";
5684449b6f2SBjorn Andersson				};
5694449b6f2SBjorn Andersson			};
5704449b6f2SBjorn Andersson		};
5714449b6f2SBjorn Andersson
572ae8876ddSAmit Kucheria		cpu3-thermal {
5734449b6f2SBjorn Andersson			polling-delay-passive = <250>;
5744449b6f2SBjorn Andersson			polling-delay = <1000>;
5754449b6f2SBjorn Andersson
576b67d9c5dSAmit Kucheria			thermal-sensors = <&tsens0 4>;
5774449b6f2SBjorn Andersson
5784449b6f2SBjorn Andersson			trips {
579285aa631SAmit Kucheria				cpu3_alert0: trip-point0 {
5804449b6f2SBjorn Andersson					temperature = <75000>;
5814449b6f2SBjorn Andersson					hysteresis = <2000>;
5824449b6f2SBjorn Andersson					type = "passive";
5834449b6f2SBjorn Andersson				};
5844449b6f2SBjorn Andersson
585ae8876ddSAmit Kucheria				cpu3_crit: cpu_crit {
5864449b6f2SBjorn Andersson					temperature = <110000>;
5874449b6f2SBjorn Andersson					hysteresis = <2000>;
5884449b6f2SBjorn Andersson					type = "critical";
5894449b6f2SBjorn Andersson				};
5904449b6f2SBjorn Andersson			};
5914449b6f2SBjorn Andersson		};
5924449b6f2SBjorn Andersson
593ae8876ddSAmit Kucheria		cpu4-thermal {
5944449b6f2SBjorn Andersson			polling-delay-passive = <250>;
5954449b6f2SBjorn Andersson			polling-delay = <1000>;
5964449b6f2SBjorn Andersson
5974449b6f2SBjorn Andersson			thermal-sensors = <&tsens0 7>;
5984449b6f2SBjorn Andersson
5994449b6f2SBjorn Andersson			trips {
600285aa631SAmit Kucheria				cpu4_alert0: trip-point0 {
6014449b6f2SBjorn Andersson					temperature = <75000>;
6024449b6f2SBjorn Andersson					hysteresis = <2000>;
6034449b6f2SBjorn Andersson					type = "passive";
6044449b6f2SBjorn Andersson				};
6054449b6f2SBjorn Andersson
606ae8876ddSAmit Kucheria				cpu4_crit: cpu_crit {
6074449b6f2SBjorn Andersson					temperature = <110000>;
6084449b6f2SBjorn Andersson					hysteresis = <2000>;
6094449b6f2SBjorn Andersson					type = "critical";
6104449b6f2SBjorn Andersson				};
6114449b6f2SBjorn Andersson			};
6124449b6f2SBjorn Andersson		};
6134449b6f2SBjorn Andersson
614ae8876ddSAmit Kucheria		cpu5-thermal {
6154449b6f2SBjorn Andersson			polling-delay-passive = <250>;
6164449b6f2SBjorn Andersson			polling-delay = <1000>;
6174449b6f2SBjorn Andersson
6184449b6f2SBjorn Andersson			thermal-sensors = <&tsens0 8>;
6194449b6f2SBjorn Andersson
6204449b6f2SBjorn Andersson			trips {
621285aa631SAmit Kucheria				cpu5_alert0: trip-point0 {
6224449b6f2SBjorn Andersson					temperature = <75000>;
6234449b6f2SBjorn Andersson					hysteresis = <2000>;
6244449b6f2SBjorn Andersson					type = "passive";
6254449b6f2SBjorn Andersson				};
6264449b6f2SBjorn Andersson
627ae8876ddSAmit Kucheria				cpu5_crit: cpu_crit {
6284449b6f2SBjorn Andersson					temperature = <110000>;
6294449b6f2SBjorn Andersson					hysteresis = <2000>;
6304449b6f2SBjorn Andersson					type = "critical";
6314449b6f2SBjorn Andersson				};
6324449b6f2SBjorn Andersson			};
6334449b6f2SBjorn Andersson		};
6344449b6f2SBjorn Andersson
635ae8876ddSAmit Kucheria		cpu6-thermal {
6364449b6f2SBjorn Andersson			polling-delay-passive = <250>;
6374449b6f2SBjorn Andersson			polling-delay = <1000>;
6384449b6f2SBjorn Andersson
6394449b6f2SBjorn Andersson			thermal-sensors = <&tsens0 9>;
6404449b6f2SBjorn Andersson
6414449b6f2SBjorn Andersson			trips {
642285aa631SAmit Kucheria				cpu6_alert0: trip-point0 {
6434449b6f2SBjorn Andersson					temperature = <75000>;
6444449b6f2SBjorn Andersson					hysteresis = <2000>;
6454449b6f2SBjorn Andersson					type = "passive";
6464449b6f2SBjorn Andersson				};
6474449b6f2SBjorn Andersson
648ae8876ddSAmit Kucheria				cpu6_crit: cpu_crit {
6494449b6f2SBjorn Andersson					temperature = <110000>;
6504449b6f2SBjorn Andersson					hysteresis = <2000>;
6514449b6f2SBjorn Andersson					type = "critical";
6524449b6f2SBjorn Andersson				};
6534449b6f2SBjorn Andersson			};
6544449b6f2SBjorn Andersson		};
6554449b6f2SBjorn Andersson
656ae8876ddSAmit Kucheria		cpu7-thermal {
6574449b6f2SBjorn Andersson			polling-delay-passive = <250>;
6584449b6f2SBjorn Andersson			polling-delay = <1000>;
6594449b6f2SBjorn Andersson
6604449b6f2SBjorn Andersson			thermal-sensors = <&tsens0 10>;
6614449b6f2SBjorn Andersson
6624449b6f2SBjorn Andersson			trips {
663285aa631SAmit Kucheria				cpu7_alert0: trip-point0 {
6644449b6f2SBjorn Andersson					temperature = <75000>;
6654449b6f2SBjorn Andersson					hysteresis = <2000>;
6664449b6f2SBjorn Andersson					type = "passive";
6674449b6f2SBjorn Andersson				};
6684449b6f2SBjorn Andersson
669ae8876ddSAmit Kucheria				cpu7_crit: cpu_crit {
6704449b6f2SBjorn Andersson					temperature = <110000>;
6714449b6f2SBjorn Andersson					hysteresis = <2000>;
6724449b6f2SBjorn Andersson					type = "critical";
6734449b6f2SBjorn Andersson				};
6744449b6f2SBjorn Andersson			};
6754449b6f2SBjorn Andersson		};
6764449b6f2SBjorn Andersson
6772fa2d301SAmit Kucheria		gpu-thermal-bottom {
6782fa2d301SAmit Kucheria			polling-delay-passive = <250>;
6792fa2d301SAmit Kucheria			polling-delay = <1000>;
6802fa2d301SAmit Kucheria
6812fa2d301SAmit Kucheria			thermal-sensors = <&tsens0 12>;
6822fa2d301SAmit Kucheria
6832fa2d301SAmit Kucheria			trips {
684285aa631SAmit Kucheria				gpu1_alert0: trip-point0 {
6852fa2d301SAmit Kucheria					temperature = <90000>;
6862fa2d301SAmit Kucheria					hysteresis = <2000>;
6872fa2d301SAmit Kucheria					type = "hot";
6882fa2d301SAmit Kucheria				};
6892fa2d301SAmit Kucheria			};
6902fa2d301SAmit Kucheria		};
6912fa2d301SAmit Kucheria
6922fa2d301SAmit Kucheria		gpu-thermal-top {
6934449b6f2SBjorn Andersson			polling-delay-passive = <250>;
6944449b6f2SBjorn Andersson			polling-delay = <1000>;
6954449b6f2SBjorn Andersson
6969284aa44SAmit Kucheria			thermal-sensors = <&tsens0 13>;
6972fa2d301SAmit Kucheria
6982fa2d301SAmit Kucheria			trips {
699285aa631SAmit Kucheria				gpu2_alert0: trip-point0 {
7002fa2d301SAmit Kucheria					temperature = <90000>;
7012fa2d301SAmit Kucheria					hysteresis = <2000>;
7022fa2d301SAmit Kucheria					type = "hot";
7032fa2d301SAmit Kucheria				};
7042fa2d301SAmit Kucheria			};
7054449b6f2SBjorn Andersson		};
706e9d2729dSAmit Kucheria
707060f4211SAmit Kucheria		clust0-mhm-thermal {
708e9d2729dSAmit Kucheria			polling-delay-passive = <250>;
709e9d2729dSAmit Kucheria			polling-delay = <1000>;
710e9d2729dSAmit Kucheria
711e9d2729dSAmit Kucheria			thermal-sensors = <&tsens0 5>;
712e9d2729dSAmit Kucheria
713e9d2729dSAmit Kucheria			trips {
714285aa631SAmit Kucheria				cluster0_mhm_alert0: trip-point0 {
715e9d2729dSAmit Kucheria					temperature = <90000>;
716e9d2729dSAmit Kucheria					hysteresis = <2000>;
717e9d2729dSAmit Kucheria					type = "hot";
718e9d2729dSAmit Kucheria				};
719e9d2729dSAmit Kucheria			};
720e9d2729dSAmit Kucheria		};
721e9d2729dSAmit Kucheria
722060f4211SAmit Kucheria		clust1-mhm-thermal {
723e9d2729dSAmit Kucheria			polling-delay-passive = <250>;
724e9d2729dSAmit Kucheria			polling-delay = <1000>;
725e9d2729dSAmit Kucheria
726e9d2729dSAmit Kucheria			thermal-sensors = <&tsens0 6>;
727e9d2729dSAmit Kucheria
728e9d2729dSAmit Kucheria			trips {
729285aa631SAmit Kucheria				cluster1_mhm_alert0: trip-point0 {
730e9d2729dSAmit Kucheria					temperature = <90000>;
731e9d2729dSAmit Kucheria					hysteresis = <2000>;
732e9d2729dSAmit Kucheria					type = "hot";
733e9d2729dSAmit Kucheria				};
734e9d2729dSAmit Kucheria			};
735e9d2729dSAmit Kucheria		};
736e9d2729dSAmit Kucheria
737e9d2729dSAmit Kucheria		cluster1-l2-thermal {
7384449b6f2SBjorn Andersson			polling-delay-passive = <250>;
7394449b6f2SBjorn Andersson			polling-delay = <1000>;
7404449b6f2SBjorn Andersson
7414449b6f2SBjorn Andersson			thermal-sensors = <&tsens0 11>;
7424449b6f2SBjorn Andersson
7434449b6f2SBjorn Andersson			trips {
744285aa631SAmit Kucheria				cluster1_l2_alert0: trip-point0 {
745e9d2729dSAmit Kucheria					temperature = <90000>;
7464449b6f2SBjorn Andersson					hysteresis = <2000>;
747e9d2729dSAmit Kucheria					type = "hot";
7484449b6f2SBjorn Andersson				};
7494449b6f2SBjorn Andersson			};
7504449b6f2SBjorn Andersson		};
7514449b6f2SBjorn Andersson
752e9d2729dSAmit Kucheria		modem-thermal {
7534449b6f2SBjorn Andersson			polling-delay-passive = <250>;
7544449b6f2SBjorn Andersson			polling-delay = <1000>;
7554449b6f2SBjorn Andersson
7564449b6f2SBjorn Andersson			thermal-sensors = <&tsens1 1>;
7574449b6f2SBjorn Andersson
7584449b6f2SBjorn Andersson			trips {
759285aa631SAmit Kucheria				modem_alert0: trip-point0 {
760e9d2729dSAmit Kucheria					temperature = <90000>;
7614449b6f2SBjorn Andersson					hysteresis = <2000>;
762e9d2729dSAmit Kucheria					type = "hot";
7634449b6f2SBjorn Andersson				};
7644449b6f2SBjorn Andersson			};
7654449b6f2SBjorn Andersson		};
7664449b6f2SBjorn Andersson
767e9d2729dSAmit Kucheria		mem-thermal {
768e9d2729dSAmit Kucheria			polling-delay-passive = <250>;
769e9d2729dSAmit Kucheria			polling-delay = <1000>;
770e9d2729dSAmit Kucheria
771e9d2729dSAmit Kucheria			thermal-sensors = <&tsens1 2>;
772e9d2729dSAmit Kucheria
773e9d2729dSAmit Kucheria			trips {
774285aa631SAmit Kucheria				mem_alert0: trip-point0 {
775e9d2729dSAmit Kucheria					temperature = <90000>;
776e9d2729dSAmit Kucheria					hysteresis = <2000>;
777e9d2729dSAmit Kucheria					type = "hot";
778e9d2729dSAmit Kucheria				};
779e9d2729dSAmit Kucheria			};
780e9d2729dSAmit Kucheria		};
781e9d2729dSAmit Kucheria
782e9d2729dSAmit Kucheria		wlan-thermal {
7834449b6f2SBjorn Andersson			polling-delay-passive = <250>;
7844449b6f2SBjorn Andersson			polling-delay = <1000>;
7854449b6f2SBjorn Andersson
7864449b6f2SBjorn Andersson			thermal-sensors = <&tsens1 3>;
787e9d2729dSAmit Kucheria
788e9d2729dSAmit Kucheria			trips {
789285aa631SAmit Kucheria				wlan_alert0: trip-point0 {
790e9d2729dSAmit Kucheria					temperature = <90000>;
791e9d2729dSAmit Kucheria					hysteresis = <2000>;
792e9d2729dSAmit Kucheria					type = "hot";
793e9d2729dSAmit Kucheria				};
794e9d2729dSAmit Kucheria			};
795e9d2729dSAmit Kucheria		};
796e9d2729dSAmit Kucheria
797e9d2729dSAmit Kucheria		q6-dsp-thermal {
798e9d2729dSAmit Kucheria			polling-delay-passive = <250>;
799e9d2729dSAmit Kucheria			polling-delay = <1000>;
800e9d2729dSAmit Kucheria
801e9d2729dSAmit Kucheria			thermal-sensors = <&tsens1 4>;
802e9d2729dSAmit Kucheria
803e9d2729dSAmit Kucheria			trips {
804285aa631SAmit Kucheria				q6_dsp_alert0: trip-point0 {
805e9d2729dSAmit Kucheria					temperature = <90000>;
806e9d2729dSAmit Kucheria					hysteresis = <2000>;
807e9d2729dSAmit Kucheria					type = "hot";
808e9d2729dSAmit Kucheria				};
809e9d2729dSAmit Kucheria			};
810e9d2729dSAmit Kucheria		};
811e9d2729dSAmit Kucheria
812e9d2729dSAmit Kucheria		camera-thermal {
813e9d2729dSAmit Kucheria			polling-delay-passive = <250>;
814e9d2729dSAmit Kucheria			polling-delay = <1000>;
815e9d2729dSAmit Kucheria
816e9d2729dSAmit Kucheria			thermal-sensors = <&tsens1 5>;
817e9d2729dSAmit Kucheria
818e9d2729dSAmit Kucheria			trips {
819285aa631SAmit Kucheria				camera_alert0: trip-point0 {
820e9d2729dSAmit Kucheria					temperature = <90000>;
821e9d2729dSAmit Kucheria					hysteresis = <2000>;
822e9d2729dSAmit Kucheria					type = "hot";
823e9d2729dSAmit Kucheria				};
824e9d2729dSAmit Kucheria			};
825e9d2729dSAmit Kucheria		};
826e9d2729dSAmit Kucheria
827e9d2729dSAmit Kucheria		multimedia-thermal {
828e9d2729dSAmit Kucheria			polling-delay-passive = <250>;
829e9d2729dSAmit Kucheria			polling-delay = <1000>;
830e9d2729dSAmit Kucheria
831e9d2729dSAmit Kucheria			thermal-sensors = <&tsens1 6>;
832e9d2729dSAmit Kucheria
833e9d2729dSAmit Kucheria			trips {
834285aa631SAmit Kucheria				multimedia_alert0: trip-point0 {
835e9d2729dSAmit Kucheria					temperature = <90000>;
836e9d2729dSAmit Kucheria					hysteresis = <2000>;
837e9d2729dSAmit Kucheria					type = "hot";
838e9d2729dSAmit Kucheria				};
839e9d2729dSAmit Kucheria			};
8404449b6f2SBjorn Andersson		};
8414449b6f2SBjorn Andersson	};
8424449b6f2SBjorn Andersson
8434807c71cSJoonwoo Park	timer {
8444807c71cSJoonwoo Park		compatible = "arm,armv8-timer";
8454807c71cSJoonwoo Park		interrupts = <GIC_PPI 1 IRQ_TYPE_LEVEL_LOW>,
8464807c71cSJoonwoo Park			     <GIC_PPI 2 IRQ_TYPE_LEVEL_LOW>,
8474807c71cSJoonwoo Park			     <GIC_PPI 3 IRQ_TYPE_LEVEL_LOW>,
8484807c71cSJoonwoo Park			     <GIC_PPI 0 IRQ_TYPE_LEVEL_LOW>;
8494807c71cSJoonwoo Park	};
8504807c71cSJoonwoo Park
8514807c71cSJoonwoo Park	soc: soc {
8524807c71cSJoonwoo Park		#address-cells = <1>;
8534807c71cSJoonwoo Park		#size-cells = <1>;
8544807c71cSJoonwoo Park		ranges = <0 0 0 0xffffffff>;
8554807c71cSJoonwoo Park		compatible = "simple-bus";
8564807c71cSJoonwoo Park
85732a5da21SJeffrey Hugo		gcc: clock-controller@100000 {
85832a5da21SJeffrey Hugo			compatible = "qcom,gcc-msm8998";
85932a5da21SJeffrey Hugo			#clock-cells = <1>;
86032a5da21SJeffrey Hugo			#reset-cells = <1>;
86132a5da21SJeffrey Hugo			#power-domain-cells = <1>;
86232a5da21SJeffrey Hugo			reg = <0x00100000 0xb0000>;
8632c2f64aeSMarijn Suijten
8642c2f64aeSMarijn Suijten			clock-names = "xo", "sleep_clk";
8652c2f64aeSMarijn Suijten			clocks = <&xo>, <&sleep_clk>;
86632a5da21SJeffrey Hugo		};
86732a5da21SJeffrey Hugo
868*179811beSStephan Gerhold		rpm_msg_ram: sram@778000 {
86931c1f0e3SBjorn Andersson			compatible = "qcom,rpm-msg-ram";
87032a5da21SJeffrey Hugo			reg = <0x00778000 0x7000>;
87131c1f0e3SBjorn Andersson		};
87231c1f0e3SBjorn Andersson
87394117eb1SAngeloGioacchino Del Regno		qfprom: qfprom@784000 {
874f259e398SBjorn Andersson			compatible = "qcom,qfprom";
87594117eb1SAngeloGioacchino Del Regno			reg = <0x00784000 0x621c>;
876f259e398SBjorn Andersson			#address-cells = <1>;
877f259e398SBjorn Andersson			#size-cells = <1>;
878026dad8fSJeffrey Hugo
87994117eb1SAngeloGioacchino Del Regno			qusb2_hstx_trim: hstx-trim@23a {
88094117eb1SAngeloGioacchino Del Regno				reg = <0x23a 0x1>;
881026dad8fSJeffrey Hugo				bits = <0 4>;
882026dad8fSJeffrey Hugo			};
883f259e398SBjorn Andersson		};
884f259e398SBjorn Andersson
88550325048SAmit Kucheria		tsens0: thermal@10ab000 {
8864449b6f2SBjorn Andersson			compatible = "qcom,msm8998-tsens", "qcom,tsens-v2";
88732a5da21SJeffrey Hugo			reg = <0x010ab000 0x1000>, /* TM */
88832a5da21SJeffrey Hugo			      <0x010aa000 0x1000>; /* SROT */
889280acabbSAmit Kucheria			#qcom,sensors = <14>;
890f0b888afSAmit Kucheria			interrupts = <GIC_SPI 458 IRQ_TYPE_LEVEL_HIGH>,
891f0b888afSAmit Kucheria				     <GIC_SPI 445 IRQ_TYPE_LEVEL_HIGH>;
892f0b888afSAmit Kucheria			interrupt-names = "uplow", "critical";
8934449b6f2SBjorn Andersson			#thermal-sensor-cells = <1>;
8944449b6f2SBjorn Andersson		};
8954449b6f2SBjorn Andersson
89650325048SAmit Kucheria		tsens1: thermal@10ae000 {
8974449b6f2SBjorn Andersson			compatible = "qcom,msm8998-tsens", "qcom,tsens-v2";
89832a5da21SJeffrey Hugo			reg = <0x010ae000 0x1000>, /* TM */
89932a5da21SJeffrey Hugo			      <0x010ad000 0x1000>; /* SROT */
9004449b6f2SBjorn Andersson			#qcom,sensors = <8>;
901f0b888afSAmit Kucheria			interrupts = <GIC_SPI 184 IRQ_TYPE_LEVEL_HIGH>,
902f0b888afSAmit Kucheria				     <GIC_SPI 430 IRQ_TYPE_LEVEL_HIGH>;
903f0b888afSAmit Kucheria			interrupt-names = "uplow", "critical";
9044449b6f2SBjorn Andersson			#thermal-sensor-cells = <1>;
9054449b6f2SBjorn Andersson		};
9064449b6f2SBjorn Andersson
9078389b869SMarc Gonzalez		anoc1_smmu: iommu@1680000 {
9088389b869SMarc Gonzalez			compatible = "qcom,msm8998-smmu-v2", "qcom,smmu-v2";
9098389b869SMarc Gonzalez			reg = <0x01680000 0x10000>;
9108389b869SMarc Gonzalez			#iommu-cells = <1>;
9118389b869SMarc Gonzalez
9128389b869SMarc Gonzalez			#global-interrupts = <0>;
9138389b869SMarc Gonzalez			interrupts =
9148389b869SMarc Gonzalez				<GIC_SPI 364 IRQ_TYPE_EDGE_RISING>,
9158389b869SMarc Gonzalez				<GIC_SPI 365 IRQ_TYPE_EDGE_RISING>,
9168389b869SMarc Gonzalez				<GIC_SPI 366 IRQ_TYPE_EDGE_RISING>,
9178389b869SMarc Gonzalez				<GIC_SPI 367 IRQ_TYPE_EDGE_RISING>,
9188389b869SMarc Gonzalez				<GIC_SPI 368 IRQ_TYPE_EDGE_RISING>,
9198389b869SMarc Gonzalez				<GIC_SPI 369 IRQ_TYPE_EDGE_RISING>;
9208389b869SMarc Gonzalez		};
9218389b869SMarc Gonzalez
922a21c9548SJeffrey Hugo		anoc2_smmu: iommu@16c0000 {
923a21c9548SJeffrey Hugo			compatible = "qcom,msm8998-smmu-v2", "qcom,smmu-v2";
924a21c9548SJeffrey Hugo			reg = <0x016c0000 0x40000>;
925a21c9548SJeffrey Hugo			#iommu-cells = <1>;
926a21c9548SJeffrey Hugo
927a21c9548SJeffrey Hugo			#global-interrupts = <0>;
928a21c9548SJeffrey Hugo			interrupts =
929a21c9548SJeffrey Hugo				<GIC_SPI 373 IRQ_TYPE_EDGE_RISING>,
930a21c9548SJeffrey Hugo				<GIC_SPI 374 IRQ_TYPE_EDGE_RISING>,
931a21c9548SJeffrey Hugo				<GIC_SPI 375 IRQ_TYPE_EDGE_RISING>,
932a21c9548SJeffrey Hugo				<GIC_SPI 376 IRQ_TYPE_EDGE_RISING>,
933a21c9548SJeffrey Hugo				<GIC_SPI 377 IRQ_TYPE_EDGE_RISING>,
934a21c9548SJeffrey Hugo				<GIC_SPI 378 IRQ_TYPE_EDGE_RISING>,
935a21c9548SJeffrey Hugo				<GIC_SPI 462 IRQ_TYPE_EDGE_RISING>,
936a21c9548SJeffrey Hugo				<GIC_SPI 463 IRQ_TYPE_EDGE_RISING>,
937a21c9548SJeffrey Hugo				<GIC_SPI 464 IRQ_TYPE_EDGE_RISING>,
938a21c9548SJeffrey Hugo				<GIC_SPI 465 IRQ_TYPE_EDGE_RISING>;
939a21c9548SJeffrey Hugo		};
940a21c9548SJeffrey Hugo
941b84dfd17SMarc Gonzalez		pcie0: pci@1c00000 {
942b84dfd17SMarc Gonzalez			compatible = "qcom,pcie-msm8996";
943b84dfd17SMarc Gonzalez			reg =	<0x01c00000 0x2000>,
944b84dfd17SMarc Gonzalez				<0x1b000000 0xf1d>,
945b84dfd17SMarc Gonzalez				<0x1b000f20 0xa8>,
946b84dfd17SMarc Gonzalez				<0x1b100000 0x100000>;
947b84dfd17SMarc Gonzalez			reg-names = "parf", "dbi", "elbi", "config";
948b84dfd17SMarc Gonzalez			device_type = "pci";
949b84dfd17SMarc Gonzalez			linux,pci-domain = <0>;
950b84dfd17SMarc Gonzalez			bus-range = <0x00 0xff>;
951b84dfd17SMarc Gonzalez			#address-cells = <3>;
952b84dfd17SMarc Gonzalez			#size-cells = <2>;
953b84dfd17SMarc Gonzalez			num-lanes = <1>;
954b84dfd17SMarc Gonzalez			phys = <&pciephy>;
955b84dfd17SMarc Gonzalez			phy-names = "pciephy";
956a72848e8SKonrad Dybcio			status = "disabled";
957b84dfd17SMarc Gonzalez
958b84dfd17SMarc Gonzalez			ranges = <0x01000000 0x0 0x1b200000 0x1b200000 0x0 0x100000>,
959b84dfd17SMarc Gonzalez				 <0x02000000 0x0 0x1b300000 0x1b300000 0x0 0xd00000>;
960b84dfd17SMarc Gonzalez
961b84dfd17SMarc Gonzalez			#interrupt-cells = <1>;
962b84dfd17SMarc Gonzalez			interrupts = <GIC_SPI 405 IRQ_TYPE_LEVEL_HIGH>;
963b84dfd17SMarc Gonzalez			interrupt-names = "msi";
964b84dfd17SMarc Gonzalez			interrupt-map-mask = <0 0 0 0x7>;
9650ac10b29SRob Herring			interrupt-map =	<0 0 0 1 &intc 0 0 135 IRQ_TYPE_LEVEL_HIGH>,
9660ac10b29SRob Herring					<0 0 0 2 &intc 0 0 136 IRQ_TYPE_LEVEL_HIGH>,
9670ac10b29SRob Herring					<0 0 0 3 &intc 0 0 138 IRQ_TYPE_LEVEL_HIGH>,
9680ac10b29SRob Herring					<0 0 0 4 &intc 0 0 139 IRQ_TYPE_LEVEL_HIGH>;
969b84dfd17SMarc Gonzalez
970b84dfd17SMarc Gonzalez			clocks = <&gcc GCC_PCIE_0_PIPE_CLK>,
971b84dfd17SMarc Gonzalez				 <&gcc GCC_PCIE_0_MSTR_AXI_CLK>,
972b84dfd17SMarc Gonzalez				 <&gcc GCC_PCIE_0_SLV_AXI_CLK>,
973b84dfd17SMarc Gonzalez				 <&gcc GCC_PCIE_0_CFG_AHB_CLK>,
974b84dfd17SMarc Gonzalez				 <&gcc GCC_PCIE_0_AUX_CLK>;
975b84dfd17SMarc Gonzalez			clock-names = "pipe", "bus_master", "bus_slave", "cfg", "aux";
976b84dfd17SMarc Gonzalez
977b84dfd17SMarc Gonzalez			power-domains = <&gcc PCIE_0_GDSC>;
978b84dfd17SMarc Gonzalez			iommu-map = <0x100 &anoc1_smmu 0x1480 1>;
979b84dfd17SMarc Gonzalez			perst-gpios = <&tlmm 35 GPIO_ACTIVE_LOW>;
980b84dfd17SMarc Gonzalez		};
981b84dfd17SMarc Gonzalez
982a72848e8SKonrad Dybcio		pcie_phy: phy@1c06000 {
983b84dfd17SMarc Gonzalez			compatible = "qcom,msm8998-qmp-pcie-phy";
984b84dfd17SMarc Gonzalez			reg = <0x01c06000 0x18c>;
985b84dfd17SMarc Gonzalez			#address-cells = <1>;
986b84dfd17SMarc Gonzalez			#size-cells = <1>;
987a72848e8SKonrad Dybcio			status = "disabled";
988b84dfd17SMarc Gonzalez			ranges;
989b84dfd17SMarc Gonzalez
990b84dfd17SMarc Gonzalez			clocks = <&gcc GCC_PCIE_PHY_AUX_CLK>,
991b84dfd17SMarc Gonzalez				 <&gcc GCC_PCIE_0_CFG_AHB_CLK>,
992b84dfd17SMarc Gonzalez				 <&gcc GCC_PCIE_CLKREF_CLK>;
993b84dfd17SMarc Gonzalez			clock-names = "aux", "cfg_ahb", "ref";
994b84dfd17SMarc Gonzalez
995b84dfd17SMarc Gonzalez			resets = <&gcc GCC_PCIE_0_PHY_BCR>, <&gcc GCC_PCIE_PHY_BCR>;
996b84dfd17SMarc Gonzalez			reset-names = "phy", "common";
997b84dfd17SMarc Gonzalez
998b84dfd17SMarc Gonzalez			vdda-phy-supply = <&vreg_l1a_0p875>;
999b84dfd17SMarc Gonzalez			vdda-pll-supply = <&vreg_l2a_1p2>;
1000b84dfd17SMarc Gonzalez
10011351512fSShawn Guo			pciephy: phy@1c06800 {
1002b84dfd17SMarc Gonzalez				reg = <0x01c06200 0x128>, <0x01c06400 0x1fc>, <0x01c06800 0x20c>;
1003b84dfd17SMarc Gonzalez				#phy-cells = <0>;
1004b84dfd17SMarc Gonzalez
1005b84dfd17SMarc Gonzalez				clocks = <&gcc GCC_PCIE_0_PIPE_CLK>;
1006b84dfd17SMarc Gonzalez				clock-names = "pipe0";
1007b84dfd17SMarc Gonzalez				clock-output-names = "pcie_0_pipe_clk_src";
1008b84dfd17SMarc Gonzalez				#clock-cells = <0>;
1009b84dfd17SMarc Gonzalez			};
1010b84dfd17SMarc Gonzalez		};
1011b84dfd17SMarc Gonzalez
101232a5da21SJeffrey Hugo		ufshc: ufshc@1da4000 {
101332a5da21SJeffrey Hugo			compatible = "qcom,msm8998-ufshc", "qcom,ufshc", "jedec,ufs-2.0";
101432a5da21SJeffrey Hugo			reg = <0x01da4000 0x2500>;
101532a5da21SJeffrey Hugo			interrupts = <GIC_SPI 265 IRQ_TYPE_LEVEL_HIGH>;
101632a5da21SJeffrey Hugo			phys = <&ufsphy_lanes>;
101732a5da21SJeffrey Hugo			phy-names = "ufsphy";
101832a5da21SJeffrey Hugo			lanes-per-direction = <2>;
101932a5da21SJeffrey Hugo			power-domains = <&gcc UFS_GDSC>;
1020a72848e8SKonrad Dybcio			status = "disabled";
102132a5da21SJeffrey Hugo			#reset-cells = <1>;
102232a5da21SJeffrey Hugo
102332a5da21SJeffrey Hugo			clock-names =
102432a5da21SJeffrey Hugo				"core_clk",
102532a5da21SJeffrey Hugo				"bus_aggr_clk",
102632a5da21SJeffrey Hugo				"iface_clk",
102732a5da21SJeffrey Hugo				"core_clk_unipro",
102832a5da21SJeffrey Hugo				"ref_clk",
102932a5da21SJeffrey Hugo				"tx_lane0_sync_clk",
103032a5da21SJeffrey Hugo				"rx_lane0_sync_clk",
103132a5da21SJeffrey Hugo				"rx_lane1_sync_clk";
103232a5da21SJeffrey Hugo			clocks =
103332a5da21SJeffrey Hugo				<&gcc GCC_UFS_AXI_CLK>,
103432a5da21SJeffrey Hugo				<&gcc GCC_AGGRE1_UFS_AXI_CLK>,
103532a5da21SJeffrey Hugo				<&gcc GCC_UFS_AHB_CLK>,
103632a5da21SJeffrey Hugo				<&gcc GCC_UFS_UNIPRO_CORE_CLK>,
103732a5da21SJeffrey Hugo				<&rpmcc RPM_SMD_LN_BB_CLK1>,
103832a5da21SJeffrey Hugo				<&gcc GCC_UFS_TX_SYMBOL_0_CLK>,
103932a5da21SJeffrey Hugo				<&gcc GCC_UFS_RX_SYMBOL_0_CLK>,
104032a5da21SJeffrey Hugo				<&gcc GCC_UFS_RX_SYMBOL_1_CLK>;
104132a5da21SJeffrey Hugo			freq-table-hz =
104232a5da21SJeffrey Hugo				<50000000 200000000>,
104332a5da21SJeffrey Hugo				<0 0>,
104432a5da21SJeffrey Hugo				<0 0>,
104532a5da21SJeffrey Hugo				<37500000 150000000>,
104632a5da21SJeffrey Hugo				<0 0>,
104732a5da21SJeffrey Hugo				<0 0>,
104832a5da21SJeffrey Hugo				<0 0>,
104932a5da21SJeffrey Hugo				<0 0>;
105032a5da21SJeffrey Hugo
105132a5da21SJeffrey Hugo			resets = <&gcc GCC_UFS_BCR>;
105232a5da21SJeffrey Hugo			reset-names = "rst";
1053c7833949SBjorn Andersson		};
1054c7833949SBjorn Andersson
105532a5da21SJeffrey Hugo		ufsphy: phy@1da7000 {
105632a5da21SJeffrey Hugo			compatible = "qcom,msm8998-qmp-ufs-phy";
105732a5da21SJeffrey Hugo			reg = <0x01da7000 0x18c>;
105832a5da21SJeffrey Hugo			#address-cells = <1>;
105932a5da21SJeffrey Hugo			#size-cells = <1>;
1060a72848e8SKonrad Dybcio			status = "disabled";
106132a5da21SJeffrey Hugo			ranges;
106231c1f0e3SBjorn Andersson
106332a5da21SJeffrey Hugo			clock-names =
106432a5da21SJeffrey Hugo				"ref",
106532a5da21SJeffrey Hugo				"ref_aux";
106632a5da21SJeffrey Hugo			clocks =
106732a5da21SJeffrey Hugo				<&gcc GCC_UFS_CLKREF_CLK>,
106832a5da21SJeffrey Hugo				<&gcc GCC_UFS_PHY_AUX_CLK>;
106932a5da21SJeffrey Hugo
107032a5da21SJeffrey Hugo			reset-names = "ufsphy";
107132a5da21SJeffrey Hugo			resets = <&ufshc 0>;
107232a5da21SJeffrey Hugo
10731351512fSShawn Guo			ufsphy_lanes: phy@1da7400 {
107432a5da21SJeffrey Hugo				reg = <0x01da7400 0x128>,
107532a5da21SJeffrey Hugo				      <0x01da7600 0x1fc>,
107632a5da21SJeffrey Hugo				      <0x01da7c00 0x1dc>,
107732a5da21SJeffrey Hugo				      <0x01da7800 0x128>,
107832a5da21SJeffrey Hugo				      <0x01da7a00 0x1fc>;
107932a5da21SJeffrey Hugo				#phy-cells = <0>;
108032a5da21SJeffrey Hugo			};
108132a5da21SJeffrey Hugo		};
108232a5da21SJeffrey Hugo
108332a5da21SJeffrey Hugo		tcsr_mutex_regs: syscon@1f40000 {
108432a5da21SJeffrey Hugo			compatible = "syscon";
108505caa5bfSJeffrey Hugo			reg = <0x01f40000 0x40000>;
108632a5da21SJeffrey Hugo		};
108732a5da21SJeffrey Hugo
108832a5da21SJeffrey Hugo		tlmm: pinctrl@3400000 {
108932a5da21SJeffrey Hugo			compatible = "qcom,msm8998-pinctrl";
109032a5da21SJeffrey Hugo			reg = <0x03400000 0xc00000>;
109132a5da21SJeffrey Hugo			interrupts = <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>;
109232a5da21SJeffrey Hugo			gpio-controller;
109332a5da21SJeffrey Hugo			#gpio-cells = <0x2>;
109432a5da21SJeffrey Hugo			interrupt-controller;
109532a5da21SJeffrey Hugo			#interrupt-cells = <0x2>;
109603e6cb3dSKonrad Dybcio
109703e6cb3dSKonrad Dybcio			sdc2_clk_on: sdc2_clk_on {
109803e6cb3dSKonrad Dybcio				config {
109903e6cb3dSKonrad Dybcio					pins = "sdc2_clk";
110003e6cb3dSKonrad Dybcio					bias-disable;
110103e6cb3dSKonrad Dybcio					drive-strength = <16>;
110203e6cb3dSKonrad Dybcio				};
110303e6cb3dSKonrad Dybcio			};
110403e6cb3dSKonrad Dybcio
110503e6cb3dSKonrad Dybcio			sdc2_clk_off: sdc2_clk_off {
110603e6cb3dSKonrad Dybcio				config {
110703e6cb3dSKonrad Dybcio					pins = "sdc2_clk";
110803e6cb3dSKonrad Dybcio					bias-disable;
110903e6cb3dSKonrad Dybcio					drive-strength = <2>;
111003e6cb3dSKonrad Dybcio				};
111103e6cb3dSKonrad Dybcio			};
111203e6cb3dSKonrad Dybcio
111303e6cb3dSKonrad Dybcio			sdc2_cmd_on: sdc2_cmd_on {
111403e6cb3dSKonrad Dybcio				config {
111503e6cb3dSKonrad Dybcio					pins = "sdc2_cmd";
111603e6cb3dSKonrad Dybcio					bias-pull-up;
111703e6cb3dSKonrad Dybcio					drive-strength = <10>;
111803e6cb3dSKonrad Dybcio				};
111903e6cb3dSKonrad Dybcio			};
112003e6cb3dSKonrad Dybcio
112103e6cb3dSKonrad Dybcio			sdc2_cmd_off: sdc2_cmd_off {
112203e6cb3dSKonrad Dybcio				config {
112303e6cb3dSKonrad Dybcio					pins = "sdc2_cmd";
112403e6cb3dSKonrad Dybcio					bias-pull-up;
112503e6cb3dSKonrad Dybcio					drive-strength = <2>;
112603e6cb3dSKonrad Dybcio				};
112703e6cb3dSKonrad Dybcio			};
112803e6cb3dSKonrad Dybcio
112903e6cb3dSKonrad Dybcio			sdc2_data_on: sdc2_data_on {
113003e6cb3dSKonrad Dybcio				config {
113103e6cb3dSKonrad Dybcio					pins = "sdc2_data";
113203e6cb3dSKonrad Dybcio					bias-pull-up;
113303e6cb3dSKonrad Dybcio					drive-strength = <10>;
113403e6cb3dSKonrad Dybcio				};
113503e6cb3dSKonrad Dybcio			};
113603e6cb3dSKonrad Dybcio
113703e6cb3dSKonrad Dybcio			sdc2_data_off: sdc2_data_off {
113803e6cb3dSKonrad Dybcio				config {
113903e6cb3dSKonrad Dybcio					pins = "sdc2_data";
114003e6cb3dSKonrad Dybcio					bias-pull-up;
114103e6cb3dSKonrad Dybcio					drive-strength = <2>;
114203e6cb3dSKonrad Dybcio				};
114303e6cb3dSKonrad Dybcio			};
114403e6cb3dSKonrad Dybcio
114503e6cb3dSKonrad Dybcio			sdc2_cd_on: sdc2_cd_on {
114603e6cb3dSKonrad Dybcio				mux {
114703e6cb3dSKonrad Dybcio					pins = "gpio95";
114803e6cb3dSKonrad Dybcio					function = "gpio";
114903e6cb3dSKonrad Dybcio				};
115003e6cb3dSKonrad Dybcio
115103e6cb3dSKonrad Dybcio				config {
115203e6cb3dSKonrad Dybcio					pins = "gpio95";
115303e6cb3dSKonrad Dybcio					bias-pull-up;
115403e6cb3dSKonrad Dybcio					drive-strength = <2>;
115503e6cb3dSKonrad Dybcio				};
115603e6cb3dSKonrad Dybcio			};
115703e6cb3dSKonrad Dybcio
115803e6cb3dSKonrad Dybcio			sdc2_cd_off: sdc2_cd_off {
115903e6cb3dSKonrad Dybcio				mux {
116003e6cb3dSKonrad Dybcio					pins = "gpio95";
116103e6cb3dSKonrad Dybcio					function = "gpio";
116203e6cb3dSKonrad Dybcio				};
116303e6cb3dSKonrad Dybcio
116403e6cb3dSKonrad Dybcio				config {
116503e6cb3dSKonrad Dybcio					pins = "gpio95";
116603e6cb3dSKonrad Dybcio					bias-pull-up;
116703e6cb3dSKonrad Dybcio					drive-strength = <2>;
116803e6cb3dSKonrad Dybcio				};
116903e6cb3dSKonrad Dybcio			};
117003e6cb3dSKonrad Dybcio
117103e6cb3dSKonrad Dybcio			blsp1_uart3_on: blsp1_uart3_on {
117203e6cb3dSKonrad Dybcio				tx {
117303e6cb3dSKonrad Dybcio					pins = "gpio45";
117403e6cb3dSKonrad Dybcio					function = "blsp_uart3_a";
117503e6cb3dSKonrad Dybcio					drive-strength = <2>;
117603e6cb3dSKonrad Dybcio					bias-disable;
117703e6cb3dSKonrad Dybcio				};
117803e6cb3dSKonrad Dybcio
117903e6cb3dSKonrad Dybcio				rx {
118003e6cb3dSKonrad Dybcio					pins = "gpio46";
118103e6cb3dSKonrad Dybcio					function = "blsp_uart3_a";
118203e6cb3dSKonrad Dybcio					drive-strength = <2>;
118303e6cb3dSKonrad Dybcio					bias-disable;
118403e6cb3dSKonrad Dybcio				};
118503e6cb3dSKonrad Dybcio
118603e6cb3dSKonrad Dybcio				cts {
118703e6cb3dSKonrad Dybcio					pins = "gpio47";
118803e6cb3dSKonrad Dybcio					function = "blsp_uart3_a";
118903e6cb3dSKonrad Dybcio					drive-strength = <2>;
119003e6cb3dSKonrad Dybcio					bias-disable;
119103e6cb3dSKonrad Dybcio				};
119203e6cb3dSKonrad Dybcio
119303e6cb3dSKonrad Dybcio				rfr {
119403e6cb3dSKonrad Dybcio					pins = "gpio48";
119503e6cb3dSKonrad Dybcio					function = "blsp_uart3_a";
119603e6cb3dSKonrad Dybcio					drive-strength = <2>;
119703e6cb3dSKonrad Dybcio					bias-disable;
119803e6cb3dSKonrad Dybcio				};
119903e6cb3dSKonrad Dybcio			};
12000fee55fcSKonrad Dybcio
12010fee55fcSKonrad Dybcio			blsp1_i2c1_default: blsp1-i2c1-default {
12020fee55fcSKonrad Dybcio				pins = "gpio2", "gpio3";
12030fee55fcSKonrad Dybcio				function = "blsp_i2c1";
12040fee55fcSKonrad Dybcio				drive-strength = <2>;
12050fee55fcSKonrad Dybcio				bias-disable;
12060fee55fcSKonrad Dybcio			};
12070fee55fcSKonrad Dybcio
12080fee55fcSKonrad Dybcio			blsp1_i2c1_sleep: blsp1-i2c1-sleep {
12090fee55fcSKonrad Dybcio				pins = "gpio2", "gpio3";
12100fee55fcSKonrad Dybcio				function = "blsp_i2c1";
12110fee55fcSKonrad Dybcio				drive-strength = <2>;
12120fee55fcSKonrad Dybcio				bias-pull-up;
12130fee55fcSKonrad Dybcio			};
12140fee55fcSKonrad Dybcio
12150fee55fcSKonrad Dybcio			blsp1_i2c2_default: blsp1-i2c2-default {
12160fee55fcSKonrad Dybcio				pins = "gpio32", "gpio33";
12170fee55fcSKonrad Dybcio				function = "blsp_i2c2";
12180fee55fcSKonrad Dybcio				drive-strength = <2>;
12190fee55fcSKonrad Dybcio				bias-disable;
12200fee55fcSKonrad Dybcio			};
12210fee55fcSKonrad Dybcio
12220fee55fcSKonrad Dybcio			blsp1_i2c2_sleep: blsp1-i2c2-sleep {
12230fee55fcSKonrad Dybcio				pins = "gpio32", "gpio33";
12240fee55fcSKonrad Dybcio				function = "blsp_i2c2";
12250fee55fcSKonrad Dybcio				drive-strength = <2>;
12260fee55fcSKonrad Dybcio				bias-pull-up;
12270fee55fcSKonrad Dybcio			};
12280fee55fcSKonrad Dybcio
12290fee55fcSKonrad Dybcio			blsp1_i2c3_default: blsp1-i2c3-default {
12300fee55fcSKonrad Dybcio				pins = "gpio47", "gpio48";
12310fee55fcSKonrad Dybcio				function = "blsp_i2c3";
12320fee55fcSKonrad Dybcio				drive-strength = <2>;
12330fee55fcSKonrad Dybcio				bias-disable;
12340fee55fcSKonrad Dybcio			};
12350fee55fcSKonrad Dybcio
12360fee55fcSKonrad Dybcio			blsp1_i2c3_sleep: blsp1-i2c3-sleep {
12370fee55fcSKonrad Dybcio				pins = "gpio47", "gpio48";
12380fee55fcSKonrad Dybcio				function = "blsp_i2c3";
12390fee55fcSKonrad Dybcio				drive-strength = <2>;
12400fee55fcSKonrad Dybcio				bias-pull-up;
12410fee55fcSKonrad Dybcio			};
12420fee55fcSKonrad Dybcio
12430fee55fcSKonrad Dybcio			blsp1_i2c4_default: blsp1-i2c4-default {
12440fee55fcSKonrad Dybcio				pins = "gpio10", "gpio11";
12450fee55fcSKonrad Dybcio				function = "blsp_i2c4";
12460fee55fcSKonrad Dybcio				drive-strength = <2>;
12470fee55fcSKonrad Dybcio				bias-disable;
12480fee55fcSKonrad Dybcio			};
12490fee55fcSKonrad Dybcio
12500fee55fcSKonrad Dybcio			blsp1_i2c4_sleep: blsp1-i2c4-sleep {
12510fee55fcSKonrad Dybcio				pins = "gpio10", "gpio11";
12520fee55fcSKonrad Dybcio				function = "blsp_i2c4";
12530fee55fcSKonrad Dybcio				drive-strength = <2>;
12540fee55fcSKonrad Dybcio				bias-pull-up;
12550fee55fcSKonrad Dybcio			};
12560fee55fcSKonrad Dybcio
12570fee55fcSKonrad Dybcio			blsp1_i2c5_default: blsp1-i2c5-default {
12580fee55fcSKonrad Dybcio				pins = "gpio87", "gpio88";
12590fee55fcSKonrad Dybcio				function = "blsp_i2c5";
12600fee55fcSKonrad Dybcio				drive-strength = <2>;
12610fee55fcSKonrad Dybcio				bias-disable;
12620fee55fcSKonrad Dybcio			};
12630fee55fcSKonrad Dybcio
12640fee55fcSKonrad Dybcio			blsp1_i2c5_sleep: blsp1-i2c5-sleep {
12650fee55fcSKonrad Dybcio				pins = "gpio87", "gpio88";
12660fee55fcSKonrad Dybcio				function = "blsp_i2c5";
12670fee55fcSKonrad Dybcio				drive-strength = <2>;
12680fee55fcSKonrad Dybcio				bias-pull-up;
12690fee55fcSKonrad Dybcio			};
12700fee55fcSKonrad Dybcio
12710fee55fcSKonrad Dybcio			blsp1_i2c6_default: blsp1-i2c6-default {
12720fee55fcSKonrad Dybcio				pins = "gpio43", "gpio44";
12730fee55fcSKonrad Dybcio				function = "blsp_i2c6";
12740fee55fcSKonrad Dybcio				drive-strength = <2>;
12750fee55fcSKonrad Dybcio				bias-disable;
12760fee55fcSKonrad Dybcio			};
12770fee55fcSKonrad Dybcio
12780fee55fcSKonrad Dybcio			blsp1_i2c6_sleep: blsp1-i2c6-sleep {
12790fee55fcSKonrad Dybcio				pins = "gpio43", "gpio44";
12800fee55fcSKonrad Dybcio				function = "blsp_i2c6";
12810fee55fcSKonrad Dybcio				drive-strength = <2>;
12820fee55fcSKonrad Dybcio				bias-pull-up;
12830fee55fcSKonrad Dybcio			};
12840fee55fcSKonrad Dybcio			/* 6 interfaces per QUP, BLSP2 indexes are numbered (n)+6 */
12850fee55fcSKonrad Dybcio			blsp2_i2c1_default: blsp2-i2c1-default {
12860fee55fcSKonrad Dybcio				pins = "gpio55", "gpio56";
12870fee55fcSKonrad Dybcio				function = "blsp_i2c7";
12880fee55fcSKonrad Dybcio				drive-strength = <2>;
12890fee55fcSKonrad Dybcio				bias-disable;
12900fee55fcSKonrad Dybcio			};
12910fee55fcSKonrad Dybcio
12920fee55fcSKonrad Dybcio			blsp2_i2c1_sleep: blsp2-i2c1-sleep {
12930fee55fcSKonrad Dybcio				pins = "gpio55", "gpio56";
12940fee55fcSKonrad Dybcio				function = "blsp_i2c7";
12950fee55fcSKonrad Dybcio				drive-strength = <2>;
12960fee55fcSKonrad Dybcio				bias-pull-up;
12970fee55fcSKonrad Dybcio			};
12980fee55fcSKonrad Dybcio
12990fee55fcSKonrad Dybcio			blsp2_i2c2_default: blsp2-i2c2-default {
13000fee55fcSKonrad Dybcio				pins = "gpio6", "gpio7";
13010fee55fcSKonrad Dybcio				function = "blsp_i2c8";
13020fee55fcSKonrad Dybcio				drive-strength = <2>;
13030fee55fcSKonrad Dybcio				bias-disable;
13040fee55fcSKonrad Dybcio			};
13050fee55fcSKonrad Dybcio
13060fee55fcSKonrad Dybcio			blsp2_i2c2_sleep: blsp2-i2c2-sleep {
13070fee55fcSKonrad Dybcio				pins = "gpio6", "gpio7";
13080fee55fcSKonrad Dybcio				function = "blsp_i2c8";
13090fee55fcSKonrad Dybcio				drive-strength = <2>;
13100fee55fcSKonrad Dybcio				bias-pull-up;
13110fee55fcSKonrad Dybcio			};
13120fee55fcSKonrad Dybcio
13130fee55fcSKonrad Dybcio			blsp2_i2c3_default: blsp2-i2c3-default {
13140fee55fcSKonrad Dybcio				pins = "gpio51", "gpio52";
13150fee55fcSKonrad Dybcio				function = "blsp_i2c9";
13160fee55fcSKonrad Dybcio				drive-strength = <2>;
13170fee55fcSKonrad Dybcio				bias-disable;
13180fee55fcSKonrad Dybcio			};
13190fee55fcSKonrad Dybcio
13200fee55fcSKonrad Dybcio			blsp2_i2c3_sleep: blsp2-i2c3-sleep {
13210fee55fcSKonrad Dybcio				pins = "gpio51", "gpio52";
13220fee55fcSKonrad Dybcio				function = "blsp_i2c9";
13230fee55fcSKonrad Dybcio				drive-strength = <2>;
13240fee55fcSKonrad Dybcio				bias-pull-up;
13250fee55fcSKonrad Dybcio			};
13260fee55fcSKonrad Dybcio
13270fee55fcSKonrad Dybcio			blsp2_i2c4_default: blsp2-i2c4-default {
13280fee55fcSKonrad Dybcio				pins = "gpio67", "gpio68";
13290fee55fcSKonrad Dybcio				function = "blsp_i2c10";
13300fee55fcSKonrad Dybcio				drive-strength = <2>;
13310fee55fcSKonrad Dybcio				bias-disable;
13320fee55fcSKonrad Dybcio			};
13330fee55fcSKonrad Dybcio
13340fee55fcSKonrad Dybcio			blsp2_i2c4_sleep: blsp2-i2c4-sleep {
13350fee55fcSKonrad Dybcio				pins = "gpio67", "gpio68";
13360fee55fcSKonrad Dybcio				function = "blsp_i2c10";
13370fee55fcSKonrad Dybcio				drive-strength = <2>;
13380fee55fcSKonrad Dybcio				bias-pull-up;
13390fee55fcSKonrad Dybcio			};
13400fee55fcSKonrad Dybcio
13410fee55fcSKonrad Dybcio			blsp2_i2c5_default: blsp2-i2c5-default {
13420fee55fcSKonrad Dybcio				pins = "gpio60", "gpio61";
13430fee55fcSKonrad Dybcio				function = "blsp_i2c11";
13440fee55fcSKonrad Dybcio				drive-strength = <2>;
13450fee55fcSKonrad Dybcio				bias-disable;
13460fee55fcSKonrad Dybcio			};
13470fee55fcSKonrad Dybcio
13480fee55fcSKonrad Dybcio			blsp2_i2c5_sleep: blsp2-i2c5-sleep {
13490fee55fcSKonrad Dybcio				pins = "gpio60", "gpio61";
13500fee55fcSKonrad Dybcio				function = "blsp_i2c11";
13510fee55fcSKonrad Dybcio				drive-strength = <2>;
13520fee55fcSKonrad Dybcio				bias-pull-up;
13530fee55fcSKonrad Dybcio			};
13540fee55fcSKonrad Dybcio
13550fee55fcSKonrad Dybcio			blsp2_i2c6_default: blsp2-i2c6-default {
13560fee55fcSKonrad Dybcio				pins = "gpio83", "gpio84";
13570fee55fcSKonrad Dybcio				function = "blsp_i2c12";
13580fee55fcSKonrad Dybcio				drive-strength = <2>;
13590fee55fcSKonrad Dybcio				bias-disable;
13600fee55fcSKonrad Dybcio			};
13610fee55fcSKonrad Dybcio
13620fee55fcSKonrad Dybcio			blsp2_i2c6_sleep: blsp2-i2c6-sleep {
13630fee55fcSKonrad Dybcio				pins = "gpio83", "gpio84";
13640fee55fcSKonrad Dybcio				function = "blsp_i2c12";
13650fee55fcSKonrad Dybcio				drive-strength = <2>;
13660fee55fcSKonrad Dybcio				bias-pull-up;
13670fee55fcSKonrad Dybcio			};
136832a5da21SJeffrey Hugo		};
136932a5da21SJeffrey Hugo
1370a9ee66deSSibi Sankar		remoteproc_mss: remoteproc@4080000 {
1371a9ee66deSSibi Sankar			compatible = "qcom,msm8998-mss-pil";
1372a9ee66deSSibi Sankar			reg = <0x04080000 0x100>, <0x04180000 0x20>;
1373a9ee66deSSibi Sankar			reg-names = "qdsp6", "rmb";
1374a9ee66deSSibi Sankar
1375a9ee66deSSibi Sankar			interrupts-extended =
1376a9ee66deSSibi Sankar				<&intc GIC_SPI 448 IRQ_TYPE_EDGE_RISING>,
1377a9ee66deSSibi Sankar				<&modem_smp2p_in 0 IRQ_TYPE_EDGE_RISING>,
1378a9ee66deSSibi Sankar				<&modem_smp2p_in 1 IRQ_TYPE_EDGE_RISING>,
1379a9ee66deSSibi Sankar				<&modem_smp2p_in 2 IRQ_TYPE_EDGE_RISING>,
1380a9ee66deSSibi Sankar				<&modem_smp2p_in 3 IRQ_TYPE_EDGE_RISING>,
1381a9ee66deSSibi Sankar				<&modem_smp2p_in 7 IRQ_TYPE_EDGE_RISING>;
1382a9ee66deSSibi Sankar			interrupt-names = "wdog", "fatal", "ready",
1383a9ee66deSSibi Sankar					  "handover", "stop-ack",
1384a9ee66deSSibi Sankar					  "shutdown-ack";
1385a9ee66deSSibi Sankar
1386a9ee66deSSibi Sankar			clocks = <&gcc GCC_MSS_CFG_AHB_CLK>,
1387a9ee66deSSibi Sankar				 <&gcc GCC_BIMC_MSS_Q6_AXI_CLK>,
1388a9ee66deSSibi Sankar				 <&gcc GCC_BOOT_ROM_AHB_CLK>,
1389a9ee66deSSibi Sankar				 <&gcc GCC_MSS_GPLL0_DIV_CLK_SRC>,
1390a9ee66deSSibi Sankar				 <&gcc GCC_MSS_SNOC_AXI_CLK>,
1391a9ee66deSSibi Sankar				 <&gcc GCC_MSS_MNOC_BIMC_AXI_CLK>,
1392a9ee66deSSibi Sankar				 <&rpmcc RPM_SMD_QDSS_CLK>,
1393a9ee66deSSibi Sankar				 <&rpmcc RPM_SMD_XO_CLK_SRC>;
1394a9ee66deSSibi Sankar			clock-names = "iface", "bus", "mem", "gpll0_mss",
1395a9ee66deSSibi Sankar				      "snoc_axi", "mnoc_axi", "qdss", "xo";
1396a9ee66deSSibi Sankar
1397a9ee66deSSibi Sankar			qcom,smem-states = <&modem_smp2p_out 0>;
1398a9ee66deSSibi Sankar			qcom,smem-state-names = "stop";
1399a9ee66deSSibi Sankar
1400a9ee66deSSibi Sankar			resets = <&gcc GCC_MSS_RESTART>;
1401a9ee66deSSibi Sankar			reset-names = "mss_restart";
1402a9ee66deSSibi Sankar
1403a9ee66deSSibi Sankar			qcom,halt-regs = <&tcsr_mutex_regs 0x23000 0x25000 0x24000>;
1404a9ee66deSSibi Sankar
1405a9ee66deSSibi Sankar			power-domains = <&rpmpd MSM8998_VDDCX>,
1406a9ee66deSSibi Sankar					<&rpmpd MSM8998_VDDMX>;
1407a9ee66deSSibi Sankar			power-domain-names = "cx", "mx";
1408a9ee66deSSibi Sankar
140903041cd2SJami Kettunen			status = "disabled";
141003041cd2SJami Kettunen
1411a9ee66deSSibi Sankar			mba {
1412a9ee66deSSibi Sankar				memory-region = <&mba_mem>;
1413a9ee66deSSibi Sankar			};
1414a9ee66deSSibi Sankar
1415a9ee66deSSibi Sankar			mpss {
1416a9ee66deSSibi Sankar				memory-region = <&mpss_mem>;
1417a9ee66deSSibi Sankar			};
1418a9ee66deSSibi Sankar
1419a9ee66deSSibi Sankar			glink-edge {
1420a9ee66deSSibi Sankar				interrupts = <GIC_SPI 452 IRQ_TYPE_EDGE_RISING>;
1421a9ee66deSSibi Sankar				label = "modem";
1422a9ee66deSSibi Sankar				qcom,remote-pid = <1>;
1423a9ee66deSSibi Sankar				mboxes = <&apcs_glb 15>;
1424a9ee66deSSibi Sankar			};
1425a9ee66deSSibi Sankar		};
1426a9ee66deSSibi Sankar
142787cd46d6SAngeloGioacchino Del Regno		adreno_gpu: gpu@5000000 {
142887cd46d6SAngeloGioacchino Del Regno			compatible = "qcom,adreno-540.1", "qcom,adreno";
142987cd46d6SAngeloGioacchino Del Regno			reg = <0x05000000 0x40000>;
143087cd46d6SAngeloGioacchino Del Regno			reg-names = "kgsl_3d0_reg_memory";
143187cd46d6SAngeloGioacchino Del Regno
143287cd46d6SAngeloGioacchino Del Regno			clocks = <&gcc GCC_GPU_CFG_AHB_CLK>,
143387cd46d6SAngeloGioacchino Del Regno				<&gpucc RBBMTIMER_CLK>,
143487cd46d6SAngeloGioacchino Del Regno				<&gcc GCC_BIMC_GFX_CLK>,
143587cd46d6SAngeloGioacchino Del Regno				<&gcc GCC_GPU_BIMC_GFX_CLK>,
143687cd46d6SAngeloGioacchino Del Regno				<&gpucc RBCPR_CLK>,
143787cd46d6SAngeloGioacchino Del Regno				<&gpucc GFX3D_CLK>;
143887cd46d6SAngeloGioacchino Del Regno			clock-names = "iface",
143987cd46d6SAngeloGioacchino Del Regno				"rbbmtimer",
144087cd46d6SAngeloGioacchino Del Regno				"mem",
144187cd46d6SAngeloGioacchino Del Regno				"mem_iface",
144287cd46d6SAngeloGioacchino Del Regno				"rbcpr",
144387cd46d6SAngeloGioacchino Del Regno				"core";
144487cd46d6SAngeloGioacchino Del Regno
144587cd46d6SAngeloGioacchino Del Regno			interrupts = <0 300 IRQ_TYPE_LEVEL_HIGH>;
144687cd46d6SAngeloGioacchino Del Regno			iommus = <&adreno_smmu 0>;
144787cd46d6SAngeloGioacchino Del Regno			operating-points-v2 = <&gpu_opp_table>;
144887cd46d6SAngeloGioacchino Del Regno			power-domains = <&rpmpd MSM8998_VDDMX>;
144987cd46d6SAngeloGioacchino Del Regno			#stream-id-cells = <16>;
145087cd46d6SAngeloGioacchino Del Regno			status = "disabled";
145187cd46d6SAngeloGioacchino Del Regno
145287cd46d6SAngeloGioacchino Del Regno			gpu_opp_table: opp-table {
145387cd46d6SAngeloGioacchino Del Regno				compatible  = "operating-points-v2";
145487cd46d6SAngeloGioacchino Del Regno				opp-710000097 {
145587cd46d6SAngeloGioacchino Del Regno					opp-hz = /bits/ 64 <710000097>;
145687cd46d6SAngeloGioacchino Del Regno					opp-level = <RPM_SMD_LEVEL_TURBO>;
145787cd46d6SAngeloGioacchino Del Regno					opp-supported-hw = <0xFF>;
145887cd46d6SAngeloGioacchino Del Regno				};
145987cd46d6SAngeloGioacchino Del Regno
146087cd46d6SAngeloGioacchino Del Regno				opp-670000048 {
146187cd46d6SAngeloGioacchino Del Regno					opp-hz = /bits/ 64 <670000048>;
146287cd46d6SAngeloGioacchino Del Regno					opp-level = <RPM_SMD_LEVEL_NOM_PLUS>;
146387cd46d6SAngeloGioacchino Del Regno					opp-supported-hw = <0xFF>;
146487cd46d6SAngeloGioacchino Del Regno				};
146587cd46d6SAngeloGioacchino Del Regno
146687cd46d6SAngeloGioacchino Del Regno				opp-596000097 {
146787cd46d6SAngeloGioacchino Del Regno					opp-hz = /bits/ 64 <596000097>;
146887cd46d6SAngeloGioacchino Del Regno					opp-level = <RPM_SMD_LEVEL_NOM>;
146987cd46d6SAngeloGioacchino Del Regno					opp-supported-hw = <0xFF>;
147087cd46d6SAngeloGioacchino Del Regno				};
147187cd46d6SAngeloGioacchino Del Regno
147287cd46d6SAngeloGioacchino Del Regno				opp-515000097 {
147387cd46d6SAngeloGioacchino Del Regno					opp-hz = /bits/ 64 <515000097>;
147487cd46d6SAngeloGioacchino Del Regno					opp-level = <RPM_SMD_LEVEL_SVS_PLUS>;
147587cd46d6SAngeloGioacchino Del Regno					opp-supported-hw = <0xFF>;
147687cd46d6SAngeloGioacchino Del Regno				};
147787cd46d6SAngeloGioacchino Del Regno
147887cd46d6SAngeloGioacchino Del Regno				opp-414000000 {
147987cd46d6SAngeloGioacchino Del Regno					opp-hz = /bits/ 64 <414000000>;
148087cd46d6SAngeloGioacchino Del Regno					opp-level = <RPM_SMD_LEVEL_SVS>;
148187cd46d6SAngeloGioacchino Del Regno					opp-supported-hw = <0xFF>;
148287cd46d6SAngeloGioacchino Del Regno				};
148387cd46d6SAngeloGioacchino Del Regno
148487cd46d6SAngeloGioacchino Del Regno				opp-342000000 {
148587cd46d6SAngeloGioacchino Del Regno					opp-hz = /bits/ 64 <342000000>;
148687cd46d6SAngeloGioacchino Del Regno					opp-level = <RPM_SMD_LEVEL_LOW_SVS>;
148787cd46d6SAngeloGioacchino Del Regno					opp-supported-hw = <0xFF>;
148887cd46d6SAngeloGioacchino Del Regno				};
148987cd46d6SAngeloGioacchino Del Regno
149087cd46d6SAngeloGioacchino Del Regno				opp-257000000 {
149187cd46d6SAngeloGioacchino Del Regno					opp-hz = /bits/ 64 <257000000>;
149287cd46d6SAngeloGioacchino Del Regno					opp-level = <RPM_SMD_LEVEL_MIN_SVS>;
149387cd46d6SAngeloGioacchino Del Regno					opp-supported-hw = <0xFF>;
149487cd46d6SAngeloGioacchino Del Regno				};
149587cd46d6SAngeloGioacchino Del Regno			};
149687cd46d6SAngeloGioacchino Del Regno		};
149787cd46d6SAngeloGioacchino Del Regno
149887cd46d6SAngeloGioacchino Del Regno		adreno_smmu: iommu@5040000 {
149987cd46d6SAngeloGioacchino Del Regno			compatible = "qcom,msm8998-smmu-v2", "qcom,smmu-v2";
150087cd46d6SAngeloGioacchino Del Regno			reg = <0x05040000 0x10000>;
150187cd46d6SAngeloGioacchino Del Regno			clocks = <&gcc GCC_GPU_CFG_AHB_CLK>,
150287cd46d6SAngeloGioacchino Del Regno				 <&gcc GCC_BIMC_GFX_CLK>,
150387cd46d6SAngeloGioacchino Del Regno				 <&gcc GCC_GPU_BIMC_GFX_CLK>;
150487cd46d6SAngeloGioacchino Del Regno			clock-names = "iface", "mem", "mem_iface";
150587cd46d6SAngeloGioacchino Del Regno
150687cd46d6SAngeloGioacchino Del Regno			#global-interrupts = <0>;
150787cd46d6SAngeloGioacchino Del Regno			#iommu-cells = <1>;
150887cd46d6SAngeloGioacchino Del Regno			interrupts =
150987cd46d6SAngeloGioacchino Del Regno				<GIC_SPI 329 IRQ_TYPE_LEVEL_HIGH>,
151087cd46d6SAngeloGioacchino Del Regno				<GIC_SPI 330 IRQ_TYPE_LEVEL_HIGH>,
151187cd46d6SAngeloGioacchino Del Regno				<GIC_SPI 331 IRQ_TYPE_LEVEL_HIGH>;
151287cd46d6SAngeloGioacchino Del Regno			/*
151387cd46d6SAngeloGioacchino Del Regno			 * GPU-GX GDSC's parent is GPU-CX. We need to bring up the
151487cd46d6SAngeloGioacchino Del Regno			 * GPU-CX for SMMU but we need both of them up for Adreno.
151587cd46d6SAngeloGioacchino Del Regno			 * Contemporarily, we also need to manage the VDDMX rpmpd
151687cd46d6SAngeloGioacchino Del Regno			 * domain in the Adreno driver.
151787cd46d6SAngeloGioacchino Del Regno			 * Enable GPU CX/GX GDSCs here so that we can manage the
151887cd46d6SAngeloGioacchino Del Regno			 * SoC VDDMX RPM Power Domain in the Adreno driver.
151987cd46d6SAngeloGioacchino Del Regno			 */
152087cd46d6SAngeloGioacchino Del Regno			power-domains = <&gpucc GPU_GX_GDSC>;
152187cd46d6SAngeloGioacchino Del Regno			status = "disabled";
152287cd46d6SAngeloGioacchino Del Regno		};
152387cd46d6SAngeloGioacchino Del Regno
1524876a7573SJeffrey Hugo		gpucc: clock-controller@5065000 {
1525876a7573SJeffrey Hugo			compatible = "qcom,msm8998-gpucc";
1526876a7573SJeffrey Hugo			#clock-cells = <1>;
1527876a7573SJeffrey Hugo			#reset-cells = <1>;
1528876a7573SJeffrey Hugo			#power-domain-cells = <1>;
1529876a7573SJeffrey Hugo			reg = <0x05065000 0x9000>;
1530876a7573SJeffrey Hugo
1531876a7573SJeffrey Hugo			clocks = <&rpmcc RPM_SMD_XO_CLK_SRC>,
1532876a7573SJeffrey Hugo				 <&gcc GPLL0_OUT_MAIN>;
1533876a7573SJeffrey Hugo			clock-names = "xo",
1534876a7573SJeffrey Hugo				      "gpll0";
1535876a7573SJeffrey Hugo		};
1536876a7573SJeffrey Hugo
1537a9ee66deSSibi Sankar		remoteproc_slpi: remoteproc@5800000 {
1538a9ee66deSSibi Sankar			compatible = "qcom,msm8998-slpi-pas";
1539a9ee66deSSibi Sankar			reg = <0x05800000 0x4040>;
1540a9ee66deSSibi Sankar
1541a9ee66deSSibi Sankar			interrupts-extended = <&intc GIC_SPI 390 IRQ_TYPE_EDGE_RISING>,
1542a9ee66deSSibi Sankar					      <&slpi_smp2p_in 0 IRQ_TYPE_EDGE_RISING>,
1543a9ee66deSSibi Sankar					      <&slpi_smp2p_in 1 IRQ_TYPE_EDGE_RISING>,
1544a9ee66deSSibi Sankar					      <&slpi_smp2p_in 2 IRQ_TYPE_EDGE_RISING>,
1545a9ee66deSSibi Sankar					      <&slpi_smp2p_in 3 IRQ_TYPE_EDGE_RISING>;
1546a9ee66deSSibi Sankar			interrupt-names = "wdog", "fatal", "ready",
1547a9ee66deSSibi Sankar					  "handover", "stop-ack";
1548a9ee66deSSibi Sankar
1549a9ee66deSSibi Sankar			px-supply = <&vreg_lvs2a_1p8>;
1550a9ee66deSSibi Sankar
1551a9ee66deSSibi Sankar			clocks = <&rpmcc RPM_SMD_XO_CLK_SRC>,
1552a9ee66deSSibi Sankar				 <&rpmcc RPM_SMD_AGGR2_NOC_CLK>;
1553a9ee66deSSibi Sankar			clock-names = "xo", "aggre2";
1554a9ee66deSSibi Sankar
1555a9ee66deSSibi Sankar			memory-region = <&slpi_mem>;
1556a9ee66deSSibi Sankar
1557a9ee66deSSibi Sankar			qcom,smem-states = <&slpi_smp2p_out 0>;
1558a9ee66deSSibi Sankar			qcom,smem-state-names = "stop";
1559a9ee66deSSibi Sankar
1560a9ee66deSSibi Sankar			power-domains = <&rpmpd MSM8998_SSCCX>;
1561a9ee66deSSibi Sankar			power-domain-names = "ssc_cx";
1562a9ee66deSSibi Sankar
1563a9ee66deSSibi Sankar			status = "disabled";
1564a9ee66deSSibi Sankar
1565a9ee66deSSibi Sankar			glink-edge {
1566a9ee66deSSibi Sankar				interrupts = <GIC_SPI 179 IRQ_TYPE_EDGE_RISING>;
1567a9ee66deSSibi Sankar				label = "dsps";
1568a9ee66deSSibi Sankar				qcom,remote-pid = <3>;
1569a9ee66deSSibi Sankar				mboxes = <&apcs_glb 27>;
1570a9ee66deSSibi Sankar			};
1571a9ee66deSSibi Sankar		};
1572a9ee66deSSibi Sankar
1573a636f93fSSai Prakash Ranjan		stm: stm@6002000 {
1574783abfa2SSai Prakash Ranjan			compatible = "arm,coresight-stm", "arm,primecell";
1575783abfa2SSai Prakash Ranjan			reg = <0x06002000 0x1000>,
1576783abfa2SSai Prakash Ranjan			      <0x16280000 0x180000>;
1577783abfa2SSai Prakash Ranjan			reg-names = "stm-base", "stm-data-base";
1578a636f93fSSai Prakash Ranjan			status = "disabled";
1579783abfa2SSai Prakash Ranjan
1580783abfa2SSai Prakash Ranjan			clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>;
1581783abfa2SSai Prakash Ranjan			clock-names = "apb_pclk", "atclk";
1582783abfa2SSai Prakash Ranjan
1583783abfa2SSai Prakash Ranjan			out-ports {
1584783abfa2SSai Prakash Ranjan				port {
1585783abfa2SSai Prakash Ranjan					stm_out: endpoint {
1586783abfa2SSai Prakash Ranjan						remote-endpoint = <&funnel0_in7>;
1587783abfa2SSai Prakash Ranjan					};
1588783abfa2SSai Prakash Ranjan				};
1589783abfa2SSai Prakash Ranjan			};
1590783abfa2SSai Prakash Ranjan		};
1591783abfa2SSai Prakash Ranjan
1592a636f93fSSai Prakash Ranjan		funnel1: funnel@6041000 {
1593783abfa2SSai Prakash Ranjan			compatible = "arm,coresight-dynamic-funnel", "arm,primecell";
1594783abfa2SSai Prakash Ranjan			reg = <0x06041000 0x1000>;
1595a636f93fSSai Prakash Ranjan			status = "disabled";
1596783abfa2SSai Prakash Ranjan
1597783abfa2SSai Prakash Ranjan			clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>;
1598783abfa2SSai Prakash Ranjan			clock-names = "apb_pclk", "atclk";
1599783abfa2SSai Prakash Ranjan
1600783abfa2SSai Prakash Ranjan			out-ports {
1601783abfa2SSai Prakash Ranjan				port {
1602783abfa2SSai Prakash Ranjan					funnel0_out: endpoint {
1603783abfa2SSai Prakash Ranjan						remote-endpoint =
1604783abfa2SSai Prakash Ranjan						  <&merge_funnel_in0>;
1605783abfa2SSai Prakash Ranjan					};
1606783abfa2SSai Prakash Ranjan				};
1607783abfa2SSai Prakash Ranjan			};
1608783abfa2SSai Prakash Ranjan
1609783abfa2SSai Prakash Ranjan			in-ports {
1610783abfa2SSai Prakash Ranjan				#address-cells = <1>;
1611783abfa2SSai Prakash Ranjan				#size-cells = <0>;
1612783abfa2SSai Prakash Ranjan
1613783abfa2SSai Prakash Ranjan				port@7 {
1614783abfa2SSai Prakash Ranjan					reg = <7>;
1615783abfa2SSai Prakash Ranjan					funnel0_in7: endpoint {
1616783abfa2SSai Prakash Ranjan						remote-endpoint = <&stm_out>;
1617783abfa2SSai Prakash Ranjan					};
1618783abfa2SSai Prakash Ranjan				};
1619783abfa2SSai Prakash Ranjan			};
1620783abfa2SSai Prakash Ranjan		};
1621783abfa2SSai Prakash Ranjan
1622a636f93fSSai Prakash Ranjan		funnel2: funnel@6042000 {
1623783abfa2SSai Prakash Ranjan			compatible = "arm,coresight-dynamic-funnel", "arm,primecell";
1624783abfa2SSai Prakash Ranjan			reg = <0x06042000 0x1000>;
1625a636f93fSSai Prakash Ranjan			status = "disabled";
1626783abfa2SSai Prakash Ranjan
1627783abfa2SSai Prakash Ranjan			clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>;
1628783abfa2SSai Prakash Ranjan			clock-names = "apb_pclk", "atclk";
1629783abfa2SSai Prakash Ranjan
1630783abfa2SSai Prakash Ranjan			out-ports {
1631783abfa2SSai Prakash Ranjan				port {
1632783abfa2SSai Prakash Ranjan					funnel1_out: endpoint {
1633783abfa2SSai Prakash Ranjan						remote-endpoint =
1634783abfa2SSai Prakash Ranjan						  <&merge_funnel_in1>;
1635783abfa2SSai Prakash Ranjan					};
1636783abfa2SSai Prakash Ranjan				};
1637783abfa2SSai Prakash Ranjan			};
1638783abfa2SSai Prakash Ranjan
1639783abfa2SSai Prakash Ranjan			in-ports {
1640783abfa2SSai Prakash Ranjan				#address-cells = <1>;
1641783abfa2SSai Prakash Ranjan				#size-cells = <0>;
1642783abfa2SSai Prakash Ranjan
1643783abfa2SSai Prakash Ranjan				port@6 {
1644783abfa2SSai Prakash Ranjan					reg = <6>;
1645783abfa2SSai Prakash Ranjan					funnel1_in6: endpoint {
1646783abfa2SSai Prakash Ranjan						remote-endpoint =
1647783abfa2SSai Prakash Ranjan						  <&apss_merge_funnel_out>;
1648783abfa2SSai Prakash Ranjan					};
1649783abfa2SSai Prakash Ranjan				};
1650783abfa2SSai Prakash Ranjan			};
1651783abfa2SSai Prakash Ranjan		};
1652783abfa2SSai Prakash Ranjan
1653a636f93fSSai Prakash Ranjan		funnel3: funnel@6045000 {
1654783abfa2SSai Prakash Ranjan			compatible = "arm,coresight-dynamic-funnel", "arm,primecell";
1655783abfa2SSai Prakash Ranjan			reg = <0x06045000 0x1000>;
1656a636f93fSSai Prakash Ranjan			status = "disabled";
1657783abfa2SSai Prakash Ranjan
1658783abfa2SSai Prakash Ranjan			clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>;
1659783abfa2SSai Prakash Ranjan			clock-names = "apb_pclk", "atclk";
1660783abfa2SSai Prakash Ranjan
1661783abfa2SSai Prakash Ranjan			out-ports {
1662783abfa2SSai Prakash Ranjan				port {
1663783abfa2SSai Prakash Ranjan					merge_funnel_out: endpoint {
1664783abfa2SSai Prakash Ranjan						remote-endpoint =
1665783abfa2SSai Prakash Ranjan						  <&etf_in>;
1666783abfa2SSai Prakash Ranjan					};
1667783abfa2SSai Prakash Ranjan				};
1668783abfa2SSai Prakash Ranjan			};
1669783abfa2SSai Prakash Ranjan
1670783abfa2SSai Prakash Ranjan			in-ports {
1671783abfa2SSai Prakash Ranjan				#address-cells = <1>;
1672783abfa2SSai Prakash Ranjan				#size-cells = <0>;
1673783abfa2SSai Prakash Ranjan
1674783abfa2SSai Prakash Ranjan				port@0 {
1675783abfa2SSai Prakash Ranjan					reg = <0>;
1676783abfa2SSai Prakash Ranjan					merge_funnel_in0: endpoint {
1677783abfa2SSai Prakash Ranjan						remote-endpoint =
1678783abfa2SSai Prakash Ranjan						  <&funnel0_out>;
1679783abfa2SSai Prakash Ranjan					};
1680783abfa2SSai Prakash Ranjan				};
1681783abfa2SSai Prakash Ranjan
1682783abfa2SSai Prakash Ranjan				port@1 {
1683783abfa2SSai Prakash Ranjan					reg = <1>;
1684783abfa2SSai Prakash Ranjan					merge_funnel_in1: endpoint {
1685783abfa2SSai Prakash Ranjan						remote-endpoint =
1686783abfa2SSai Prakash Ranjan						  <&funnel1_out>;
1687783abfa2SSai Prakash Ranjan					};
1688783abfa2SSai Prakash Ranjan				};
1689783abfa2SSai Prakash Ranjan			};
1690783abfa2SSai Prakash Ranjan		};
1691783abfa2SSai Prakash Ranjan
1692a636f93fSSai Prakash Ranjan		replicator1: replicator@6046000 {
1693783abfa2SSai Prakash Ranjan			compatible = "arm,coresight-dynamic-replicator", "arm,primecell";
1694783abfa2SSai Prakash Ranjan			reg = <0x06046000 0x1000>;
1695a636f93fSSai Prakash Ranjan			status = "disabled";
1696783abfa2SSai Prakash Ranjan
1697783abfa2SSai Prakash Ranjan			clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>;
1698783abfa2SSai Prakash Ranjan			clock-names = "apb_pclk", "atclk";
1699783abfa2SSai Prakash Ranjan
1700783abfa2SSai Prakash Ranjan			out-ports {
1701783abfa2SSai Prakash Ranjan				port {
1702783abfa2SSai Prakash Ranjan					replicator_out: endpoint {
1703783abfa2SSai Prakash Ranjan						remote-endpoint = <&etr_in>;
1704783abfa2SSai Prakash Ranjan					};
1705783abfa2SSai Prakash Ranjan				};
1706783abfa2SSai Prakash Ranjan			};
1707783abfa2SSai Prakash Ranjan
1708783abfa2SSai Prakash Ranjan			in-ports {
1709783abfa2SSai Prakash Ranjan				port {
1710783abfa2SSai Prakash Ranjan					replicator_in: endpoint {
1711783abfa2SSai Prakash Ranjan						remote-endpoint = <&etf_out>;
1712783abfa2SSai Prakash Ranjan					};
1713783abfa2SSai Prakash Ranjan				};
1714783abfa2SSai Prakash Ranjan			};
1715783abfa2SSai Prakash Ranjan		};
1716783abfa2SSai Prakash Ranjan
1717a636f93fSSai Prakash Ranjan		etf: etf@6047000 {
1718783abfa2SSai Prakash Ranjan			compatible = "arm,coresight-tmc", "arm,primecell";
1719783abfa2SSai Prakash Ranjan			reg = <0x06047000 0x1000>;
1720a636f93fSSai Prakash Ranjan			status = "disabled";
1721783abfa2SSai Prakash Ranjan
1722783abfa2SSai Prakash Ranjan			clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>;
1723783abfa2SSai Prakash Ranjan			clock-names = "apb_pclk", "atclk";
1724783abfa2SSai Prakash Ranjan
1725783abfa2SSai Prakash Ranjan			out-ports {
1726783abfa2SSai Prakash Ranjan				port {
1727783abfa2SSai Prakash Ranjan					etf_out: endpoint {
1728783abfa2SSai Prakash Ranjan						remote-endpoint =
1729783abfa2SSai Prakash Ranjan						  <&replicator_in>;
1730783abfa2SSai Prakash Ranjan					};
1731783abfa2SSai Prakash Ranjan				};
1732783abfa2SSai Prakash Ranjan			};
1733783abfa2SSai Prakash Ranjan
1734783abfa2SSai Prakash Ranjan			in-ports {
1735783abfa2SSai Prakash Ranjan				port {
1736783abfa2SSai Prakash Ranjan					etf_in: endpoint {
1737783abfa2SSai Prakash Ranjan						remote-endpoint =
1738783abfa2SSai Prakash Ranjan						  <&merge_funnel_out>;
1739783abfa2SSai Prakash Ranjan					};
1740783abfa2SSai Prakash Ranjan				};
1741783abfa2SSai Prakash Ranjan			};
1742783abfa2SSai Prakash Ranjan		};
1743783abfa2SSai Prakash Ranjan
1744a636f93fSSai Prakash Ranjan		etr: etr@6048000 {
1745783abfa2SSai Prakash Ranjan			compatible = "arm,coresight-tmc", "arm,primecell";
1746783abfa2SSai Prakash Ranjan			reg = <0x06048000 0x1000>;
1747a636f93fSSai Prakash Ranjan			status = "disabled";
1748783abfa2SSai Prakash Ranjan
1749783abfa2SSai Prakash Ranjan			clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>;
1750783abfa2SSai Prakash Ranjan			clock-names = "apb_pclk", "atclk";
1751783abfa2SSai Prakash Ranjan			arm,scatter-gather;
1752783abfa2SSai Prakash Ranjan
1753783abfa2SSai Prakash Ranjan			in-ports {
1754783abfa2SSai Prakash Ranjan				port {
1755783abfa2SSai Prakash Ranjan					etr_in: endpoint {
1756783abfa2SSai Prakash Ranjan						remote-endpoint =
1757783abfa2SSai Prakash Ranjan						  <&replicator_out>;
1758783abfa2SSai Prakash Ranjan					};
1759783abfa2SSai Prakash Ranjan				};
1760783abfa2SSai Prakash Ranjan			};
1761783abfa2SSai Prakash Ranjan		};
1762783abfa2SSai Prakash Ranjan
1763a636f93fSSai Prakash Ranjan		etm1: etm@7840000 {
1764783abfa2SSai Prakash Ranjan			compatible = "arm,coresight-etm4x", "arm,primecell";
1765783abfa2SSai Prakash Ranjan			reg = <0x07840000 0x1000>;
1766a636f93fSSai Prakash Ranjan			status = "disabled";
1767783abfa2SSai Prakash Ranjan
1768783abfa2SSai Prakash Ranjan			clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>;
1769783abfa2SSai Prakash Ranjan			clock-names = "apb_pclk", "atclk";
1770783abfa2SSai Prakash Ranjan
1771783abfa2SSai Prakash Ranjan			cpu = <&CPU0>;
1772783abfa2SSai Prakash Ranjan
1773783abfa2SSai Prakash Ranjan			out-ports {
1774783abfa2SSai Prakash Ranjan				port {
1775783abfa2SSai Prakash Ranjan					etm0_out: endpoint {
1776783abfa2SSai Prakash Ranjan						remote-endpoint =
1777783abfa2SSai Prakash Ranjan						  <&apss_funnel_in0>;
1778783abfa2SSai Prakash Ranjan					};
1779783abfa2SSai Prakash Ranjan				};
1780783abfa2SSai Prakash Ranjan			};
1781783abfa2SSai Prakash Ranjan		};
1782783abfa2SSai Prakash Ranjan
1783a636f93fSSai Prakash Ranjan		etm2: etm@7940000 {
1784783abfa2SSai Prakash Ranjan			compatible = "arm,coresight-etm4x", "arm,primecell";
1785783abfa2SSai Prakash Ranjan			reg = <0x07940000 0x1000>;
1786a636f93fSSai Prakash Ranjan			status = "disabled";
1787783abfa2SSai Prakash Ranjan
1788783abfa2SSai Prakash Ranjan			clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>;
1789783abfa2SSai Prakash Ranjan			clock-names = "apb_pclk", "atclk";
1790783abfa2SSai Prakash Ranjan
1791783abfa2SSai Prakash Ranjan			cpu = <&CPU1>;
1792783abfa2SSai Prakash Ranjan
1793783abfa2SSai Prakash Ranjan			out-ports {
1794783abfa2SSai Prakash Ranjan				port {
1795783abfa2SSai Prakash Ranjan					etm1_out: endpoint {
1796783abfa2SSai Prakash Ranjan						remote-endpoint =
1797783abfa2SSai Prakash Ranjan						  <&apss_funnel_in1>;
1798783abfa2SSai Prakash Ranjan					};
1799783abfa2SSai Prakash Ranjan				};
1800783abfa2SSai Prakash Ranjan			};
1801783abfa2SSai Prakash Ranjan		};
1802783abfa2SSai Prakash Ranjan
1803a636f93fSSai Prakash Ranjan		etm3: etm@7a40000 {
1804783abfa2SSai Prakash Ranjan			compatible = "arm,coresight-etm4x", "arm,primecell";
1805783abfa2SSai Prakash Ranjan			reg = <0x07a40000 0x1000>;
1806a636f93fSSai Prakash Ranjan			status = "disabled";
1807783abfa2SSai Prakash Ranjan
1808783abfa2SSai Prakash Ranjan			clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>;
1809783abfa2SSai Prakash Ranjan			clock-names = "apb_pclk", "atclk";
1810783abfa2SSai Prakash Ranjan
1811783abfa2SSai Prakash Ranjan			cpu = <&CPU2>;
1812783abfa2SSai Prakash Ranjan
1813783abfa2SSai Prakash Ranjan			out-ports {
1814783abfa2SSai Prakash Ranjan				port {
1815783abfa2SSai Prakash Ranjan					etm2_out: endpoint {
1816783abfa2SSai Prakash Ranjan						remote-endpoint =
1817783abfa2SSai Prakash Ranjan						  <&apss_funnel_in2>;
1818783abfa2SSai Prakash Ranjan					};
1819783abfa2SSai Prakash Ranjan				};
1820783abfa2SSai Prakash Ranjan			};
1821783abfa2SSai Prakash Ranjan		};
1822783abfa2SSai Prakash Ranjan
1823a636f93fSSai Prakash Ranjan		etm4: etm@7b40000 {
1824783abfa2SSai Prakash Ranjan			compatible = "arm,coresight-etm4x", "arm,primecell";
1825783abfa2SSai Prakash Ranjan			reg = <0x07b40000 0x1000>;
1826a636f93fSSai Prakash Ranjan			status = "disabled";
1827783abfa2SSai Prakash Ranjan
1828783abfa2SSai Prakash Ranjan			clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>;
1829783abfa2SSai Prakash Ranjan			clock-names = "apb_pclk", "atclk";
1830783abfa2SSai Prakash Ranjan
1831783abfa2SSai Prakash Ranjan			cpu = <&CPU3>;
1832783abfa2SSai Prakash Ranjan
1833783abfa2SSai Prakash Ranjan			out-ports {
1834783abfa2SSai Prakash Ranjan				port {
1835783abfa2SSai Prakash Ranjan					etm3_out: endpoint {
1836783abfa2SSai Prakash Ranjan						remote-endpoint =
1837783abfa2SSai Prakash Ranjan						  <&apss_funnel_in3>;
1838783abfa2SSai Prakash Ranjan					};
1839783abfa2SSai Prakash Ranjan				};
1840783abfa2SSai Prakash Ranjan			};
1841783abfa2SSai Prakash Ranjan		};
1842783abfa2SSai Prakash Ranjan
1843a636f93fSSai Prakash Ranjan		funnel4: funnel@7b60000 { /* APSS Funnel */
1844783abfa2SSai Prakash Ranjan			compatible = "arm,coresight-etm4x", "arm,primecell";
1845783abfa2SSai Prakash Ranjan			reg = <0x07b60000 0x1000>;
1846a636f93fSSai Prakash Ranjan			status = "disabled";
1847783abfa2SSai Prakash Ranjan
1848783abfa2SSai Prakash Ranjan			clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>;
1849783abfa2SSai Prakash Ranjan			clock-names = "apb_pclk", "atclk";
1850783abfa2SSai Prakash Ranjan
1851783abfa2SSai Prakash Ranjan			out-ports {
1852783abfa2SSai Prakash Ranjan				port {
1853783abfa2SSai Prakash Ranjan					apss_funnel_out: endpoint {
1854783abfa2SSai Prakash Ranjan						remote-endpoint =
1855783abfa2SSai Prakash Ranjan						  <&apss_merge_funnel_in>;
1856783abfa2SSai Prakash Ranjan					};
1857783abfa2SSai Prakash Ranjan				};
1858783abfa2SSai Prakash Ranjan			};
1859783abfa2SSai Prakash Ranjan
1860783abfa2SSai Prakash Ranjan			in-ports {
1861783abfa2SSai Prakash Ranjan				#address-cells = <1>;
1862783abfa2SSai Prakash Ranjan				#size-cells = <0>;
1863783abfa2SSai Prakash Ranjan
1864783abfa2SSai Prakash Ranjan				port@0 {
1865783abfa2SSai Prakash Ranjan					reg = <0>;
1866783abfa2SSai Prakash Ranjan					apss_funnel_in0: endpoint {
1867783abfa2SSai Prakash Ranjan						remote-endpoint =
1868783abfa2SSai Prakash Ranjan						  <&etm0_out>;
1869783abfa2SSai Prakash Ranjan					};
1870783abfa2SSai Prakash Ranjan				};
1871783abfa2SSai Prakash Ranjan
1872783abfa2SSai Prakash Ranjan				port@1 {
1873783abfa2SSai Prakash Ranjan					reg = <1>;
1874783abfa2SSai Prakash Ranjan					apss_funnel_in1: endpoint {
1875783abfa2SSai Prakash Ranjan						remote-endpoint =
1876783abfa2SSai Prakash Ranjan						  <&etm1_out>;
1877783abfa2SSai Prakash Ranjan					};
1878783abfa2SSai Prakash Ranjan				};
1879783abfa2SSai Prakash Ranjan
1880783abfa2SSai Prakash Ranjan				port@2 {
1881783abfa2SSai Prakash Ranjan					reg = <2>;
1882783abfa2SSai Prakash Ranjan					apss_funnel_in2: endpoint {
1883783abfa2SSai Prakash Ranjan						remote-endpoint =
1884783abfa2SSai Prakash Ranjan						  <&etm2_out>;
1885783abfa2SSai Prakash Ranjan					};
1886783abfa2SSai Prakash Ranjan				};
1887783abfa2SSai Prakash Ranjan
1888783abfa2SSai Prakash Ranjan				port@3 {
1889783abfa2SSai Prakash Ranjan					reg = <3>;
1890783abfa2SSai Prakash Ranjan					apss_funnel_in3: endpoint {
1891783abfa2SSai Prakash Ranjan						remote-endpoint =
1892783abfa2SSai Prakash Ranjan						  <&etm3_out>;
1893783abfa2SSai Prakash Ranjan					};
1894783abfa2SSai Prakash Ranjan				};
1895783abfa2SSai Prakash Ranjan
1896783abfa2SSai Prakash Ranjan				port@4 {
1897783abfa2SSai Prakash Ranjan					reg = <4>;
1898783abfa2SSai Prakash Ranjan					apss_funnel_in4: endpoint {
1899783abfa2SSai Prakash Ranjan						remote-endpoint =
1900783abfa2SSai Prakash Ranjan						  <&etm4_out>;
1901783abfa2SSai Prakash Ranjan					};
1902783abfa2SSai Prakash Ranjan				};
1903783abfa2SSai Prakash Ranjan
1904783abfa2SSai Prakash Ranjan				port@5 {
1905783abfa2SSai Prakash Ranjan					reg = <5>;
1906783abfa2SSai Prakash Ranjan					apss_funnel_in5: endpoint {
1907783abfa2SSai Prakash Ranjan						remote-endpoint =
1908783abfa2SSai Prakash Ranjan						  <&etm5_out>;
1909783abfa2SSai Prakash Ranjan					};
1910783abfa2SSai Prakash Ranjan				};
1911783abfa2SSai Prakash Ranjan
1912783abfa2SSai Prakash Ranjan				port@6 {
1913783abfa2SSai Prakash Ranjan					reg = <6>;
1914783abfa2SSai Prakash Ranjan					apss_funnel_in6: endpoint {
1915783abfa2SSai Prakash Ranjan						remote-endpoint =
1916783abfa2SSai Prakash Ranjan						  <&etm6_out>;
1917783abfa2SSai Prakash Ranjan					};
1918783abfa2SSai Prakash Ranjan				};
1919783abfa2SSai Prakash Ranjan
1920783abfa2SSai Prakash Ranjan				port@7 {
1921783abfa2SSai Prakash Ranjan					reg = <7>;
1922783abfa2SSai Prakash Ranjan					apss_funnel_in7: endpoint {
1923783abfa2SSai Prakash Ranjan						remote-endpoint =
1924783abfa2SSai Prakash Ranjan						  <&etm7_out>;
1925783abfa2SSai Prakash Ranjan					};
1926783abfa2SSai Prakash Ranjan				};
1927783abfa2SSai Prakash Ranjan			};
1928783abfa2SSai Prakash Ranjan		};
1929783abfa2SSai Prakash Ranjan
1930a636f93fSSai Prakash Ranjan		funnel5: funnel@7b70000 {
1931783abfa2SSai Prakash Ranjan			compatible = "arm,coresight-dynamic-funnel", "arm,primecell";
1932783abfa2SSai Prakash Ranjan			reg = <0x07b70000 0x1000>;
1933a636f93fSSai Prakash Ranjan			status = "disabled";
1934783abfa2SSai Prakash Ranjan
1935783abfa2SSai Prakash Ranjan			clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>;
1936783abfa2SSai Prakash Ranjan			clock-names = "apb_pclk", "atclk";
1937783abfa2SSai Prakash Ranjan
1938783abfa2SSai Prakash Ranjan			out-ports {
1939783abfa2SSai Prakash Ranjan				port {
1940783abfa2SSai Prakash Ranjan					apss_merge_funnel_out: endpoint {
1941783abfa2SSai Prakash Ranjan						remote-endpoint =
1942783abfa2SSai Prakash Ranjan						  <&funnel1_in6>;
1943783abfa2SSai Prakash Ranjan					};
1944783abfa2SSai Prakash Ranjan				};
1945783abfa2SSai Prakash Ranjan			};
1946783abfa2SSai Prakash Ranjan
1947783abfa2SSai Prakash Ranjan			in-ports {
1948783abfa2SSai Prakash Ranjan				port {
1949783abfa2SSai Prakash Ranjan					apss_merge_funnel_in: endpoint {
1950783abfa2SSai Prakash Ranjan						remote-endpoint =
1951783abfa2SSai Prakash Ranjan						  <&apss_funnel_out>;
1952783abfa2SSai Prakash Ranjan					};
1953783abfa2SSai Prakash Ranjan				};
1954783abfa2SSai Prakash Ranjan			};
1955783abfa2SSai Prakash Ranjan		};
1956783abfa2SSai Prakash Ranjan
1957a636f93fSSai Prakash Ranjan		etm5: etm@7c40000 {
1958783abfa2SSai Prakash Ranjan			compatible = "arm,coresight-etm4x", "arm,primecell";
1959783abfa2SSai Prakash Ranjan			reg = <0x07c40000 0x1000>;
1960a636f93fSSai Prakash Ranjan			status = "disabled";
1961783abfa2SSai Prakash Ranjan
1962783abfa2SSai Prakash Ranjan			clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>;
1963783abfa2SSai Prakash Ranjan			clock-names = "apb_pclk", "atclk";
1964783abfa2SSai Prakash Ranjan
1965783abfa2SSai Prakash Ranjan			cpu = <&CPU4>;
1966783abfa2SSai Prakash Ranjan
1967783abfa2SSai Prakash Ranjan			port{
1968783abfa2SSai Prakash Ranjan				etm4_out: endpoint {
1969783abfa2SSai Prakash Ranjan					remote-endpoint = <&apss_funnel_in4>;
1970783abfa2SSai Prakash Ranjan				};
1971783abfa2SSai Prakash Ranjan			};
1972783abfa2SSai Prakash Ranjan		};
1973783abfa2SSai Prakash Ranjan
1974a636f93fSSai Prakash Ranjan		etm6: etm@7d40000 {
1975783abfa2SSai Prakash Ranjan			compatible = "arm,coresight-etm4x", "arm,primecell";
1976783abfa2SSai Prakash Ranjan			reg = <0x07d40000 0x1000>;
1977a636f93fSSai Prakash Ranjan			status = "disabled";
1978783abfa2SSai Prakash Ranjan
1979783abfa2SSai Prakash Ranjan			clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>;
1980783abfa2SSai Prakash Ranjan			clock-names = "apb_pclk", "atclk";
1981783abfa2SSai Prakash Ranjan
1982783abfa2SSai Prakash Ranjan			cpu = <&CPU5>;
1983783abfa2SSai Prakash Ranjan
1984783abfa2SSai Prakash Ranjan			port{
1985783abfa2SSai Prakash Ranjan				etm5_out: endpoint {
1986783abfa2SSai Prakash Ranjan					remote-endpoint = <&apss_funnel_in5>;
1987783abfa2SSai Prakash Ranjan				};
1988783abfa2SSai Prakash Ranjan			};
1989783abfa2SSai Prakash Ranjan		};
1990783abfa2SSai Prakash Ranjan
1991a636f93fSSai Prakash Ranjan		etm7: etm@7e40000 {
1992783abfa2SSai Prakash Ranjan			compatible = "arm,coresight-etm4x", "arm,primecell";
1993783abfa2SSai Prakash Ranjan			reg = <0x07e40000 0x1000>;
1994a636f93fSSai Prakash Ranjan			status = "disabled";
1995783abfa2SSai Prakash Ranjan
1996783abfa2SSai Prakash Ranjan			clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>;
1997783abfa2SSai Prakash Ranjan			clock-names = "apb_pclk", "atclk";
1998783abfa2SSai Prakash Ranjan
1999783abfa2SSai Prakash Ranjan			cpu = <&CPU6>;
2000783abfa2SSai Prakash Ranjan
2001783abfa2SSai Prakash Ranjan			port{
2002783abfa2SSai Prakash Ranjan				etm6_out: endpoint {
2003783abfa2SSai Prakash Ranjan					remote-endpoint = <&apss_funnel_in6>;
2004783abfa2SSai Prakash Ranjan				};
2005783abfa2SSai Prakash Ranjan			};
2006783abfa2SSai Prakash Ranjan		};
2007783abfa2SSai Prakash Ranjan
2008a636f93fSSai Prakash Ranjan		etm8: etm@7f40000 {
2009783abfa2SSai Prakash Ranjan			compatible = "arm,coresight-etm4x", "arm,primecell";
2010783abfa2SSai Prakash Ranjan			reg = <0x07f40000 0x1000>;
2011a636f93fSSai Prakash Ranjan			status = "disabled";
2012783abfa2SSai Prakash Ranjan
2013783abfa2SSai Prakash Ranjan			clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>;
2014783abfa2SSai Prakash Ranjan			clock-names = "apb_pclk", "atclk";
2015783abfa2SSai Prakash Ranjan
2016783abfa2SSai Prakash Ranjan			cpu = <&CPU7>;
2017783abfa2SSai Prakash Ranjan
2018783abfa2SSai Prakash Ranjan			port{
2019783abfa2SSai Prakash Ranjan				etm7_out: endpoint {
2020783abfa2SSai Prakash Ranjan					remote-endpoint = <&apss_funnel_in7>;
2021783abfa2SSai Prakash Ranjan				};
2022783abfa2SSai Prakash Ranjan			};
2023783abfa2SSai Prakash Ranjan		};
2024783abfa2SSai Prakash Ranjan
2025290bc684SMaulik Shah		sram@290000 {
2026290bc684SMaulik Shah			compatible = "qcom,rpm-stats";
2027290bc684SMaulik Shah			reg = <0x00290000 0x10000>;
2028290bc684SMaulik Shah		};
2029290bc684SMaulik Shah
203032a5da21SJeffrey Hugo		spmi_bus: spmi@800f000 {
203132a5da21SJeffrey Hugo			compatible = "qcom,spmi-pmic-arb";
203232a5da21SJeffrey Hugo			reg =	<0x0800f000 0x1000>,
203332a5da21SJeffrey Hugo				<0x08400000 0x1000000>,
203432a5da21SJeffrey Hugo				<0x09400000 0x1000000>,
203532a5da21SJeffrey Hugo				<0x0a400000 0x220000>,
203632a5da21SJeffrey Hugo				<0x0800a000 0x3000>;
203732a5da21SJeffrey Hugo			reg-names = "core", "chnls", "obsrvr", "intr", "cnfg";
203832a5da21SJeffrey Hugo			interrupt-names = "periph_irq";
203932a5da21SJeffrey Hugo			interrupts = <GIC_SPI 326 IRQ_TYPE_LEVEL_HIGH>;
204032a5da21SJeffrey Hugo			qcom,ee = <0>;
204132a5da21SJeffrey Hugo			qcom,channel = <0>;
204232a5da21SJeffrey Hugo			#address-cells = <2>;
204332a5da21SJeffrey Hugo			#size-cells = <0>;
204432a5da21SJeffrey Hugo			interrupt-controller;
204532a5da21SJeffrey Hugo			#interrupt-cells = <4>;
204632a5da21SJeffrey Hugo			cell-index = <0>;
204731c1f0e3SBjorn Andersson		};
204831c1f0e3SBjorn Andersson
2049026dad8fSJeffrey Hugo		usb3: usb@a8f8800 {
2050026dad8fSJeffrey Hugo			compatible = "qcom,msm8998-dwc3", "qcom,dwc3";
2051026dad8fSJeffrey Hugo			reg = <0x0a8f8800 0x400>;
2052026dad8fSJeffrey Hugo			status = "disabled";
2053026dad8fSJeffrey Hugo			#address-cells = <1>;
2054026dad8fSJeffrey Hugo			#size-cells = <1>;
2055026dad8fSJeffrey Hugo			ranges;
2056026dad8fSJeffrey Hugo
2057026dad8fSJeffrey Hugo			clocks = <&gcc GCC_CFG_NOC_USB3_AXI_CLK>,
2058026dad8fSJeffrey Hugo				 <&gcc GCC_USB30_MASTER_CLK>,
2059026dad8fSJeffrey Hugo				 <&gcc GCC_AGGRE1_USB3_AXI_CLK>,
2060026dad8fSJeffrey Hugo				 <&gcc GCC_USB30_MOCK_UTMI_CLK>,
2061026dad8fSJeffrey Hugo				 <&gcc GCC_USB30_SLEEP_CLK>;
2062026dad8fSJeffrey Hugo			clock-names = "cfg_noc", "core", "iface", "mock_utmi",
2063026dad8fSJeffrey Hugo				      "sleep";
2064026dad8fSJeffrey Hugo
2065026dad8fSJeffrey Hugo			assigned-clocks = <&gcc GCC_USB30_MOCK_UTMI_CLK>,
2066026dad8fSJeffrey Hugo					  <&gcc GCC_USB30_MASTER_CLK>;
2067026dad8fSJeffrey Hugo			assigned-clock-rates = <19200000>, <120000000>;
2068026dad8fSJeffrey Hugo
2069026dad8fSJeffrey Hugo			interrupts = <GIC_SPI 347 IRQ_TYPE_LEVEL_HIGH>,
2070026dad8fSJeffrey Hugo				     <GIC_SPI 243 IRQ_TYPE_LEVEL_HIGH>;
2071026dad8fSJeffrey Hugo			interrupt-names = "hs_phy_irq", "ss_phy_irq";
2072026dad8fSJeffrey Hugo
2073026dad8fSJeffrey Hugo			power-domains = <&gcc USB_30_GDSC>;
2074026dad8fSJeffrey Hugo
2075026dad8fSJeffrey Hugo			resets = <&gcc GCC_USB_30_BCR>;
2076026dad8fSJeffrey Hugo
20771f958f3dSGreg Kroah-Hartman			usb3_dwc3: dwc3@a800000 {
2078026dad8fSJeffrey Hugo				compatible = "snps,dwc3";
2079026dad8fSJeffrey Hugo				reg = <0x0a800000 0xcd00>;
2080026dad8fSJeffrey Hugo				interrupts = <GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH>;
2081026dad8fSJeffrey Hugo				snps,dis_u2_susphy_quirk;
2082026dad8fSJeffrey Hugo				snps,dis_enblslpm_quirk;
2083026dad8fSJeffrey Hugo				phys = <&qusb2phy>, <&usb1_ssphy>;
2084026dad8fSJeffrey Hugo				phy-names = "usb2-phy", "usb3-phy";
2085026dad8fSJeffrey Hugo				snps,has-lpm-erratum;
2086026dad8fSJeffrey Hugo				snps,hird-threshold = /bits/ 8 <0x10>;
2087026dad8fSJeffrey Hugo			};
2088026dad8fSJeffrey Hugo		};
2089026dad8fSJeffrey Hugo
2090026dad8fSJeffrey Hugo		usb3phy: phy@c010000 {
2091026dad8fSJeffrey Hugo			compatible = "qcom,msm8998-qmp-usb3-phy";
2092026dad8fSJeffrey Hugo			reg = <0x0c010000 0x18c>;
2093026dad8fSJeffrey Hugo			status = "disabled";
2094026dad8fSJeffrey Hugo			#address-cells = <1>;
2095026dad8fSJeffrey Hugo			#size-cells = <1>;
2096026dad8fSJeffrey Hugo			ranges;
2097026dad8fSJeffrey Hugo
2098026dad8fSJeffrey Hugo			clocks = <&gcc GCC_USB3_PHY_AUX_CLK>,
2099026dad8fSJeffrey Hugo				 <&gcc GCC_USB_PHY_CFG_AHB2PHY_CLK>,
2100026dad8fSJeffrey Hugo				 <&gcc GCC_USB3_CLKREF_CLK>;
2101026dad8fSJeffrey Hugo			clock-names = "aux", "cfg_ahb", "ref";
2102026dad8fSJeffrey Hugo
2103026dad8fSJeffrey Hugo			resets = <&gcc GCC_USB3_PHY_BCR>,
2104026dad8fSJeffrey Hugo				 <&gcc GCC_USB3PHY_PHY_BCR>;
2105026dad8fSJeffrey Hugo			reset-names = "phy", "common";
2106026dad8fSJeffrey Hugo
21071351512fSShawn Guo			usb1_ssphy: phy@c010200 {
2108026dad8fSJeffrey Hugo				reg = <0xc010200 0x128>,
2109026dad8fSJeffrey Hugo				      <0xc010400 0x200>,
2110026dad8fSJeffrey Hugo				      <0xc010c00 0x20c>,
2111026dad8fSJeffrey Hugo				      <0xc010600 0x128>,
2112026dad8fSJeffrey Hugo				      <0xc010800 0x200>;
2113026dad8fSJeffrey Hugo				#phy-cells = <0>;
211482d61e19SShawn Guo				#clock-cells = <1>;
2115026dad8fSJeffrey Hugo				clocks = <&gcc GCC_USB3_PHY_PIPE_CLK>;
2116026dad8fSJeffrey Hugo				clock-names = "pipe0";
2117026dad8fSJeffrey Hugo				clock-output-names = "usb3_phy_pipe_clk_src";
2118026dad8fSJeffrey Hugo			};
2119026dad8fSJeffrey Hugo		};
2120026dad8fSJeffrey Hugo
2121026dad8fSJeffrey Hugo		qusb2phy: phy@c012000 {
2122026dad8fSJeffrey Hugo			compatible = "qcom,msm8998-qusb2-phy";
2123026dad8fSJeffrey Hugo			reg = <0x0c012000 0x2a8>;
2124026dad8fSJeffrey Hugo			status = "disabled";
2125026dad8fSJeffrey Hugo			#phy-cells = <0>;
2126026dad8fSJeffrey Hugo
2127026dad8fSJeffrey Hugo			clocks = <&gcc GCC_USB_PHY_CFG_AHB2PHY_CLK>,
2128026dad8fSJeffrey Hugo				 <&gcc GCC_RX1_USB2_CLKREF_CLK>;
2129026dad8fSJeffrey Hugo			clock-names = "cfg_ahb", "ref";
2130026dad8fSJeffrey Hugo
2131026dad8fSJeffrey Hugo			resets = <&gcc GCC_QUSB2PHY_PRIM_BCR>;
2132026dad8fSJeffrey Hugo
2133026dad8fSJeffrey Hugo			nvmem-cells = <&qusb2_hstx_trim>;
2134026dad8fSJeffrey Hugo		};
2135026dad8fSJeffrey Hugo
21361cfce828SJeffrey Hugo		sdhc2: sdhci@c0a4900 {
21371cfce828SJeffrey Hugo			compatible = "qcom,sdhci-msm-v4";
213832a5da21SJeffrey Hugo			reg = <0x0c0a4900 0x314>, <0x0c0a4000 0x800>;
21391cfce828SJeffrey Hugo			reg-names = "hc_mem", "core_mem";
21401cfce828SJeffrey Hugo
21411cfce828SJeffrey Hugo			interrupts = <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>,
21421cfce828SJeffrey Hugo				     <GIC_SPI 221 IRQ_TYPE_LEVEL_HIGH>;
21431cfce828SJeffrey Hugo			interrupt-names = "hc_irq", "pwr_irq";
21441cfce828SJeffrey Hugo
21451cfce828SJeffrey Hugo			clock-names = "iface", "core", "xo";
21461cfce828SJeffrey Hugo			clocks = <&gcc GCC_SDCC2_AHB_CLK>,
21471cfce828SJeffrey Hugo				 <&gcc GCC_SDCC2_APPS_CLK>,
21481cfce828SJeffrey Hugo				 <&xo>;
21491cfce828SJeffrey Hugo			bus-width = <4>;
21501cfce828SJeffrey Hugo			status = "disabled";
21511cfce828SJeffrey Hugo		};
21521cfce828SJeffrey Hugo
215394ed1811SVinod Koul		blsp1_dma: dma-controller@c144000 {
2154f1c1d4feSJeffrey Hugo			compatible = "qcom,bam-v1.7.0";
2155f1c1d4feSJeffrey Hugo			reg = <0x0c144000 0x25000>;
2156f1c1d4feSJeffrey Hugo			interrupts = <GIC_SPI 238 IRQ_TYPE_LEVEL_HIGH>;
2157f1c1d4feSJeffrey Hugo			clocks = <&gcc GCC_BLSP1_AHB_CLK>;
2158f1c1d4feSJeffrey Hugo			clock-names = "bam_clk";
2159f1c1d4feSJeffrey Hugo			#dma-cells = <1>;
2160f1c1d4feSJeffrey Hugo			qcom,ee = <0>;
2161f1c1d4feSJeffrey Hugo			qcom,controlled-remotely;
2162f1c1d4feSJeffrey Hugo			num-channels = <18>;
2163f1c1d4feSJeffrey Hugo			qcom,num-ees = <4>;
2164f1c1d4feSJeffrey Hugo		};
2165f1c1d4feSJeffrey Hugo
216673d4d2efSJeffrey Hugo		blsp1_uart3: serial@c171000 {
216773d4d2efSJeffrey Hugo			compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm";
216873d4d2efSJeffrey Hugo			reg = <0x0c171000 0x1000>;
216973d4d2efSJeffrey Hugo			interrupts = <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>;
217073d4d2efSJeffrey Hugo			clocks = <&gcc GCC_BLSP1_UART3_APPS_CLK>,
217173d4d2efSJeffrey Hugo				 <&gcc GCC_BLSP1_AHB_CLK>;
217273d4d2efSJeffrey Hugo			clock-names = "core", "iface";
217373d4d2efSJeffrey Hugo			dmas = <&blsp1_dma 4>, <&blsp1_dma 5>;
217473d4d2efSJeffrey Hugo			dma-names = "tx", "rx";
217573d4d2efSJeffrey Hugo			pinctrl-names = "default";
217673d4d2efSJeffrey Hugo			pinctrl-0 = <&blsp1_uart3_on>;
217773d4d2efSJeffrey Hugo			status = "disabled";
217873d4d2efSJeffrey Hugo		};
217973d4d2efSJeffrey Hugo
21801e71d0c2SJeffrey Hugo		blsp1_i2c1: i2c@c175000 {
21811e71d0c2SJeffrey Hugo			compatible = "qcom,i2c-qup-v2.2.1";
21821e71d0c2SJeffrey Hugo			reg = <0x0c175000 0x600>;
21831e71d0c2SJeffrey Hugo			interrupts = <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>;
21841e71d0c2SJeffrey Hugo
21851e71d0c2SJeffrey Hugo			clocks = <&gcc GCC_BLSP1_QUP1_I2C_APPS_CLK>,
21861e71d0c2SJeffrey Hugo				 <&gcc GCC_BLSP1_AHB_CLK>;
21871e71d0c2SJeffrey Hugo			clock-names = "core", "iface";
21886845359eSKonrad Dybcio			dmas = <&blsp1_dma 6>, <&blsp1_dma 7>;
21896845359eSKonrad Dybcio			dma-names = "tx", "rx";
21900fee55fcSKonrad Dybcio			pinctrl-names = "default", "sleep";
21910fee55fcSKonrad Dybcio			pinctrl-0 = <&blsp1_i2c1_default>;
21920fee55fcSKonrad Dybcio			pinctrl-1 = <&blsp1_i2c1_sleep>;
21931e71d0c2SJeffrey Hugo			clock-frequency = <400000>;
21941e71d0c2SJeffrey Hugo
21951e71d0c2SJeffrey Hugo			status = "disabled";
21961e71d0c2SJeffrey Hugo			#address-cells = <1>;
21971e71d0c2SJeffrey Hugo			#size-cells = <0>;
21981e71d0c2SJeffrey Hugo		};
21991e71d0c2SJeffrey Hugo
22001e71d0c2SJeffrey Hugo		blsp1_i2c2: i2c@c176000 {
22011e71d0c2SJeffrey Hugo			compatible = "qcom,i2c-qup-v2.2.1";
22021e71d0c2SJeffrey Hugo			reg = <0x0c176000 0x600>;
22031e71d0c2SJeffrey Hugo			interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>;
22041e71d0c2SJeffrey Hugo
22051e71d0c2SJeffrey Hugo			clocks = <&gcc GCC_BLSP1_QUP2_I2C_APPS_CLK>,
22061e71d0c2SJeffrey Hugo				 <&gcc GCC_BLSP1_AHB_CLK>;
22071e71d0c2SJeffrey Hugo			clock-names = "core", "iface";
22086845359eSKonrad Dybcio			dmas = <&blsp1_dma 8>, <&blsp1_dma 9>;
22096845359eSKonrad Dybcio			dma-names = "tx", "rx";
22100fee55fcSKonrad Dybcio			pinctrl-names = "default", "sleep";
22110fee55fcSKonrad Dybcio			pinctrl-0 = <&blsp1_i2c2_default>;
22120fee55fcSKonrad Dybcio			pinctrl-1 = <&blsp1_i2c2_sleep>;
22131e71d0c2SJeffrey Hugo			clock-frequency = <400000>;
22141e71d0c2SJeffrey Hugo
22151e71d0c2SJeffrey Hugo			status = "disabled";
22161e71d0c2SJeffrey Hugo			#address-cells = <1>;
22171e71d0c2SJeffrey Hugo			#size-cells = <0>;
22181e71d0c2SJeffrey Hugo		};
22191e71d0c2SJeffrey Hugo
22201e71d0c2SJeffrey Hugo		blsp1_i2c3: i2c@c177000 {
22211e71d0c2SJeffrey Hugo			compatible = "qcom,i2c-qup-v2.2.1";
22221e71d0c2SJeffrey Hugo			reg = <0x0c177000 0x600>;
22231e71d0c2SJeffrey Hugo			interrupts = <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>;
22241e71d0c2SJeffrey Hugo
22251e71d0c2SJeffrey Hugo			clocks = <&gcc GCC_BLSP1_QUP3_I2C_APPS_CLK>,
22261e71d0c2SJeffrey Hugo				 <&gcc GCC_BLSP1_AHB_CLK>;
22271e71d0c2SJeffrey Hugo			clock-names = "core", "iface";
22286845359eSKonrad Dybcio			dmas = <&blsp1_dma 10>, <&blsp1_dma 11>;
22296845359eSKonrad Dybcio			dma-names = "tx", "rx";
22300fee55fcSKonrad Dybcio			pinctrl-names = "default", "sleep";
22310fee55fcSKonrad Dybcio			pinctrl-0 = <&blsp1_i2c3_default>;
22320fee55fcSKonrad Dybcio			pinctrl-1 = <&blsp1_i2c3_sleep>;
22331e71d0c2SJeffrey Hugo			clock-frequency = <400000>;
22341e71d0c2SJeffrey Hugo
22351e71d0c2SJeffrey Hugo			status = "disabled";
22361e71d0c2SJeffrey Hugo			#address-cells = <1>;
22371e71d0c2SJeffrey Hugo			#size-cells = <0>;
22381e71d0c2SJeffrey Hugo		};
22391e71d0c2SJeffrey Hugo
22401e71d0c2SJeffrey Hugo		blsp1_i2c4: i2c@c178000 {
22411e71d0c2SJeffrey Hugo			compatible = "qcom,i2c-qup-v2.2.1";
22421e71d0c2SJeffrey Hugo			reg = <0x0c178000 0x600>;
22431e71d0c2SJeffrey Hugo			interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>;
22441e71d0c2SJeffrey Hugo
22451e71d0c2SJeffrey Hugo			clocks = <&gcc GCC_BLSP1_QUP4_I2C_APPS_CLK>,
22461e71d0c2SJeffrey Hugo				 <&gcc GCC_BLSP1_AHB_CLK>;
22471e71d0c2SJeffrey Hugo			clock-names = "core", "iface";
22486845359eSKonrad Dybcio			dmas = <&blsp1_dma 12>, <&blsp1_dma 13>;
22496845359eSKonrad Dybcio			dma-names = "tx", "rx";
22500fee55fcSKonrad Dybcio			pinctrl-names = "default", "sleep";
22510fee55fcSKonrad Dybcio			pinctrl-0 = <&blsp1_i2c4_default>;
22520fee55fcSKonrad Dybcio			pinctrl-1 = <&blsp1_i2c4_sleep>;
22531e71d0c2SJeffrey Hugo			clock-frequency = <400000>;
22541e71d0c2SJeffrey Hugo
22551e71d0c2SJeffrey Hugo			status = "disabled";
22561e71d0c2SJeffrey Hugo			#address-cells = <1>;
22571e71d0c2SJeffrey Hugo			#size-cells = <0>;
22581e71d0c2SJeffrey Hugo		};
22591e71d0c2SJeffrey Hugo
22601e71d0c2SJeffrey Hugo		blsp1_i2c5: i2c@c179000 {
22611e71d0c2SJeffrey Hugo			compatible = "qcom,i2c-qup-v2.2.1";
22621e71d0c2SJeffrey Hugo			reg = <0x0c179000 0x600>;
22631e71d0c2SJeffrey Hugo			interrupts = <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>;
22641e71d0c2SJeffrey Hugo
22651e71d0c2SJeffrey Hugo			clocks = <&gcc GCC_BLSP1_QUP5_I2C_APPS_CLK>,
22661e71d0c2SJeffrey Hugo				 <&gcc GCC_BLSP1_AHB_CLK>;
22671e71d0c2SJeffrey Hugo			clock-names = "core", "iface";
22686845359eSKonrad Dybcio			dmas = <&blsp1_dma 14>, <&blsp1_dma 15>;
22696845359eSKonrad Dybcio			dma-names = "tx", "rx";
22700fee55fcSKonrad Dybcio			pinctrl-names = "default", "sleep";
22710fee55fcSKonrad Dybcio			pinctrl-0 = <&blsp1_i2c5_default>;
22720fee55fcSKonrad Dybcio			pinctrl-1 = <&blsp1_i2c5_sleep>;
22731e71d0c2SJeffrey Hugo			clock-frequency = <400000>;
22741e71d0c2SJeffrey Hugo
22751e71d0c2SJeffrey Hugo			status = "disabled";
22761e71d0c2SJeffrey Hugo			#address-cells = <1>;
22771e71d0c2SJeffrey Hugo			#size-cells = <0>;
22781e71d0c2SJeffrey Hugo		};
22791e71d0c2SJeffrey Hugo
22801e71d0c2SJeffrey Hugo		blsp1_i2c6: i2c@c17a000 {
22811e71d0c2SJeffrey Hugo			compatible = "qcom,i2c-qup-v2.2.1";
22821e71d0c2SJeffrey Hugo			reg = <0x0c17a000 0x600>;
22831e71d0c2SJeffrey Hugo			interrupts = <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>;
22841e71d0c2SJeffrey Hugo
22851e71d0c2SJeffrey Hugo			clocks = <&gcc GCC_BLSP1_QUP6_I2C_APPS_CLK>,
22861e71d0c2SJeffrey Hugo				 <&gcc GCC_BLSP1_AHB_CLK>;
22871e71d0c2SJeffrey Hugo			clock-names = "core", "iface";
22886845359eSKonrad Dybcio			dmas = <&blsp1_dma 16>, <&blsp1_dma 17>;
22896845359eSKonrad Dybcio			dma-names = "tx", "rx";
22900fee55fcSKonrad Dybcio			pinctrl-names = "default", "sleep";
22910fee55fcSKonrad Dybcio			pinctrl-0 = <&blsp1_i2c6_default>;
22920fee55fcSKonrad Dybcio			pinctrl-1 = <&blsp1_i2c6_sleep>;
22931e71d0c2SJeffrey Hugo			clock-frequency = <400000>;
22941e71d0c2SJeffrey Hugo
22951e71d0c2SJeffrey Hugo			status = "disabled";
22961e71d0c2SJeffrey Hugo			#address-cells = <1>;
22971e71d0c2SJeffrey Hugo			#size-cells = <0>;
22981e71d0c2SJeffrey Hugo		};
22991e71d0c2SJeffrey Hugo
2300bbef0142SShawn Guo		blsp2_dma: dma-controller@c184000 {
23016845359eSKonrad Dybcio			compatible = "qcom,bam-v1.7.0";
23026845359eSKonrad Dybcio			reg = <0x0c184000 0x25000>;
23036845359eSKonrad Dybcio			interrupts = <GIC_SPI 239 IRQ_TYPE_LEVEL_HIGH>;
23046845359eSKonrad Dybcio			clocks = <&gcc GCC_BLSP2_AHB_CLK>;
23056845359eSKonrad Dybcio			clock-names = "bam_clk";
23066845359eSKonrad Dybcio			#dma-cells = <1>;
23076845359eSKonrad Dybcio			qcom,ee = <0>;
23086845359eSKonrad Dybcio			qcom,controlled-remotely;
23096845359eSKonrad Dybcio			num-channels = <18>;
23106845359eSKonrad Dybcio			qcom,num-ees = <4>;
23116845359eSKonrad Dybcio		};
23126845359eSKonrad Dybcio
231332a5da21SJeffrey Hugo		blsp2_uart1: serial@c1b0000 {
231432a5da21SJeffrey Hugo			compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm";
231532a5da21SJeffrey Hugo			reg = <0x0c1b0000 0x1000>;
231632a5da21SJeffrey Hugo			interrupts = <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>;
231732a5da21SJeffrey Hugo			clocks = <&gcc GCC_BLSP2_UART2_APPS_CLK>,
231832a5da21SJeffrey Hugo				 <&gcc GCC_BLSP2_AHB_CLK>;
231932a5da21SJeffrey Hugo			clock-names = "core", "iface";
232032a5da21SJeffrey Hugo			status = "disabled";
232132a5da21SJeffrey Hugo		};
232232a5da21SJeffrey Hugo
23230fee55fcSKonrad Dybcio		blsp2_i2c1: i2c@c1b5000 {
23241e71d0c2SJeffrey Hugo			compatible = "qcom,i2c-qup-v2.2.1";
23251e71d0c2SJeffrey Hugo			reg = <0x0c1b5000 0x600>;
23261e71d0c2SJeffrey Hugo			interrupts = <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>;
23271e71d0c2SJeffrey Hugo
23281e71d0c2SJeffrey Hugo			clocks = <&gcc GCC_BLSP2_QUP1_I2C_APPS_CLK>,
23291e71d0c2SJeffrey Hugo				 <&gcc GCC_BLSP2_AHB_CLK>;
23301e71d0c2SJeffrey Hugo			clock-names = "core", "iface";
23316845359eSKonrad Dybcio			dmas = <&blsp2_dma 6>, <&blsp2_dma 7>;
23326845359eSKonrad Dybcio			dma-names = "tx", "rx";
23330fee55fcSKonrad Dybcio			pinctrl-names = "default", "sleep";
23340fee55fcSKonrad Dybcio			pinctrl-0 = <&blsp2_i2c1_default>;
23350fee55fcSKonrad Dybcio			pinctrl-1 = <&blsp2_i2c1_sleep>;
23361e71d0c2SJeffrey Hugo			clock-frequency = <400000>;
23371e71d0c2SJeffrey Hugo
23381e71d0c2SJeffrey Hugo			status = "disabled";
23391e71d0c2SJeffrey Hugo			#address-cells = <1>;
23401e71d0c2SJeffrey Hugo			#size-cells = <0>;
23411e71d0c2SJeffrey Hugo		};
23421e71d0c2SJeffrey Hugo
23430fee55fcSKonrad Dybcio		blsp2_i2c2: i2c@c1b6000 {
23441e71d0c2SJeffrey Hugo			compatible = "qcom,i2c-qup-v2.2.1";
23451e71d0c2SJeffrey Hugo			reg = <0x0c1b6000 0x600>;
23461e71d0c2SJeffrey Hugo			interrupts = <GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH>;
23471e71d0c2SJeffrey Hugo
23481e71d0c2SJeffrey Hugo			clocks = <&gcc GCC_BLSP2_QUP2_I2C_APPS_CLK>,
23491e71d0c2SJeffrey Hugo				 <&gcc GCC_BLSP2_AHB_CLK>;
23501e71d0c2SJeffrey Hugo			clock-names = "core", "iface";
23516845359eSKonrad Dybcio			dmas = <&blsp2_dma 8>, <&blsp2_dma 9>;
23526845359eSKonrad Dybcio			dma-names = "tx", "rx";
23530fee55fcSKonrad Dybcio			pinctrl-names = "default", "sleep";
23540fee55fcSKonrad Dybcio			pinctrl-0 = <&blsp2_i2c2_default>;
23550fee55fcSKonrad Dybcio			pinctrl-1 = <&blsp2_i2c2_sleep>;
23561e71d0c2SJeffrey Hugo			clock-frequency = <400000>;
23571e71d0c2SJeffrey Hugo
23581e71d0c2SJeffrey Hugo			status = "disabled";
23591e71d0c2SJeffrey Hugo			#address-cells = <1>;
23601e71d0c2SJeffrey Hugo			#size-cells = <0>;
23611e71d0c2SJeffrey Hugo		};
23621e71d0c2SJeffrey Hugo
23630fee55fcSKonrad Dybcio		blsp2_i2c3: i2c@c1b7000 {
23641e71d0c2SJeffrey Hugo			compatible = "qcom,i2c-qup-v2.2.1";
23651e71d0c2SJeffrey Hugo			reg = <0x0c1b7000 0x600>;
23661e71d0c2SJeffrey Hugo			interrupts = <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>;
23671e71d0c2SJeffrey Hugo
23681e71d0c2SJeffrey Hugo			clocks = <&gcc GCC_BLSP2_QUP3_I2C_APPS_CLK>,
23691e71d0c2SJeffrey Hugo				 <&gcc GCC_BLSP2_AHB_CLK>;
23701e71d0c2SJeffrey Hugo			clock-names = "core", "iface";
23716845359eSKonrad Dybcio			dmas = <&blsp2_dma 10>, <&blsp2_dma 11>;
23726845359eSKonrad Dybcio			dma-names = "tx", "rx";
23730fee55fcSKonrad Dybcio			pinctrl-names = "default", "sleep";
23740fee55fcSKonrad Dybcio			pinctrl-0 = <&blsp2_i2c3_default>;
23750fee55fcSKonrad Dybcio			pinctrl-1 = <&blsp2_i2c3_sleep>;
23761e71d0c2SJeffrey Hugo			clock-frequency = <400000>;
23771e71d0c2SJeffrey Hugo
23781e71d0c2SJeffrey Hugo			status = "disabled";
23791e71d0c2SJeffrey Hugo			#address-cells = <1>;
23801e71d0c2SJeffrey Hugo			#size-cells = <0>;
23811e71d0c2SJeffrey Hugo		};
23821e71d0c2SJeffrey Hugo
23830fee55fcSKonrad Dybcio		blsp2_i2c4: i2c@c1b8000 {
23841e71d0c2SJeffrey Hugo			compatible = "qcom,i2c-qup-v2.2.1";
23851e71d0c2SJeffrey Hugo			reg = <0x0c1b8000 0x600>;
23861e71d0c2SJeffrey Hugo			interrupts = <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>;
23871e71d0c2SJeffrey Hugo
23881e71d0c2SJeffrey Hugo			clocks = <&gcc GCC_BLSP2_QUP4_I2C_APPS_CLK>,
23891e71d0c2SJeffrey Hugo				 <&gcc GCC_BLSP2_AHB_CLK>;
23901e71d0c2SJeffrey Hugo			clock-names = "core", "iface";
23916845359eSKonrad Dybcio			dmas = <&blsp2_dma 12>, <&blsp2_dma 13>;
23926845359eSKonrad Dybcio			dma-names = "tx", "rx";
23930fee55fcSKonrad Dybcio			pinctrl-names = "default", "sleep";
23940fee55fcSKonrad Dybcio			pinctrl-0 = <&blsp2_i2c4_default>;
23950fee55fcSKonrad Dybcio			pinctrl-1 = <&blsp2_i2c4_sleep>;
23961e71d0c2SJeffrey Hugo			clock-frequency = <400000>;
23971e71d0c2SJeffrey Hugo
23981e71d0c2SJeffrey Hugo			status = "disabled";
23991e71d0c2SJeffrey Hugo			#address-cells = <1>;
24001e71d0c2SJeffrey Hugo			#size-cells = <0>;
24011e71d0c2SJeffrey Hugo		};
24021e71d0c2SJeffrey Hugo
24030fee55fcSKonrad Dybcio		blsp2_i2c5: i2c@c1b9000 {
24041e71d0c2SJeffrey Hugo			compatible = "qcom,i2c-qup-v2.2.1";
24051e71d0c2SJeffrey Hugo			reg = <0x0c1b9000 0x600>;
24061e71d0c2SJeffrey Hugo			interrupts = <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>;
24071e71d0c2SJeffrey Hugo
24081e71d0c2SJeffrey Hugo			clocks = <&gcc GCC_BLSP2_QUP5_I2C_APPS_CLK>,
24091e71d0c2SJeffrey Hugo				 <&gcc GCC_BLSP2_AHB_CLK>;
24101e71d0c2SJeffrey Hugo			clock-names = "core", "iface";
24116845359eSKonrad Dybcio			dmas = <&blsp2_dma 14>, <&blsp2_dma 15>;
24126845359eSKonrad Dybcio			dma-names = "tx", "rx";
24130fee55fcSKonrad Dybcio			pinctrl-names = "default", "sleep";
24140fee55fcSKonrad Dybcio			pinctrl-0 = <&blsp2_i2c5_default>;
24150fee55fcSKonrad Dybcio			pinctrl-1 = <&blsp2_i2c5_sleep>;
24161e71d0c2SJeffrey Hugo			clock-frequency = <400000>;
24171e71d0c2SJeffrey Hugo
24181e71d0c2SJeffrey Hugo			status = "disabled";
24191e71d0c2SJeffrey Hugo			#address-cells = <1>;
24201e71d0c2SJeffrey Hugo			#size-cells = <0>;
24211e71d0c2SJeffrey Hugo		};
24221e71d0c2SJeffrey Hugo
24230fee55fcSKonrad Dybcio		blsp2_i2c6: i2c@c1ba000 {
24241e71d0c2SJeffrey Hugo			compatible = "qcom,i2c-qup-v2.2.1";
2425c8be5541SMarc Gonzalez			reg = <0x0c1ba000 0x600>;
24261e71d0c2SJeffrey Hugo			interrupts = <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>;
24271e71d0c2SJeffrey Hugo
24281e71d0c2SJeffrey Hugo			clocks = <&gcc GCC_BLSP2_QUP6_I2C_APPS_CLK>,
24291e71d0c2SJeffrey Hugo				 <&gcc GCC_BLSP2_AHB_CLK>;
24301e71d0c2SJeffrey Hugo			clock-names = "core", "iface";
24316845359eSKonrad Dybcio			dmas = <&blsp2_dma 16>, <&blsp2_dma 17>;
24326845359eSKonrad Dybcio			dma-names = "tx", "rx";
24330fee55fcSKonrad Dybcio			pinctrl-names = "default", "sleep";
24340fee55fcSKonrad Dybcio			pinctrl-0 = <&blsp2_i2c6_default>;
24350fee55fcSKonrad Dybcio			pinctrl-1 = <&blsp2_i2c6_sleep>;
24361e71d0c2SJeffrey Hugo			clock-frequency = <400000>;
24371e71d0c2SJeffrey Hugo
24381e71d0c2SJeffrey Hugo			status = "disabled";
24391e71d0c2SJeffrey Hugo			#address-cells = <1>;
24401e71d0c2SJeffrey Hugo			#size-cells = <0>;
24411e71d0c2SJeffrey Hugo		};
24421e71d0c2SJeffrey Hugo
2443c075a2e3SAngeloGioacchino Del Regno		mmcc: clock-controller@c8c0000 {
2444c075a2e3SAngeloGioacchino Del Regno			compatible = "qcom,mmcc-msm8998";
2445c075a2e3SAngeloGioacchino Del Regno			#clock-cells = <1>;
2446c075a2e3SAngeloGioacchino Del Regno			#reset-cells = <1>;
2447c075a2e3SAngeloGioacchino Del Regno			#power-domain-cells = <1>;
2448c075a2e3SAngeloGioacchino Del Regno			reg = <0xc8c0000 0x40000>;
2449c075a2e3SAngeloGioacchino Del Regno			status = "disabled";
2450c075a2e3SAngeloGioacchino Del Regno
2451c075a2e3SAngeloGioacchino Del Regno			clock-names = "xo",
2452c075a2e3SAngeloGioacchino Del Regno				      "gpll0",
2453c075a2e3SAngeloGioacchino Del Regno				      "dsi0dsi",
2454c075a2e3SAngeloGioacchino Del Regno				      "dsi0byte",
2455c075a2e3SAngeloGioacchino Del Regno				      "dsi1dsi",
2456c075a2e3SAngeloGioacchino Del Regno				      "dsi1byte",
2457c075a2e3SAngeloGioacchino Del Regno				      "hdmipll",
2458c075a2e3SAngeloGioacchino Del Regno				      "dplink",
2459c075a2e3SAngeloGioacchino Del Regno				      "dpvco",
2460c075a2e3SAngeloGioacchino Del Regno				      "core_bi_pll_test_se";
2461c075a2e3SAngeloGioacchino Del Regno			clocks = <&rpmcc RPM_SMD_XO_CLK_SRC>,
2462c075a2e3SAngeloGioacchino Del Regno				 <&gcc GCC_MMSS_GPLL0_CLK>,
2463c075a2e3SAngeloGioacchino Del Regno				 <0>,
2464c075a2e3SAngeloGioacchino Del Regno				 <0>,
2465c075a2e3SAngeloGioacchino Del Regno				 <0>,
2466c075a2e3SAngeloGioacchino Del Regno				 <0>,
2467c075a2e3SAngeloGioacchino Del Regno				 <0>,
2468c075a2e3SAngeloGioacchino Del Regno				 <0>,
2469c075a2e3SAngeloGioacchino Del Regno				 <0>,
2470c075a2e3SAngeloGioacchino Del Regno				 <0>;
2471c075a2e3SAngeloGioacchino Del Regno		};
2472c075a2e3SAngeloGioacchino Del Regno
247305ce21b5SAngeloGioacchino Del Regno		mmss_smmu: iommu@cd00000 {
247405ce21b5SAngeloGioacchino Del Regno			compatible = "qcom,msm8998-smmu-v2", "qcom,smmu-v2";
247505ce21b5SAngeloGioacchino Del Regno			reg = <0x0cd00000 0x40000>;
247605ce21b5SAngeloGioacchino Del Regno			#iommu-cells = <1>;
247705ce21b5SAngeloGioacchino Del Regno
247805ce21b5SAngeloGioacchino Del Regno			clocks = <&mmcc MNOC_AHB_CLK>,
247905ce21b5SAngeloGioacchino Del Regno				 <&mmcc BIMC_SMMU_AHB_CLK>,
248005ce21b5SAngeloGioacchino Del Regno				 <&rpmcc RPM_SMD_MMAXI_CLK>,
248105ce21b5SAngeloGioacchino Del Regno				 <&mmcc BIMC_SMMU_AXI_CLK>;
248205ce21b5SAngeloGioacchino Del Regno			clock-names = "iface-mm", "iface-smmu",
248305ce21b5SAngeloGioacchino Del Regno				      "bus-mm", "bus-smmu";
248405ce21b5SAngeloGioacchino Del Regno			status = "disabled";
248505ce21b5SAngeloGioacchino Del Regno
248605ce21b5SAngeloGioacchino Del Regno			#global-interrupts = <0>;
248705ce21b5SAngeloGioacchino Del Regno			interrupts =
248805ce21b5SAngeloGioacchino Del Regno				<GIC_SPI 263 IRQ_TYPE_LEVEL_HIGH>,
248905ce21b5SAngeloGioacchino Del Regno				<GIC_SPI 266 IRQ_TYPE_LEVEL_HIGH>,
249005ce21b5SAngeloGioacchino Del Regno				<GIC_SPI 267 IRQ_TYPE_LEVEL_HIGH>,
249105ce21b5SAngeloGioacchino Del Regno				<GIC_SPI 268 IRQ_TYPE_LEVEL_HIGH>,
249205ce21b5SAngeloGioacchino Del Regno				<GIC_SPI 244 IRQ_TYPE_LEVEL_HIGH>,
249305ce21b5SAngeloGioacchino Del Regno				<GIC_SPI 245 IRQ_TYPE_LEVEL_HIGH>,
249405ce21b5SAngeloGioacchino Del Regno				<GIC_SPI 247 IRQ_TYPE_LEVEL_HIGH>,
249505ce21b5SAngeloGioacchino Del Regno				<GIC_SPI 248 IRQ_TYPE_LEVEL_HIGH>,
249605ce21b5SAngeloGioacchino Del Regno				<GIC_SPI 249 IRQ_TYPE_LEVEL_HIGH>,
249705ce21b5SAngeloGioacchino Del Regno				<GIC_SPI 250 IRQ_TYPE_LEVEL_HIGH>,
249805ce21b5SAngeloGioacchino Del Regno				<GIC_SPI 251 IRQ_TYPE_LEVEL_HIGH>,
249905ce21b5SAngeloGioacchino Del Regno				<GIC_SPI 252 IRQ_TYPE_LEVEL_HIGH>,
250005ce21b5SAngeloGioacchino Del Regno				<GIC_SPI 253 IRQ_TYPE_LEVEL_HIGH>,
250105ce21b5SAngeloGioacchino Del Regno				<GIC_SPI 254 IRQ_TYPE_LEVEL_HIGH>,
250205ce21b5SAngeloGioacchino Del Regno				<GIC_SPI 255 IRQ_TYPE_LEVEL_HIGH>,
250305ce21b5SAngeloGioacchino Del Regno				<GIC_SPI 256 IRQ_TYPE_LEVEL_HIGH>,
250405ce21b5SAngeloGioacchino Del Regno				<GIC_SPI 260 IRQ_TYPE_LEVEL_HIGH>,
250505ce21b5SAngeloGioacchino Del Regno				<GIC_SPI 261 IRQ_TYPE_LEVEL_HIGH>,
250605ce21b5SAngeloGioacchino Del Regno				<GIC_SPI 262 IRQ_TYPE_LEVEL_HIGH>,
250705ce21b5SAngeloGioacchino Del Regno				<GIC_SPI 272 IRQ_TYPE_LEVEL_HIGH>;
250805ce21b5SAngeloGioacchino Del Regno		};
250905ce21b5SAngeloGioacchino Del Regno
2510a9ee66deSSibi Sankar		remoteproc_adsp: remoteproc@17300000 {
2511a9ee66deSSibi Sankar			compatible = "qcom,msm8998-adsp-pas";
2512a9ee66deSSibi Sankar			reg = <0x17300000 0x4040>;
2513a9ee66deSSibi Sankar
2514a9ee66deSSibi Sankar			interrupts-extended = <&intc GIC_SPI 162 IRQ_TYPE_EDGE_RISING>,
2515a9ee66deSSibi Sankar					      <&adsp_smp2p_in 0 IRQ_TYPE_EDGE_RISING>,
2516a9ee66deSSibi Sankar					      <&adsp_smp2p_in 1 IRQ_TYPE_EDGE_RISING>,
2517a9ee66deSSibi Sankar					      <&adsp_smp2p_in 2 IRQ_TYPE_EDGE_RISING>,
2518a9ee66deSSibi Sankar					      <&adsp_smp2p_in 3 IRQ_TYPE_EDGE_RISING>;
2519a9ee66deSSibi Sankar			interrupt-names = "wdog", "fatal", "ready",
2520a9ee66deSSibi Sankar					  "handover", "stop-ack";
2521a9ee66deSSibi Sankar
2522a9ee66deSSibi Sankar			clocks = <&rpmcc RPM_SMD_XO_CLK_SRC>;
2523a9ee66deSSibi Sankar			clock-names = "xo";
2524a9ee66deSSibi Sankar
2525a9ee66deSSibi Sankar			memory-region = <&adsp_mem>;
2526a9ee66deSSibi Sankar
2527a9ee66deSSibi Sankar			qcom,smem-states = <&adsp_smp2p_out 0>;
2528a9ee66deSSibi Sankar			qcom,smem-state-names = "stop";
2529a9ee66deSSibi Sankar
2530a9ee66deSSibi Sankar			power-domains = <&rpmpd MSM8998_VDDCX>;
2531a9ee66deSSibi Sankar			power-domain-names = "cx";
2532a9ee66deSSibi Sankar
2533a9ee66deSSibi Sankar			status = "disabled";
2534a9ee66deSSibi Sankar
2535a9ee66deSSibi Sankar			glink-edge {
2536a9ee66deSSibi Sankar				interrupts = <GIC_SPI 157 IRQ_TYPE_EDGE_RISING>;
2537a9ee66deSSibi Sankar				label = "lpass";
2538a9ee66deSSibi Sankar				qcom,remote-pid = <2>;
2539a9ee66deSSibi Sankar				mboxes = <&apcs_glb 9>;
2540a9ee66deSSibi Sankar			};
2541a9ee66deSSibi Sankar		};
2542a9ee66deSSibi Sankar
254332a5da21SJeffrey Hugo		apcs_glb: mailbox@17911000 {
254432a5da21SJeffrey Hugo			compatible = "qcom,msm8998-apcs-hmss-global";
254532a5da21SJeffrey Hugo			reg = <0x17911000 0x1000>;
254632a5da21SJeffrey Hugo
254732a5da21SJeffrey Hugo			#mbox-cells = <1>;
25484807c71cSJoonwoo Park		};
25494807c71cSJoonwoo Park
25504807c71cSJoonwoo Park		timer@17920000 {
25514807c71cSJoonwoo Park			#address-cells = <1>;
25524807c71cSJoonwoo Park			#size-cells = <1>;
25534807c71cSJoonwoo Park			ranges;
25544807c71cSJoonwoo Park			compatible = "arm,armv7-timer-mem";
25554807c71cSJoonwoo Park			reg = <0x17920000 0x1000>;
25564807c71cSJoonwoo Park
25574807c71cSJoonwoo Park			frame@17921000 {
25584807c71cSJoonwoo Park				frame-number = <0>;
25594807c71cSJoonwoo Park				interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>,
25604807c71cSJoonwoo Park					     <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>;
25614807c71cSJoonwoo Park				reg = <0x17921000 0x1000>,
25624807c71cSJoonwoo Park				      <0x17922000 0x1000>;
25634807c71cSJoonwoo Park			};
25644807c71cSJoonwoo Park
25654807c71cSJoonwoo Park			frame@17923000 {
25664807c71cSJoonwoo Park				frame-number = <1>;
25674807c71cSJoonwoo Park				interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>;
25684807c71cSJoonwoo Park				reg = <0x17923000 0x1000>;
25694807c71cSJoonwoo Park				status = "disabled";
25704807c71cSJoonwoo Park			};
25714807c71cSJoonwoo Park
25724807c71cSJoonwoo Park			frame@17924000 {
25734807c71cSJoonwoo Park				frame-number = <2>;
25744807c71cSJoonwoo Park				interrupts = <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>;
25754807c71cSJoonwoo Park				reg = <0x17924000 0x1000>;
25764807c71cSJoonwoo Park				status = "disabled";
25774807c71cSJoonwoo Park			};
25784807c71cSJoonwoo Park
25794807c71cSJoonwoo Park			frame@17925000 {
25804807c71cSJoonwoo Park				frame-number = <3>;
25814807c71cSJoonwoo Park				interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>;
25824807c71cSJoonwoo Park				reg = <0x17925000 0x1000>;
25834807c71cSJoonwoo Park				status = "disabled";
25844807c71cSJoonwoo Park			};
25854807c71cSJoonwoo Park
25864807c71cSJoonwoo Park			frame@17926000 {
25874807c71cSJoonwoo Park				frame-number = <4>;
25884807c71cSJoonwoo Park				interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>;
25894807c71cSJoonwoo Park				reg = <0x17926000 0x1000>;
25904807c71cSJoonwoo Park				status = "disabled";
25914807c71cSJoonwoo Park			};
25924807c71cSJoonwoo Park
25934807c71cSJoonwoo Park			frame@17927000 {
25944807c71cSJoonwoo Park				frame-number = <5>;
25954807c71cSJoonwoo Park				interrupts = <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>;
25964807c71cSJoonwoo Park				reg = <0x17927000 0x1000>;
25974807c71cSJoonwoo Park				status = "disabled";
25984807c71cSJoonwoo Park			};
25994807c71cSJoonwoo Park
26004807c71cSJoonwoo Park			frame@17928000 {
26014807c71cSJoonwoo Park				frame-number = <6>;
26024807c71cSJoonwoo Park				interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>;
26034807c71cSJoonwoo Park				reg = <0x17928000 0x1000>;
26044807c71cSJoonwoo Park				status = "disabled";
26054807c71cSJoonwoo Park			};
26064807c71cSJoonwoo Park		};
26074807c71cSJoonwoo Park
26084807c71cSJoonwoo Park		intc: interrupt-controller@17a00000 {
26094807c71cSJoonwoo Park			compatible = "arm,gic-v3";
26104807c71cSJoonwoo Park			reg = <0x17a00000 0x10000>,       /* GICD */
26114807c71cSJoonwoo Park			      <0x17b00000 0x100000>;      /* GICR * 8 */
26124807c71cSJoonwoo Park			#interrupt-cells = <3>;
26134807c71cSJoonwoo Park			#address-cells = <1>;
26144807c71cSJoonwoo Park			#size-cells = <1>;
26154807c71cSJoonwoo Park			ranges;
26164807c71cSJoonwoo Park			interrupt-controller;
26174807c71cSJoonwoo Park			#redistributor-regions = <1>;
26184807c71cSJoonwoo Park			redistributor-stride = <0x0 0x20000>;
26194807c71cSJoonwoo Park			interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>;
26204807c71cSJoonwoo Park		};
262119b7caaaSJeffrey Hugo
262219b7caaaSJeffrey Hugo		wifi: wifi@18800000 {
262319b7caaaSJeffrey Hugo			compatible = "qcom,wcn3990-wifi";
262419b7caaaSJeffrey Hugo			status = "disabled";
262519b7caaaSJeffrey Hugo			reg = <0x18800000 0x800000>;
262619b7caaaSJeffrey Hugo			reg-names = "membase";
262719b7caaaSJeffrey Hugo			memory-region = <&wlan_msa_mem>;
262819b7caaaSJeffrey Hugo			clocks = <&rpmcc RPM_SMD_RF_CLK2_PIN>;
262919b7caaaSJeffrey Hugo			clock-names = "cxo_ref_clk_pin";
263019b7caaaSJeffrey Hugo			interrupts =
263119b7caaaSJeffrey Hugo				<GIC_SPI 413 IRQ_TYPE_LEVEL_HIGH>,
263219b7caaaSJeffrey Hugo				<GIC_SPI 414 IRQ_TYPE_LEVEL_HIGH>,
263319b7caaaSJeffrey Hugo				<GIC_SPI 415 IRQ_TYPE_LEVEL_HIGH>,
263419b7caaaSJeffrey Hugo				<GIC_SPI 416 IRQ_TYPE_LEVEL_HIGH>,
263519b7caaaSJeffrey Hugo				<GIC_SPI 417 IRQ_TYPE_LEVEL_HIGH>,
263619b7caaaSJeffrey Hugo				<GIC_SPI 418 IRQ_TYPE_LEVEL_HIGH>,
263719b7caaaSJeffrey Hugo				<GIC_SPI 420 IRQ_TYPE_LEVEL_HIGH>,
263819b7caaaSJeffrey Hugo				<GIC_SPI 421 IRQ_TYPE_LEVEL_HIGH>,
263919b7caaaSJeffrey Hugo				<GIC_SPI 422 IRQ_TYPE_LEVEL_HIGH>,
264019b7caaaSJeffrey Hugo				<GIC_SPI 423 IRQ_TYPE_LEVEL_HIGH>,
264119b7caaaSJeffrey Hugo				<GIC_SPI 424 IRQ_TYPE_LEVEL_HIGH>,
264219b7caaaSJeffrey Hugo				<GIC_SPI 425 IRQ_TYPE_LEVEL_HIGH>;
264319b7caaaSJeffrey Hugo			iommus = <&anoc2_smmu 0x1900>,
264419b7caaaSJeffrey Hugo				 <&anoc2_smmu 0x1901>;
264519b7caaaSJeffrey Hugo			qcom,snoc-host-cap-8bit-quirk;
264619b7caaaSJeffrey Hugo		};
26474807c71cSJoonwoo Park	};
26484807c71cSJoonwoo Park};
2649