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
4681364acc3SKrzysztof Kozlowski				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
4891364acc3SKrzysztof Kozlowski				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
5101364acc3SKrzysztof Kozlowski				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
5311364acc3SKrzysztof Kozlowski				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
5521364acc3SKrzysztof Kozlowski				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
5731364acc3SKrzysztof Kozlowski				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
5941364acc3SKrzysztof Kozlowski				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
6151364acc3SKrzysztof Kozlowski				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 {
9030d70d5f6SKrzysztof Kozlowski			compatible = "qcom,pcie-msm8998", "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>,
932b132731bSKrzysztof Kozlowski				 <&gcc GCC_PCIE_0_AUX_CLK>,
933b84dfd17SMarc Gonzalez				 <&gcc GCC_PCIE_0_CFG_AHB_CLK>,
934b132731bSKrzysztof Kozlowski				 <&gcc GCC_PCIE_0_MSTR_AXI_CLK>,
935b132731bSKrzysztof Kozlowski				 <&gcc GCC_PCIE_0_SLV_AXI_CLK>;
936b132731bSKrzysztof Kozlowski			clock-names = "pipe", "aux", "cfg", "bus_master", "bus_slave";
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>;
1059e3d5e948SKrzysztof 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
1065ed9ba9e9SKrzysztof Kozlowski			sdc2_on: sdc2-on-state {
1066ed9ba9e9SKrzysztof Kozlowski				clk-pins {
106703e6cb3dSKonrad Dybcio					pins = "sdc2_clk";
106803e6cb3dSKonrad Dybcio					drive-strength = <16>;
106903e6cb3dSKonrad Dybcio					bias-disable;
107003e6cb3dSKonrad Dybcio				};
107103e6cb3dSKonrad Dybcio
1072ed9ba9e9SKrzysztof Kozlowski				cmd-pins {
107303e6cb3dSKonrad Dybcio					pins = "sdc2_cmd";
107403e6cb3dSKonrad Dybcio					drive-strength = <10>;
107512541f68SKonrad Dybcio					bias-pull-up;
107612541f68SKonrad Dybcio				};
107712541f68SKonrad Dybcio
1078ed9ba9e9SKrzysztof Kozlowski				data-pins {
107912541f68SKonrad Dybcio					pins = "sdc2_data";
108012541f68SKonrad Dybcio					drive-strength = <10>;
108112541f68SKonrad Dybcio					bias-pull-up;
108203e6cb3dSKonrad Dybcio				};
108303e6cb3dSKonrad Dybcio			};
108403e6cb3dSKonrad Dybcio
1085ed9ba9e9SKrzysztof Kozlowski			sdc2_off: sdc2-off-state {
1086ed9ba9e9SKrzysztof Kozlowski				clk-pins {
108712541f68SKonrad Dybcio					pins = "sdc2_clk";
108812541f68SKonrad Dybcio					drive-strength = <2>;
108912541f68SKonrad Dybcio					bias-disable;
109012541f68SKonrad Dybcio				};
109112541f68SKonrad Dybcio
1092ed9ba9e9SKrzysztof Kozlowski				cmd-pins {
109303e6cb3dSKonrad Dybcio					pins = "sdc2_cmd";
109403e6cb3dSKonrad Dybcio					drive-strength = <2>;
109512541f68SKonrad Dybcio					bias-pull-up;
109603e6cb3dSKonrad Dybcio				};
109703e6cb3dSKonrad Dybcio
1098ed9ba9e9SKrzysztof Kozlowski				data-pins {
109903e6cb3dSKonrad Dybcio					pins = "sdc2_data";
110003e6cb3dSKonrad Dybcio					drive-strength = <2>;
110112541f68SKonrad Dybcio					bias-pull-up;
110203e6cb3dSKonrad Dybcio				};
110303e6cb3dSKonrad Dybcio			};
110403e6cb3dSKonrad Dybcio
1105ed9ba9e9SKrzysztof Kozlowski			sdc2_cd: sdc2-cd-state {
110603e6cb3dSKonrad Dybcio				pins = "gpio95";
110703e6cb3dSKonrad Dybcio				function = "gpio";
110803e6cb3dSKonrad Dybcio				bias-pull-up;
110903e6cb3dSKonrad Dybcio				drive-strength = <2>;
111003e6cb3dSKonrad Dybcio			};
111103e6cb3dSKonrad Dybcio
1112ed9ba9e9SKrzysztof Kozlowski			blsp1_uart3_on: blsp1-uart3-on-state {
1113ed9ba9e9SKrzysztof Kozlowski				tx-pins {
111403e6cb3dSKonrad Dybcio					pins = "gpio45";
111503e6cb3dSKonrad Dybcio					function = "blsp_uart3_a";
111603e6cb3dSKonrad Dybcio					drive-strength = <2>;
111703e6cb3dSKonrad Dybcio					bias-disable;
111803e6cb3dSKonrad Dybcio				};
111903e6cb3dSKonrad Dybcio
1120ed9ba9e9SKrzysztof Kozlowski				rx-pins {
112103e6cb3dSKonrad Dybcio					pins = "gpio46";
112203e6cb3dSKonrad Dybcio					function = "blsp_uart3_a";
112303e6cb3dSKonrad Dybcio					drive-strength = <2>;
112403e6cb3dSKonrad Dybcio					bias-disable;
112503e6cb3dSKonrad Dybcio				};
112603e6cb3dSKonrad Dybcio
1127ed9ba9e9SKrzysztof Kozlowski				cts-pins {
112803e6cb3dSKonrad Dybcio					pins = "gpio47";
112903e6cb3dSKonrad Dybcio					function = "blsp_uart3_a";
113003e6cb3dSKonrad Dybcio					drive-strength = <2>;
113103e6cb3dSKonrad Dybcio					bias-disable;
113203e6cb3dSKonrad Dybcio				};
113303e6cb3dSKonrad Dybcio
1134ed9ba9e9SKrzysztof Kozlowski				rfr-pins {
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
1142ed9ba9e9SKrzysztof Kozlowski			blsp1_i2c1_default: blsp1-i2c1-default-state {
11430fee55fcSKonrad Dybcio				pins = "gpio2", "gpio3";
11440fee55fcSKonrad Dybcio				function = "blsp_i2c1";
11450fee55fcSKonrad Dybcio				drive-strength = <2>;
11460fee55fcSKonrad Dybcio				bias-disable;
11470fee55fcSKonrad Dybcio			};
11480fee55fcSKonrad Dybcio
1149ed9ba9e9SKrzysztof Kozlowski			blsp1_i2c1_sleep: blsp1-i2c1-sleep-state-state {
11500fee55fcSKonrad Dybcio				pins = "gpio2", "gpio3";
11510fee55fcSKonrad Dybcio				function = "blsp_i2c1";
11520fee55fcSKonrad Dybcio				drive-strength = <2>;
11530fee55fcSKonrad Dybcio				bias-pull-up;
11540fee55fcSKonrad Dybcio			};
11550fee55fcSKonrad Dybcio
1156ed9ba9e9SKrzysztof Kozlowski			blsp1_i2c2_default: blsp1-i2c2-default-state {
11570fee55fcSKonrad Dybcio				pins = "gpio32", "gpio33";
11580fee55fcSKonrad Dybcio				function = "blsp_i2c2";
11590fee55fcSKonrad Dybcio				drive-strength = <2>;
11600fee55fcSKonrad Dybcio				bias-disable;
11610fee55fcSKonrad Dybcio			};
11620fee55fcSKonrad Dybcio
1163ed9ba9e9SKrzysztof Kozlowski			blsp1_i2c2_sleep: blsp1-i2c2-sleep-state-state {
11640fee55fcSKonrad Dybcio				pins = "gpio32", "gpio33";
11650fee55fcSKonrad Dybcio				function = "blsp_i2c2";
11660fee55fcSKonrad Dybcio				drive-strength = <2>;
11670fee55fcSKonrad Dybcio				bias-pull-up;
11680fee55fcSKonrad Dybcio			};
11690fee55fcSKonrad Dybcio
1170ed9ba9e9SKrzysztof Kozlowski			blsp1_i2c3_default: blsp1-i2c3-default-state {
11710fee55fcSKonrad Dybcio				pins = "gpio47", "gpio48";
11720fee55fcSKonrad Dybcio				function = "blsp_i2c3";
11730fee55fcSKonrad Dybcio				drive-strength = <2>;
11740fee55fcSKonrad Dybcio				bias-disable;
11750fee55fcSKonrad Dybcio			};
11760fee55fcSKonrad Dybcio
1177ed9ba9e9SKrzysztof Kozlowski			blsp1_i2c3_sleep: blsp1-i2c3-sleep-state {
11780fee55fcSKonrad Dybcio				pins = "gpio47", "gpio48";
11790fee55fcSKonrad Dybcio				function = "blsp_i2c3";
11800fee55fcSKonrad Dybcio				drive-strength = <2>;
11810fee55fcSKonrad Dybcio				bias-pull-up;
11820fee55fcSKonrad Dybcio			};
11830fee55fcSKonrad Dybcio
1184ed9ba9e9SKrzysztof Kozlowski			blsp1_i2c4_default: blsp1-i2c4-default-state {
11850fee55fcSKonrad Dybcio				pins = "gpio10", "gpio11";
11860fee55fcSKonrad Dybcio				function = "blsp_i2c4";
11870fee55fcSKonrad Dybcio				drive-strength = <2>;
11880fee55fcSKonrad Dybcio				bias-disable;
11890fee55fcSKonrad Dybcio			};
11900fee55fcSKonrad Dybcio
1191ed9ba9e9SKrzysztof Kozlowski			blsp1_i2c4_sleep: blsp1-i2c4-sleep-state {
11920fee55fcSKonrad Dybcio				pins = "gpio10", "gpio11";
11930fee55fcSKonrad Dybcio				function = "blsp_i2c4";
11940fee55fcSKonrad Dybcio				drive-strength = <2>;
11950fee55fcSKonrad Dybcio				bias-pull-up;
11960fee55fcSKonrad Dybcio			};
11970fee55fcSKonrad Dybcio
1198ed9ba9e9SKrzysztof Kozlowski			blsp1_i2c5_default: blsp1-i2c5-default-state {
11990fee55fcSKonrad Dybcio				pins = "gpio87", "gpio88";
12000fee55fcSKonrad Dybcio				function = "blsp_i2c5";
12010fee55fcSKonrad Dybcio				drive-strength = <2>;
12020fee55fcSKonrad Dybcio				bias-disable;
12030fee55fcSKonrad Dybcio			};
12040fee55fcSKonrad Dybcio
1205ed9ba9e9SKrzysztof Kozlowski			blsp1_i2c5_sleep: blsp1-i2c5-sleep-state {
12060fee55fcSKonrad Dybcio				pins = "gpio87", "gpio88";
12070fee55fcSKonrad Dybcio				function = "blsp_i2c5";
12080fee55fcSKonrad Dybcio				drive-strength = <2>;
12090fee55fcSKonrad Dybcio				bias-pull-up;
12100fee55fcSKonrad Dybcio			};
12110fee55fcSKonrad Dybcio
1212ed9ba9e9SKrzysztof Kozlowski			blsp1_i2c6_default: blsp1-i2c6-default-state {
12130fee55fcSKonrad Dybcio				pins = "gpio43", "gpio44";
12140fee55fcSKonrad Dybcio				function = "blsp_i2c6";
12150fee55fcSKonrad Dybcio				drive-strength = <2>;
12160fee55fcSKonrad Dybcio				bias-disable;
12170fee55fcSKonrad Dybcio			};
12180fee55fcSKonrad Dybcio
1219ed9ba9e9SKrzysztof Kozlowski			blsp1_i2c6_sleep: blsp1-i2c6-sleep-state {
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 */
1226ed9ba9e9SKrzysztof Kozlowski			blsp2_i2c1_default: blsp2-i2c1-default-state {
12270fee55fcSKonrad Dybcio				pins = "gpio55", "gpio56";
12280fee55fcSKonrad Dybcio				function = "blsp_i2c7";
12290fee55fcSKonrad Dybcio				drive-strength = <2>;
12300fee55fcSKonrad Dybcio				bias-disable;
12310fee55fcSKonrad Dybcio			};
12320fee55fcSKonrad Dybcio
1233ed9ba9e9SKrzysztof Kozlowski			blsp2_i2c1_sleep: blsp2-i2c1-sleep-state {
12340fee55fcSKonrad Dybcio				pins = "gpio55", "gpio56";
12350fee55fcSKonrad Dybcio				function = "blsp_i2c7";
12360fee55fcSKonrad Dybcio				drive-strength = <2>;
12370fee55fcSKonrad Dybcio				bias-pull-up;
12380fee55fcSKonrad Dybcio			};
12390fee55fcSKonrad Dybcio
1240ed9ba9e9SKrzysztof Kozlowski			blsp2_i2c2_default: blsp2-i2c2-default-state {
12410fee55fcSKonrad Dybcio				pins = "gpio6", "gpio7";
12420fee55fcSKonrad Dybcio				function = "blsp_i2c8";
12430fee55fcSKonrad Dybcio				drive-strength = <2>;
12440fee55fcSKonrad Dybcio				bias-disable;
12450fee55fcSKonrad Dybcio			};
12460fee55fcSKonrad Dybcio
1247ed9ba9e9SKrzysztof Kozlowski			blsp2_i2c2_sleep: blsp2-i2c2-sleep-state {
12480fee55fcSKonrad Dybcio				pins = "gpio6", "gpio7";
12490fee55fcSKonrad Dybcio				function = "blsp_i2c8";
12500fee55fcSKonrad Dybcio				drive-strength = <2>;
12510fee55fcSKonrad Dybcio				bias-pull-up;
12520fee55fcSKonrad Dybcio			};
12530fee55fcSKonrad Dybcio
1254ed9ba9e9SKrzysztof Kozlowski			blsp2_i2c3_default: blsp2-i2c3-default-state {
12550fee55fcSKonrad Dybcio				pins = "gpio51", "gpio52";
12560fee55fcSKonrad Dybcio				function = "blsp_i2c9";
12570fee55fcSKonrad Dybcio				drive-strength = <2>;
12580fee55fcSKonrad Dybcio				bias-disable;
12590fee55fcSKonrad Dybcio			};
12600fee55fcSKonrad Dybcio
1261ed9ba9e9SKrzysztof Kozlowski			blsp2_i2c3_sleep: blsp2-i2c3-sleep-state {
12620fee55fcSKonrad Dybcio				pins = "gpio51", "gpio52";
12630fee55fcSKonrad Dybcio				function = "blsp_i2c9";
12640fee55fcSKonrad Dybcio				drive-strength = <2>;
12650fee55fcSKonrad Dybcio				bias-pull-up;
12660fee55fcSKonrad Dybcio			};
12670fee55fcSKonrad Dybcio
1268ed9ba9e9SKrzysztof Kozlowski			blsp2_i2c4_default: blsp2-i2c4-default-state {
12690fee55fcSKonrad Dybcio				pins = "gpio67", "gpio68";
12700fee55fcSKonrad Dybcio				function = "blsp_i2c10";
12710fee55fcSKonrad Dybcio				drive-strength = <2>;
12720fee55fcSKonrad Dybcio				bias-disable;
12730fee55fcSKonrad Dybcio			};
12740fee55fcSKonrad Dybcio
1275ed9ba9e9SKrzysztof Kozlowski			blsp2_i2c4_sleep: blsp2-i2c4-sleep-state {
12760fee55fcSKonrad Dybcio				pins = "gpio67", "gpio68";
12770fee55fcSKonrad Dybcio				function = "blsp_i2c10";
12780fee55fcSKonrad Dybcio				drive-strength = <2>;
12790fee55fcSKonrad Dybcio				bias-pull-up;
12800fee55fcSKonrad Dybcio			};
12810fee55fcSKonrad Dybcio
1282ed9ba9e9SKrzysztof Kozlowski			blsp2_i2c5_default: blsp2-i2c5-default-state {
12830fee55fcSKonrad Dybcio				pins = "gpio60", "gpio61";
12840fee55fcSKonrad Dybcio				function = "blsp_i2c11";
12850fee55fcSKonrad Dybcio				drive-strength = <2>;
12860fee55fcSKonrad Dybcio				bias-disable;
12870fee55fcSKonrad Dybcio			};
12880fee55fcSKonrad Dybcio
1289ed9ba9e9SKrzysztof Kozlowski			blsp2_i2c5_sleep: blsp2-i2c5-sleep-state {
12900fee55fcSKonrad Dybcio				pins = "gpio60", "gpio61";
12910fee55fcSKonrad Dybcio				function = "blsp_i2c11";
12920fee55fcSKonrad Dybcio				drive-strength = <2>;
12930fee55fcSKonrad Dybcio				bias-pull-up;
12940fee55fcSKonrad Dybcio			};
12950fee55fcSKonrad Dybcio
1296ed9ba9e9SKrzysztof Kozlowski			blsp2_i2c6_default: blsp2-i2c6-default-state {
12970fee55fcSKonrad Dybcio				pins = "gpio83", "gpio84";
12980fee55fcSKonrad Dybcio				function = "blsp_i2c12";
12990fee55fcSKonrad Dybcio				drive-strength = <2>;
13000fee55fcSKonrad Dybcio				bias-disable;
13010fee55fcSKonrad Dybcio			};
13020fee55fcSKonrad Dybcio
1303ed9ba9e9SKrzysztof Kozlowski			blsp2_i2c6_sleep: blsp2-i2c6-sleep-state {
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>;
1397d6882340SKonrad Dybcio					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>;
1403d6882340SKonrad Dybcio					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>;
1409d6882340SKonrad Dybcio					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>;
1415d6882340SKonrad Dybcio					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>;
1421d6882340SKonrad Dybcio					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>;
1427d6882340SKonrad Dybcio					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>;
1433d6882340SKonrad Dybcio					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",
2401*ef6868a2SDmitry Baryshkov				      "dpvco";
2402c075a2e3SAngeloGioacchino Del Regno			clocks = <&rpmcc RPM_SMD_XO_CLK_SRC>,
2403c075a2e3SAngeloGioacchino Del Regno				 <&gcc GCC_MMSS_GPLL0_CLK>,
2404c075a2e3SAngeloGioacchino Del Regno				 <0>,
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		};
2412c075a2e3SAngeloGioacchino Del Regno
241305ce21b5SAngeloGioacchino Del Regno		mmss_smmu: iommu@cd00000 {
241405ce21b5SAngeloGioacchino Del Regno			compatible = "qcom,msm8998-smmu-v2", "qcom,smmu-v2";
241505ce21b5SAngeloGioacchino Del Regno			reg = <0x0cd00000 0x40000>;
241605ce21b5SAngeloGioacchino Del Regno			#iommu-cells = <1>;
241705ce21b5SAngeloGioacchino Del Regno
241805ce21b5SAngeloGioacchino Del Regno			clocks = <&mmcc MNOC_AHB_CLK>,
241905ce21b5SAngeloGioacchino Del Regno				 <&mmcc BIMC_SMMU_AHB_CLK>,
242005ce21b5SAngeloGioacchino Del Regno				 <&rpmcc RPM_SMD_MMAXI_CLK>,
242105ce21b5SAngeloGioacchino Del Regno				 <&mmcc BIMC_SMMU_AXI_CLK>;
242205ce21b5SAngeloGioacchino Del Regno			clock-names = "iface-mm", "iface-smmu",
242305ce21b5SAngeloGioacchino Del Regno				      "bus-mm", "bus-smmu";
242405ce21b5SAngeloGioacchino Del Regno
242505ce21b5SAngeloGioacchino Del Regno			#global-interrupts = <0>;
242605ce21b5SAngeloGioacchino Del Regno			interrupts =
242705ce21b5SAngeloGioacchino Del Regno				<GIC_SPI 263 IRQ_TYPE_LEVEL_HIGH>,
242805ce21b5SAngeloGioacchino Del Regno				<GIC_SPI 266 IRQ_TYPE_LEVEL_HIGH>,
242905ce21b5SAngeloGioacchino Del Regno				<GIC_SPI 267 IRQ_TYPE_LEVEL_HIGH>,
243005ce21b5SAngeloGioacchino Del Regno				<GIC_SPI 268 IRQ_TYPE_LEVEL_HIGH>,
243105ce21b5SAngeloGioacchino Del Regno				<GIC_SPI 244 IRQ_TYPE_LEVEL_HIGH>,
243205ce21b5SAngeloGioacchino Del Regno				<GIC_SPI 245 IRQ_TYPE_LEVEL_HIGH>,
243305ce21b5SAngeloGioacchino Del Regno				<GIC_SPI 247 IRQ_TYPE_LEVEL_HIGH>,
243405ce21b5SAngeloGioacchino Del Regno				<GIC_SPI 248 IRQ_TYPE_LEVEL_HIGH>,
243505ce21b5SAngeloGioacchino Del Regno				<GIC_SPI 249 IRQ_TYPE_LEVEL_HIGH>,
243605ce21b5SAngeloGioacchino Del Regno				<GIC_SPI 250 IRQ_TYPE_LEVEL_HIGH>,
243705ce21b5SAngeloGioacchino Del Regno				<GIC_SPI 251 IRQ_TYPE_LEVEL_HIGH>,
243805ce21b5SAngeloGioacchino Del Regno				<GIC_SPI 252 IRQ_TYPE_LEVEL_HIGH>,
243905ce21b5SAngeloGioacchino Del Regno				<GIC_SPI 253 IRQ_TYPE_LEVEL_HIGH>,
244005ce21b5SAngeloGioacchino Del Regno				<GIC_SPI 254 IRQ_TYPE_LEVEL_HIGH>,
244105ce21b5SAngeloGioacchino Del Regno				<GIC_SPI 255 IRQ_TYPE_LEVEL_HIGH>,
244205ce21b5SAngeloGioacchino Del Regno				<GIC_SPI 256 IRQ_TYPE_LEVEL_HIGH>,
244305ce21b5SAngeloGioacchino Del Regno				<GIC_SPI 260 IRQ_TYPE_LEVEL_HIGH>,
244405ce21b5SAngeloGioacchino Del Regno				<GIC_SPI 261 IRQ_TYPE_LEVEL_HIGH>,
244505ce21b5SAngeloGioacchino Del Regno				<GIC_SPI 262 IRQ_TYPE_LEVEL_HIGH>,
244605ce21b5SAngeloGioacchino Del Regno				<GIC_SPI 272 IRQ_TYPE_LEVEL_HIGH>;
244705ce21b5SAngeloGioacchino Del Regno		};
244805ce21b5SAngeloGioacchino Del Regno
2449a9ee66deSSibi Sankar		remoteproc_adsp: remoteproc@17300000 {
2450a9ee66deSSibi Sankar			compatible = "qcom,msm8998-adsp-pas";
2451a9ee66deSSibi Sankar			reg = <0x17300000 0x4040>;
2452a9ee66deSSibi Sankar
2453a9ee66deSSibi Sankar			interrupts-extended = <&intc GIC_SPI 162 IRQ_TYPE_EDGE_RISING>,
2454a9ee66deSSibi Sankar					      <&adsp_smp2p_in 0 IRQ_TYPE_EDGE_RISING>,
2455a9ee66deSSibi Sankar					      <&adsp_smp2p_in 1 IRQ_TYPE_EDGE_RISING>,
2456a9ee66deSSibi Sankar					      <&adsp_smp2p_in 2 IRQ_TYPE_EDGE_RISING>,
2457a9ee66deSSibi Sankar					      <&adsp_smp2p_in 3 IRQ_TYPE_EDGE_RISING>;
2458a9ee66deSSibi Sankar			interrupt-names = "wdog", "fatal", "ready",
2459a9ee66deSSibi Sankar					  "handover", "stop-ack";
2460a9ee66deSSibi Sankar
2461a9ee66deSSibi Sankar			clocks = <&rpmcc RPM_SMD_XO_CLK_SRC>;
2462a9ee66deSSibi Sankar			clock-names = "xo";
2463a9ee66deSSibi Sankar
2464a9ee66deSSibi Sankar			memory-region = <&adsp_mem>;
2465a9ee66deSSibi Sankar
2466a9ee66deSSibi Sankar			qcom,smem-states = <&adsp_smp2p_out 0>;
2467a9ee66deSSibi Sankar			qcom,smem-state-names = "stop";
2468a9ee66deSSibi Sankar
2469a9ee66deSSibi Sankar			power-domains = <&rpmpd MSM8998_VDDCX>;
2470a9ee66deSSibi Sankar			power-domain-names = "cx";
2471a9ee66deSSibi Sankar
2472a9ee66deSSibi Sankar			status = "disabled";
2473a9ee66deSSibi Sankar
2474a9ee66deSSibi Sankar			glink-edge {
2475a9ee66deSSibi Sankar				interrupts = <GIC_SPI 157 IRQ_TYPE_EDGE_RISING>;
2476a9ee66deSSibi Sankar				label = "lpass";
2477a9ee66deSSibi Sankar				qcom,remote-pid = <2>;
2478a9ee66deSSibi Sankar				mboxes = <&apcs_glb 9>;
2479a9ee66deSSibi Sankar			};
2480a9ee66deSSibi Sankar		};
2481a9ee66deSSibi Sankar
248232a5da21SJeffrey Hugo		apcs_glb: mailbox@17911000 {
248332a5da21SJeffrey Hugo			compatible = "qcom,msm8998-apcs-hmss-global";
248432a5da21SJeffrey Hugo			reg = <0x17911000 0x1000>;
248532a5da21SJeffrey Hugo
248632a5da21SJeffrey Hugo			#mbox-cells = <1>;
24874807c71cSJoonwoo Park		};
24884807c71cSJoonwoo Park
24894807c71cSJoonwoo Park		timer@17920000 {
24904807c71cSJoonwoo Park			#address-cells = <1>;
24914807c71cSJoonwoo Park			#size-cells = <1>;
24924807c71cSJoonwoo Park			ranges;
24934807c71cSJoonwoo Park			compatible = "arm,armv7-timer-mem";
24944807c71cSJoonwoo Park			reg = <0x17920000 0x1000>;
24954807c71cSJoonwoo Park
24964807c71cSJoonwoo Park			frame@17921000 {
24974807c71cSJoonwoo Park				frame-number = <0>;
24984807c71cSJoonwoo Park				interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>,
24994807c71cSJoonwoo Park					     <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>;
25004807c71cSJoonwoo Park				reg = <0x17921000 0x1000>,
25014807c71cSJoonwoo Park				      <0x17922000 0x1000>;
25024807c71cSJoonwoo Park			};
25034807c71cSJoonwoo Park
25044807c71cSJoonwoo Park			frame@17923000 {
25054807c71cSJoonwoo Park				frame-number = <1>;
25064807c71cSJoonwoo Park				interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>;
25074807c71cSJoonwoo Park				reg = <0x17923000 0x1000>;
25084807c71cSJoonwoo Park				status = "disabled";
25094807c71cSJoonwoo Park			};
25104807c71cSJoonwoo Park
25114807c71cSJoonwoo Park			frame@17924000 {
25124807c71cSJoonwoo Park				frame-number = <2>;
25134807c71cSJoonwoo Park				interrupts = <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>;
25144807c71cSJoonwoo Park				reg = <0x17924000 0x1000>;
25154807c71cSJoonwoo Park				status = "disabled";
25164807c71cSJoonwoo Park			};
25174807c71cSJoonwoo Park
25184807c71cSJoonwoo Park			frame@17925000 {
25194807c71cSJoonwoo Park				frame-number = <3>;
25204807c71cSJoonwoo Park				interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>;
25214807c71cSJoonwoo Park				reg = <0x17925000 0x1000>;
25224807c71cSJoonwoo Park				status = "disabled";
25234807c71cSJoonwoo Park			};
25244807c71cSJoonwoo Park
25254807c71cSJoonwoo Park			frame@17926000 {
25264807c71cSJoonwoo Park				frame-number = <4>;
25274807c71cSJoonwoo Park				interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>;
25284807c71cSJoonwoo Park				reg = <0x17926000 0x1000>;
25294807c71cSJoonwoo Park				status = "disabled";
25304807c71cSJoonwoo Park			};
25314807c71cSJoonwoo Park
25324807c71cSJoonwoo Park			frame@17927000 {
25334807c71cSJoonwoo Park				frame-number = <5>;
25344807c71cSJoonwoo Park				interrupts = <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>;
25354807c71cSJoonwoo Park				reg = <0x17927000 0x1000>;
25364807c71cSJoonwoo Park				status = "disabled";
25374807c71cSJoonwoo Park			};
25384807c71cSJoonwoo Park
25394807c71cSJoonwoo Park			frame@17928000 {
25404807c71cSJoonwoo Park				frame-number = <6>;
25414807c71cSJoonwoo Park				interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>;
25424807c71cSJoonwoo Park				reg = <0x17928000 0x1000>;
25434807c71cSJoonwoo Park				status = "disabled";
25444807c71cSJoonwoo Park			};
25454807c71cSJoonwoo Park		};
25464807c71cSJoonwoo Park
25474807c71cSJoonwoo Park		intc: interrupt-controller@17a00000 {
25484807c71cSJoonwoo Park			compatible = "arm,gic-v3";
25494807c71cSJoonwoo Park			reg = <0x17a00000 0x10000>,       /* GICD */
25504807c71cSJoonwoo Park			      <0x17b00000 0x100000>;      /* GICR * 8 */
25514807c71cSJoonwoo Park			#interrupt-cells = <3>;
25524807c71cSJoonwoo Park			#address-cells = <1>;
25534807c71cSJoonwoo Park			#size-cells = <1>;
25544807c71cSJoonwoo Park			ranges;
25554807c71cSJoonwoo Park			interrupt-controller;
25564807c71cSJoonwoo Park			#redistributor-regions = <1>;
25574807c71cSJoonwoo Park			redistributor-stride = <0x0 0x20000>;
25584807c71cSJoonwoo Park			interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>;
25594807c71cSJoonwoo Park		};
256019b7caaaSJeffrey Hugo
256119b7caaaSJeffrey Hugo		wifi: wifi@18800000 {
256219b7caaaSJeffrey Hugo			compatible = "qcom,wcn3990-wifi";
256319b7caaaSJeffrey Hugo			status = "disabled";
256419b7caaaSJeffrey Hugo			reg = <0x18800000 0x800000>;
256519b7caaaSJeffrey Hugo			reg-names = "membase";
256619b7caaaSJeffrey Hugo			memory-region = <&wlan_msa_mem>;
256719b7caaaSJeffrey Hugo			clocks = <&rpmcc RPM_SMD_RF_CLK2_PIN>;
256819b7caaaSJeffrey Hugo			clock-names = "cxo_ref_clk_pin";
256919b7caaaSJeffrey Hugo			interrupts =
257019b7caaaSJeffrey Hugo				<GIC_SPI 413 IRQ_TYPE_LEVEL_HIGH>,
257119b7caaaSJeffrey Hugo				<GIC_SPI 414 IRQ_TYPE_LEVEL_HIGH>,
257219b7caaaSJeffrey Hugo				<GIC_SPI 415 IRQ_TYPE_LEVEL_HIGH>,
257319b7caaaSJeffrey Hugo				<GIC_SPI 416 IRQ_TYPE_LEVEL_HIGH>,
257419b7caaaSJeffrey Hugo				<GIC_SPI 417 IRQ_TYPE_LEVEL_HIGH>,
257519b7caaaSJeffrey Hugo				<GIC_SPI 418 IRQ_TYPE_LEVEL_HIGH>,
257619b7caaaSJeffrey Hugo				<GIC_SPI 420 IRQ_TYPE_LEVEL_HIGH>,
257719b7caaaSJeffrey Hugo				<GIC_SPI 421 IRQ_TYPE_LEVEL_HIGH>,
257819b7caaaSJeffrey Hugo				<GIC_SPI 422 IRQ_TYPE_LEVEL_HIGH>,
257919b7caaaSJeffrey Hugo				<GIC_SPI 423 IRQ_TYPE_LEVEL_HIGH>,
258019b7caaaSJeffrey Hugo				<GIC_SPI 424 IRQ_TYPE_LEVEL_HIGH>,
258119b7caaaSJeffrey Hugo				<GIC_SPI 425 IRQ_TYPE_LEVEL_HIGH>;
258219b7caaaSJeffrey Hugo			iommus = <&anoc2_smmu 0x1900>,
258319b7caaaSJeffrey Hugo				 <&anoc2_smmu 0x1901>;
258419b7caaaSJeffrey Hugo			qcom,snoc-host-cap-8bit-quirk;
258519b7caaaSJeffrey Hugo		};
25864807c71cSJoonwoo Park	};
25874807c71cSJoonwoo Park};
2588