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 {
141fad35efaSRob Herring				compatible = "cache";
1424807c71cSJoonwoo Park				cache-level = <2>;
1434807c71cSJoonwoo Park			};
1444807c71cSJoonwoo Park		};
1454807c71cSJoonwoo Park
1464807c71cSJoonwoo Park		CPU1: cpu@1 {
1474807c71cSJoonwoo Park			device_type = "cpu";
148663b7d41SAmit Kucheria			compatible = "qcom,kryo280";
1494807c71cSJoonwoo Park			reg = <0x0 0x1>;
1504807c71cSJoonwoo Park			enable-method = "psci";
151c43cfc54SKonrad Dybcio			capacity-dmips-mhz = <1024>;
152c3083c80SAmit Kucheria			cpu-idle-states = <&LITTLE_CPU_SLEEP_0 &LITTLE_CPU_SLEEP_1>;
1534807c71cSJoonwoo Park			next-level-cache = <&L2_0>;
1544807c71cSJoonwoo Park		};
1554807c71cSJoonwoo Park
1564807c71cSJoonwoo Park		CPU2: cpu@2 {
1574807c71cSJoonwoo Park			device_type = "cpu";
158663b7d41SAmit Kucheria			compatible = "qcom,kryo280";
1594807c71cSJoonwoo Park			reg = <0x0 0x2>;
1604807c71cSJoonwoo Park			enable-method = "psci";
161c43cfc54SKonrad Dybcio			capacity-dmips-mhz = <1024>;
162c3083c80SAmit Kucheria			cpu-idle-states = <&LITTLE_CPU_SLEEP_0 &LITTLE_CPU_SLEEP_1>;
1634807c71cSJoonwoo Park			next-level-cache = <&L2_0>;
1644807c71cSJoonwoo Park		};
1654807c71cSJoonwoo Park
1664807c71cSJoonwoo Park		CPU3: cpu@3 {
1674807c71cSJoonwoo Park			device_type = "cpu";
168663b7d41SAmit Kucheria			compatible = "qcom,kryo280";
1694807c71cSJoonwoo Park			reg = <0x0 0x3>;
1704807c71cSJoonwoo Park			enable-method = "psci";
171c43cfc54SKonrad Dybcio			capacity-dmips-mhz = <1024>;
172c3083c80SAmit Kucheria			cpu-idle-states = <&LITTLE_CPU_SLEEP_0 &LITTLE_CPU_SLEEP_1>;
1734807c71cSJoonwoo Park			next-level-cache = <&L2_0>;
1744807c71cSJoonwoo Park		};
1754807c71cSJoonwoo Park
1764807c71cSJoonwoo Park		CPU4: cpu@100 {
1774807c71cSJoonwoo Park			device_type = "cpu";
178663b7d41SAmit Kucheria			compatible = "qcom,kryo280";
1794807c71cSJoonwoo Park			reg = <0x0 0x100>;
1804807c71cSJoonwoo Park			enable-method = "psci";
181c43cfc54SKonrad Dybcio			capacity-dmips-mhz = <1536>;
182c3083c80SAmit Kucheria			cpu-idle-states = <&BIG_CPU_SLEEP_0 &BIG_CPU_SLEEP_1>;
1834807c71cSJoonwoo Park			next-level-cache = <&L2_1>;
1844807c71cSJoonwoo Park			L2_1: l2-cache {
185fad35efaSRob Herring				compatible = "cache";
1864807c71cSJoonwoo Park				cache-level = <2>;
1874807c71cSJoonwoo Park			};
1884807c71cSJoonwoo Park		};
1894807c71cSJoonwoo Park
1904807c71cSJoonwoo Park		CPU5: cpu@101 {
1914807c71cSJoonwoo Park			device_type = "cpu";
192663b7d41SAmit Kucheria			compatible = "qcom,kryo280";
1934807c71cSJoonwoo Park			reg = <0x0 0x101>;
1944807c71cSJoonwoo Park			enable-method = "psci";
195c43cfc54SKonrad Dybcio			capacity-dmips-mhz = <1536>;
196c3083c80SAmit Kucheria			cpu-idle-states = <&BIG_CPU_SLEEP_0 &BIG_CPU_SLEEP_1>;
1974807c71cSJoonwoo Park			next-level-cache = <&L2_1>;
1984807c71cSJoonwoo Park		};
1994807c71cSJoonwoo Park
2004807c71cSJoonwoo Park		CPU6: cpu@102 {
2014807c71cSJoonwoo Park			device_type = "cpu";
202663b7d41SAmit Kucheria			compatible = "qcom,kryo280";
2034807c71cSJoonwoo Park			reg = <0x0 0x102>;
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		};
2094807c71cSJoonwoo Park
2104807c71cSJoonwoo Park		CPU7: cpu@103 {
2114807c71cSJoonwoo Park			device_type = "cpu";
212663b7d41SAmit Kucheria			compatible = "qcom,kryo280";
2134807c71cSJoonwoo Park			reg = <0x0 0x103>;
2144807c71cSJoonwoo Park			enable-method = "psci";
215c43cfc54SKonrad Dybcio			capacity-dmips-mhz = <1536>;
216c3083c80SAmit Kucheria			cpu-idle-states = <&BIG_CPU_SLEEP_0 &BIG_CPU_SLEEP_1>;
2174807c71cSJoonwoo Park			next-level-cache = <&L2_1>;
2184807c71cSJoonwoo Park		};
2194807c71cSJoonwoo Park
2204807c71cSJoonwoo Park		cpu-map {
2214807c71cSJoonwoo Park			cluster0 {
2224807c71cSJoonwoo Park				core0 {
2234807c71cSJoonwoo Park					cpu = <&CPU0>;
2244807c71cSJoonwoo Park				};
2254807c71cSJoonwoo Park
2264807c71cSJoonwoo Park				core1 {
2274807c71cSJoonwoo Park					cpu = <&CPU1>;
2284807c71cSJoonwoo Park				};
2294807c71cSJoonwoo Park
2304807c71cSJoonwoo Park				core2 {
2314807c71cSJoonwoo Park					cpu = <&CPU2>;
2324807c71cSJoonwoo Park				};
2334807c71cSJoonwoo Park
2344807c71cSJoonwoo Park				core3 {
2354807c71cSJoonwoo Park					cpu = <&CPU3>;
2364807c71cSJoonwoo Park				};
2374807c71cSJoonwoo Park			};
2384807c71cSJoonwoo Park
2394807c71cSJoonwoo Park			cluster1 {
2404807c71cSJoonwoo Park				core0 {
2414807c71cSJoonwoo Park					cpu = <&CPU4>;
2424807c71cSJoonwoo Park				};
2434807c71cSJoonwoo Park
2444807c71cSJoonwoo Park				core1 {
2454807c71cSJoonwoo Park					cpu = <&CPU5>;
2464807c71cSJoonwoo Park				};
2474807c71cSJoonwoo Park
2484807c71cSJoonwoo Park				core2 {
2494807c71cSJoonwoo Park					cpu = <&CPU6>;
2504807c71cSJoonwoo Park				};
2514807c71cSJoonwoo Park
2524807c71cSJoonwoo Park				core3 {
2534807c71cSJoonwoo Park					cpu = <&CPU7>;
2544807c71cSJoonwoo Park				};
2554807c71cSJoonwoo Park			};
2564807c71cSJoonwoo Park		};
257c3083c80SAmit Kucheria
258c3083c80SAmit Kucheria		idle-states {
259c3083c80SAmit Kucheria			entry-method = "psci";
260c3083c80SAmit Kucheria
261c3083c80SAmit Kucheria			LITTLE_CPU_SLEEP_0: cpu-sleep-0-0 {
262c3083c80SAmit Kucheria				compatible = "arm,idle-state";
263c3083c80SAmit Kucheria				idle-state-name = "little-retention";
2643f1dcaffSAngeloGioacchino Del Regno				/* CPU Retention (C2D), L2 Active */
265c3083c80SAmit Kucheria				arm,psci-suspend-param = <0x00000002>;
266c3083c80SAmit Kucheria				entry-latency-us = <81>;
267c3083c80SAmit Kucheria				exit-latency-us = <86>;
2683f1dcaffSAngeloGioacchino Del Regno				min-residency-us = <504>;
269c3083c80SAmit Kucheria			};
270c3083c80SAmit Kucheria
271c3083c80SAmit Kucheria			LITTLE_CPU_SLEEP_1: cpu-sleep-0-1 {
272c3083c80SAmit Kucheria				compatible = "arm,idle-state";
273c3083c80SAmit Kucheria				idle-state-name = "little-power-collapse";
2743f1dcaffSAngeloGioacchino Del Regno				/* CPU + L2 Power Collapse (C3, D4) */
275c3083c80SAmit Kucheria				arm,psci-suspend-param = <0x40000003>;
2763f1dcaffSAngeloGioacchino Del Regno				entry-latency-us = <814>;
2773f1dcaffSAngeloGioacchino Del Regno				exit-latency-us = <4562>;
2783f1dcaffSAngeloGioacchino Del Regno				min-residency-us = <9183>;
279c3083c80SAmit Kucheria				local-timer-stop;
280c3083c80SAmit Kucheria			};
281c3083c80SAmit Kucheria
282c3083c80SAmit Kucheria			BIG_CPU_SLEEP_0: cpu-sleep-1-0 {
283c3083c80SAmit Kucheria				compatible = "arm,idle-state";
284c3083c80SAmit Kucheria				idle-state-name = "big-retention";
2853f1dcaffSAngeloGioacchino Del Regno				/* CPU Retention (C2D), L2 Active */
286c3083c80SAmit Kucheria				arm,psci-suspend-param = <0x00000002>;
287c3083c80SAmit Kucheria				entry-latency-us = <79>;
288c3083c80SAmit Kucheria				exit-latency-us = <82>;
2893f1dcaffSAngeloGioacchino Del Regno				min-residency-us = <1302>;
290c3083c80SAmit Kucheria			};
291c3083c80SAmit Kucheria
292c3083c80SAmit Kucheria			BIG_CPU_SLEEP_1: cpu-sleep-1-1 {
293c3083c80SAmit Kucheria				compatible = "arm,idle-state";
294c3083c80SAmit Kucheria				idle-state-name = "big-power-collapse";
2953f1dcaffSAngeloGioacchino Del Regno				/* CPU + L2 Power Collapse (C3, D4) */
296c3083c80SAmit Kucheria				arm,psci-suspend-param = <0x40000003>;
2973f1dcaffSAngeloGioacchino Del Regno				entry-latency-us = <724>;
2983f1dcaffSAngeloGioacchino Del Regno				exit-latency-us = <2027>;
2993f1dcaffSAngeloGioacchino Del Regno				min-residency-us = <9419>;
300c3083c80SAmit Kucheria				local-timer-stop;
301c3083c80SAmit Kucheria			};
302c3083c80SAmit Kucheria		};
3034807c71cSJoonwoo Park	};
3044807c71cSJoonwoo Park
305d850156aSBjorn Andersson	firmware {
306d850156aSBjorn Andersson		scm {
30770827d9fSBjorn Andersson			compatible = "qcom,scm-msm8998", "qcom,scm";
308d850156aSBjorn Andersson		};
309d850156aSBjorn Andersson	};
310d850156aSBjorn Andersson
3114807c71cSJoonwoo Park	psci {
3124807c71cSJoonwoo Park		compatible = "arm,psci-1.0";
3134807c71cSJoonwoo Park		method = "smc";
3144807c71cSJoonwoo Park	};
3154807c71cSJoonwoo Park
31631c1f0e3SBjorn Andersson	rpm-glink {
31731c1f0e3SBjorn Andersson		compatible = "qcom,glink-rpm";
31831c1f0e3SBjorn Andersson
31931c1f0e3SBjorn Andersson		interrupts = <GIC_SPI 168 IRQ_TYPE_EDGE_RISING>;
32031c1f0e3SBjorn Andersson		qcom,rpm-msg-ram = <&rpm_msg_ram>;
32131c1f0e3SBjorn Andersson		mboxes = <&apcs_glb 0>;
32231c1f0e3SBjorn Andersson
32331c1f0e3SBjorn Andersson		rpm_requests: rpm-requests {
32431c1f0e3SBjorn Andersson			compatible = "qcom,rpm-msm8998";
32531c1f0e3SBjorn Andersson			qcom,glink-channels = "rpm_requests";
3261fb28636SMarc Gonzalez
3271fb28636SMarc Gonzalez			rpmcc: clock-controller {
3281fb28636SMarc Gonzalez				compatible = "qcom,rpmcc-msm8998", "qcom,rpmcc";
3291fb28636SMarc Gonzalez				#clock-cells = <1>;
3301fb28636SMarc Gonzalez			};
331460f13caSSibi Sankar
332460f13caSSibi Sankar			rpmpd: power-controller {
333460f13caSSibi Sankar				compatible = "qcom,msm8998-rpmpd";
334460f13caSSibi Sankar				#power-domain-cells = <1>;
335460f13caSSibi Sankar				operating-points-v2 = <&rpmpd_opp_table>;
336460f13caSSibi Sankar
337460f13caSSibi Sankar				rpmpd_opp_table: opp-table {
338460f13caSSibi Sankar					compatible = "operating-points-v2";
339460f13caSSibi Sankar
340460f13caSSibi Sankar					rpmpd_opp_ret: opp1 {
34177901148SAngeloGioacchino Del Regno						opp-level = <RPM_SMD_LEVEL_RETENTION>;
342460f13caSSibi Sankar					};
343460f13caSSibi Sankar
344460f13caSSibi Sankar					rpmpd_opp_ret_plus: opp2 {
34577901148SAngeloGioacchino Del Regno						opp-level = <RPM_SMD_LEVEL_RETENTION_PLUS>;
346460f13caSSibi Sankar					};
347460f13caSSibi Sankar
348460f13caSSibi Sankar					rpmpd_opp_min_svs: opp3 {
34977901148SAngeloGioacchino Del Regno						opp-level = <RPM_SMD_LEVEL_MIN_SVS>;
350460f13caSSibi Sankar					};
351460f13caSSibi Sankar
352460f13caSSibi Sankar					rpmpd_opp_low_svs: opp4 {
35377901148SAngeloGioacchino Del Regno						opp-level = <RPM_SMD_LEVEL_LOW_SVS>;
354460f13caSSibi Sankar					};
355460f13caSSibi Sankar
356460f13caSSibi Sankar					rpmpd_opp_svs: opp5 {
35777901148SAngeloGioacchino Del Regno						opp-level = <RPM_SMD_LEVEL_SVS>;
358460f13caSSibi Sankar					};
359460f13caSSibi Sankar
360460f13caSSibi Sankar					rpmpd_opp_svs_plus: opp6 {
36177901148SAngeloGioacchino Del Regno						opp-level = <RPM_SMD_LEVEL_SVS_PLUS>;
362460f13caSSibi Sankar					};
363460f13caSSibi Sankar
364460f13caSSibi Sankar					rpmpd_opp_nom: opp7 {
36577901148SAngeloGioacchino Del Regno						opp-level = <RPM_SMD_LEVEL_NOM>;
366460f13caSSibi Sankar					};
367460f13caSSibi Sankar
368460f13caSSibi Sankar					rpmpd_opp_nom_plus: opp8 {
36977901148SAngeloGioacchino Del Regno						opp-level = <RPM_SMD_LEVEL_NOM_PLUS>;
370460f13caSSibi Sankar					};
371460f13caSSibi Sankar
372460f13caSSibi Sankar					rpmpd_opp_turbo: opp9 {
37377901148SAngeloGioacchino Del Regno						opp-level = <RPM_SMD_LEVEL_TURBO>;
374460f13caSSibi Sankar					};
375460f13caSSibi Sankar
376460f13caSSibi Sankar					rpmpd_opp_turbo_plus: opp10 {
37777901148SAngeloGioacchino Del Regno						opp-level = <RPM_SMD_LEVEL_BINNING>;
378460f13caSSibi Sankar					};
379460f13caSSibi Sankar				};
380460f13caSSibi Sankar			};
38131c1f0e3SBjorn Andersson		};
38231c1f0e3SBjorn Andersson	};
38331c1f0e3SBjorn Andersson
384c7833949SBjorn Andersson	smem {
385c7833949SBjorn Andersson		compatible = "qcom,smem";
386c7833949SBjorn Andersson		memory-region = <&smem_mem>;
387c7833949SBjorn Andersson		hwlocks = <&tcsr_mutex 3>;
388c7833949SBjorn Andersson	};
389c7833949SBjorn Andersson
390e8d006fdSBjorn Andersson	smp2p-lpass {
391e8d006fdSBjorn Andersson		compatible = "qcom,smp2p";
392e8d006fdSBjorn Andersson		qcom,smem = <443>, <429>;
393e8d006fdSBjorn Andersson
394e8d006fdSBjorn Andersson		interrupts = <GIC_SPI 158 IRQ_TYPE_EDGE_RISING>;
395e8d006fdSBjorn Andersson
396e8d006fdSBjorn Andersson		mboxes = <&apcs_glb 10>;
397e8d006fdSBjorn Andersson
398e8d006fdSBjorn Andersson		qcom,local-pid = <0>;
399e8d006fdSBjorn Andersson		qcom,remote-pid = <2>;
400e8d006fdSBjorn Andersson
401e8d006fdSBjorn Andersson		adsp_smp2p_out: master-kernel {
402e8d006fdSBjorn Andersson			qcom,entry-name = "master-kernel";
403e8d006fdSBjorn Andersson			#qcom,smem-state-cells = <1>;
404e8d006fdSBjorn Andersson		};
405e8d006fdSBjorn Andersson
406e8d006fdSBjorn Andersson		adsp_smp2p_in: slave-kernel {
407e8d006fdSBjorn Andersson			qcom,entry-name = "slave-kernel";
408e8d006fdSBjorn Andersson
409e8d006fdSBjorn Andersson			interrupt-controller;
410e8d006fdSBjorn Andersson			#interrupt-cells = <2>;
411e8d006fdSBjorn Andersson		};
412e8d006fdSBjorn Andersson	};
413e8d006fdSBjorn Andersson
414e8d006fdSBjorn Andersson	smp2p-mpss {
415e8d006fdSBjorn Andersson		compatible = "qcom,smp2p";
416e8d006fdSBjorn Andersson		qcom,smem = <435>, <428>;
417e8d006fdSBjorn Andersson		interrupts = <GIC_SPI 451 IRQ_TYPE_EDGE_RISING>;
418e8d006fdSBjorn Andersson		mboxes = <&apcs_glb 14>;
419e8d006fdSBjorn Andersson		qcom,local-pid = <0>;
420e8d006fdSBjorn Andersson		qcom,remote-pid = <1>;
421e8d006fdSBjorn Andersson
422e8d006fdSBjorn Andersson		modem_smp2p_out: master-kernel {
423e8d006fdSBjorn Andersson			qcom,entry-name = "master-kernel";
424e8d006fdSBjorn Andersson			#qcom,smem-state-cells = <1>;
425e8d006fdSBjorn Andersson		};
426e8d006fdSBjorn Andersson
427e8d006fdSBjorn Andersson		modem_smp2p_in: slave-kernel {
428e8d006fdSBjorn Andersson			qcom,entry-name = "slave-kernel";
429e8d006fdSBjorn Andersson			interrupt-controller;
430e8d006fdSBjorn Andersson			#interrupt-cells = <2>;
431e8d006fdSBjorn Andersson		};
432e8d006fdSBjorn Andersson	};
433e8d006fdSBjorn Andersson
434e8d006fdSBjorn Andersson	smp2p-slpi {
435e8d006fdSBjorn Andersson		compatible = "qcom,smp2p";
436e8d006fdSBjorn Andersson		qcom,smem = <481>, <430>;
437e8d006fdSBjorn Andersson		interrupts = <GIC_SPI 178 IRQ_TYPE_EDGE_RISING>;
438e8d006fdSBjorn Andersson		mboxes = <&apcs_glb 26>;
439e8d006fdSBjorn Andersson		qcom,local-pid = <0>;
440e8d006fdSBjorn Andersson		qcom,remote-pid = <3>;
441e8d006fdSBjorn Andersson
442e8d006fdSBjorn Andersson		slpi_smp2p_out: master-kernel {
443e8d006fdSBjorn Andersson			qcom,entry-name = "master-kernel";
444e8d006fdSBjorn Andersson			#qcom,smem-state-cells = <1>;
445e8d006fdSBjorn Andersson		};
446e8d006fdSBjorn Andersson
447e8d006fdSBjorn Andersson		slpi_smp2p_in: slave-kernel {
448e8d006fdSBjorn Andersson			qcom,entry-name = "slave-kernel";
449e8d006fdSBjorn Andersson			interrupt-controller;
450e8d006fdSBjorn Andersson			#interrupt-cells = <2>;
451e8d006fdSBjorn Andersson		};
452e8d006fdSBjorn Andersson	};
453e8d006fdSBjorn Andersson
4544449b6f2SBjorn Andersson	thermal-zones {
455ae8876ddSAmit Kucheria		cpu0-thermal {
4564449b6f2SBjorn Andersson			polling-delay-passive = <250>;
4574449b6f2SBjorn Andersson			polling-delay = <1000>;
4584449b6f2SBjorn Andersson
459b67d9c5dSAmit Kucheria			thermal-sensors = <&tsens0 1>;
4604449b6f2SBjorn Andersson
4614449b6f2SBjorn Andersson			trips {
462285aa631SAmit Kucheria				cpu0_alert0: trip-point0 {
4634449b6f2SBjorn Andersson					temperature = <75000>;
4644449b6f2SBjorn Andersson					hysteresis = <2000>;
4654449b6f2SBjorn Andersson					type = "passive";
4664449b6f2SBjorn Andersson				};
4674449b6f2SBjorn Andersson
468ae8876ddSAmit Kucheria				cpu0_crit: cpu_crit {
4694449b6f2SBjorn Andersson					temperature = <110000>;
4704449b6f2SBjorn Andersson					hysteresis = <2000>;
4714449b6f2SBjorn Andersson					type = "critical";
4724449b6f2SBjorn Andersson				};
4734449b6f2SBjorn Andersson			};
4744449b6f2SBjorn Andersson		};
4754449b6f2SBjorn Andersson
476ae8876ddSAmit Kucheria		cpu1-thermal {
4774449b6f2SBjorn Andersson			polling-delay-passive = <250>;
4784449b6f2SBjorn Andersson			polling-delay = <1000>;
4794449b6f2SBjorn Andersson
480b67d9c5dSAmit Kucheria			thermal-sensors = <&tsens0 2>;
4814449b6f2SBjorn Andersson
4824449b6f2SBjorn Andersson			trips {
483285aa631SAmit Kucheria				cpu1_alert0: trip-point0 {
4844449b6f2SBjorn Andersson					temperature = <75000>;
4854449b6f2SBjorn Andersson					hysteresis = <2000>;
4864449b6f2SBjorn Andersson					type = "passive";
4874449b6f2SBjorn Andersson				};
4884449b6f2SBjorn Andersson
489ae8876ddSAmit Kucheria				cpu1_crit: cpu_crit {
4904449b6f2SBjorn Andersson					temperature = <110000>;
4914449b6f2SBjorn Andersson					hysteresis = <2000>;
4924449b6f2SBjorn Andersson					type = "critical";
4934449b6f2SBjorn Andersson				};
4944449b6f2SBjorn Andersson			};
4954449b6f2SBjorn Andersson		};
4964449b6f2SBjorn Andersson
497ae8876ddSAmit Kucheria		cpu2-thermal {
4984449b6f2SBjorn Andersson			polling-delay-passive = <250>;
4994449b6f2SBjorn Andersson			polling-delay = <1000>;
5004449b6f2SBjorn Andersson
501b67d9c5dSAmit Kucheria			thermal-sensors = <&tsens0 3>;
5024449b6f2SBjorn Andersson
5034449b6f2SBjorn Andersson			trips {
504285aa631SAmit Kucheria				cpu2_alert0: trip-point0 {
5054449b6f2SBjorn Andersson					temperature = <75000>;
5064449b6f2SBjorn Andersson					hysteresis = <2000>;
5074449b6f2SBjorn Andersson					type = "passive";
5084449b6f2SBjorn Andersson				};
5094449b6f2SBjorn Andersson
510ae8876ddSAmit Kucheria				cpu2_crit: cpu_crit {
5114449b6f2SBjorn Andersson					temperature = <110000>;
5124449b6f2SBjorn Andersson					hysteresis = <2000>;
5134449b6f2SBjorn Andersson					type = "critical";
5144449b6f2SBjorn Andersson				};
5154449b6f2SBjorn Andersson			};
5164449b6f2SBjorn Andersson		};
5174449b6f2SBjorn Andersson
518ae8876ddSAmit Kucheria		cpu3-thermal {
5194449b6f2SBjorn Andersson			polling-delay-passive = <250>;
5204449b6f2SBjorn Andersson			polling-delay = <1000>;
5214449b6f2SBjorn Andersson
522b67d9c5dSAmit Kucheria			thermal-sensors = <&tsens0 4>;
5234449b6f2SBjorn Andersson
5244449b6f2SBjorn Andersson			trips {
525285aa631SAmit Kucheria				cpu3_alert0: trip-point0 {
5264449b6f2SBjorn Andersson					temperature = <75000>;
5274449b6f2SBjorn Andersson					hysteresis = <2000>;
5284449b6f2SBjorn Andersson					type = "passive";
5294449b6f2SBjorn Andersson				};
5304449b6f2SBjorn Andersson
531ae8876ddSAmit Kucheria				cpu3_crit: cpu_crit {
5324449b6f2SBjorn Andersson					temperature = <110000>;
5334449b6f2SBjorn Andersson					hysteresis = <2000>;
5344449b6f2SBjorn Andersson					type = "critical";
5354449b6f2SBjorn Andersson				};
5364449b6f2SBjorn Andersson			};
5374449b6f2SBjorn Andersson		};
5384449b6f2SBjorn Andersson
539ae8876ddSAmit Kucheria		cpu4-thermal {
5404449b6f2SBjorn Andersson			polling-delay-passive = <250>;
5414449b6f2SBjorn Andersson			polling-delay = <1000>;
5424449b6f2SBjorn Andersson
5434449b6f2SBjorn Andersson			thermal-sensors = <&tsens0 7>;
5444449b6f2SBjorn Andersson
5454449b6f2SBjorn Andersson			trips {
546285aa631SAmit Kucheria				cpu4_alert0: trip-point0 {
5474449b6f2SBjorn Andersson					temperature = <75000>;
5484449b6f2SBjorn Andersson					hysteresis = <2000>;
5494449b6f2SBjorn Andersson					type = "passive";
5504449b6f2SBjorn Andersson				};
5514449b6f2SBjorn Andersson
552ae8876ddSAmit Kucheria				cpu4_crit: cpu_crit {
5534449b6f2SBjorn Andersson					temperature = <110000>;
5544449b6f2SBjorn Andersson					hysteresis = <2000>;
5554449b6f2SBjorn Andersson					type = "critical";
5564449b6f2SBjorn Andersson				};
5574449b6f2SBjorn Andersson			};
5584449b6f2SBjorn Andersson		};
5594449b6f2SBjorn Andersson
560ae8876ddSAmit Kucheria		cpu5-thermal {
5614449b6f2SBjorn Andersson			polling-delay-passive = <250>;
5624449b6f2SBjorn Andersson			polling-delay = <1000>;
5634449b6f2SBjorn Andersson
5644449b6f2SBjorn Andersson			thermal-sensors = <&tsens0 8>;
5654449b6f2SBjorn Andersson
5664449b6f2SBjorn Andersson			trips {
567285aa631SAmit Kucheria				cpu5_alert0: trip-point0 {
5684449b6f2SBjorn Andersson					temperature = <75000>;
5694449b6f2SBjorn Andersson					hysteresis = <2000>;
5704449b6f2SBjorn Andersson					type = "passive";
5714449b6f2SBjorn Andersson				};
5724449b6f2SBjorn Andersson
573ae8876ddSAmit Kucheria				cpu5_crit: cpu_crit {
5744449b6f2SBjorn Andersson					temperature = <110000>;
5754449b6f2SBjorn Andersson					hysteresis = <2000>;
5764449b6f2SBjorn Andersson					type = "critical";
5774449b6f2SBjorn Andersson				};
5784449b6f2SBjorn Andersson			};
5794449b6f2SBjorn Andersson		};
5804449b6f2SBjorn Andersson
581ae8876ddSAmit Kucheria		cpu6-thermal {
5824449b6f2SBjorn Andersson			polling-delay-passive = <250>;
5834449b6f2SBjorn Andersson			polling-delay = <1000>;
5844449b6f2SBjorn Andersson
5854449b6f2SBjorn Andersson			thermal-sensors = <&tsens0 9>;
5864449b6f2SBjorn Andersson
5874449b6f2SBjorn Andersson			trips {
588285aa631SAmit Kucheria				cpu6_alert0: trip-point0 {
5894449b6f2SBjorn Andersson					temperature = <75000>;
5904449b6f2SBjorn Andersson					hysteresis = <2000>;
5914449b6f2SBjorn Andersson					type = "passive";
5924449b6f2SBjorn Andersson				};
5934449b6f2SBjorn Andersson
594ae8876ddSAmit Kucheria				cpu6_crit: cpu_crit {
5954449b6f2SBjorn Andersson					temperature = <110000>;
5964449b6f2SBjorn Andersson					hysteresis = <2000>;
5974449b6f2SBjorn Andersson					type = "critical";
5984449b6f2SBjorn Andersson				};
5994449b6f2SBjorn Andersson			};
6004449b6f2SBjorn Andersson		};
6014449b6f2SBjorn Andersson
602ae8876ddSAmit Kucheria		cpu7-thermal {
6034449b6f2SBjorn Andersson			polling-delay-passive = <250>;
6044449b6f2SBjorn Andersson			polling-delay = <1000>;
6054449b6f2SBjorn Andersson
6064449b6f2SBjorn Andersson			thermal-sensors = <&tsens0 10>;
6074449b6f2SBjorn Andersson
6084449b6f2SBjorn Andersson			trips {
609285aa631SAmit Kucheria				cpu7_alert0: trip-point0 {
6104449b6f2SBjorn Andersson					temperature = <75000>;
6114449b6f2SBjorn Andersson					hysteresis = <2000>;
6124449b6f2SBjorn Andersson					type = "passive";
6134449b6f2SBjorn Andersson				};
6144449b6f2SBjorn Andersson
615ae8876ddSAmit Kucheria				cpu7_crit: cpu_crit {
6164449b6f2SBjorn Andersson					temperature = <110000>;
6174449b6f2SBjorn Andersson					hysteresis = <2000>;
6184449b6f2SBjorn Andersson					type = "critical";
6194449b6f2SBjorn Andersson				};
6204449b6f2SBjorn Andersson			};
6214449b6f2SBjorn Andersson		};
6224449b6f2SBjorn Andersson
6237be1c395SDavid Heidelberg		gpu-bottom-thermal {
6242fa2d301SAmit Kucheria			polling-delay-passive = <250>;
6252fa2d301SAmit Kucheria			polling-delay = <1000>;
6262fa2d301SAmit Kucheria
6272fa2d301SAmit Kucheria			thermal-sensors = <&tsens0 12>;
6282fa2d301SAmit Kucheria
6292fa2d301SAmit Kucheria			trips {
630285aa631SAmit Kucheria				gpu1_alert0: trip-point0 {
6312fa2d301SAmit Kucheria					temperature = <90000>;
6322fa2d301SAmit Kucheria					hysteresis = <2000>;
6332fa2d301SAmit Kucheria					type = "hot";
6342fa2d301SAmit Kucheria				};
6352fa2d301SAmit Kucheria			};
6362fa2d301SAmit Kucheria		};
6372fa2d301SAmit Kucheria
6387be1c395SDavid Heidelberg		gpu-top-thermal {
6394449b6f2SBjorn Andersson			polling-delay-passive = <250>;
6404449b6f2SBjorn Andersson			polling-delay = <1000>;
6414449b6f2SBjorn Andersson
6429284aa44SAmit Kucheria			thermal-sensors = <&tsens0 13>;
6432fa2d301SAmit Kucheria
6442fa2d301SAmit Kucheria			trips {
645285aa631SAmit Kucheria				gpu2_alert0: trip-point0 {
6462fa2d301SAmit Kucheria					temperature = <90000>;
6472fa2d301SAmit Kucheria					hysteresis = <2000>;
6482fa2d301SAmit Kucheria					type = "hot";
6492fa2d301SAmit Kucheria				};
6502fa2d301SAmit Kucheria			};
6514449b6f2SBjorn Andersson		};
652e9d2729dSAmit Kucheria
653060f4211SAmit Kucheria		clust0-mhm-thermal {
654e9d2729dSAmit Kucheria			polling-delay-passive = <250>;
655e9d2729dSAmit Kucheria			polling-delay = <1000>;
656e9d2729dSAmit Kucheria
657e9d2729dSAmit Kucheria			thermal-sensors = <&tsens0 5>;
658e9d2729dSAmit Kucheria
659e9d2729dSAmit Kucheria			trips {
660285aa631SAmit Kucheria				cluster0_mhm_alert0: trip-point0 {
661e9d2729dSAmit Kucheria					temperature = <90000>;
662e9d2729dSAmit Kucheria					hysteresis = <2000>;
663e9d2729dSAmit Kucheria					type = "hot";
664e9d2729dSAmit Kucheria				};
665e9d2729dSAmit Kucheria			};
666e9d2729dSAmit Kucheria		};
667e9d2729dSAmit Kucheria
668060f4211SAmit Kucheria		clust1-mhm-thermal {
669e9d2729dSAmit Kucheria			polling-delay-passive = <250>;
670e9d2729dSAmit Kucheria			polling-delay = <1000>;
671e9d2729dSAmit Kucheria
672e9d2729dSAmit Kucheria			thermal-sensors = <&tsens0 6>;
673e9d2729dSAmit Kucheria
674e9d2729dSAmit Kucheria			trips {
675285aa631SAmit Kucheria				cluster1_mhm_alert0: trip-point0 {
676e9d2729dSAmit Kucheria					temperature = <90000>;
677e9d2729dSAmit Kucheria					hysteresis = <2000>;
678e9d2729dSAmit Kucheria					type = "hot";
679e9d2729dSAmit Kucheria				};
680e9d2729dSAmit Kucheria			};
681e9d2729dSAmit Kucheria		};
682e9d2729dSAmit Kucheria
683e9d2729dSAmit Kucheria		cluster1-l2-thermal {
6844449b6f2SBjorn Andersson			polling-delay-passive = <250>;
6854449b6f2SBjorn Andersson			polling-delay = <1000>;
6864449b6f2SBjorn Andersson
6874449b6f2SBjorn Andersson			thermal-sensors = <&tsens0 11>;
6884449b6f2SBjorn Andersson
6894449b6f2SBjorn Andersson			trips {
690285aa631SAmit Kucheria				cluster1_l2_alert0: trip-point0 {
691e9d2729dSAmit Kucheria					temperature = <90000>;
6924449b6f2SBjorn Andersson					hysteresis = <2000>;
693e9d2729dSAmit Kucheria					type = "hot";
6944449b6f2SBjorn Andersson				};
6954449b6f2SBjorn Andersson			};
6964449b6f2SBjorn Andersson		};
6974449b6f2SBjorn Andersson
698e9d2729dSAmit Kucheria		modem-thermal {
6994449b6f2SBjorn Andersson			polling-delay-passive = <250>;
7004449b6f2SBjorn Andersson			polling-delay = <1000>;
7014449b6f2SBjorn Andersson
7024449b6f2SBjorn Andersson			thermal-sensors = <&tsens1 1>;
7034449b6f2SBjorn Andersson
7044449b6f2SBjorn Andersson			trips {
705285aa631SAmit Kucheria				modem_alert0: trip-point0 {
706e9d2729dSAmit Kucheria					temperature = <90000>;
7074449b6f2SBjorn Andersson					hysteresis = <2000>;
708e9d2729dSAmit Kucheria					type = "hot";
7094449b6f2SBjorn Andersson				};
7104449b6f2SBjorn Andersson			};
7114449b6f2SBjorn Andersson		};
7124449b6f2SBjorn Andersson
713e9d2729dSAmit Kucheria		mem-thermal {
714e9d2729dSAmit Kucheria			polling-delay-passive = <250>;
715e9d2729dSAmit Kucheria			polling-delay = <1000>;
716e9d2729dSAmit Kucheria
717e9d2729dSAmit Kucheria			thermal-sensors = <&tsens1 2>;
718e9d2729dSAmit Kucheria
719e9d2729dSAmit Kucheria			trips {
720285aa631SAmit Kucheria				mem_alert0: trip-point0 {
721e9d2729dSAmit Kucheria					temperature = <90000>;
722e9d2729dSAmit Kucheria					hysteresis = <2000>;
723e9d2729dSAmit Kucheria					type = "hot";
724e9d2729dSAmit Kucheria				};
725e9d2729dSAmit Kucheria			};
726e9d2729dSAmit Kucheria		};
727e9d2729dSAmit Kucheria
728e9d2729dSAmit Kucheria		wlan-thermal {
7294449b6f2SBjorn Andersson			polling-delay-passive = <250>;
7304449b6f2SBjorn Andersson			polling-delay = <1000>;
7314449b6f2SBjorn Andersson
7324449b6f2SBjorn Andersson			thermal-sensors = <&tsens1 3>;
733e9d2729dSAmit Kucheria
734e9d2729dSAmit Kucheria			trips {
735285aa631SAmit Kucheria				wlan_alert0: trip-point0 {
736e9d2729dSAmit Kucheria					temperature = <90000>;
737e9d2729dSAmit Kucheria					hysteresis = <2000>;
738e9d2729dSAmit Kucheria					type = "hot";
739e9d2729dSAmit Kucheria				};
740e9d2729dSAmit Kucheria			};
741e9d2729dSAmit Kucheria		};
742e9d2729dSAmit Kucheria
743e9d2729dSAmit Kucheria		q6-dsp-thermal {
744e9d2729dSAmit Kucheria			polling-delay-passive = <250>;
745e9d2729dSAmit Kucheria			polling-delay = <1000>;
746e9d2729dSAmit Kucheria
747e9d2729dSAmit Kucheria			thermal-sensors = <&tsens1 4>;
748e9d2729dSAmit Kucheria
749e9d2729dSAmit Kucheria			trips {
750285aa631SAmit Kucheria				q6_dsp_alert0: trip-point0 {
751e9d2729dSAmit Kucheria					temperature = <90000>;
752e9d2729dSAmit Kucheria					hysteresis = <2000>;
753e9d2729dSAmit Kucheria					type = "hot";
754e9d2729dSAmit Kucheria				};
755e9d2729dSAmit Kucheria			};
756e9d2729dSAmit Kucheria		};
757e9d2729dSAmit Kucheria
758e9d2729dSAmit Kucheria		camera-thermal {
759e9d2729dSAmit Kucheria			polling-delay-passive = <250>;
760e9d2729dSAmit Kucheria			polling-delay = <1000>;
761e9d2729dSAmit Kucheria
762e9d2729dSAmit Kucheria			thermal-sensors = <&tsens1 5>;
763e9d2729dSAmit Kucheria
764e9d2729dSAmit Kucheria			trips {
765285aa631SAmit Kucheria				camera_alert0: trip-point0 {
766e9d2729dSAmit Kucheria					temperature = <90000>;
767e9d2729dSAmit Kucheria					hysteresis = <2000>;
768e9d2729dSAmit Kucheria					type = "hot";
769e9d2729dSAmit Kucheria				};
770e9d2729dSAmit Kucheria			};
771e9d2729dSAmit Kucheria		};
772e9d2729dSAmit Kucheria
773e9d2729dSAmit Kucheria		multimedia-thermal {
774e9d2729dSAmit Kucheria			polling-delay-passive = <250>;
775e9d2729dSAmit Kucheria			polling-delay = <1000>;
776e9d2729dSAmit Kucheria
777e9d2729dSAmit Kucheria			thermal-sensors = <&tsens1 6>;
778e9d2729dSAmit Kucheria
779e9d2729dSAmit Kucheria			trips {
780285aa631SAmit Kucheria				multimedia_alert0: trip-point0 {
781e9d2729dSAmit Kucheria					temperature = <90000>;
782e9d2729dSAmit Kucheria					hysteresis = <2000>;
783e9d2729dSAmit Kucheria					type = "hot";
784e9d2729dSAmit Kucheria				};
785e9d2729dSAmit Kucheria			};
7864449b6f2SBjorn Andersson		};
7874449b6f2SBjorn Andersson	};
7884449b6f2SBjorn Andersson
7894807c71cSJoonwoo Park	timer {
7904807c71cSJoonwoo Park		compatible = "arm,armv8-timer";
7914807c71cSJoonwoo Park		interrupts = <GIC_PPI 1 IRQ_TYPE_LEVEL_LOW>,
7924807c71cSJoonwoo Park			     <GIC_PPI 2 IRQ_TYPE_LEVEL_LOW>,
7934807c71cSJoonwoo Park			     <GIC_PPI 3 IRQ_TYPE_LEVEL_LOW>,
7944807c71cSJoonwoo Park			     <GIC_PPI 0 IRQ_TYPE_LEVEL_LOW>;
7954807c71cSJoonwoo Park	};
7964807c71cSJoonwoo Park
7974807c71cSJoonwoo Park	soc: soc {
7984807c71cSJoonwoo Park		#address-cells = <1>;
7994807c71cSJoonwoo Park		#size-cells = <1>;
8004807c71cSJoonwoo Park		ranges = <0 0 0 0xffffffff>;
8014807c71cSJoonwoo Park		compatible = "simple-bus";
8024807c71cSJoonwoo Park
80332a5da21SJeffrey Hugo		gcc: clock-controller@100000 {
80432a5da21SJeffrey Hugo			compatible = "qcom,gcc-msm8998";
80532a5da21SJeffrey Hugo			#clock-cells = <1>;
80632a5da21SJeffrey Hugo			#reset-cells = <1>;
80732a5da21SJeffrey Hugo			#power-domain-cells = <1>;
80832a5da21SJeffrey Hugo			reg = <0x00100000 0xb0000>;
8092c2f64aeSMarijn Suijten
8102c2f64aeSMarijn Suijten			clock-names = "xo", "sleep_clk";
8112c2f64aeSMarijn Suijten			clocks = <&xo>, <&sleep_clk>;
8121ed29355SMichael Srba
8131ed29355SMichael Srba			/*
8141ed29355SMichael Srba			 * The hypervisor typically configures the memory region where these clocks
8151ed29355SMichael Srba			 * reside as read-only for the HLOS. If the HLOS tried to enable or disable
8161ed29355SMichael Srba			 * these clocks on a device with such configuration (e.g. because they are
8171ed29355SMichael Srba			 * enabled but unused during boot-up), the device will most likely decide
8181ed29355SMichael Srba			 * to reboot.
8191ed29355SMichael Srba			 * In light of that, we are conservative here and we list all such clocks
8201ed29355SMichael Srba			 * as protected. The board dts (or a user-supplied dts) can override the
8211ed29355SMichael Srba			 * list of protected clocks if it differs from the norm, and it is in fact
8221ed29355SMichael Srba			 * desired for the HLOS to manage these clocks
8231ed29355SMichael Srba			 */
8241ed29355SMichael Srba			protected-clocks = <AGGRE2_SNOC_NORTH_AXI>,
8251ed29355SMichael Srba					   <SSC_XO>,
8261ed29355SMichael Srba					   <SSC_CNOC_AHBS_CLK>;
82732a5da21SJeffrey Hugo		};
82832a5da21SJeffrey Hugo
829179811beSStephan Gerhold		rpm_msg_ram: sram@778000 {
83031c1f0e3SBjorn Andersson			compatible = "qcom,rpm-msg-ram";
83132a5da21SJeffrey Hugo			reg = <0x00778000 0x7000>;
83231c1f0e3SBjorn Andersson		};
83331c1f0e3SBjorn Andersson
83494117eb1SAngeloGioacchino Del Regno		qfprom: qfprom@784000 {
835b2eab35bSKrzysztof Kozlowski			compatible = "qcom,msm8998-qfprom", "qcom,qfprom";
83694117eb1SAngeloGioacchino Del Regno			reg = <0x00784000 0x621c>;
837f259e398SBjorn Andersson			#address-cells = <1>;
838f259e398SBjorn Andersson			#size-cells = <1>;
839026dad8fSJeffrey Hugo
84094117eb1SAngeloGioacchino Del Regno			qusb2_hstx_trim: hstx-trim@23a {
84194117eb1SAngeloGioacchino Del Regno				reg = <0x23a 0x1>;
842026dad8fSJeffrey Hugo				bits = <0 4>;
843026dad8fSJeffrey Hugo			};
844f259e398SBjorn Andersson		};
845f259e398SBjorn Andersson
84650325048SAmit Kucheria		tsens0: thermal@10ab000 {
8474449b6f2SBjorn Andersson			compatible = "qcom,msm8998-tsens", "qcom,tsens-v2";
84832a5da21SJeffrey Hugo			reg = <0x010ab000 0x1000>, /* TM */
84932a5da21SJeffrey Hugo			      <0x010aa000 0x1000>; /* SROT */
850280acabbSAmit Kucheria			#qcom,sensors = <14>;
851f0b888afSAmit Kucheria			interrupts = <GIC_SPI 458 IRQ_TYPE_LEVEL_HIGH>,
852f0b888afSAmit Kucheria				     <GIC_SPI 445 IRQ_TYPE_LEVEL_HIGH>;
853f0b888afSAmit Kucheria			interrupt-names = "uplow", "critical";
8544449b6f2SBjorn Andersson			#thermal-sensor-cells = <1>;
8554449b6f2SBjorn Andersson		};
8564449b6f2SBjorn Andersson
85750325048SAmit Kucheria		tsens1: thermal@10ae000 {
8584449b6f2SBjorn Andersson			compatible = "qcom,msm8998-tsens", "qcom,tsens-v2";
85932a5da21SJeffrey Hugo			reg = <0x010ae000 0x1000>, /* TM */
86032a5da21SJeffrey Hugo			      <0x010ad000 0x1000>; /* SROT */
8614449b6f2SBjorn Andersson			#qcom,sensors = <8>;
862f0b888afSAmit Kucheria			interrupts = <GIC_SPI 184 IRQ_TYPE_LEVEL_HIGH>,
863f0b888afSAmit Kucheria				     <GIC_SPI 430 IRQ_TYPE_LEVEL_HIGH>;
864f0b888afSAmit Kucheria			interrupt-names = "uplow", "critical";
8654449b6f2SBjorn Andersson			#thermal-sensor-cells = <1>;
8664449b6f2SBjorn Andersson		};
8674449b6f2SBjorn Andersson
8688389b869SMarc Gonzalez		anoc1_smmu: iommu@1680000 {
8698389b869SMarc Gonzalez			compatible = "qcom,msm8998-smmu-v2", "qcom,smmu-v2";
8708389b869SMarc Gonzalez			reg = <0x01680000 0x10000>;
8718389b869SMarc Gonzalez			#iommu-cells = <1>;
8728389b869SMarc Gonzalez
8738389b869SMarc Gonzalez			#global-interrupts = <0>;
8748389b869SMarc Gonzalez			interrupts =
8758389b869SMarc Gonzalez				<GIC_SPI 364 IRQ_TYPE_EDGE_RISING>,
8768389b869SMarc Gonzalez				<GIC_SPI 365 IRQ_TYPE_EDGE_RISING>,
8778389b869SMarc Gonzalez				<GIC_SPI 366 IRQ_TYPE_EDGE_RISING>,
8788389b869SMarc Gonzalez				<GIC_SPI 367 IRQ_TYPE_EDGE_RISING>,
8798389b869SMarc Gonzalez				<GIC_SPI 368 IRQ_TYPE_EDGE_RISING>,
8808389b869SMarc Gonzalez				<GIC_SPI 369 IRQ_TYPE_EDGE_RISING>;
8818389b869SMarc Gonzalez		};
8828389b869SMarc Gonzalez
883a21c9548SJeffrey Hugo		anoc2_smmu: iommu@16c0000 {
884a21c9548SJeffrey Hugo			compatible = "qcom,msm8998-smmu-v2", "qcom,smmu-v2";
885a21c9548SJeffrey Hugo			reg = <0x016c0000 0x40000>;
886a21c9548SJeffrey Hugo			#iommu-cells = <1>;
887a21c9548SJeffrey Hugo
888a21c9548SJeffrey Hugo			#global-interrupts = <0>;
889a21c9548SJeffrey Hugo			interrupts =
890a21c9548SJeffrey Hugo				<GIC_SPI 373 IRQ_TYPE_EDGE_RISING>,
891a21c9548SJeffrey Hugo				<GIC_SPI 374 IRQ_TYPE_EDGE_RISING>,
892a21c9548SJeffrey Hugo				<GIC_SPI 375 IRQ_TYPE_EDGE_RISING>,
893a21c9548SJeffrey Hugo				<GIC_SPI 376 IRQ_TYPE_EDGE_RISING>,
894a21c9548SJeffrey Hugo				<GIC_SPI 377 IRQ_TYPE_EDGE_RISING>,
895a21c9548SJeffrey Hugo				<GIC_SPI 378 IRQ_TYPE_EDGE_RISING>,
896a21c9548SJeffrey Hugo				<GIC_SPI 462 IRQ_TYPE_EDGE_RISING>,
897a21c9548SJeffrey Hugo				<GIC_SPI 463 IRQ_TYPE_EDGE_RISING>,
898a21c9548SJeffrey Hugo				<GIC_SPI 464 IRQ_TYPE_EDGE_RISING>,
899a21c9548SJeffrey Hugo				<GIC_SPI 465 IRQ_TYPE_EDGE_RISING>;
900a21c9548SJeffrey Hugo		};
901a21c9548SJeffrey Hugo
902b84dfd17SMarc Gonzalez		pcie0: pci@1c00000 {
903b84dfd17SMarc Gonzalez			compatible = "qcom,pcie-msm8996";
904b84dfd17SMarc Gonzalez			reg =	<0x01c00000 0x2000>,
905b84dfd17SMarc Gonzalez				<0x1b000000 0xf1d>,
906b84dfd17SMarc Gonzalez				<0x1b000f20 0xa8>,
907b84dfd17SMarc Gonzalez				<0x1b100000 0x100000>;
908b84dfd17SMarc Gonzalez			reg-names = "parf", "dbi", "elbi", "config";
909b84dfd17SMarc Gonzalez			device_type = "pci";
910b84dfd17SMarc Gonzalez			linux,pci-domain = <0>;
911b84dfd17SMarc Gonzalez			bus-range = <0x00 0xff>;
912b84dfd17SMarc Gonzalez			#address-cells = <3>;
913b84dfd17SMarc Gonzalez			#size-cells = <2>;
914b84dfd17SMarc Gonzalez			num-lanes = <1>;
915b84dfd17SMarc Gonzalez			phys = <&pciephy>;
916b84dfd17SMarc Gonzalez			phy-names = "pciephy";
917a72848e8SKonrad Dybcio			status = "disabled";
918b84dfd17SMarc Gonzalez
919b84dfd17SMarc Gonzalez			ranges = <0x01000000 0x0 0x1b200000 0x1b200000 0x0 0x100000>,
920b84dfd17SMarc Gonzalez				 <0x02000000 0x0 0x1b300000 0x1b300000 0x0 0xd00000>;
921b84dfd17SMarc Gonzalez
922b84dfd17SMarc Gonzalez			#interrupt-cells = <1>;
923b84dfd17SMarc Gonzalez			interrupts = <GIC_SPI 405 IRQ_TYPE_LEVEL_HIGH>;
924b84dfd17SMarc Gonzalez			interrupt-names = "msi";
925b84dfd17SMarc Gonzalez			interrupt-map-mask = <0 0 0 0x7>;
9260ac10b29SRob Herring			interrupt-map = <0 0 0 1 &intc 0 0 135 IRQ_TYPE_LEVEL_HIGH>,
9270ac10b29SRob Herring					<0 0 0 2 &intc 0 0 136 IRQ_TYPE_LEVEL_HIGH>,
9280ac10b29SRob Herring					<0 0 0 3 &intc 0 0 138 IRQ_TYPE_LEVEL_HIGH>,
9290ac10b29SRob Herring					<0 0 0 4 &intc 0 0 139 IRQ_TYPE_LEVEL_HIGH>;
930b84dfd17SMarc Gonzalez
931b84dfd17SMarc Gonzalez			clocks = <&gcc GCC_PCIE_0_PIPE_CLK>,
932b84dfd17SMarc Gonzalez				 <&gcc GCC_PCIE_0_MSTR_AXI_CLK>,
933b84dfd17SMarc Gonzalez				 <&gcc GCC_PCIE_0_SLV_AXI_CLK>,
934b84dfd17SMarc Gonzalez				 <&gcc GCC_PCIE_0_CFG_AHB_CLK>,
935b84dfd17SMarc Gonzalez				 <&gcc GCC_PCIE_0_AUX_CLK>;
936b84dfd17SMarc Gonzalez			clock-names = "pipe", "bus_master", "bus_slave", "cfg", "aux";
937b84dfd17SMarc Gonzalez
938b84dfd17SMarc Gonzalez			power-domains = <&gcc PCIE_0_GDSC>;
939b84dfd17SMarc Gonzalez			iommu-map = <0x100 &anoc1_smmu 0x1480 1>;
940b84dfd17SMarc Gonzalez			perst-gpios = <&tlmm 35 GPIO_ACTIVE_LOW>;
941b84dfd17SMarc Gonzalez		};
942b84dfd17SMarc Gonzalez
943a72848e8SKonrad Dybcio		pcie_phy: phy@1c06000 {
944b84dfd17SMarc Gonzalez			compatible = "qcom,msm8998-qmp-pcie-phy";
945b84dfd17SMarc Gonzalez			reg = <0x01c06000 0x18c>;
946b84dfd17SMarc Gonzalez			#address-cells = <1>;
947b84dfd17SMarc Gonzalez			#size-cells = <1>;
948a72848e8SKonrad Dybcio			status = "disabled";
949b84dfd17SMarc Gonzalez			ranges;
950b84dfd17SMarc Gonzalez
951b84dfd17SMarc Gonzalez			clocks = <&gcc GCC_PCIE_PHY_AUX_CLK>,
952b84dfd17SMarc Gonzalez				 <&gcc GCC_PCIE_0_CFG_AHB_CLK>,
953b84dfd17SMarc Gonzalez				 <&gcc GCC_PCIE_CLKREF_CLK>;
954b84dfd17SMarc Gonzalez			clock-names = "aux", "cfg_ahb", "ref";
955b84dfd17SMarc Gonzalez
956b84dfd17SMarc Gonzalez			resets = <&gcc GCC_PCIE_0_PHY_BCR>, <&gcc GCC_PCIE_PHY_BCR>;
957b84dfd17SMarc Gonzalez			reset-names = "phy", "common";
958b84dfd17SMarc Gonzalez
959b84dfd17SMarc Gonzalez			vdda-phy-supply = <&vreg_l1a_0p875>;
960b84dfd17SMarc Gonzalez			vdda-pll-supply = <&vreg_l2a_1p2>;
961b84dfd17SMarc Gonzalez
9621351512fSShawn Guo			pciephy: phy@1c06800 {
963b84dfd17SMarc Gonzalez				reg = <0x01c06200 0x128>, <0x01c06400 0x1fc>, <0x01c06800 0x20c>;
964b84dfd17SMarc Gonzalez				#phy-cells = <0>;
965b84dfd17SMarc Gonzalez
966b84dfd17SMarc Gonzalez				clocks = <&gcc GCC_PCIE_0_PIPE_CLK>;
967b84dfd17SMarc Gonzalez				clock-names = "pipe0";
968b84dfd17SMarc Gonzalez				clock-output-names = "pcie_0_pipe_clk_src";
969b84dfd17SMarc Gonzalez				#clock-cells = <0>;
970b84dfd17SMarc Gonzalez			};
971b84dfd17SMarc Gonzalez		};
972b84dfd17SMarc Gonzalez
97332a5da21SJeffrey Hugo		ufshc: ufshc@1da4000 {
97432a5da21SJeffrey Hugo			compatible = "qcom,msm8998-ufshc", "qcom,ufshc", "jedec,ufs-2.0";
97532a5da21SJeffrey Hugo			reg = <0x01da4000 0x2500>;
97632a5da21SJeffrey Hugo			interrupts = <GIC_SPI 265 IRQ_TYPE_LEVEL_HIGH>;
97732a5da21SJeffrey Hugo			phys = <&ufsphy_lanes>;
97832a5da21SJeffrey Hugo			phy-names = "ufsphy";
97932a5da21SJeffrey Hugo			lanes-per-direction = <2>;
98032a5da21SJeffrey Hugo			power-domains = <&gcc UFS_GDSC>;
981a72848e8SKonrad Dybcio			status = "disabled";
98232a5da21SJeffrey Hugo			#reset-cells = <1>;
98332a5da21SJeffrey Hugo
98432a5da21SJeffrey Hugo			clock-names =
98532a5da21SJeffrey Hugo				"core_clk",
98632a5da21SJeffrey Hugo				"bus_aggr_clk",
98732a5da21SJeffrey Hugo				"iface_clk",
98832a5da21SJeffrey Hugo				"core_clk_unipro",
98932a5da21SJeffrey Hugo				"ref_clk",
99032a5da21SJeffrey Hugo				"tx_lane0_sync_clk",
99132a5da21SJeffrey Hugo				"rx_lane0_sync_clk",
99232a5da21SJeffrey Hugo				"rx_lane1_sync_clk";
99332a5da21SJeffrey Hugo			clocks =
99432a5da21SJeffrey Hugo				<&gcc GCC_UFS_AXI_CLK>,
99532a5da21SJeffrey Hugo				<&gcc GCC_AGGRE1_UFS_AXI_CLK>,
99632a5da21SJeffrey Hugo				<&gcc GCC_UFS_AHB_CLK>,
99732a5da21SJeffrey Hugo				<&gcc GCC_UFS_UNIPRO_CORE_CLK>,
99832a5da21SJeffrey Hugo				<&rpmcc RPM_SMD_LN_BB_CLK1>,
99932a5da21SJeffrey Hugo				<&gcc GCC_UFS_TX_SYMBOL_0_CLK>,
100032a5da21SJeffrey Hugo				<&gcc GCC_UFS_RX_SYMBOL_0_CLK>,
100132a5da21SJeffrey Hugo				<&gcc GCC_UFS_RX_SYMBOL_1_CLK>;
100232a5da21SJeffrey Hugo			freq-table-hz =
100332a5da21SJeffrey Hugo				<50000000 200000000>,
100432a5da21SJeffrey Hugo				<0 0>,
100532a5da21SJeffrey Hugo				<0 0>,
100632a5da21SJeffrey Hugo				<37500000 150000000>,
100732a5da21SJeffrey Hugo				<0 0>,
100832a5da21SJeffrey Hugo				<0 0>,
100932a5da21SJeffrey Hugo				<0 0>,
101032a5da21SJeffrey Hugo				<0 0>;
101132a5da21SJeffrey Hugo
101232a5da21SJeffrey Hugo			resets = <&gcc GCC_UFS_BCR>;
101332a5da21SJeffrey Hugo			reset-names = "rst";
1014c7833949SBjorn Andersson		};
1015c7833949SBjorn Andersson
101632a5da21SJeffrey Hugo		ufsphy: phy@1da7000 {
101732a5da21SJeffrey Hugo			compatible = "qcom,msm8998-qmp-ufs-phy";
101832a5da21SJeffrey Hugo			reg = <0x01da7000 0x18c>;
101932a5da21SJeffrey Hugo			#address-cells = <1>;
102032a5da21SJeffrey Hugo			#size-cells = <1>;
1021a72848e8SKonrad Dybcio			status = "disabled";
102232a5da21SJeffrey Hugo			ranges;
102331c1f0e3SBjorn Andersson
102432a5da21SJeffrey Hugo			clock-names =
102532a5da21SJeffrey Hugo				"ref",
102632a5da21SJeffrey Hugo				"ref_aux";
102732a5da21SJeffrey Hugo			clocks =
102832a5da21SJeffrey Hugo				<&gcc GCC_UFS_CLKREF_CLK>,
102932a5da21SJeffrey Hugo				<&gcc GCC_UFS_PHY_AUX_CLK>;
103032a5da21SJeffrey Hugo
103132a5da21SJeffrey Hugo			reset-names = "ufsphy";
103232a5da21SJeffrey Hugo			resets = <&ufshc 0>;
103332a5da21SJeffrey Hugo
10341351512fSShawn Guo			ufsphy_lanes: phy@1da7400 {
103532a5da21SJeffrey Hugo				reg = <0x01da7400 0x128>,
103632a5da21SJeffrey Hugo				      <0x01da7600 0x1fc>,
103732a5da21SJeffrey Hugo				      <0x01da7c00 0x1dc>,
103832a5da21SJeffrey Hugo				      <0x01da7800 0x128>,
103932a5da21SJeffrey Hugo				      <0x01da7a00 0x1fc>;
104032a5da21SJeffrey Hugo				#phy-cells = <0>;
104132a5da21SJeffrey Hugo			};
104232a5da21SJeffrey Hugo		};
104332a5da21SJeffrey Hugo
1044408c4eadSKrzysztof Kozlowski		tcsr_mutex: hwlock@1f40000 {
1045408c4eadSKrzysztof Kozlowski			compatible = "qcom,tcsr-mutex";
1046fc10cfa3SKrzysztof Kozlowski			reg = <0x01f40000 0x20000>;
1047408c4eadSKrzysztof Kozlowski			#hwlock-cells = <1>;
1048fc10cfa3SKrzysztof Kozlowski		};
1049fc10cfa3SKrzysztof Kozlowski
1050d0909bf4SJohan Hovold		tcsr_regs_1: syscon@1f60000 {
1051fc10cfa3SKrzysztof Kozlowski			compatible = "qcom,msm8998-tcsr", "syscon";
1052fc10cfa3SKrzysztof Kozlowski			reg = <0x01f60000 0x20000>;
105332a5da21SJeffrey Hugo		};
105432a5da21SJeffrey Hugo
105532a5da21SJeffrey Hugo		tlmm: pinctrl@3400000 {
105632a5da21SJeffrey Hugo			compatible = "qcom,msm8998-pinctrl";
105732a5da21SJeffrey Hugo			reg = <0x03400000 0xc00000>;
105832a5da21SJeffrey Hugo			interrupts = <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>;
1059*e3d5e948SKrzysztof Kozlowski			gpio-ranges = <&tlmm 0 0 150>;
106032a5da21SJeffrey Hugo			gpio-controller;
106112541f68SKonrad Dybcio			#gpio-cells = <2>;
106232a5da21SJeffrey Hugo			interrupt-controller;
106312541f68SKonrad Dybcio			#interrupt-cells = <2>;
106403e6cb3dSKonrad Dybcio
106512541f68SKonrad Dybcio			sdc2_on: sdc2-on {
106612541f68SKonrad Dybcio				clk {
106703e6cb3dSKonrad Dybcio					pins = "sdc2_clk";
106803e6cb3dSKonrad Dybcio					drive-strength = <16>;
106903e6cb3dSKonrad Dybcio					bias-disable;
107003e6cb3dSKonrad Dybcio				};
107103e6cb3dSKonrad Dybcio
107212541f68SKonrad Dybcio				cmd {
107303e6cb3dSKonrad Dybcio					pins = "sdc2_cmd";
107403e6cb3dSKonrad Dybcio					drive-strength = <10>;
107512541f68SKonrad Dybcio					bias-pull-up;
107612541f68SKonrad Dybcio				};
107712541f68SKonrad Dybcio
107812541f68SKonrad Dybcio				data {
107912541f68SKonrad Dybcio					pins = "sdc2_data";
108012541f68SKonrad Dybcio					drive-strength = <10>;
108112541f68SKonrad Dybcio					bias-pull-up;
108203e6cb3dSKonrad Dybcio				};
108303e6cb3dSKonrad Dybcio			};
108403e6cb3dSKonrad Dybcio
108512541f68SKonrad Dybcio			sdc2_off: sdc2-off {
108612541f68SKonrad Dybcio				clk {
108712541f68SKonrad Dybcio					pins = "sdc2_clk";
108812541f68SKonrad Dybcio					drive-strength = <2>;
108912541f68SKonrad Dybcio					bias-disable;
109012541f68SKonrad Dybcio				};
109112541f68SKonrad Dybcio
109212541f68SKonrad Dybcio				cmd {
109303e6cb3dSKonrad Dybcio					pins = "sdc2_cmd";
109403e6cb3dSKonrad Dybcio					drive-strength = <2>;
109512541f68SKonrad Dybcio					bias-pull-up;
109603e6cb3dSKonrad Dybcio				};
109703e6cb3dSKonrad Dybcio
109812541f68SKonrad Dybcio				data {
109903e6cb3dSKonrad Dybcio					pins = "sdc2_data";
110003e6cb3dSKonrad Dybcio					drive-strength = <2>;
110112541f68SKonrad Dybcio					bias-pull-up;
110203e6cb3dSKonrad Dybcio				};
110303e6cb3dSKonrad Dybcio			};
110403e6cb3dSKonrad Dybcio
110512541f68SKonrad Dybcio			sdc2_cd: sdc2-cd {
110603e6cb3dSKonrad Dybcio				pins = "gpio95";
110703e6cb3dSKonrad Dybcio				function = "gpio";
110803e6cb3dSKonrad Dybcio				bias-pull-up;
110903e6cb3dSKonrad Dybcio				drive-strength = <2>;
111003e6cb3dSKonrad Dybcio			};
111103e6cb3dSKonrad Dybcio
111212541f68SKonrad Dybcio			blsp1_uart3_on: blsp1-uart3-on {
111303e6cb3dSKonrad Dybcio				tx {
111403e6cb3dSKonrad Dybcio					pins = "gpio45";
111503e6cb3dSKonrad Dybcio					function = "blsp_uart3_a";
111603e6cb3dSKonrad Dybcio					drive-strength = <2>;
111703e6cb3dSKonrad Dybcio					bias-disable;
111803e6cb3dSKonrad Dybcio				};
111903e6cb3dSKonrad Dybcio
112003e6cb3dSKonrad Dybcio				rx {
112103e6cb3dSKonrad Dybcio					pins = "gpio46";
112203e6cb3dSKonrad Dybcio					function = "blsp_uart3_a";
112303e6cb3dSKonrad Dybcio					drive-strength = <2>;
112403e6cb3dSKonrad Dybcio					bias-disable;
112503e6cb3dSKonrad Dybcio				};
112603e6cb3dSKonrad Dybcio
112703e6cb3dSKonrad Dybcio				cts {
112803e6cb3dSKonrad Dybcio					pins = "gpio47";
112903e6cb3dSKonrad Dybcio					function = "blsp_uart3_a";
113003e6cb3dSKonrad Dybcio					drive-strength = <2>;
113103e6cb3dSKonrad Dybcio					bias-disable;
113203e6cb3dSKonrad Dybcio				};
113303e6cb3dSKonrad Dybcio
113403e6cb3dSKonrad Dybcio				rfr {
113503e6cb3dSKonrad Dybcio					pins = "gpio48";
113603e6cb3dSKonrad Dybcio					function = "blsp_uart3_a";
113703e6cb3dSKonrad Dybcio					drive-strength = <2>;
113803e6cb3dSKonrad Dybcio					bias-disable;
113903e6cb3dSKonrad Dybcio				};
114003e6cb3dSKonrad Dybcio			};
11410fee55fcSKonrad Dybcio
11420fee55fcSKonrad Dybcio			blsp1_i2c1_default: blsp1-i2c1-default {
11430fee55fcSKonrad Dybcio				pins = "gpio2", "gpio3";
11440fee55fcSKonrad Dybcio				function = "blsp_i2c1";
11450fee55fcSKonrad Dybcio				drive-strength = <2>;
11460fee55fcSKonrad Dybcio				bias-disable;
11470fee55fcSKonrad Dybcio			};
11480fee55fcSKonrad Dybcio
11490fee55fcSKonrad Dybcio			blsp1_i2c1_sleep: blsp1-i2c1-sleep {
11500fee55fcSKonrad Dybcio				pins = "gpio2", "gpio3";
11510fee55fcSKonrad Dybcio				function = "blsp_i2c1";
11520fee55fcSKonrad Dybcio				drive-strength = <2>;
11530fee55fcSKonrad Dybcio				bias-pull-up;
11540fee55fcSKonrad Dybcio			};
11550fee55fcSKonrad Dybcio
11560fee55fcSKonrad Dybcio			blsp1_i2c2_default: blsp1-i2c2-default {
11570fee55fcSKonrad Dybcio				pins = "gpio32", "gpio33";
11580fee55fcSKonrad Dybcio				function = "blsp_i2c2";
11590fee55fcSKonrad Dybcio				drive-strength = <2>;
11600fee55fcSKonrad Dybcio				bias-disable;
11610fee55fcSKonrad Dybcio			};
11620fee55fcSKonrad Dybcio
11630fee55fcSKonrad Dybcio			blsp1_i2c2_sleep: blsp1-i2c2-sleep {
11640fee55fcSKonrad Dybcio				pins = "gpio32", "gpio33";
11650fee55fcSKonrad Dybcio				function = "blsp_i2c2";
11660fee55fcSKonrad Dybcio				drive-strength = <2>;
11670fee55fcSKonrad Dybcio				bias-pull-up;
11680fee55fcSKonrad Dybcio			};
11690fee55fcSKonrad Dybcio
11700fee55fcSKonrad Dybcio			blsp1_i2c3_default: blsp1-i2c3-default {
11710fee55fcSKonrad Dybcio				pins = "gpio47", "gpio48";
11720fee55fcSKonrad Dybcio				function = "blsp_i2c3";
11730fee55fcSKonrad Dybcio				drive-strength = <2>;
11740fee55fcSKonrad Dybcio				bias-disable;
11750fee55fcSKonrad Dybcio			};
11760fee55fcSKonrad Dybcio
11770fee55fcSKonrad Dybcio			blsp1_i2c3_sleep: blsp1-i2c3-sleep {
11780fee55fcSKonrad Dybcio				pins = "gpio47", "gpio48";
11790fee55fcSKonrad Dybcio				function = "blsp_i2c3";
11800fee55fcSKonrad Dybcio				drive-strength = <2>;
11810fee55fcSKonrad Dybcio				bias-pull-up;
11820fee55fcSKonrad Dybcio			};
11830fee55fcSKonrad Dybcio
11840fee55fcSKonrad Dybcio			blsp1_i2c4_default: blsp1-i2c4-default {
11850fee55fcSKonrad Dybcio				pins = "gpio10", "gpio11";
11860fee55fcSKonrad Dybcio				function = "blsp_i2c4";
11870fee55fcSKonrad Dybcio				drive-strength = <2>;
11880fee55fcSKonrad Dybcio				bias-disable;
11890fee55fcSKonrad Dybcio			};
11900fee55fcSKonrad Dybcio
11910fee55fcSKonrad Dybcio			blsp1_i2c4_sleep: blsp1-i2c4-sleep {
11920fee55fcSKonrad Dybcio				pins = "gpio10", "gpio11";
11930fee55fcSKonrad Dybcio				function = "blsp_i2c4";
11940fee55fcSKonrad Dybcio				drive-strength = <2>;
11950fee55fcSKonrad Dybcio				bias-pull-up;
11960fee55fcSKonrad Dybcio			};
11970fee55fcSKonrad Dybcio
11980fee55fcSKonrad Dybcio			blsp1_i2c5_default: blsp1-i2c5-default {
11990fee55fcSKonrad Dybcio				pins = "gpio87", "gpio88";
12000fee55fcSKonrad Dybcio				function = "blsp_i2c5";
12010fee55fcSKonrad Dybcio				drive-strength = <2>;
12020fee55fcSKonrad Dybcio				bias-disable;
12030fee55fcSKonrad Dybcio			};
12040fee55fcSKonrad Dybcio
12050fee55fcSKonrad Dybcio			blsp1_i2c5_sleep: blsp1-i2c5-sleep {
12060fee55fcSKonrad Dybcio				pins = "gpio87", "gpio88";
12070fee55fcSKonrad Dybcio				function = "blsp_i2c5";
12080fee55fcSKonrad Dybcio				drive-strength = <2>;
12090fee55fcSKonrad Dybcio				bias-pull-up;
12100fee55fcSKonrad Dybcio			};
12110fee55fcSKonrad Dybcio
12120fee55fcSKonrad Dybcio			blsp1_i2c6_default: blsp1-i2c6-default {
12130fee55fcSKonrad Dybcio				pins = "gpio43", "gpio44";
12140fee55fcSKonrad Dybcio				function = "blsp_i2c6";
12150fee55fcSKonrad Dybcio				drive-strength = <2>;
12160fee55fcSKonrad Dybcio				bias-disable;
12170fee55fcSKonrad Dybcio			};
12180fee55fcSKonrad Dybcio
12190fee55fcSKonrad Dybcio			blsp1_i2c6_sleep: blsp1-i2c6-sleep {
12200fee55fcSKonrad Dybcio				pins = "gpio43", "gpio44";
12210fee55fcSKonrad Dybcio				function = "blsp_i2c6";
12220fee55fcSKonrad Dybcio				drive-strength = <2>;
12230fee55fcSKonrad Dybcio				bias-pull-up;
12240fee55fcSKonrad Dybcio			};
12250fee55fcSKonrad Dybcio			/* 6 interfaces per QUP, BLSP2 indexes are numbered (n)+6 */
12260fee55fcSKonrad Dybcio			blsp2_i2c1_default: blsp2-i2c1-default {
12270fee55fcSKonrad Dybcio				pins = "gpio55", "gpio56";
12280fee55fcSKonrad Dybcio				function = "blsp_i2c7";
12290fee55fcSKonrad Dybcio				drive-strength = <2>;
12300fee55fcSKonrad Dybcio				bias-disable;
12310fee55fcSKonrad Dybcio			};
12320fee55fcSKonrad Dybcio
12330fee55fcSKonrad Dybcio			blsp2_i2c1_sleep: blsp2-i2c1-sleep {
12340fee55fcSKonrad Dybcio				pins = "gpio55", "gpio56";
12350fee55fcSKonrad Dybcio				function = "blsp_i2c7";
12360fee55fcSKonrad Dybcio				drive-strength = <2>;
12370fee55fcSKonrad Dybcio				bias-pull-up;
12380fee55fcSKonrad Dybcio			};
12390fee55fcSKonrad Dybcio
12400fee55fcSKonrad Dybcio			blsp2_i2c2_default: blsp2-i2c2-default {
12410fee55fcSKonrad Dybcio				pins = "gpio6", "gpio7";
12420fee55fcSKonrad Dybcio				function = "blsp_i2c8";
12430fee55fcSKonrad Dybcio				drive-strength = <2>;
12440fee55fcSKonrad Dybcio				bias-disable;
12450fee55fcSKonrad Dybcio			};
12460fee55fcSKonrad Dybcio
12470fee55fcSKonrad Dybcio			blsp2_i2c2_sleep: blsp2-i2c2-sleep {
12480fee55fcSKonrad Dybcio				pins = "gpio6", "gpio7";
12490fee55fcSKonrad Dybcio				function = "blsp_i2c8";
12500fee55fcSKonrad Dybcio				drive-strength = <2>;
12510fee55fcSKonrad Dybcio				bias-pull-up;
12520fee55fcSKonrad Dybcio			};
12530fee55fcSKonrad Dybcio
12540fee55fcSKonrad Dybcio			blsp2_i2c3_default: blsp2-i2c3-default {
12550fee55fcSKonrad Dybcio				pins = "gpio51", "gpio52";
12560fee55fcSKonrad Dybcio				function = "blsp_i2c9";
12570fee55fcSKonrad Dybcio				drive-strength = <2>;
12580fee55fcSKonrad Dybcio				bias-disable;
12590fee55fcSKonrad Dybcio			};
12600fee55fcSKonrad Dybcio
12610fee55fcSKonrad Dybcio			blsp2_i2c3_sleep: blsp2-i2c3-sleep {
12620fee55fcSKonrad Dybcio				pins = "gpio51", "gpio52";
12630fee55fcSKonrad Dybcio				function = "blsp_i2c9";
12640fee55fcSKonrad Dybcio				drive-strength = <2>;
12650fee55fcSKonrad Dybcio				bias-pull-up;
12660fee55fcSKonrad Dybcio			};
12670fee55fcSKonrad Dybcio
12680fee55fcSKonrad Dybcio			blsp2_i2c4_default: blsp2-i2c4-default {
12690fee55fcSKonrad Dybcio				pins = "gpio67", "gpio68";
12700fee55fcSKonrad Dybcio				function = "blsp_i2c10";
12710fee55fcSKonrad Dybcio				drive-strength = <2>;
12720fee55fcSKonrad Dybcio				bias-disable;
12730fee55fcSKonrad Dybcio			};
12740fee55fcSKonrad Dybcio
12750fee55fcSKonrad Dybcio			blsp2_i2c4_sleep: blsp2-i2c4-sleep {
12760fee55fcSKonrad Dybcio				pins = "gpio67", "gpio68";
12770fee55fcSKonrad Dybcio				function = "blsp_i2c10";
12780fee55fcSKonrad Dybcio				drive-strength = <2>;
12790fee55fcSKonrad Dybcio				bias-pull-up;
12800fee55fcSKonrad Dybcio			};
12810fee55fcSKonrad Dybcio
12820fee55fcSKonrad Dybcio			blsp2_i2c5_default: blsp2-i2c5-default {
12830fee55fcSKonrad Dybcio				pins = "gpio60", "gpio61";
12840fee55fcSKonrad Dybcio				function = "blsp_i2c11";
12850fee55fcSKonrad Dybcio				drive-strength = <2>;
12860fee55fcSKonrad Dybcio				bias-disable;
12870fee55fcSKonrad Dybcio			};
12880fee55fcSKonrad Dybcio
12890fee55fcSKonrad Dybcio			blsp2_i2c5_sleep: blsp2-i2c5-sleep {
12900fee55fcSKonrad Dybcio				pins = "gpio60", "gpio61";
12910fee55fcSKonrad Dybcio				function = "blsp_i2c11";
12920fee55fcSKonrad Dybcio				drive-strength = <2>;
12930fee55fcSKonrad Dybcio				bias-pull-up;
12940fee55fcSKonrad Dybcio			};
12950fee55fcSKonrad Dybcio
12960fee55fcSKonrad Dybcio			blsp2_i2c6_default: blsp2-i2c6-default {
12970fee55fcSKonrad Dybcio				pins = "gpio83", "gpio84";
12980fee55fcSKonrad Dybcio				function = "blsp_i2c12";
12990fee55fcSKonrad Dybcio				drive-strength = <2>;
13000fee55fcSKonrad Dybcio				bias-disable;
13010fee55fcSKonrad Dybcio			};
13020fee55fcSKonrad Dybcio
13030fee55fcSKonrad Dybcio			blsp2_i2c6_sleep: blsp2-i2c6-sleep {
13040fee55fcSKonrad Dybcio				pins = "gpio83", "gpio84";
13050fee55fcSKonrad Dybcio				function = "blsp_i2c12";
13060fee55fcSKonrad Dybcio				drive-strength = <2>;
13070fee55fcSKonrad Dybcio				bias-pull-up;
13080fee55fcSKonrad Dybcio			};
130932a5da21SJeffrey Hugo		};
131032a5da21SJeffrey Hugo
1311a9ee66deSSibi Sankar		remoteproc_mss: remoteproc@4080000 {
1312a9ee66deSSibi Sankar			compatible = "qcom,msm8998-mss-pil";
1313a9ee66deSSibi Sankar			reg = <0x04080000 0x100>, <0x04180000 0x20>;
1314a9ee66deSSibi Sankar			reg-names = "qdsp6", "rmb";
1315a9ee66deSSibi Sankar
1316a9ee66deSSibi Sankar			interrupts-extended =
1317a9ee66deSSibi Sankar				<&intc GIC_SPI 448 IRQ_TYPE_EDGE_RISING>,
1318a9ee66deSSibi Sankar				<&modem_smp2p_in 0 IRQ_TYPE_EDGE_RISING>,
1319a9ee66deSSibi Sankar				<&modem_smp2p_in 1 IRQ_TYPE_EDGE_RISING>,
1320a9ee66deSSibi Sankar				<&modem_smp2p_in 2 IRQ_TYPE_EDGE_RISING>,
1321a9ee66deSSibi Sankar				<&modem_smp2p_in 3 IRQ_TYPE_EDGE_RISING>,
1322a9ee66deSSibi Sankar				<&modem_smp2p_in 7 IRQ_TYPE_EDGE_RISING>;
1323a9ee66deSSibi Sankar			interrupt-names = "wdog", "fatal", "ready",
1324a9ee66deSSibi Sankar					  "handover", "stop-ack",
1325a9ee66deSSibi Sankar					  "shutdown-ack";
1326a9ee66deSSibi Sankar
1327a9ee66deSSibi Sankar			clocks = <&gcc GCC_MSS_CFG_AHB_CLK>,
1328a9ee66deSSibi Sankar				 <&gcc GCC_BIMC_MSS_Q6_AXI_CLK>,
1329a9ee66deSSibi Sankar				 <&gcc GCC_BOOT_ROM_AHB_CLK>,
1330a9ee66deSSibi Sankar				 <&gcc GCC_MSS_GPLL0_DIV_CLK_SRC>,
1331a9ee66deSSibi Sankar				 <&gcc GCC_MSS_SNOC_AXI_CLK>,
1332a9ee66deSSibi Sankar				 <&gcc GCC_MSS_MNOC_BIMC_AXI_CLK>,
1333a9ee66deSSibi Sankar				 <&rpmcc RPM_SMD_QDSS_CLK>,
1334a9ee66deSSibi Sankar				 <&rpmcc RPM_SMD_XO_CLK_SRC>;
1335a9ee66deSSibi Sankar			clock-names = "iface", "bus", "mem", "gpll0_mss",
1336a9ee66deSSibi Sankar				      "snoc_axi", "mnoc_axi", "qdss", "xo";
1337a9ee66deSSibi Sankar
1338a9ee66deSSibi Sankar			qcom,smem-states = <&modem_smp2p_out 0>;
1339a9ee66deSSibi Sankar			qcom,smem-state-names = "stop";
1340a9ee66deSSibi Sankar
1341a9ee66deSSibi Sankar			resets = <&gcc GCC_MSS_RESTART>;
1342a9ee66deSSibi Sankar			reset-names = "mss_restart";
1343a9ee66deSSibi Sankar
1344fc10cfa3SKrzysztof Kozlowski			qcom,halt-regs = <&tcsr_regs_1 0x3000 0x5000 0x4000>;
1345a9ee66deSSibi Sankar
1346a9ee66deSSibi Sankar			power-domains = <&rpmpd MSM8998_VDDCX>,
1347a9ee66deSSibi Sankar					<&rpmpd MSM8998_VDDMX>;
1348a9ee66deSSibi Sankar			power-domain-names = "cx", "mx";
1349a9ee66deSSibi Sankar
135003041cd2SJami Kettunen			status = "disabled";
135103041cd2SJami Kettunen
1352a9ee66deSSibi Sankar			mba {
1353a9ee66deSSibi Sankar				memory-region = <&mba_mem>;
1354a9ee66deSSibi Sankar			};
1355a9ee66deSSibi Sankar
1356a9ee66deSSibi Sankar			mpss {
1357a9ee66deSSibi Sankar				memory-region = <&mpss_mem>;
1358a9ee66deSSibi Sankar			};
1359a9ee66deSSibi Sankar
1360a9ee66deSSibi Sankar			glink-edge {
1361a9ee66deSSibi Sankar				interrupts = <GIC_SPI 452 IRQ_TYPE_EDGE_RISING>;
1362a9ee66deSSibi Sankar				label = "modem";
1363a9ee66deSSibi Sankar				qcom,remote-pid = <1>;
1364a9ee66deSSibi Sankar				mboxes = <&apcs_glb 15>;
1365a9ee66deSSibi Sankar			};
1366a9ee66deSSibi Sankar		};
1367a9ee66deSSibi Sankar
136887cd46d6SAngeloGioacchino Del Regno		adreno_gpu: gpu@5000000 {
136987cd46d6SAngeloGioacchino Del Regno			compatible = "qcom,adreno-540.1", "qcom,adreno";
137087cd46d6SAngeloGioacchino Del Regno			reg = <0x05000000 0x40000>;
137187cd46d6SAngeloGioacchino Del Regno			reg-names = "kgsl_3d0_reg_memory";
137287cd46d6SAngeloGioacchino Del Regno
137387cd46d6SAngeloGioacchino Del Regno			clocks = <&gcc GCC_GPU_CFG_AHB_CLK>,
137487cd46d6SAngeloGioacchino Del Regno				<&gpucc RBBMTIMER_CLK>,
137587cd46d6SAngeloGioacchino Del Regno				<&gcc GCC_BIMC_GFX_CLK>,
137687cd46d6SAngeloGioacchino Del Regno				<&gcc GCC_GPU_BIMC_GFX_CLK>,
137787cd46d6SAngeloGioacchino Del Regno				<&gpucc RBCPR_CLK>,
137887cd46d6SAngeloGioacchino Del Regno				<&gpucc GFX3D_CLK>;
137987cd46d6SAngeloGioacchino Del Regno			clock-names = "iface",
138087cd46d6SAngeloGioacchino Del Regno				"rbbmtimer",
138187cd46d6SAngeloGioacchino Del Regno				"mem",
138287cd46d6SAngeloGioacchino Del Regno				"mem_iface",
138387cd46d6SAngeloGioacchino Del Regno				"rbcpr",
138487cd46d6SAngeloGioacchino Del Regno				"core";
138587cd46d6SAngeloGioacchino Del Regno
138687cd46d6SAngeloGioacchino Del Regno			interrupts = <0 300 IRQ_TYPE_LEVEL_HIGH>;
138787cd46d6SAngeloGioacchino Del Regno			iommus = <&adreno_smmu 0>;
138887cd46d6SAngeloGioacchino Del Regno			operating-points-v2 = <&gpu_opp_table>;
138987cd46d6SAngeloGioacchino Del Regno			power-domains = <&rpmpd MSM8998_VDDMX>;
139087cd46d6SAngeloGioacchino Del Regno			status = "disabled";
139187cd46d6SAngeloGioacchino Del Regno
139287cd46d6SAngeloGioacchino Del Regno			gpu_opp_table: opp-table {
139387cd46d6SAngeloGioacchino Del Regno				compatible = "operating-points-v2";
139487cd46d6SAngeloGioacchino Del Regno				opp-710000097 {
139587cd46d6SAngeloGioacchino Del Regno					opp-hz = /bits/ 64 <710000097>;
139687cd46d6SAngeloGioacchino Del Regno					opp-level = <RPM_SMD_LEVEL_TURBO>;
139787cd46d6SAngeloGioacchino Del Regno					opp-supported-hw = <0xFF>;
139887cd46d6SAngeloGioacchino Del Regno				};
139987cd46d6SAngeloGioacchino Del Regno
140087cd46d6SAngeloGioacchino Del Regno				opp-670000048 {
140187cd46d6SAngeloGioacchino Del Regno					opp-hz = /bits/ 64 <670000048>;
140287cd46d6SAngeloGioacchino Del Regno					opp-level = <RPM_SMD_LEVEL_NOM_PLUS>;
140387cd46d6SAngeloGioacchino Del Regno					opp-supported-hw = <0xFF>;
140487cd46d6SAngeloGioacchino Del Regno				};
140587cd46d6SAngeloGioacchino Del Regno
140687cd46d6SAngeloGioacchino Del Regno				opp-596000097 {
140787cd46d6SAngeloGioacchino Del Regno					opp-hz = /bits/ 64 <596000097>;
140887cd46d6SAngeloGioacchino Del Regno					opp-level = <RPM_SMD_LEVEL_NOM>;
140987cd46d6SAngeloGioacchino Del Regno					opp-supported-hw = <0xFF>;
141087cd46d6SAngeloGioacchino Del Regno				};
141187cd46d6SAngeloGioacchino Del Regno
141287cd46d6SAngeloGioacchino Del Regno				opp-515000097 {
141387cd46d6SAngeloGioacchino Del Regno					opp-hz = /bits/ 64 <515000097>;
141487cd46d6SAngeloGioacchino Del Regno					opp-level = <RPM_SMD_LEVEL_SVS_PLUS>;
141587cd46d6SAngeloGioacchino Del Regno					opp-supported-hw = <0xFF>;
141687cd46d6SAngeloGioacchino Del Regno				};
141787cd46d6SAngeloGioacchino Del Regno
141887cd46d6SAngeloGioacchino Del Regno				opp-414000000 {
141987cd46d6SAngeloGioacchino Del Regno					opp-hz = /bits/ 64 <414000000>;
142087cd46d6SAngeloGioacchino Del Regno					opp-level = <RPM_SMD_LEVEL_SVS>;
142187cd46d6SAngeloGioacchino Del Regno					opp-supported-hw = <0xFF>;
142287cd46d6SAngeloGioacchino Del Regno				};
142387cd46d6SAngeloGioacchino Del Regno
142487cd46d6SAngeloGioacchino Del Regno				opp-342000000 {
142587cd46d6SAngeloGioacchino Del Regno					opp-hz = /bits/ 64 <342000000>;
142687cd46d6SAngeloGioacchino Del Regno					opp-level = <RPM_SMD_LEVEL_LOW_SVS>;
142787cd46d6SAngeloGioacchino Del Regno					opp-supported-hw = <0xFF>;
142887cd46d6SAngeloGioacchino Del Regno				};
142987cd46d6SAngeloGioacchino Del Regno
143087cd46d6SAngeloGioacchino Del Regno				opp-257000000 {
143187cd46d6SAngeloGioacchino Del Regno					opp-hz = /bits/ 64 <257000000>;
143287cd46d6SAngeloGioacchino Del Regno					opp-level = <RPM_SMD_LEVEL_MIN_SVS>;
143387cd46d6SAngeloGioacchino Del Regno					opp-supported-hw = <0xFF>;
143487cd46d6SAngeloGioacchino Del Regno				};
143587cd46d6SAngeloGioacchino Del Regno			};
143687cd46d6SAngeloGioacchino Del Regno		};
143787cd46d6SAngeloGioacchino Del Regno
143887cd46d6SAngeloGioacchino Del Regno		adreno_smmu: iommu@5040000 {
143987cd46d6SAngeloGioacchino Del Regno			compatible = "qcom,msm8998-smmu-v2", "qcom,smmu-v2";
144087cd46d6SAngeloGioacchino Del Regno			reg = <0x05040000 0x10000>;
144187cd46d6SAngeloGioacchino Del Regno			clocks = <&gcc GCC_GPU_CFG_AHB_CLK>,
144287cd46d6SAngeloGioacchino Del Regno				 <&gcc GCC_BIMC_GFX_CLK>,
144387cd46d6SAngeloGioacchino Del Regno				 <&gcc GCC_GPU_BIMC_GFX_CLK>;
144487cd46d6SAngeloGioacchino Del Regno			clock-names = "iface", "mem", "mem_iface";
144587cd46d6SAngeloGioacchino Del Regno
144687cd46d6SAngeloGioacchino Del Regno			#global-interrupts = <0>;
144787cd46d6SAngeloGioacchino Del Regno			#iommu-cells = <1>;
144887cd46d6SAngeloGioacchino Del Regno			interrupts =
144987cd46d6SAngeloGioacchino Del Regno				<GIC_SPI 329 IRQ_TYPE_LEVEL_HIGH>,
145087cd46d6SAngeloGioacchino Del Regno				<GIC_SPI 330 IRQ_TYPE_LEVEL_HIGH>,
145187cd46d6SAngeloGioacchino Del Regno				<GIC_SPI 331 IRQ_TYPE_LEVEL_HIGH>;
145287cd46d6SAngeloGioacchino Del Regno			/*
145387cd46d6SAngeloGioacchino Del Regno			 * GPU-GX GDSC's parent is GPU-CX. We need to bring up the
145487cd46d6SAngeloGioacchino Del Regno			 * GPU-CX for SMMU but we need both of them up for Adreno.
145587cd46d6SAngeloGioacchino Del Regno			 * Contemporarily, we also need to manage the VDDMX rpmpd
145687cd46d6SAngeloGioacchino Del Regno			 * domain in the Adreno driver.
145787cd46d6SAngeloGioacchino Del Regno			 * Enable GPU CX/GX GDSCs here so that we can manage the
145887cd46d6SAngeloGioacchino Del Regno			 * SoC VDDMX RPM Power Domain in the Adreno driver.
145987cd46d6SAngeloGioacchino Del Regno			 */
146087cd46d6SAngeloGioacchino Del Regno			power-domains = <&gpucc GPU_GX_GDSC>;
146187cd46d6SAngeloGioacchino Del Regno			status = "disabled";
146287cd46d6SAngeloGioacchino Del Regno		};
146387cd46d6SAngeloGioacchino Del Regno
1464876a7573SJeffrey Hugo		gpucc: clock-controller@5065000 {
1465876a7573SJeffrey Hugo			compatible = "qcom,msm8998-gpucc";
1466876a7573SJeffrey Hugo			#clock-cells = <1>;
1467876a7573SJeffrey Hugo			#reset-cells = <1>;
1468876a7573SJeffrey Hugo			#power-domain-cells = <1>;
1469876a7573SJeffrey Hugo			reg = <0x05065000 0x9000>;
1470876a7573SJeffrey Hugo
1471876a7573SJeffrey Hugo			clocks = <&rpmcc RPM_SMD_XO_CLK_SRC>,
1472876a7573SJeffrey Hugo				 <&gcc GPLL0_OUT_MAIN>;
1473876a7573SJeffrey Hugo			clock-names = "xo",
1474876a7573SJeffrey Hugo				      "gpll0";
1475876a7573SJeffrey Hugo		};
1476876a7573SJeffrey Hugo
1477a9ee66deSSibi Sankar		remoteproc_slpi: remoteproc@5800000 {
1478a9ee66deSSibi Sankar			compatible = "qcom,msm8998-slpi-pas";
1479a9ee66deSSibi Sankar			reg = <0x05800000 0x4040>;
1480a9ee66deSSibi Sankar
1481a9ee66deSSibi Sankar			interrupts-extended = <&intc GIC_SPI 390 IRQ_TYPE_EDGE_RISING>,
1482a9ee66deSSibi Sankar					      <&slpi_smp2p_in 0 IRQ_TYPE_EDGE_RISING>,
1483a9ee66deSSibi Sankar					      <&slpi_smp2p_in 1 IRQ_TYPE_EDGE_RISING>,
1484a9ee66deSSibi Sankar					      <&slpi_smp2p_in 2 IRQ_TYPE_EDGE_RISING>,
1485a9ee66deSSibi Sankar					      <&slpi_smp2p_in 3 IRQ_TYPE_EDGE_RISING>;
1486a9ee66deSSibi Sankar			interrupt-names = "wdog", "fatal", "ready",
1487a9ee66deSSibi Sankar					  "handover", "stop-ack";
1488a9ee66deSSibi Sankar
1489a9ee66deSSibi Sankar			px-supply = <&vreg_lvs2a_1p8>;
1490a9ee66deSSibi Sankar
1491a9ee66deSSibi Sankar			clocks = <&rpmcc RPM_SMD_XO_CLK_SRC>,
1492a9ee66deSSibi Sankar				 <&rpmcc RPM_SMD_AGGR2_NOC_CLK>;
1493a9ee66deSSibi Sankar			clock-names = "xo", "aggre2";
1494a9ee66deSSibi Sankar
1495a9ee66deSSibi Sankar			memory-region = <&slpi_mem>;
1496a9ee66deSSibi Sankar
1497a9ee66deSSibi Sankar			qcom,smem-states = <&slpi_smp2p_out 0>;
1498a9ee66deSSibi Sankar			qcom,smem-state-names = "stop";
1499a9ee66deSSibi Sankar
1500a9ee66deSSibi Sankar			power-domains = <&rpmpd MSM8998_SSCCX>;
1501a9ee66deSSibi Sankar			power-domain-names = "ssc_cx";
1502a9ee66deSSibi Sankar
1503a9ee66deSSibi Sankar			status = "disabled";
1504a9ee66deSSibi Sankar
1505a9ee66deSSibi Sankar			glink-edge {
1506a9ee66deSSibi Sankar				interrupts = <GIC_SPI 179 IRQ_TYPE_EDGE_RISING>;
1507a9ee66deSSibi Sankar				label = "dsps";
1508a9ee66deSSibi Sankar				qcom,remote-pid = <3>;
1509a9ee66deSSibi Sankar				mboxes = <&apcs_glb 27>;
1510a9ee66deSSibi Sankar			};
1511a9ee66deSSibi Sankar		};
1512a9ee66deSSibi Sankar
1513a636f93fSSai Prakash Ranjan		stm: stm@6002000 {
1514783abfa2SSai Prakash Ranjan			compatible = "arm,coresight-stm", "arm,primecell";
1515783abfa2SSai Prakash Ranjan			reg = <0x06002000 0x1000>,
1516783abfa2SSai Prakash Ranjan			      <0x16280000 0x180000>;
1517783abfa2SSai Prakash Ranjan			reg-names = "stm-base", "stm-data-base";
1518a636f93fSSai Prakash Ranjan			status = "disabled";
1519783abfa2SSai Prakash Ranjan
1520783abfa2SSai Prakash Ranjan			clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>;
1521783abfa2SSai Prakash Ranjan			clock-names = "apb_pclk", "atclk";
1522783abfa2SSai Prakash Ranjan
1523783abfa2SSai Prakash Ranjan			out-ports {
1524783abfa2SSai Prakash Ranjan				port {
1525783abfa2SSai Prakash Ranjan					stm_out: endpoint {
1526783abfa2SSai Prakash Ranjan						remote-endpoint = <&funnel0_in7>;
1527783abfa2SSai Prakash Ranjan					};
1528783abfa2SSai Prakash Ranjan				};
1529783abfa2SSai Prakash Ranjan			};
1530783abfa2SSai Prakash Ranjan		};
1531783abfa2SSai Prakash Ranjan
1532a636f93fSSai Prakash Ranjan		funnel1: funnel@6041000 {
1533783abfa2SSai Prakash Ranjan			compatible = "arm,coresight-dynamic-funnel", "arm,primecell";
1534783abfa2SSai Prakash Ranjan			reg = <0x06041000 0x1000>;
1535a636f93fSSai Prakash Ranjan			status = "disabled";
1536783abfa2SSai Prakash Ranjan
1537783abfa2SSai Prakash Ranjan			clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>;
1538783abfa2SSai Prakash Ranjan			clock-names = "apb_pclk", "atclk";
1539783abfa2SSai Prakash Ranjan
1540783abfa2SSai Prakash Ranjan			out-ports {
1541783abfa2SSai Prakash Ranjan				port {
1542783abfa2SSai Prakash Ranjan					funnel0_out: endpoint {
1543783abfa2SSai Prakash Ranjan						remote-endpoint =
1544783abfa2SSai Prakash Ranjan						  <&merge_funnel_in0>;
1545783abfa2SSai Prakash Ranjan					};
1546783abfa2SSai Prakash Ranjan				};
1547783abfa2SSai Prakash Ranjan			};
1548783abfa2SSai Prakash Ranjan
1549783abfa2SSai Prakash Ranjan			in-ports {
1550783abfa2SSai Prakash Ranjan				#address-cells = <1>;
1551783abfa2SSai Prakash Ranjan				#size-cells = <0>;
1552783abfa2SSai Prakash Ranjan
1553783abfa2SSai Prakash Ranjan				port@7 {
1554783abfa2SSai Prakash Ranjan					reg = <7>;
1555783abfa2SSai Prakash Ranjan					funnel0_in7: endpoint {
1556783abfa2SSai Prakash Ranjan						remote-endpoint = <&stm_out>;
1557783abfa2SSai Prakash Ranjan					};
1558783abfa2SSai Prakash Ranjan				};
1559783abfa2SSai Prakash Ranjan			};
1560783abfa2SSai Prakash Ranjan		};
1561783abfa2SSai Prakash Ranjan
1562a636f93fSSai Prakash Ranjan		funnel2: funnel@6042000 {
1563783abfa2SSai Prakash Ranjan			compatible = "arm,coresight-dynamic-funnel", "arm,primecell";
1564783abfa2SSai Prakash Ranjan			reg = <0x06042000 0x1000>;
1565a636f93fSSai Prakash Ranjan			status = "disabled";
1566783abfa2SSai Prakash Ranjan
1567783abfa2SSai Prakash Ranjan			clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>;
1568783abfa2SSai Prakash Ranjan			clock-names = "apb_pclk", "atclk";
1569783abfa2SSai Prakash Ranjan
1570783abfa2SSai Prakash Ranjan			out-ports {
1571783abfa2SSai Prakash Ranjan				port {
1572783abfa2SSai Prakash Ranjan					funnel1_out: endpoint {
1573783abfa2SSai Prakash Ranjan						remote-endpoint =
1574783abfa2SSai Prakash Ranjan						  <&merge_funnel_in1>;
1575783abfa2SSai Prakash Ranjan					};
1576783abfa2SSai Prakash Ranjan				};
1577783abfa2SSai Prakash Ranjan			};
1578783abfa2SSai Prakash Ranjan
1579783abfa2SSai Prakash Ranjan			in-ports {
1580783abfa2SSai Prakash Ranjan				#address-cells = <1>;
1581783abfa2SSai Prakash Ranjan				#size-cells = <0>;
1582783abfa2SSai Prakash Ranjan
1583783abfa2SSai Prakash Ranjan				port@6 {
1584783abfa2SSai Prakash Ranjan					reg = <6>;
1585783abfa2SSai Prakash Ranjan					funnel1_in6: endpoint {
1586783abfa2SSai Prakash Ranjan						remote-endpoint =
1587783abfa2SSai Prakash Ranjan						  <&apss_merge_funnel_out>;
1588783abfa2SSai Prakash Ranjan					};
1589783abfa2SSai Prakash Ranjan				};
1590783abfa2SSai Prakash Ranjan			};
1591783abfa2SSai Prakash Ranjan		};
1592783abfa2SSai Prakash Ranjan
1593a636f93fSSai Prakash Ranjan		funnel3: funnel@6045000 {
1594783abfa2SSai Prakash Ranjan			compatible = "arm,coresight-dynamic-funnel", "arm,primecell";
1595783abfa2SSai Prakash Ranjan			reg = <0x06045000 0x1000>;
1596a636f93fSSai Prakash Ranjan			status = "disabled";
1597783abfa2SSai Prakash Ranjan
1598783abfa2SSai Prakash Ranjan			clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>;
1599783abfa2SSai Prakash Ranjan			clock-names = "apb_pclk", "atclk";
1600783abfa2SSai Prakash Ranjan
1601783abfa2SSai Prakash Ranjan			out-ports {
1602783abfa2SSai Prakash Ranjan				port {
1603783abfa2SSai Prakash Ranjan					merge_funnel_out: endpoint {
1604783abfa2SSai Prakash Ranjan						remote-endpoint =
1605783abfa2SSai Prakash Ranjan						  <&etf_in>;
1606783abfa2SSai Prakash Ranjan					};
1607783abfa2SSai Prakash Ranjan				};
1608783abfa2SSai Prakash Ranjan			};
1609783abfa2SSai Prakash Ranjan
1610783abfa2SSai Prakash Ranjan			in-ports {
1611783abfa2SSai Prakash Ranjan				#address-cells = <1>;
1612783abfa2SSai Prakash Ranjan				#size-cells = <0>;
1613783abfa2SSai Prakash Ranjan
1614783abfa2SSai Prakash Ranjan				port@0 {
1615783abfa2SSai Prakash Ranjan					reg = <0>;
1616783abfa2SSai Prakash Ranjan					merge_funnel_in0: endpoint {
1617783abfa2SSai Prakash Ranjan						remote-endpoint =
1618783abfa2SSai Prakash Ranjan						  <&funnel0_out>;
1619783abfa2SSai Prakash Ranjan					};
1620783abfa2SSai Prakash Ranjan				};
1621783abfa2SSai Prakash Ranjan
1622783abfa2SSai Prakash Ranjan				port@1 {
1623783abfa2SSai Prakash Ranjan					reg = <1>;
1624783abfa2SSai Prakash Ranjan					merge_funnel_in1: endpoint {
1625783abfa2SSai Prakash Ranjan						remote-endpoint =
1626783abfa2SSai Prakash Ranjan						  <&funnel1_out>;
1627783abfa2SSai Prakash Ranjan					};
1628783abfa2SSai Prakash Ranjan				};
1629783abfa2SSai Prakash Ranjan			};
1630783abfa2SSai Prakash Ranjan		};
1631783abfa2SSai Prakash Ranjan
1632a636f93fSSai Prakash Ranjan		replicator1: replicator@6046000 {
1633783abfa2SSai Prakash Ranjan			compatible = "arm,coresight-dynamic-replicator", "arm,primecell";
1634783abfa2SSai Prakash Ranjan			reg = <0x06046000 0x1000>;
1635a636f93fSSai Prakash Ranjan			status = "disabled";
1636783abfa2SSai Prakash Ranjan
1637783abfa2SSai Prakash Ranjan			clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>;
1638783abfa2SSai Prakash Ranjan			clock-names = "apb_pclk", "atclk";
1639783abfa2SSai Prakash Ranjan
1640783abfa2SSai Prakash Ranjan			out-ports {
1641783abfa2SSai Prakash Ranjan				port {
1642783abfa2SSai Prakash Ranjan					replicator_out: endpoint {
1643783abfa2SSai Prakash Ranjan						remote-endpoint = <&etr_in>;
1644783abfa2SSai Prakash Ranjan					};
1645783abfa2SSai Prakash Ranjan				};
1646783abfa2SSai Prakash Ranjan			};
1647783abfa2SSai Prakash Ranjan
1648783abfa2SSai Prakash Ranjan			in-ports {
1649783abfa2SSai Prakash Ranjan				port {
1650783abfa2SSai Prakash Ranjan					replicator_in: endpoint {
1651783abfa2SSai Prakash Ranjan						remote-endpoint = <&etf_out>;
1652783abfa2SSai Prakash Ranjan					};
1653783abfa2SSai Prakash Ranjan				};
1654783abfa2SSai Prakash Ranjan			};
1655783abfa2SSai Prakash Ranjan		};
1656783abfa2SSai Prakash Ranjan
1657a636f93fSSai Prakash Ranjan		etf: etf@6047000 {
1658783abfa2SSai Prakash Ranjan			compatible = "arm,coresight-tmc", "arm,primecell";
1659783abfa2SSai Prakash Ranjan			reg = <0x06047000 0x1000>;
1660a636f93fSSai Prakash Ranjan			status = "disabled";
1661783abfa2SSai Prakash Ranjan
1662783abfa2SSai Prakash Ranjan			clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>;
1663783abfa2SSai Prakash Ranjan			clock-names = "apb_pclk", "atclk";
1664783abfa2SSai Prakash Ranjan
1665783abfa2SSai Prakash Ranjan			out-ports {
1666783abfa2SSai Prakash Ranjan				port {
1667783abfa2SSai Prakash Ranjan					etf_out: endpoint {
1668783abfa2SSai Prakash Ranjan						remote-endpoint =
1669783abfa2SSai Prakash Ranjan						  <&replicator_in>;
1670783abfa2SSai Prakash Ranjan					};
1671783abfa2SSai Prakash Ranjan				};
1672783abfa2SSai Prakash Ranjan			};
1673783abfa2SSai Prakash Ranjan
1674783abfa2SSai Prakash Ranjan			in-ports {
1675783abfa2SSai Prakash Ranjan				port {
1676783abfa2SSai Prakash Ranjan					etf_in: endpoint {
1677783abfa2SSai Prakash Ranjan						remote-endpoint =
1678783abfa2SSai Prakash Ranjan						  <&merge_funnel_out>;
1679783abfa2SSai Prakash Ranjan					};
1680783abfa2SSai Prakash Ranjan				};
1681783abfa2SSai Prakash Ranjan			};
1682783abfa2SSai Prakash Ranjan		};
1683783abfa2SSai Prakash Ranjan
1684a636f93fSSai Prakash Ranjan		etr: etr@6048000 {
1685783abfa2SSai Prakash Ranjan			compatible = "arm,coresight-tmc", "arm,primecell";
1686783abfa2SSai Prakash Ranjan			reg = <0x06048000 0x1000>;
1687a636f93fSSai Prakash Ranjan			status = "disabled";
1688783abfa2SSai Prakash Ranjan
1689783abfa2SSai Prakash Ranjan			clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>;
1690783abfa2SSai Prakash Ranjan			clock-names = "apb_pclk", "atclk";
1691783abfa2SSai Prakash Ranjan			arm,scatter-gather;
1692783abfa2SSai Prakash Ranjan
1693783abfa2SSai Prakash Ranjan			in-ports {
1694783abfa2SSai Prakash Ranjan				port {
1695783abfa2SSai Prakash Ranjan					etr_in: endpoint {
1696783abfa2SSai Prakash Ranjan						remote-endpoint =
1697783abfa2SSai Prakash Ranjan						  <&replicator_out>;
1698783abfa2SSai Prakash Ranjan					};
1699783abfa2SSai Prakash Ranjan				};
1700783abfa2SSai Prakash Ranjan			};
1701783abfa2SSai Prakash Ranjan		};
1702783abfa2SSai Prakash Ranjan
1703a636f93fSSai Prakash Ranjan		etm1: etm@7840000 {
1704783abfa2SSai Prakash Ranjan			compatible = "arm,coresight-etm4x", "arm,primecell";
1705783abfa2SSai Prakash Ranjan			reg = <0x07840000 0x1000>;
1706a636f93fSSai Prakash Ranjan			status = "disabled";
1707783abfa2SSai Prakash Ranjan
1708783abfa2SSai Prakash Ranjan			clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>;
1709783abfa2SSai Prakash Ranjan			clock-names = "apb_pclk", "atclk";
1710783abfa2SSai Prakash Ranjan
1711783abfa2SSai Prakash Ranjan			cpu = <&CPU0>;
1712783abfa2SSai Prakash Ranjan
1713783abfa2SSai Prakash Ranjan			out-ports {
1714783abfa2SSai Prakash Ranjan				port {
1715783abfa2SSai Prakash Ranjan					etm0_out: endpoint {
1716783abfa2SSai Prakash Ranjan						remote-endpoint =
1717783abfa2SSai Prakash Ranjan						  <&apss_funnel_in0>;
1718783abfa2SSai Prakash Ranjan					};
1719783abfa2SSai Prakash Ranjan				};
1720783abfa2SSai Prakash Ranjan			};
1721783abfa2SSai Prakash Ranjan		};
1722783abfa2SSai Prakash Ranjan
1723a636f93fSSai Prakash Ranjan		etm2: etm@7940000 {
1724783abfa2SSai Prakash Ranjan			compatible = "arm,coresight-etm4x", "arm,primecell";
1725783abfa2SSai Prakash Ranjan			reg = <0x07940000 0x1000>;
1726a636f93fSSai Prakash Ranjan			status = "disabled";
1727783abfa2SSai Prakash Ranjan
1728783abfa2SSai Prakash Ranjan			clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>;
1729783abfa2SSai Prakash Ranjan			clock-names = "apb_pclk", "atclk";
1730783abfa2SSai Prakash Ranjan
1731783abfa2SSai Prakash Ranjan			cpu = <&CPU1>;
1732783abfa2SSai Prakash Ranjan
1733783abfa2SSai Prakash Ranjan			out-ports {
1734783abfa2SSai Prakash Ranjan				port {
1735783abfa2SSai Prakash Ranjan					etm1_out: endpoint {
1736783abfa2SSai Prakash Ranjan						remote-endpoint =
1737783abfa2SSai Prakash Ranjan						  <&apss_funnel_in1>;
1738783abfa2SSai Prakash Ranjan					};
1739783abfa2SSai Prakash Ranjan				};
1740783abfa2SSai Prakash Ranjan			};
1741783abfa2SSai Prakash Ranjan		};
1742783abfa2SSai Prakash Ranjan
1743a636f93fSSai Prakash Ranjan		etm3: etm@7a40000 {
1744783abfa2SSai Prakash Ranjan			compatible = "arm,coresight-etm4x", "arm,primecell";
1745783abfa2SSai Prakash Ranjan			reg = <0x07a40000 0x1000>;
1746a636f93fSSai Prakash Ranjan			status = "disabled";
1747783abfa2SSai Prakash Ranjan
1748783abfa2SSai Prakash Ranjan			clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>;
1749783abfa2SSai Prakash Ranjan			clock-names = "apb_pclk", "atclk";
1750783abfa2SSai Prakash Ranjan
1751783abfa2SSai Prakash Ranjan			cpu = <&CPU2>;
1752783abfa2SSai Prakash Ranjan
1753783abfa2SSai Prakash Ranjan			out-ports {
1754783abfa2SSai Prakash Ranjan				port {
1755783abfa2SSai Prakash Ranjan					etm2_out: endpoint {
1756783abfa2SSai Prakash Ranjan						remote-endpoint =
1757783abfa2SSai Prakash Ranjan						  <&apss_funnel_in2>;
1758783abfa2SSai Prakash Ranjan					};
1759783abfa2SSai Prakash Ranjan				};
1760783abfa2SSai Prakash Ranjan			};
1761783abfa2SSai Prakash Ranjan		};
1762783abfa2SSai Prakash Ranjan
1763a636f93fSSai Prakash Ranjan		etm4: etm@7b40000 {
1764783abfa2SSai Prakash Ranjan			compatible = "arm,coresight-etm4x", "arm,primecell";
1765783abfa2SSai Prakash Ranjan			reg = <0x07b40000 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 = <&CPU3>;
1772783abfa2SSai Prakash Ranjan
1773783abfa2SSai Prakash Ranjan			out-ports {
1774783abfa2SSai Prakash Ranjan				port {
1775783abfa2SSai Prakash Ranjan					etm3_out: endpoint {
1776783abfa2SSai Prakash Ranjan						remote-endpoint =
1777783abfa2SSai Prakash Ranjan						  <&apss_funnel_in3>;
1778783abfa2SSai Prakash Ranjan					};
1779783abfa2SSai Prakash Ranjan				};
1780783abfa2SSai Prakash Ranjan			};
1781783abfa2SSai Prakash Ranjan		};
1782783abfa2SSai Prakash Ranjan
1783a636f93fSSai Prakash Ranjan		funnel4: funnel@7b60000 { /* APSS Funnel */
1784783abfa2SSai Prakash Ranjan			compatible = "arm,coresight-etm4x", "arm,primecell";
1785783abfa2SSai Prakash Ranjan			reg = <0x07b60000 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			out-ports {
1792783abfa2SSai Prakash Ranjan				port {
1793783abfa2SSai Prakash Ranjan					apss_funnel_out: endpoint {
1794783abfa2SSai Prakash Ranjan						remote-endpoint =
1795783abfa2SSai Prakash Ranjan						  <&apss_merge_funnel_in>;
1796783abfa2SSai Prakash Ranjan					};
1797783abfa2SSai Prakash Ranjan				};
1798783abfa2SSai Prakash Ranjan			};
1799783abfa2SSai Prakash Ranjan
1800783abfa2SSai Prakash Ranjan			in-ports {
1801783abfa2SSai Prakash Ranjan				#address-cells = <1>;
1802783abfa2SSai Prakash Ranjan				#size-cells = <0>;
1803783abfa2SSai Prakash Ranjan
1804783abfa2SSai Prakash Ranjan				port@0 {
1805783abfa2SSai Prakash Ranjan					reg = <0>;
1806783abfa2SSai Prakash Ranjan					apss_funnel_in0: endpoint {
1807783abfa2SSai Prakash Ranjan						remote-endpoint =
1808783abfa2SSai Prakash Ranjan						  <&etm0_out>;
1809783abfa2SSai Prakash Ranjan					};
1810783abfa2SSai Prakash Ranjan				};
1811783abfa2SSai Prakash Ranjan
1812783abfa2SSai Prakash Ranjan				port@1 {
1813783abfa2SSai Prakash Ranjan					reg = <1>;
1814783abfa2SSai Prakash Ranjan					apss_funnel_in1: endpoint {
1815783abfa2SSai Prakash Ranjan						remote-endpoint =
1816783abfa2SSai Prakash Ranjan						  <&etm1_out>;
1817783abfa2SSai Prakash Ranjan					};
1818783abfa2SSai Prakash Ranjan				};
1819783abfa2SSai Prakash Ranjan
1820783abfa2SSai Prakash Ranjan				port@2 {
1821783abfa2SSai Prakash Ranjan					reg = <2>;
1822783abfa2SSai Prakash Ranjan					apss_funnel_in2: endpoint {
1823783abfa2SSai Prakash Ranjan						remote-endpoint =
1824783abfa2SSai Prakash Ranjan						  <&etm2_out>;
1825783abfa2SSai Prakash Ranjan					};
1826783abfa2SSai Prakash Ranjan				};
1827783abfa2SSai Prakash Ranjan
1828783abfa2SSai Prakash Ranjan				port@3 {
1829783abfa2SSai Prakash Ranjan					reg = <3>;
1830783abfa2SSai Prakash Ranjan					apss_funnel_in3: endpoint {
1831783abfa2SSai Prakash Ranjan						remote-endpoint =
1832783abfa2SSai Prakash Ranjan						  <&etm3_out>;
1833783abfa2SSai Prakash Ranjan					};
1834783abfa2SSai Prakash Ranjan				};
1835783abfa2SSai Prakash Ranjan
1836783abfa2SSai Prakash Ranjan				port@4 {
1837783abfa2SSai Prakash Ranjan					reg = <4>;
1838783abfa2SSai Prakash Ranjan					apss_funnel_in4: endpoint {
1839783abfa2SSai Prakash Ranjan						remote-endpoint =
1840783abfa2SSai Prakash Ranjan						  <&etm4_out>;
1841783abfa2SSai Prakash Ranjan					};
1842783abfa2SSai Prakash Ranjan				};
1843783abfa2SSai Prakash Ranjan
1844783abfa2SSai Prakash Ranjan				port@5 {
1845783abfa2SSai Prakash Ranjan					reg = <5>;
1846783abfa2SSai Prakash Ranjan					apss_funnel_in5: endpoint {
1847783abfa2SSai Prakash Ranjan						remote-endpoint =
1848783abfa2SSai Prakash Ranjan						  <&etm5_out>;
1849783abfa2SSai Prakash Ranjan					};
1850783abfa2SSai Prakash Ranjan				};
1851783abfa2SSai Prakash Ranjan
1852783abfa2SSai Prakash Ranjan				port@6 {
1853783abfa2SSai Prakash Ranjan					reg = <6>;
1854783abfa2SSai Prakash Ranjan					apss_funnel_in6: endpoint {
1855783abfa2SSai Prakash Ranjan						remote-endpoint =
1856783abfa2SSai Prakash Ranjan						  <&etm6_out>;
1857783abfa2SSai Prakash Ranjan					};
1858783abfa2SSai Prakash Ranjan				};
1859783abfa2SSai Prakash Ranjan
1860783abfa2SSai Prakash Ranjan				port@7 {
1861783abfa2SSai Prakash Ranjan					reg = <7>;
1862783abfa2SSai Prakash Ranjan					apss_funnel_in7: endpoint {
1863783abfa2SSai Prakash Ranjan						remote-endpoint =
1864783abfa2SSai Prakash Ranjan						  <&etm7_out>;
1865783abfa2SSai Prakash Ranjan					};
1866783abfa2SSai Prakash Ranjan				};
1867783abfa2SSai Prakash Ranjan			};
1868783abfa2SSai Prakash Ranjan		};
1869783abfa2SSai Prakash Ranjan
1870a636f93fSSai Prakash Ranjan		funnel5: funnel@7b70000 {
1871783abfa2SSai Prakash Ranjan			compatible = "arm,coresight-dynamic-funnel", "arm,primecell";
1872783abfa2SSai Prakash Ranjan			reg = <0x07b70000 0x1000>;
1873a636f93fSSai Prakash Ranjan			status = "disabled";
1874783abfa2SSai Prakash Ranjan
1875783abfa2SSai Prakash Ranjan			clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>;
1876783abfa2SSai Prakash Ranjan			clock-names = "apb_pclk", "atclk";
1877783abfa2SSai Prakash Ranjan
1878783abfa2SSai Prakash Ranjan			out-ports {
1879783abfa2SSai Prakash Ranjan				port {
1880783abfa2SSai Prakash Ranjan					apss_merge_funnel_out: endpoint {
1881783abfa2SSai Prakash Ranjan						remote-endpoint =
1882783abfa2SSai Prakash Ranjan						  <&funnel1_in6>;
1883783abfa2SSai Prakash Ranjan					};
1884783abfa2SSai Prakash Ranjan				};
1885783abfa2SSai Prakash Ranjan			};
1886783abfa2SSai Prakash Ranjan
1887783abfa2SSai Prakash Ranjan			in-ports {
1888783abfa2SSai Prakash Ranjan				port {
1889783abfa2SSai Prakash Ranjan					apss_merge_funnel_in: endpoint {
1890783abfa2SSai Prakash Ranjan						remote-endpoint =
1891783abfa2SSai Prakash Ranjan						  <&apss_funnel_out>;
1892783abfa2SSai Prakash Ranjan					};
1893783abfa2SSai Prakash Ranjan				};
1894783abfa2SSai Prakash Ranjan			};
1895783abfa2SSai Prakash Ranjan		};
1896783abfa2SSai Prakash Ranjan
1897a636f93fSSai Prakash Ranjan		etm5: etm@7c40000 {
1898783abfa2SSai Prakash Ranjan			compatible = "arm,coresight-etm4x", "arm,primecell";
1899783abfa2SSai Prakash Ranjan			reg = <0x07c40000 0x1000>;
1900a636f93fSSai Prakash Ranjan			status = "disabled";
1901783abfa2SSai Prakash Ranjan
1902783abfa2SSai Prakash Ranjan			clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>;
1903783abfa2SSai Prakash Ranjan			clock-names = "apb_pclk", "atclk";
1904783abfa2SSai Prakash Ranjan
1905783abfa2SSai Prakash Ranjan			cpu = <&CPU4>;
1906783abfa2SSai Prakash Ranjan
1907783abfa2SSai Prakash Ranjan			port {
1908783abfa2SSai Prakash Ranjan				etm4_out: endpoint {
1909783abfa2SSai Prakash Ranjan					remote-endpoint = <&apss_funnel_in4>;
1910783abfa2SSai Prakash Ranjan				};
1911783abfa2SSai Prakash Ranjan			};
1912783abfa2SSai Prakash Ranjan		};
1913783abfa2SSai Prakash Ranjan
1914a636f93fSSai Prakash Ranjan		etm6: etm@7d40000 {
1915783abfa2SSai Prakash Ranjan			compatible = "arm,coresight-etm4x", "arm,primecell";
1916783abfa2SSai Prakash Ranjan			reg = <0x07d40000 0x1000>;
1917a636f93fSSai Prakash Ranjan			status = "disabled";
1918783abfa2SSai Prakash Ranjan
1919783abfa2SSai Prakash Ranjan			clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>;
1920783abfa2SSai Prakash Ranjan			clock-names = "apb_pclk", "atclk";
1921783abfa2SSai Prakash Ranjan
1922783abfa2SSai Prakash Ranjan			cpu = <&CPU5>;
1923783abfa2SSai Prakash Ranjan
1924783abfa2SSai Prakash Ranjan			port {
1925783abfa2SSai Prakash Ranjan				etm5_out: endpoint {
1926783abfa2SSai Prakash Ranjan					remote-endpoint = <&apss_funnel_in5>;
1927783abfa2SSai Prakash Ranjan				};
1928783abfa2SSai Prakash Ranjan			};
1929783abfa2SSai Prakash Ranjan		};
1930783abfa2SSai Prakash Ranjan
1931a636f93fSSai Prakash Ranjan		etm7: etm@7e40000 {
1932783abfa2SSai Prakash Ranjan			compatible = "arm,coresight-etm4x", "arm,primecell";
1933783abfa2SSai Prakash Ranjan			reg = <0x07e40000 0x1000>;
1934a636f93fSSai Prakash Ranjan			status = "disabled";
1935783abfa2SSai Prakash Ranjan
1936783abfa2SSai Prakash Ranjan			clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>;
1937783abfa2SSai Prakash Ranjan			clock-names = "apb_pclk", "atclk";
1938783abfa2SSai Prakash Ranjan
1939783abfa2SSai Prakash Ranjan			cpu = <&CPU6>;
1940783abfa2SSai Prakash Ranjan
1941783abfa2SSai Prakash Ranjan			port {
1942783abfa2SSai Prakash Ranjan				etm6_out: endpoint {
1943783abfa2SSai Prakash Ranjan					remote-endpoint = <&apss_funnel_in6>;
1944783abfa2SSai Prakash Ranjan				};
1945783abfa2SSai Prakash Ranjan			};
1946783abfa2SSai Prakash Ranjan		};
1947783abfa2SSai Prakash Ranjan
1948a636f93fSSai Prakash Ranjan		etm8: etm@7f40000 {
1949783abfa2SSai Prakash Ranjan			compatible = "arm,coresight-etm4x", "arm,primecell";
1950783abfa2SSai Prakash Ranjan			reg = <0x07f40000 0x1000>;
1951a636f93fSSai Prakash Ranjan			status = "disabled";
1952783abfa2SSai Prakash Ranjan
1953783abfa2SSai Prakash Ranjan			clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>;
1954783abfa2SSai Prakash Ranjan			clock-names = "apb_pclk", "atclk";
1955783abfa2SSai Prakash Ranjan
1956783abfa2SSai Prakash Ranjan			cpu = <&CPU7>;
1957783abfa2SSai Prakash Ranjan
1958783abfa2SSai Prakash Ranjan			port {
1959783abfa2SSai Prakash Ranjan				etm7_out: endpoint {
1960783abfa2SSai Prakash Ranjan					remote-endpoint = <&apss_funnel_in7>;
1961783abfa2SSai Prakash Ranjan				};
1962783abfa2SSai Prakash Ranjan			};
1963783abfa2SSai Prakash Ranjan		};
1964783abfa2SSai Prakash Ranjan
1965290bc684SMaulik Shah		sram@290000 {
1966290bc684SMaulik Shah			compatible = "qcom,rpm-stats";
1967290bc684SMaulik Shah			reg = <0x00290000 0x10000>;
1968290bc684SMaulik Shah		};
1969290bc684SMaulik Shah
197032a5da21SJeffrey Hugo		spmi_bus: spmi@800f000 {
197132a5da21SJeffrey Hugo			compatible = "qcom,spmi-pmic-arb";
197232a5da21SJeffrey Hugo			reg =	<0x0800f000 0x1000>,
197332a5da21SJeffrey Hugo				<0x08400000 0x1000000>,
197432a5da21SJeffrey Hugo				<0x09400000 0x1000000>,
197532a5da21SJeffrey Hugo				<0x0a400000 0x220000>,
197632a5da21SJeffrey Hugo				<0x0800a000 0x3000>;
197732a5da21SJeffrey Hugo			reg-names = "core", "chnls", "obsrvr", "intr", "cnfg";
197832a5da21SJeffrey Hugo			interrupt-names = "periph_irq";
197932a5da21SJeffrey Hugo			interrupts = <GIC_SPI 326 IRQ_TYPE_LEVEL_HIGH>;
198032a5da21SJeffrey Hugo			qcom,ee = <0>;
198132a5da21SJeffrey Hugo			qcom,channel = <0>;
198232a5da21SJeffrey Hugo			#address-cells = <2>;
198332a5da21SJeffrey Hugo			#size-cells = <0>;
198432a5da21SJeffrey Hugo			interrupt-controller;
198532a5da21SJeffrey Hugo			#interrupt-cells = <4>;
198632a5da21SJeffrey Hugo			cell-index = <0>;
198731c1f0e3SBjorn Andersson		};
198831c1f0e3SBjorn Andersson
1989026dad8fSJeffrey Hugo		usb3: usb@a8f8800 {
1990026dad8fSJeffrey Hugo			compatible = "qcom,msm8998-dwc3", "qcom,dwc3";
1991026dad8fSJeffrey Hugo			reg = <0x0a8f8800 0x400>;
1992026dad8fSJeffrey Hugo			status = "disabled";
1993026dad8fSJeffrey Hugo			#address-cells = <1>;
1994026dad8fSJeffrey Hugo			#size-cells = <1>;
1995026dad8fSJeffrey Hugo			ranges;
1996026dad8fSJeffrey Hugo
1997026dad8fSJeffrey Hugo			clocks = <&gcc GCC_CFG_NOC_USB3_AXI_CLK>,
1998026dad8fSJeffrey Hugo				 <&gcc GCC_USB30_MASTER_CLK>,
1999026dad8fSJeffrey Hugo				 <&gcc GCC_AGGRE1_USB3_AXI_CLK>,
20008d5fd4e4SKrzysztof Kozlowski				 <&gcc GCC_USB30_SLEEP_CLK>,
20018d5fd4e4SKrzysztof Kozlowski				 <&gcc GCC_USB30_MOCK_UTMI_CLK>;
20028d5fd4e4SKrzysztof Kozlowski			clock-names = "cfg_noc",
20038d5fd4e4SKrzysztof Kozlowski				      "core",
20048d5fd4e4SKrzysztof Kozlowski				      "iface",
20058d5fd4e4SKrzysztof Kozlowski				      "sleep",
20068d5fd4e4SKrzysztof Kozlowski				      "mock_utmi";
2007026dad8fSJeffrey Hugo
2008026dad8fSJeffrey Hugo			assigned-clocks = <&gcc GCC_USB30_MOCK_UTMI_CLK>,
2009026dad8fSJeffrey Hugo					  <&gcc GCC_USB30_MASTER_CLK>;
2010026dad8fSJeffrey Hugo			assigned-clock-rates = <19200000>, <120000000>;
2011026dad8fSJeffrey Hugo
2012026dad8fSJeffrey Hugo			interrupts = <GIC_SPI 347 IRQ_TYPE_LEVEL_HIGH>,
2013026dad8fSJeffrey Hugo				     <GIC_SPI 243 IRQ_TYPE_LEVEL_HIGH>;
2014026dad8fSJeffrey Hugo			interrupt-names = "hs_phy_irq", "ss_phy_irq";
2015026dad8fSJeffrey Hugo
2016026dad8fSJeffrey Hugo			power-domains = <&gcc USB_30_GDSC>;
2017026dad8fSJeffrey Hugo
2018026dad8fSJeffrey Hugo			resets = <&gcc GCC_USB_30_BCR>;
2019026dad8fSJeffrey Hugo
2020b77a1c4dSKrzysztof Kozlowski			usb3_dwc3: usb@a800000 {
2021026dad8fSJeffrey Hugo				compatible = "snps,dwc3";
2022026dad8fSJeffrey Hugo				reg = <0x0a800000 0xcd00>;
2023026dad8fSJeffrey Hugo				interrupts = <GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH>;
2024026dad8fSJeffrey Hugo				snps,dis_u2_susphy_quirk;
2025026dad8fSJeffrey Hugo				snps,dis_enblslpm_quirk;
2026026dad8fSJeffrey Hugo				phys = <&qusb2phy>, <&usb1_ssphy>;
2027026dad8fSJeffrey Hugo				phy-names = "usb2-phy", "usb3-phy";
2028026dad8fSJeffrey Hugo				snps,has-lpm-erratum;
2029026dad8fSJeffrey Hugo				snps,hird-threshold = /bits/ 8 <0x10>;
2030026dad8fSJeffrey Hugo			};
2031026dad8fSJeffrey Hugo		};
2032026dad8fSJeffrey Hugo
2033026dad8fSJeffrey Hugo		usb3phy: phy@c010000 {
2034026dad8fSJeffrey Hugo			compatible = "qcom,msm8998-qmp-usb3-phy";
2035026dad8fSJeffrey Hugo			reg = <0x0c010000 0x18c>;
2036026dad8fSJeffrey Hugo			status = "disabled";
2037026dad8fSJeffrey Hugo			#address-cells = <1>;
2038026dad8fSJeffrey Hugo			#size-cells = <1>;
2039026dad8fSJeffrey Hugo			ranges;
2040026dad8fSJeffrey Hugo
2041026dad8fSJeffrey Hugo			clocks = <&gcc GCC_USB3_PHY_AUX_CLK>,
2042026dad8fSJeffrey Hugo				 <&gcc GCC_USB_PHY_CFG_AHB2PHY_CLK>,
2043026dad8fSJeffrey Hugo				 <&gcc GCC_USB3_CLKREF_CLK>;
2044026dad8fSJeffrey Hugo			clock-names = "aux", "cfg_ahb", "ref";
2045026dad8fSJeffrey Hugo
2046026dad8fSJeffrey Hugo			resets = <&gcc GCC_USB3_PHY_BCR>,
2047026dad8fSJeffrey Hugo				 <&gcc GCC_USB3PHY_PHY_BCR>;
2048026dad8fSJeffrey Hugo			reset-names = "phy", "common";
2049026dad8fSJeffrey Hugo
20501351512fSShawn Guo			usb1_ssphy: phy@c010200 {
2051026dad8fSJeffrey Hugo				reg = <0xc010200 0x128>,
2052026dad8fSJeffrey Hugo				      <0xc010400 0x200>,
2053026dad8fSJeffrey Hugo				      <0xc010c00 0x20c>,
2054026dad8fSJeffrey Hugo				      <0xc010600 0x128>,
2055026dad8fSJeffrey Hugo				      <0xc010800 0x200>;
2056026dad8fSJeffrey Hugo				#phy-cells = <0>;
2057ed9cbbcbSJohan Hovold				#clock-cells = <0>;
2058026dad8fSJeffrey Hugo				clocks = <&gcc GCC_USB3_PHY_PIPE_CLK>;
2059026dad8fSJeffrey Hugo				clock-names = "pipe0";
2060026dad8fSJeffrey Hugo				clock-output-names = "usb3_phy_pipe_clk_src";
2061026dad8fSJeffrey Hugo			};
2062026dad8fSJeffrey Hugo		};
2063026dad8fSJeffrey Hugo
2064026dad8fSJeffrey Hugo		qusb2phy: phy@c012000 {
2065026dad8fSJeffrey Hugo			compatible = "qcom,msm8998-qusb2-phy";
2066026dad8fSJeffrey Hugo			reg = <0x0c012000 0x2a8>;
2067026dad8fSJeffrey Hugo			status = "disabled";
2068026dad8fSJeffrey Hugo			#phy-cells = <0>;
2069026dad8fSJeffrey Hugo
2070026dad8fSJeffrey Hugo			clocks = <&gcc GCC_USB_PHY_CFG_AHB2PHY_CLK>,
2071026dad8fSJeffrey Hugo				 <&gcc GCC_RX1_USB2_CLKREF_CLK>;
2072026dad8fSJeffrey Hugo			clock-names = "cfg_ahb", "ref";
2073026dad8fSJeffrey Hugo
2074026dad8fSJeffrey Hugo			resets = <&gcc GCC_QUSB2PHY_PRIM_BCR>;
2075026dad8fSJeffrey Hugo
2076026dad8fSJeffrey Hugo			nvmem-cells = <&qusb2_hstx_trim>;
2077026dad8fSJeffrey Hugo		};
2078026dad8fSJeffrey Hugo
207996bb736fSBhupesh Sharma		sdhc2: mmc@c0a4900 {
208018f581bfSKrzysztof Kozlowski			compatible = "qcom,msm8998-sdhci", "qcom,sdhci-msm-v4";
208132a5da21SJeffrey Hugo			reg = <0x0c0a4900 0x314>, <0x0c0a4000 0x800>;
2082eddc917dSKrzysztof Kozlowski			reg-names = "hc", "core";
20831cfce828SJeffrey Hugo
20841cfce828SJeffrey Hugo			interrupts = <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>,
20851cfce828SJeffrey Hugo				     <GIC_SPI 221 IRQ_TYPE_LEVEL_HIGH>;
20861cfce828SJeffrey Hugo			interrupt-names = "hc_irq", "pwr_irq";
20871cfce828SJeffrey Hugo
20881cfce828SJeffrey Hugo			clock-names = "iface", "core", "xo";
20891cfce828SJeffrey Hugo			clocks = <&gcc GCC_SDCC2_AHB_CLK>,
20901cfce828SJeffrey Hugo				 <&gcc GCC_SDCC2_APPS_CLK>,
20911cfce828SJeffrey Hugo				 <&xo>;
20921cfce828SJeffrey Hugo			bus-width = <4>;
20931cfce828SJeffrey Hugo			status = "disabled";
20941cfce828SJeffrey Hugo		};
20951cfce828SJeffrey Hugo
209694ed1811SVinod Koul		blsp1_dma: dma-controller@c144000 {
2097f1c1d4feSJeffrey Hugo			compatible = "qcom,bam-v1.7.0";
2098f1c1d4feSJeffrey Hugo			reg = <0x0c144000 0x25000>;
2099f1c1d4feSJeffrey Hugo			interrupts = <GIC_SPI 238 IRQ_TYPE_LEVEL_HIGH>;
2100f1c1d4feSJeffrey Hugo			clocks = <&gcc GCC_BLSP1_AHB_CLK>;
2101f1c1d4feSJeffrey Hugo			clock-names = "bam_clk";
2102f1c1d4feSJeffrey Hugo			#dma-cells = <1>;
2103f1c1d4feSJeffrey Hugo			qcom,ee = <0>;
2104f1c1d4feSJeffrey Hugo			qcom,controlled-remotely;
2105f1c1d4feSJeffrey Hugo			num-channels = <18>;
2106f1c1d4feSJeffrey Hugo			qcom,num-ees = <4>;
2107f1c1d4feSJeffrey Hugo		};
2108f1c1d4feSJeffrey Hugo
210973d4d2efSJeffrey Hugo		blsp1_uart3: serial@c171000 {
211073d4d2efSJeffrey Hugo			compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm";
211173d4d2efSJeffrey Hugo			reg = <0x0c171000 0x1000>;
211273d4d2efSJeffrey Hugo			interrupts = <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>;
211373d4d2efSJeffrey Hugo			clocks = <&gcc GCC_BLSP1_UART3_APPS_CLK>,
211473d4d2efSJeffrey Hugo				 <&gcc GCC_BLSP1_AHB_CLK>;
211573d4d2efSJeffrey Hugo			clock-names = "core", "iface";
211673d4d2efSJeffrey Hugo			dmas = <&blsp1_dma 4>, <&blsp1_dma 5>;
211773d4d2efSJeffrey Hugo			dma-names = "tx", "rx";
211873d4d2efSJeffrey Hugo			pinctrl-names = "default";
211973d4d2efSJeffrey Hugo			pinctrl-0 = <&blsp1_uart3_on>;
212073d4d2efSJeffrey Hugo			status = "disabled";
212173d4d2efSJeffrey Hugo		};
212273d4d2efSJeffrey Hugo
21231e71d0c2SJeffrey Hugo		blsp1_i2c1: i2c@c175000 {
21241e71d0c2SJeffrey Hugo			compatible = "qcom,i2c-qup-v2.2.1";
21251e71d0c2SJeffrey Hugo			reg = <0x0c175000 0x600>;
21261e71d0c2SJeffrey Hugo			interrupts = <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>;
21271e71d0c2SJeffrey Hugo
21281e71d0c2SJeffrey Hugo			clocks = <&gcc GCC_BLSP1_QUP1_I2C_APPS_CLK>,
21291e71d0c2SJeffrey Hugo				 <&gcc GCC_BLSP1_AHB_CLK>;
21301e71d0c2SJeffrey Hugo			clock-names = "core", "iface";
21316845359eSKonrad Dybcio			dmas = <&blsp1_dma 6>, <&blsp1_dma 7>;
21326845359eSKonrad Dybcio			dma-names = "tx", "rx";
21330fee55fcSKonrad Dybcio			pinctrl-names = "default", "sleep";
21340fee55fcSKonrad Dybcio			pinctrl-0 = <&blsp1_i2c1_default>;
21350fee55fcSKonrad Dybcio			pinctrl-1 = <&blsp1_i2c1_sleep>;
21361e71d0c2SJeffrey Hugo			clock-frequency = <400000>;
21371e71d0c2SJeffrey Hugo
21381e71d0c2SJeffrey Hugo			status = "disabled";
21391e71d0c2SJeffrey Hugo			#address-cells = <1>;
21401e71d0c2SJeffrey Hugo			#size-cells = <0>;
21411e71d0c2SJeffrey Hugo		};
21421e71d0c2SJeffrey Hugo
21431e71d0c2SJeffrey Hugo		blsp1_i2c2: i2c@c176000 {
21441e71d0c2SJeffrey Hugo			compatible = "qcom,i2c-qup-v2.2.1";
21451e71d0c2SJeffrey Hugo			reg = <0x0c176000 0x600>;
21461e71d0c2SJeffrey Hugo			interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>;
21471e71d0c2SJeffrey Hugo
21481e71d0c2SJeffrey Hugo			clocks = <&gcc GCC_BLSP1_QUP2_I2C_APPS_CLK>,
21491e71d0c2SJeffrey Hugo				 <&gcc GCC_BLSP1_AHB_CLK>;
21501e71d0c2SJeffrey Hugo			clock-names = "core", "iface";
21516845359eSKonrad Dybcio			dmas = <&blsp1_dma 8>, <&blsp1_dma 9>;
21526845359eSKonrad Dybcio			dma-names = "tx", "rx";
21530fee55fcSKonrad Dybcio			pinctrl-names = "default", "sleep";
21540fee55fcSKonrad Dybcio			pinctrl-0 = <&blsp1_i2c2_default>;
21550fee55fcSKonrad Dybcio			pinctrl-1 = <&blsp1_i2c2_sleep>;
21561e71d0c2SJeffrey Hugo			clock-frequency = <400000>;
21571e71d0c2SJeffrey Hugo
21581e71d0c2SJeffrey Hugo			status = "disabled";
21591e71d0c2SJeffrey Hugo			#address-cells = <1>;
21601e71d0c2SJeffrey Hugo			#size-cells = <0>;
21611e71d0c2SJeffrey Hugo		};
21621e71d0c2SJeffrey Hugo
21631e71d0c2SJeffrey Hugo		blsp1_i2c3: i2c@c177000 {
21641e71d0c2SJeffrey Hugo			compatible = "qcom,i2c-qup-v2.2.1";
21651e71d0c2SJeffrey Hugo			reg = <0x0c177000 0x600>;
21661e71d0c2SJeffrey Hugo			interrupts = <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>;
21671e71d0c2SJeffrey Hugo
21681e71d0c2SJeffrey Hugo			clocks = <&gcc GCC_BLSP1_QUP3_I2C_APPS_CLK>,
21691e71d0c2SJeffrey Hugo				 <&gcc GCC_BLSP1_AHB_CLK>;
21701e71d0c2SJeffrey Hugo			clock-names = "core", "iface";
21716845359eSKonrad Dybcio			dmas = <&blsp1_dma 10>, <&blsp1_dma 11>;
21726845359eSKonrad Dybcio			dma-names = "tx", "rx";
21730fee55fcSKonrad Dybcio			pinctrl-names = "default", "sleep";
21740fee55fcSKonrad Dybcio			pinctrl-0 = <&blsp1_i2c3_default>;
21750fee55fcSKonrad Dybcio			pinctrl-1 = <&blsp1_i2c3_sleep>;
21761e71d0c2SJeffrey Hugo			clock-frequency = <400000>;
21771e71d0c2SJeffrey Hugo
21781e71d0c2SJeffrey Hugo			status = "disabled";
21791e71d0c2SJeffrey Hugo			#address-cells = <1>;
21801e71d0c2SJeffrey Hugo			#size-cells = <0>;
21811e71d0c2SJeffrey Hugo		};
21821e71d0c2SJeffrey Hugo
21831e71d0c2SJeffrey Hugo		blsp1_i2c4: i2c@c178000 {
21841e71d0c2SJeffrey Hugo			compatible = "qcom,i2c-qup-v2.2.1";
21851e71d0c2SJeffrey Hugo			reg = <0x0c178000 0x600>;
21861e71d0c2SJeffrey Hugo			interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>;
21871e71d0c2SJeffrey Hugo
21881e71d0c2SJeffrey Hugo			clocks = <&gcc GCC_BLSP1_QUP4_I2C_APPS_CLK>,
21891e71d0c2SJeffrey Hugo				 <&gcc GCC_BLSP1_AHB_CLK>;
21901e71d0c2SJeffrey Hugo			clock-names = "core", "iface";
21916845359eSKonrad Dybcio			dmas = <&blsp1_dma 12>, <&blsp1_dma 13>;
21926845359eSKonrad Dybcio			dma-names = "tx", "rx";
21930fee55fcSKonrad Dybcio			pinctrl-names = "default", "sleep";
21940fee55fcSKonrad Dybcio			pinctrl-0 = <&blsp1_i2c4_default>;
21950fee55fcSKonrad Dybcio			pinctrl-1 = <&blsp1_i2c4_sleep>;
21961e71d0c2SJeffrey Hugo			clock-frequency = <400000>;
21971e71d0c2SJeffrey Hugo
21981e71d0c2SJeffrey Hugo			status = "disabled";
21991e71d0c2SJeffrey Hugo			#address-cells = <1>;
22001e71d0c2SJeffrey Hugo			#size-cells = <0>;
22011e71d0c2SJeffrey Hugo		};
22021e71d0c2SJeffrey Hugo
22031e71d0c2SJeffrey Hugo		blsp1_i2c5: i2c@c179000 {
22041e71d0c2SJeffrey Hugo			compatible = "qcom,i2c-qup-v2.2.1";
22051e71d0c2SJeffrey Hugo			reg = <0x0c179000 0x600>;
22061e71d0c2SJeffrey Hugo			interrupts = <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>;
22071e71d0c2SJeffrey Hugo
22081e71d0c2SJeffrey Hugo			clocks = <&gcc GCC_BLSP1_QUP5_I2C_APPS_CLK>,
22091e71d0c2SJeffrey Hugo				 <&gcc GCC_BLSP1_AHB_CLK>;
22101e71d0c2SJeffrey Hugo			clock-names = "core", "iface";
22116845359eSKonrad Dybcio			dmas = <&blsp1_dma 14>, <&blsp1_dma 15>;
22126845359eSKonrad Dybcio			dma-names = "tx", "rx";
22130fee55fcSKonrad Dybcio			pinctrl-names = "default", "sleep";
22140fee55fcSKonrad Dybcio			pinctrl-0 = <&blsp1_i2c5_default>;
22150fee55fcSKonrad Dybcio			pinctrl-1 = <&blsp1_i2c5_sleep>;
22161e71d0c2SJeffrey Hugo			clock-frequency = <400000>;
22171e71d0c2SJeffrey Hugo
22181e71d0c2SJeffrey Hugo			status = "disabled";
22191e71d0c2SJeffrey Hugo			#address-cells = <1>;
22201e71d0c2SJeffrey Hugo			#size-cells = <0>;
22211e71d0c2SJeffrey Hugo		};
22221e71d0c2SJeffrey Hugo
22231e71d0c2SJeffrey Hugo		blsp1_i2c6: i2c@c17a000 {
22241e71d0c2SJeffrey Hugo			compatible = "qcom,i2c-qup-v2.2.1";
22251e71d0c2SJeffrey Hugo			reg = <0x0c17a000 0x600>;
22261e71d0c2SJeffrey Hugo			interrupts = <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>;
22271e71d0c2SJeffrey Hugo
22281e71d0c2SJeffrey Hugo			clocks = <&gcc GCC_BLSP1_QUP6_I2C_APPS_CLK>,
22291e71d0c2SJeffrey Hugo				 <&gcc GCC_BLSP1_AHB_CLK>;
22301e71d0c2SJeffrey Hugo			clock-names = "core", "iface";
22316845359eSKonrad Dybcio			dmas = <&blsp1_dma 16>, <&blsp1_dma 17>;
22326845359eSKonrad Dybcio			dma-names = "tx", "rx";
22330fee55fcSKonrad Dybcio			pinctrl-names = "default", "sleep";
22340fee55fcSKonrad Dybcio			pinctrl-0 = <&blsp1_i2c6_default>;
22350fee55fcSKonrad Dybcio			pinctrl-1 = <&blsp1_i2c6_sleep>;
22361e71d0c2SJeffrey Hugo			clock-frequency = <400000>;
22371e71d0c2SJeffrey Hugo
22381e71d0c2SJeffrey Hugo			status = "disabled";
22391e71d0c2SJeffrey Hugo			#address-cells = <1>;
22401e71d0c2SJeffrey Hugo			#size-cells = <0>;
22411e71d0c2SJeffrey Hugo		};
22421e71d0c2SJeffrey Hugo
2243bbef0142SShawn Guo		blsp2_dma: dma-controller@c184000 {
22446845359eSKonrad Dybcio			compatible = "qcom,bam-v1.7.0";
22456845359eSKonrad Dybcio			reg = <0x0c184000 0x25000>;
22466845359eSKonrad Dybcio			interrupts = <GIC_SPI 239 IRQ_TYPE_LEVEL_HIGH>;
22476845359eSKonrad Dybcio			clocks = <&gcc GCC_BLSP2_AHB_CLK>;
22486845359eSKonrad Dybcio			clock-names = "bam_clk";
22496845359eSKonrad Dybcio			#dma-cells = <1>;
22506845359eSKonrad Dybcio			qcom,ee = <0>;
22516845359eSKonrad Dybcio			qcom,controlled-remotely;
22526845359eSKonrad Dybcio			num-channels = <18>;
22536845359eSKonrad Dybcio			qcom,num-ees = <4>;
22546845359eSKonrad Dybcio		};
22556845359eSKonrad Dybcio
225632a5da21SJeffrey Hugo		blsp2_uart1: serial@c1b0000 {
225732a5da21SJeffrey Hugo			compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm";
225832a5da21SJeffrey Hugo			reg = <0x0c1b0000 0x1000>;
225932a5da21SJeffrey Hugo			interrupts = <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>;
226032a5da21SJeffrey Hugo			clocks = <&gcc GCC_BLSP2_UART2_APPS_CLK>,
226132a5da21SJeffrey Hugo				 <&gcc GCC_BLSP2_AHB_CLK>;
226232a5da21SJeffrey Hugo			clock-names = "core", "iface";
226332a5da21SJeffrey Hugo			status = "disabled";
226432a5da21SJeffrey Hugo		};
226532a5da21SJeffrey Hugo
22660fee55fcSKonrad Dybcio		blsp2_i2c1: i2c@c1b5000 {
22671e71d0c2SJeffrey Hugo			compatible = "qcom,i2c-qup-v2.2.1";
22681e71d0c2SJeffrey Hugo			reg = <0x0c1b5000 0x600>;
22691e71d0c2SJeffrey Hugo			interrupts = <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>;
22701e71d0c2SJeffrey Hugo
22711e71d0c2SJeffrey Hugo			clocks = <&gcc GCC_BLSP2_QUP1_I2C_APPS_CLK>,
22721e71d0c2SJeffrey Hugo				 <&gcc GCC_BLSP2_AHB_CLK>;
22731e71d0c2SJeffrey Hugo			clock-names = "core", "iface";
22746845359eSKonrad Dybcio			dmas = <&blsp2_dma 6>, <&blsp2_dma 7>;
22756845359eSKonrad Dybcio			dma-names = "tx", "rx";
22760fee55fcSKonrad Dybcio			pinctrl-names = "default", "sleep";
22770fee55fcSKonrad Dybcio			pinctrl-0 = <&blsp2_i2c1_default>;
22780fee55fcSKonrad Dybcio			pinctrl-1 = <&blsp2_i2c1_sleep>;
22791e71d0c2SJeffrey Hugo			clock-frequency = <400000>;
22801e71d0c2SJeffrey Hugo
22811e71d0c2SJeffrey Hugo			status = "disabled";
22821e71d0c2SJeffrey Hugo			#address-cells = <1>;
22831e71d0c2SJeffrey Hugo			#size-cells = <0>;
22841e71d0c2SJeffrey Hugo		};
22851e71d0c2SJeffrey Hugo
22860fee55fcSKonrad Dybcio		blsp2_i2c2: i2c@c1b6000 {
22871e71d0c2SJeffrey Hugo			compatible = "qcom,i2c-qup-v2.2.1";
22881e71d0c2SJeffrey Hugo			reg = <0x0c1b6000 0x600>;
22891e71d0c2SJeffrey Hugo			interrupts = <GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH>;
22901e71d0c2SJeffrey Hugo
22911e71d0c2SJeffrey Hugo			clocks = <&gcc GCC_BLSP2_QUP2_I2C_APPS_CLK>,
22921e71d0c2SJeffrey Hugo				 <&gcc GCC_BLSP2_AHB_CLK>;
22931e71d0c2SJeffrey Hugo			clock-names = "core", "iface";
22946845359eSKonrad Dybcio			dmas = <&blsp2_dma 8>, <&blsp2_dma 9>;
22956845359eSKonrad Dybcio			dma-names = "tx", "rx";
22960fee55fcSKonrad Dybcio			pinctrl-names = "default", "sleep";
22970fee55fcSKonrad Dybcio			pinctrl-0 = <&blsp2_i2c2_default>;
22980fee55fcSKonrad Dybcio			pinctrl-1 = <&blsp2_i2c2_sleep>;
22991e71d0c2SJeffrey Hugo			clock-frequency = <400000>;
23001e71d0c2SJeffrey Hugo
23011e71d0c2SJeffrey Hugo			status = "disabled";
23021e71d0c2SJeffrey Hugo			#address-cells = <1>;
23031e71d0c2SJeffrey Hugo			#size-cells = <0>;
23041e71d0c2SJeffrey Hugo		};
23051e71d0c2SJeffrey Hugo
23060fee55fcSKonrad Dybcio		blsp2_i2c3: i2c@c1b7000 {
23071e71d0c2SJeffrey Hugo			compatible = "qcom,i2c-qup-v2.2.1";
23081e71d0c2SJeffrey Hugo			reg = <0x0c1b7000 0x600>;
23091e71d0c2SJeffrey Hugo			interrupts = <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>;
23101e71d0c2SJeffrey Hugo
23111e71d0c2SJeffrey Hugo			clocks = <&gcc GCC_BLSP2_QUP3_I2C_APPS_CLK>,
23121e71d0c2SJeffrey Hugo				 <&gcc GCC_BLSP2_AHB_CLK>;
23131e71d0c2SJeffrey Hugo			clock-names = "core", "iface";
23146845359eSKonrad Dybcio			dmas = <&blsp2_dma 10>, <&blsp2_dma 11>;
23156845359eSKonrad Dybcio			dma-names = "tx", "rx";
23160fee55fcSKonrad Dybcio			pinctrl-names = "default", "sleep";
23170fee55fcSKonrad Dybcio			pinctrl-0 = <&blsp2_i2c3_default>;
23180fee55fcSKonrad Dybcio			pinctrl-1 = <&blsp2_i2c3_sleep>;
23191e71d0c2SJeffrey Hugo			clock-frequency = <400000>;
23201e71d0c2SJeffrey Hugo
23211e71d0c2SJeffrey Hugo			status = "disabled";
23221e71d0c2SJeffrey Hugo			#address-cells = <1>;
23231e71d0c2SJeffrey Hugo			#size-cells = <0>;
23241e71d0c2SJeffrey Hugo		};
23251e71d0c2SJeffrey Hugo
23260fee55fcSKonrad Dybcio		blsp2_i2c4: i2c@c1b8000 {
23271e71d0c2SJeffrey Hugo			compatible = "qcom,i2c-qup-v2.2.1";
23281e71d0c2SJeffrey Hugo			reg = <0x0c1b8000 0x600>;
23291e71d0c2SJeffrey Hugo			interrupts = <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>;
23301e71d0c2SJeffrey Hugo
23311e71d0c2SJeffrey Hugo			clocks = <&gcc GCC_BLSP2_QUP4_I2C_APPS_CLK>,
23321e71d0c2SJeffrey Hugo				 <&gcc GCC_BLSP2_AHB_CLK>;
23331e71d0c2SJeffrey Hugo			clock-names = "core", "iface";
23346845359eSKonrad Dybcio			dmas = <&blsp2_dma 12>, <&blsp2_dma 13>;
23356845359eSKonrad Dybcio			dma-names = "tx", "rx";
23360fee55fcSKonrad Dybcio			pinctrl-names = "default", "sleep";
23370fee55fcSKonrad Dybcio			pinctrl-0 = <&blsp2_i2c4_default>;
23380fee55fcSKonrad Dybcio			pinctrl-1 = <&blsp2_i2c4_sleep>;
23391e71d0c2SJeffrey Hugo			clock-frequency = <400000>;
23401e71d0c2SJeffrey Hugo
23411e71d0c2SJeffrey Hugo			status = "disabled";
23421e71d0c2SJeffrey Hugo			#address-cells = <1>;
23431e71d0c2SJeffrey Hugo			#size-cells = <0>;
23441e71d0c2SJeffrey Hugo		};
23451e71d0c2SJeffrey Hugo
23460fee55fcSKonrad Dybcio		blsp2_i2c5: i2c@c1b9000 {
23471e71d0c2SJeffrey Hugo			compatible = "qcom,i2c-qup-v2.2.1";
23481e71d0c2SJeffrey Hugo			reg = <0x0c1b9000 0x600>;
23491e71d0c2SJeffrey Hugo			interrupts = <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>;
23501e71d0c2SJeffrey Hugo
23511e71d0c2SJeffrey Hugo			clocks = <&gcc GCC_BLSP2_QUP5_I2C_APPS_CLK>,
23521e71d0c2SJeffrey Hugo				 <&gcc GCC_BLSP2_AHB_CLK>;
23531e71d0c2SJeffrey Hugo			clock-names = "core", "iface";
23546845359eSKonrad Dybcio			dmas = <&blsp2_dma 14>, <&blsp2_dma 15>;
23556845359eSKonrad Dybcio			dma-names = "tx", "rx";
23560fee55fcSKonrad Dybcio			pinctrl-names = "default", "sleep";
23570fee55fcSKonrad Dybcio			pinctrl-0 = <&blsp2_i2c5_default>;
23580fee55fcSKonrad Dybcio			pinctrl-1 = <&blsp2_i2c5_sleep>;
23591e71d0c2SJeffrey Hugo			clock-frequency = <400000>;
23601e71d0c2SJeffrey Hugo
23611e71d0c2SJeffrey Hugo			status = "disabled";
23621e71d0c2SJeffrey Hugo			#address-cells = <1>;
23631e71d0c2SJeffrey Hugo			#size-cells = <0>;
23641e71d0c2SJeffrey Hugo		};
23651e71d0c2SJeffrey Hugo
23660fee55fcSKonrad Dybcio		blsp2_i2c6: i2c@c1ba000 {
23671e71d0c2SJeffrey Hugo			compatible = "qcom,i2c-qup-v2.2.1";
2368c8be5541SMarc Gonzalez			reg = <0x0c1ba000 0x600>;
23691e71d0c2SJeffrey Hugo			interrupts = <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>;
23701e71d0c2SJeffrey Hugo
23711e71d0c2SJeffrey Hugo			clocks = <&gcc GCC_BLSP2_QUP6_I2C_APPS_CLK>,
23721e71d0c2SJeffrey Hugo				 <&gcc GCC_BLSP2_AHB_CLK>;
23731e71d0c2SJeffrey Hugo			clock-names = "core", "iface";
23746845359eSKonrad Dybcio			dmas = <&blsp2_dma 16>, <&blsp2_dma 17>;
23756845359eSKonrad Dybcio			dma-names = "tx", "rx";
23760fee55fcSKonrad Dybcio			pinctrl-names = "default", "sleep";
23770fee55fcSKonrad Dybcio			pinctrl-0 = <&blsp2_i2c6_default>;
23780fee55fcSKonrad Dybcio			pinctrl-1 = <&blsp2_i2c6_sleep>;
23791e71d0c2SJeffrey Hugo			clock-frequency = <400000>;
23801e71d0c2SJeffrey Hugo
23811e71d0c2SJeffrey Hugo			status = "disabled";
23821e71d0c2SJeffrey Hugo			#address-cells = <1>;
23831e71d0c2SJeffrey Hugo			#size-cells = <0>;
23841e71d0c2SJeffrey Hugo		};
23851e71d0c2SJeffrey Hugo
2386c075a2e3SAngeloGioacchino Del Regno		mmcc: clock-controller@c8c0000 {
2387c075a2e3SAngeloGioacchino Del Regno			compatible = "qcom,mmcc-msm8998";
2388c075a2e3SAngeloGioacchino Del Regno			#clock-cells = <1>;
2389c075a2e3SAngeloGioacchino Del Regno			#reset-cells = <1>;
2390c075a2e3SAngeloGioacchino Del Regno			#power-domain-cells = <1>;
2391c075a2e3SAngeloGioacchino Del Regno			reg = <0xc8c0000 0x40000>;
2392c075a2e3SAngeloGioacchino Del Regno
2393c075a2e3SAngeloGioacchino Del Regno			clock-names = "xo",
2394c075a2e3SAngeloGioacchino Del Regno				      "gpll0",
2395c075a2e3SAngeloGioacchino Del Regno				      "dsi0dsi",
2396c075a2e3SAngeloGioacchino Del Regno				      "dsi0byte",
2397c075a2e3SAngeloGioacchino Del Regno				      "dsi1dsi",
2398c075a2e3SAngeloGioacchino Del Regno				      "dsi1byte",
2399c075a2e3SAngeloGioacchino Del Regno				      "hdmipll",
2400c075a2e3SAngeloGioacchino Del Regno				      "dplink",
2401c075a2e3SAngeloGioacchino Del Regno				      "dpvco",
2402c075a2e3SAngeloGioacchino Del Regno				      "core_bi_pll_test_se";
2403c075a2e3SAngeloGioacchino Del Regno			clocks = <&rpmcc RPM_SMD_XO_CLK_SRC>,
2404c075a2e3SAngeloGioacchino Del Regno				 <&gcc GCC_MMSS_GPLL0_CLK>,
2405c075a2e3SAngeloGioacchino Del Regno				 <0>,
2406c075a2e3SAngeloGioacchino Del Regno				 <0>,
2407c075a2e3SAngeloGioacchino Del Regno				 <0>,
2408c075a2e3SAngeloGioacchino Del Regno				 <0>,
2409c075a2e3SAngeloGioacchino Del Regno				 <0>,
2410c075a2e3SAngeloGioacchino Del Regno				 <0>,
2411c075a2e3SAngeloGioacchino Del Regno				 <0>,
2412c075a2e3SAngeloGioacchino Del Regno				 <0>;
2413c075a2e3SAngeloGioacchino Del Regno		};
2414c075a2e3SAngeloGioacchino Del Regno
241505ce21b5SAngeloGioacchino Del Regno		mmss_smmu: iommu@cd00000 {
241605ce21b5SAngeloGioacchino Del Regno			compatible = "qcom,msm8998-smmu-v2", "qcom,smmu-v2";
241705ce21b5SAngeloGioacchino Del Regno			reg = <0x0cd00000 0x40000>;
241805ce21b5SAngeloGioacchino Del Regno			#iommu-cells = <1>;
241905ce21b5SAngeloGioacchino Del Regno
242005ce21b5SAngeloGioacchino Del Regno			clocks = <&mmcc MNOC_AHB_CLK>,
242105ce21b5SAngeloGioacchino Del Regno				 <&mmcc BIMC_SMMU_AHB_CLK>,
242205ce21b5SAngeloGioacchino Del Regno				 <&rpmcc RPM_SMD_MMAXI_CLK>,
242305ce21b5SAngeloGioacchino Del Regno				 <&mmcc BIMC_SMMU_AXI_CLK>;
242405ce21b5SAngeloGioacchino Del Regno			clock-names = "iface-mm", "iface-smmu",
242505ce21b5SAngeloGioacchino Del Regno				      "bus-mm", "bus-smmu";
242605ce21b5SAngeloGioacchino Del Regno
242705ce21b5SAngeloGioacchino Del Regno			#global-interrupts = <0>;
242805ce21b5SAngeloGioacchino Del Regno			interrupts =
242905ce21b5SAngeloGioacchino Del Regno				<GIC_SPI 263 IRQ_TYPE_LEVEL_HIGH>,
243005ce21b5SAngeloGioacchino Del Regno				<GIC_SPI 266 IRQ_TYPE_LEVEL_HIGH>,
243105ce21b5SAngeloGioacchino Del Regno				<GIC_SPI 267 IRQ_TYPE_LEVEL_HIGH>,
243205ce21b5SAngeloGioacchino Del Regno				<GIC_SPI 268 IRQ_TYPE_LEVEL_HIGH>,
243305ce21b5SAngeloGioacchino Del Regno				<GIC_SPI 244 IRQ_TYPE_LEVEL_HIGH>,
243405ce21b5SAngeloGioacchino Del Regno				<GIC_SPI 245 IRQ_TYPE_LEVEL_HIGH>,
243505ce21b5SAngeloGioacchino Del Regno				<GIC_SPI 247 IRQ_TYPE_LEVEL_HIGH>,
243605ce21b5SAngeloGioacchino Del Regno				<GIC_SPI 248 IRQ_TYPE_LEVEL_HIGH>,
243705ce21b5SAngeloGioacchino Del Regno				<GIC_SPI 249 IRQ_TYPE_LEVEL_HIGH>,
243805ce21b5SAngeloGioacchino Del Regno				<GIC_SPI 250 IRQ_TYPE_LEVEL_HIGH>,
243905ce21b5SAngeloGioacchino Del Regno				<GIC_SPI 251 IRQ_TYPE_LEVEL_HIGH>,
244005ce21b5SAngeloGioacchino Del Regno				<GIC_SPI 252 IRQ_TYPE_LEVEL_HIGH>,
244105ce21b5SAngeloGioacchino Del Regno				<GIC_SPI 253 IRQ_TYPE_LEVEL_HIGH>,
244205ce21b5SAngeloGioacchino Del Regno				<GIC_SPI 254 IRQ_TYPE_LEVEL_HIGH>,
244305ce21b5SAngeloGioacchino Del Regno				<GIC_SPI 255 IRQ_TYPE_LEVEL_HIGH>,
244405ce21b5SAngeloGioacchino Del Regno				<GIC_SPI 256 IRQ_TYPE_LEVEL_HIGH>,
244505ce21b5SAngeloGioacchino Del Regno				<GIC_SPI 260 IRQ_TYPE_LEVEL_HIGH>,
244605ce21b5SAngeloGioacchino Del Regno				<GIC_SPI 261 IRQ_TYPE_LEVEL_HIGH>,
244705ce21b5SAngeloGioacchino Del Regno				<GIC_SPI 262 IRQ_TYPE_LEVEL_HIGH>,
244805ce21b5SAngeloGioacchino Del Regno				<GIC_SPI 272 IRQ_TYPE_LEVEL_HIGH>;
244905ce21b5SAngeloGioacchino Del Regno		};
245005ce21b5SAngeloGioacchino Del Regno
2451a9ee66deSSibi Sankar		remoteproc_adsp: remoteproc@17300000 {
2452a9ee66deSSibi Sankar			compatible = "qcom,msm8998-adsp-pas";
2453a9ee66deSSibi Sankar			reg = <0x17300000 0x4040>;
2454a9ee66deSSibi Sankar
2455a9ee66deSSibi Sankar			interrupts-extended = <&intc GIC_SPI 162 IRQ_TYPE_EDGE_RISING>,
2456a9ee66deSSibi Sankar					      <&adsp_smp2p_in 0 IRQ_TYPE_EDGE_RISING>,
2457a9ee66deSSibi Sankar					      <&adsp_smp2p_in 1 IRQ_TYPE_EDGE_RISING>,
2458a9ee66deSSibi Sankar					      <&adsp_smp2p_in 2 IRQ_TYPE_EDGE_RISING>,
2459a9ee66deSSibi Sankar					      <&adsp_smp2p_in 3 IRQ_TYPE_EDGE_RISING>;
2460a9ee66deSSibi Sankar			interrupt-names = "wdog", "fatal", "ready",
2461a9ee66deSSibi Sankar					  "handover", "stop-ack";
2462a9ee66deSSibi Sankar
2463a9ee66deSSibi Sankar			clocks = <&rpmcc RPM_SMD_XO_CLK_SRC>;
2464a9ee66deSSibi Sankar			clock-names = "xo";
2465a9ee66deSSibi Sankar
2466a9ee66deSSibi Sankar			memory-region = <&adsp_mem>;
2467a9ee66deSSibi Sankar
2468a9ee66deSSibi Sankar			qcom,smem-states = <&adsp_smp2p_out 0>;
2469a9ee66deSSibi Sankar			qcom,smem-state-names = "stop";
2470a9ee66deSSibi Sankar
2471a9ee66deSSibi Sankar			power-domains = <&rpmpd MSM8998_VDDCX>;
2472a9ee66deSSibi Sankar			power-domain-names = "cx";
2473a9ee66deSSibi Sankar
2474a9ee66deSSibi Sankar			status = "disabled";
2475a9ee66deSSibi Sankar
2476a9ee66deSSibi Sankar			glink-edge {
2477a9ee66deSSibi Sankar				interrupts = <GIC_SPI 157 IRQ_TYPE_EDGE_RISING>;
2478a9ee66deSSibi Sankar				label = "lpass";
2479a9ee66deSSibi Sankar				qcom,remote-pid = <2>;
2480a9ee66deSSibi Sankar				mboxes = <&apcs_glb 9>;
2481a9ee66deSSibi Sankar			};
2482a9ee66deSSibi Sankar		};
2483a9ee66deSSibi Sankar
248432a5da21SJeffrey Hugo		apcs_glb: mailbox@17911000 {
248532a5da21SJeffrey Hugo			compatible = "qcom,msm8998-apcs-hmss-global";
248632a5da21SJeffrey Hugo			reg = <0x17911000 0x1000>;
248732a5da21SJeffrey Hugo
248832a5da21SJeffrey Hugo			#mbox-cells = <1>;
24894807c71cSJoonwoo Park		};
24904807c71cSJoonwoo Park
24914807c71cSJoonwoo Park		timer@17920000 {
24924807c71cSJoonwoo Park			#address-cells = <1>;
24934807c71cSJoonwoo Park			#size-cells = <1>;
24944807c71cSJoonwoo Park			ranges;
24954807c71cSJoonwoo Park			compatible = "arm,armv7-timer-mem";
24964807c71cSJoonwoo Park			reg = <0x17920000 0x1000>;
24974807c71cSJoonwoo Park
24984807c71cSJoonwoo Park			frame@17921000 {
24994807c71cSJoonwoo Park				frame-number = <0>;
25004807c71cSJoonwoo Park				interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>,
25014807c71cSJoonwoo Park					     <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>;
25024807c71cSJoonwoo Park				reg = <0x17921000 0x1000>,
25034807c71cSJoonwoo Park				      <0x17922000 0x1000>;
25044807c71cSJoonwoo Park			};
25054807c71cSJoonwoo Park
25064807c71cSJoonwoo Park			frame@17923000 {
25074807c71cSJoonwoo Park				frame-number = <1>;
25084807c71cSJoonwoo Park				interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>;
25094807c71cSJoonwoo Park				reg = <0x17923000 0x1000>;
25104807c71cSJoonwoo Park				status = "disabled";
25114807c71cSJoonwoo Park			};
25124807c71cSJoonwoo Park
25134807c71cSJoonwoo Park			frame@17924000 {
25144807c71cSJoonwoo Park				frame-number = <2>;
25154807c71cSJoonwoo Park				interrupts = <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>;
25164807c71cSJoonwoo Park				reg = <0x17924000 0x1000>;
25174807c71cSJoonwoo Park				status = "disabled";
25184807c71cSJoonwoo Park			};
25194807c71cSJoonwoo Park
25204807c71cSJoonwoo Park			frame@17925000 {
25214807c71cSJoonwoo Park				frame-number = <3>;
25224807c71cSJoonwoo Park				interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>;
25234807c71cSJoonwoo Park				reg = <0x17925000 0x1000>;
25244807c71cSJoonwoo Park				status = "disabled";
25254807c71cSJoonwoo Park			};
25264807c71cSJoonwoo Park
25274807c71cSJoonwoo Park			frame@17926000 {
25284807c71cSJoonwoo Park				frame-number = <4>;
25294807c71cSJoonwoo Park				interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>;
25304807c71cSJoonwoo Park				reg = <0x17926000 0x1000>;
25314807c71cSJoonwoo Park				status = "disabled";
25324807c71cSJoonwoo Park			};
25334807c71cSJoonwoo Park
25344807c71cSJoonwoo Park			frame@17927000 {
25354807c71cSJoonwoo Park				frame-number = <5>;
25364807c71cSJoonwoo Park				interrupts = <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>;
25374807c71cSJoonwoo Park				reg = <0x17927000 0x1000>;
25384807c71cSJoonwoo Park				status = "disabled";
25394807c71cSJoonwoo Park			};
25404807c71cSJoonwoo Park
25414807c71cSJoonwoo Park			frame@17928000 {
25424807c71cSJoonwoo Park				frame-number = <6>;
25434807c71cSJoonwoo Park				interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>;
25444807c71cSJoonwoo Park				reg = <0x17928000 0x1000>;
25454807c71cSJoonwoo Park				status = "disabled";
25464807c71cSJoonwoo Park			};
25474807c71cSJoonwoo Park		};
25484807c71cSJoonwoo Park
25494807c71cSJoonwoo Park		intc: interrupt-controller@17a00000 {
25504807c71cSJoonwoo Park			compatible = "arm,gic-v3";
25514807c71cSJoonwoo Park			reg = <0x17a00000 0x10000>,       /* GICD */
25524807c71cSJoonwoo Park			      <0x17b00000 0x100000>;      /* GICR * 8 */
25534807c71cSJoonwoo Park			#interrupt-cells = <3>;
25544807c71cSJoonwoo Park			#address-cells = <1>;
25554807c71cSJoonwoo Park			#size-cells = <1>;
25564807c71cSJoonwoo Park			ranges;
25574807c71cSJoonwoo Park			interrupt-controller;
25584807c71cSJoonwoo Park			#redistributor-regions = <1>;
25594807c71cSJoonwoo Park			redistributor-stride = <0x0 0x20000>;
25604807c71cSJoonwoo Park			interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>;
25614807c71cSJoonwoo Park		};
256219b7caaaSJeffrey Hugo
256319b7caaaSJeffrey Hugo		wifi: wifi@18800000 {
256419b7caaaSJeffrey Hugo			compatible = "qcom,wcn3990-wifi";
256519b7caaaSJeffrey Hugo			status = "disabled";
256619b7caaaSJeffrey Hugo			reg = <0x18800000 0x800000>;
256719b7caaaSJeffrey Hugo			reg-names = "membase";
256819b7caaaSJeffrey Hugo			memory-region = <&wlan_msa_mem>;
256919b7caaaSJeffrey Hugo			clocks = <&rpmcc RPM_SMD_RF_CLK2_PIN>;
257019b7caaaSJeffrey Hugo			clock-names = "cxo_ref_clk_pin";
257119b7caaaSJeffrey Hugo			interrupts =
257219b7caaaSJeffrey Hugo				<GIC_SPI 413 IRQ_TYPE_LEVEL_HIGH>,
257319b7caaaSJeffrey Hugo				<GIC_SPI 414 IRQ_TYPE_LEVEL_HIGH>,
257419b7caaaSJeffrey Hugo				<GIC_SPI 415 IRQ_TYPE_LEVEL_HIGH>,
257519b7caaaSJeffrey Hugo				<GIC_SPI 416 IRQ_TYPE_LEVEL_HIGH>,
257619b7caaaSJeffrey Hugo				<GIC_SPI 417 IRQ_TYPE_LEVEL_HIGH>,
257719b7caaaSJeffrey Hugo				<GIC_SPI 418 IRQ_TYPE_LEVEL_HIGH>,
257819b7caaaSJeffrey Hugo				<GIC_SPI 420 IRQ_TYPE_LEVEL_HIGH>,
257919b7caaaSJeffrey Hugo				<GIC_SPI 421 IRQ_TYPE_LEVEL_HIGH>,
258019b7caaaSJeffrey Hugo				<GIC_SPI 422 IRQ_TYPE_LEVEL_HIGH>,
258119b7caaaSJeffrey Hugo				<GIC_SPI 423 IRQ_TYPE_LEVEL_HIGH>,
258219b7caaaSJeffrey Hugo				<GIC_SPI 424 IRQ_TYPE_LEVEL_HIGH>,
258319b7caaaSJeffrey Hugo				<GIC_SPI 425 IRQ_TYPE_LEVEL_HIGH>;
258419b7caaaSJeffrey Hugo			iommus = <&anoc2_smmu 0x1900>,
258519b7caaaSJeffrey Hugo				 <&anoc2_smmu 0x1901>;
258619b7caaaSJeffrey Hugo			qcom,snoc-host-cap-8bit-quirk;
258719b7caaaSJeffrey Hugo		};
25884807c71cSJoonwoo Park	};
25894807c71cSJoonwoo Park};
2590