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>
61fb28636SMarc Gonzalez#include <dt-bindings/clock/qcom,rpmcc.h>
7460f13caSSibi Sankar#include <dt-bindings/power/qcom-rpmpd.h>
823bd4f78SJeffrey Hugo#include <dt-bindings/gpio/gpio.h>
94807c71cSJoonwoo Park
104807c71cSJoonwoo Park/ {
114807c71cSJoonwoo Park	interrupt-parent = <&intc>;
124807c71cSJoonwoo Park
134807c71cSJoonwoo Park	qcom,msm-id = <292 0x0>;
144807c71cSJoonwoo Park
154807c71cSJoonwoo Park	#address-cells = <2>;
164807c71cSJoonwoo Park	#size-cells = <2>;
174807c71cSJoonwoo Park
184807c71cSJoonwoo Park	chosen { };
194807c71cSJoonwoo Park
204807c71cSJoonwoo Park	memory {
214807c71cSJoonwoo Park		device_type = "memory";
224807c71cSJoonwoo Park		/* We expect the bootloader to fill in the reg */
234807c71cSJoonwoo Park		reg = <0 0 0 0>;
244807c71cSJoonwoo Park	};
254807c71cSJoonwoo Park
26c7833949SBjorn Andersson	reserved-memory {
27c7833949SBjorn Andersson		#address-cells = <2>;
28c7833949SBjorn Andersson		#size-cells = <2>;
29c7833949SBjorn Andersson		ranges;
30c7833949SBjorn Andersson
31c7833949SBjorn Andersson		memory@85800000 {
32c7833949SBjorn Andersson			reg = <0x0 0x85800000 0x0 0x800000>;
33c7833949SBjorn Andersson			no-map;
34c7833949SBjorn Andersson		};
35c7833949SBjorn Andersson
36c7833949SBjorn Andersson		smem_mem: smem-mem@86000000 {
37c7833949SBjorn Andersson			reg = <0x0 0x86000000 0x0 0x200000>;
38c7833949SBjorn Andersson			no-map;
39c7833949SBjorn Andersson		};
40c7833949SBjorn Andersson
41c7833949SBjorn Andersson		memory@86200000 {
426e533309SMarc Gonzalez			reg = <0x0 0x86200000 0x0 0x2d00000>;
43c7833949SBjorn Andersson			no-map;
44c7833949SBjorn Andersson		};
45c7833949SBjorn Andersson
46c7833949SBjorn Andersson		rmtfs {
47c7833949SBjorn Andersson			compatible = "qcom,rmtfs-mem";
48c7833949SBjorn Andersson
49c7833949SBjorn Andersson			size = <0x0 0x200000>;
50c7833949SBjorn Andersson			alloc-ranges = <0x0 0xa0000000 0x0 0x2000000>;
51c7833949SBjorn Andersson			no-map;
52c7833949SBjorn Andersson
53c7833949SBjorn Andersson			qcom,client-id = <1>;
54c7833949SBjorn Andersson			qcom,vmid = <15>;
55c7833949SBjorn Andersson		};
56c7833949SBjorn Andersson	};
57c7833949SBjorn Andersson
584807c71cSJoonwoo Park	clocks {
59818046ebSAndy Gross		xo: xo-board {
604807c71cSJoonwoo Park			compatible = "fixed-clock";
614807c71cSJoonwoo Park			#clock-cells = <0>;
624807c71cSJoonwoo Park			clock-frequency = <19200000>;
63818046ebSAndy Gross			clock-output-names = "xo_board";
644807c71cSJoonwoo Park		};
654807c71cSJoonwoo Park
664807c71cSJoonwoo Park		sleep_clk {
674807c71cSJoonwoo Park			compatible = "fixed-clock";
684807c71cSJoonwoo Park			#clock-cells = <0>;
694807c71cSJoonwoo Park			clock-frequency = <32764>;
704807c71cSJoonwoo Park		};
714807c71cSJoonwoo Park	};
724807c71cSJoonwoo Park
734807c71cSJoonwoo Park	cpus {
744807c71cSJoonwoo Park		#address-cells = <2>;
754807c71cSJoonwoo Park		#size-cells = <0>;
764807c71cSJoonwoo Park
774807c71cSJoonwoo Park		CPU0: cpu@0 {
784807c71cSJoonwoo Park			device_type = "cpu";
794807c71cSJoonwoo Park			compatible = "arm,armv8";
804807c71cSJoonwoo Park			reg = <0x0 0x0>;
814807c71cSJoonwoo Park			enable-method = "psci";
82*c3083c80SAmit Kucheria			cpu-idle-states = <&LITTLE_CPU_SLEEP_0 &LITTLE_CPU_SLEEP_1>;
834807c71cSJoonwoo Park			next-level-cache = <&L2_0>;
844807c71cSJoonwoo Park			L2_0: l2-cache {
854807c71cSJoonwoo Park				compatible = "arm,arch-cache";
864807c71cSJoonwoo Park				cache-level = <2>;
874807c71cSJoonwoo Park			};
884807c71cSJoonwoo Park			L1_I_0: l1-icache {
894807c71cSJoonwoo Park				compatible = "arm,arch-cache";
904807c71cSJoonwoo Park			};
914807c71cSJoonwoo Park			L1_D_0: l1-dcache {
924807c71cSJoonwoo Park				compatible = "arm,arch-cache";
934807c71cSJoonwoo Park			};
944807c71cSJoonwoo Park		};
954807c71cSJoonwoo Park
964807c71cSJoonwoo Park		CPU1: cpu@1 {
974807c71cSJoonwoo Park			device_type = "cpu";
984807c71cSJoonwoo Park			compatible = "arm,armv8";
994807c71cSJoonwoo Park			reg = <0x0 0x1>;
1004807c71cSJoonwoo Park			enable-method = "psci";
101*c3083c80SAmit Kucheria			cpu-idle-states = <&LITTLE_CPU_SLEEP_0 &LITTLE_CPU_SLEEP_1>;
1024807c71cSJoonwoo Park			next-level-cache = <&L2_0>;
1034807c71cSJoonwoo Park			L1_I_1: l1-icache {
1044807c71cSJoonwoo Park				compatible = "arm,arch-cache";
1054807c71cSJoonwoo Park			};
1064807c71cSJoonwoo Park			L1_D_1: l1-dcache {
1074807c71cSJoonwoo Park				compatible = "arm,arch-cache";
1084807c71cSJoonwoo Park			};
1094807c71cSJoonwoo Park		};
1104807c71cSJoonwoo Park
1114807c71cSJoonwoo Park		CPU2: cpu@2 {
1124807c71cSJoonwoo Park			device_type = "cpu";
1134807c71cSJoonwoo Park			compatible = "arm,armv8";
1144807c71cSJoonwoo Park			reg = <0x0 0x2>;
1154807c71cSJoonwoo Park			enable-method = "psci";
116*c3083c80SAmit Kucheria			cpu-idle-states = <&LITTLE_CPU_SLEEP_0 &LITTLE_CPU_SLEEP_1>;
1174807c71cSJoonwoo Park			next-level-cache = <&L2_0>;
1184807c71cSJoonwoo Park			L1_I_2: l1-icache {
1194807c71cSJoonwoo Park				compatible = "arm,arch-cache";
1204807c71cSJoonwoo Park			};
1214807c71cSJoonwoo Park			L1_D_2: l1-dcache {
1224807c71cSJoonwoo Park				compatible = "arm,arch-cache";
1234807c71cSJoonwoo Park			};
1244807c71cSJoonwoo Park		};
1254807c71cSJoonwoo Park
1264807c71cSJoonwoo Park		CPU3: cpu@3 {
1274807c71cSJoonwoo Park			device_type = "cpu";
1284807c71cSJoonwoo Park			compatible = "arm,armv8";
1294807c71cSJoonwoo Park			reg = <0x0 0x3>;
1304807c71cSJoonwoo Park			enable-method = "psci";
131*c3083c80SAmit Kucheria			cpu-idle-states = <&LITTLE_CPU_SLEEP_0 &LITTLE_CPU_SLEEP_1>;
1324807c71cSJoonwoo Park			next-level-cache = <&L2_0>;
1334807c71cSJoonwoo Park			L1_I_3: l1-icache {
1344807c71cSJoonwoo Park				compatible = "arm,arch-cache";
1354807c71cSJoonwoo Park			};
1364807c71cSJoonwoo Park			L1_D_3: l1-dcache {
1374807c71cSJoonwoo Park				compatible = "arm,arch-cache";
1384807c71cSJoonwoo Park			};
1394807c71cSJoonwoo Park		};
1404807c71cSJoonwoo Park
1414807c71cSJoonwoo Park		CPU4: cpu@100 {
1424807c71cSJoonwoo Park			device_type = "cpu";
1434807c71cSJoonwoo Park			compatible = "arm,armv8";
1444807c71cSJoonwoo Park			reg = <0x0 0x100>;
1454807c71cSJoonwoo Park			enable-method = "psci";
146*c3083c80SAmit Kucheria			cpu-idle-states = <&BIG_CPU_SLEEP_0 &BIG_CPU_SLEEP_1>;
1474807c71cSJoonwoo Park			next-level-cache = <&L2_1>;
1484807c71cSJoonwoo Park			L2_1: l2-cache {
1494807c71cSJoonwoo Park				compatible = "arm,arch-cache";
1504807c71cSJoonwoo Park				cache-level = <2>;
1514807c71cSJoonwoo Park			};
1524807c71cSJoonwoo Park			L1_I_100: l1-icache {
1534807c71cSJoonwoo Park				compatible = "arm,arch-cache";
1544807c71cSJoonwoo Park			};
1554807c71cSJoonwoo Park			L1_D_100: l1-dcache {
1564807c71cSJoonwoo Park				compatible = "arm,arch-cache";
1574807c71cSJoonwoo Park			};
1584807c71cSJoonwoo Park		};
1594807c71cSJoonwoo Park
1604807c71cSJoonwoo Park		CPU5: cpu@101 {
1614807c71cSJoonwoo Park			device_type = "cpu";
1624807c71cSJoonwoo Park			compatible = "arm,armv8";
1634807c71cSJoonwoo Park			reg = <0x0 0x101>;
1644807c71cSJoonwoo Park			enable-method = "psci";
165*c3083c80SAmit Kucheria			cpu-idle-states = <&BIG_CPU_SLEEP_0 &BIG_CPU_SLEEP_1>;
1664807c71cSJoonwoo Park			next-level-cache = <&L2_1>;
1674807c71cSJoonwoo Park			L1_I_101: l1-icache {
1684807c71cSJoonwoo Park				compatible = "arm,arch-cache";
1694807c71cSJoonwoo Park			};
1704807c71cSJoonwoo Park			L1_D_101: l1-dcache {
1714807c71cSJoonwoo Park				compatible = "arm,arch-cache";
1724807c71cSJoonwoo Park			};
1734807c71cSJoonwoo Park		};
1744807c71cSJoonwoo Park
1754807c71cSJoonwoo Park		CPU6: cpu@102 {
1764807c71cSJoonwoo Park			device_type = "cpu";
1774807c71cSJoonwoo Park			compatible = "arm,armv8";
1784807c71cSJoonwoo Park			reg = <0x0 0x102>;
1794807c71cSJoonwoo Park			enable-method = "psci";
180*c3083c80SAmit Kucheria			cpu-idle-states = <&BIG_CPU_SLEEP_0 &BIG_CPU_SLEEP_1>;
1814807c71cSJoonwoo Park			next-level-cache = <&L2_1>;
1824807c71cSJoonwoo Park			L1_I_102: l1-icache {
1834807c71cSJoonwoo Park				compatible = "arm,arch-cache";
1844807c71cSJoonwoo Park			};
1854807c71cSJoonwoo Park			L1_D_102: l1-dcache {
1864807c71cSJoonwoo Park				compatible = "arm,arch-cache";
1874807c71cSJoonwoo Park			};
1884807c71cSJoonwoo Park		};
1894807c71cSJoonwoo Park
1904807c71cSJoonwoo Park		CPU7: cpu@103 {
1914807c71cSJoonwoo Park			device_type = "cpu";
1924807c71cSJoonwoo Park			compatible = "arm,armv8";
1934807c71cSJoonwoo Park			reg = <0x0 0x103>;
1944807c71cSJoonwoo Park			enable-method = "psci";
195*c3083c80SAmit Kucheria			cpu-idle-states = <&BIG_CPU_SLEEP_0 &BIG_CPU_SLEEP_1>;
1964807c71cSJoonwoo Park			next-level-cache = <&L2_1>;
1974807c71cSJoonwoo Park			L1_I_103: l1-icache {
1984807c71cSJoonwoo Park				compatible = "arm,arch-cache";
1994807c71cSJoonwoo Park			};
2004807c71cSJoonwoo Park			L1_D_103: l1-dcache {
2014807c71cSJoonwoo Park				compatible = "arm,arch-cache";
2024807c71cSJoonwoo Park			};
2034807c71cSJoonwoo Park		};
2044807c71cSJoonwoo Park
2054807c71cSJoonwoo Park		cpu-map {
2064807c71cSJoonwoo Park			cluster0 {
2074807c71cSJoonwoo Park				core0 {
2084807c71cSJoonwoo Park					cpu = <&CPU0>;
2094807c71cSJoonwoo Park				};
2104807c71cSJoonwoo Park
2114807c71cSJoonwoo Park				core1 {
2124807c71cSJoonwoo Park					cpu = <&CPU1>;
2134807c71cSJoonwoo Park				};
2144807c71cSJoonwoo Park
2154807c71cSJoonwoo Park				core2 {
2164807c71cSJoonwoo Park					cpu = <&CPU2>;
2174807c71cSJoonwoo Park				};
2184807c71cSJoonwoo Park
2194807c71cSJoonwoo Park				core3 {
2204807c71cSJoonwoo Park					cpu = <&CPU3>;
2214807c71cSJoonwoo Park				};
2224807c71cSJoonwoo Park			};
2234807c71cSJoonwoo Park
2244807c71cSJoonwoo Park			cluster1 {
2254807c71cSJoonwoo Park				core0 {
2264807c71cSJoonwoo Park					cpu = <&CPU4>;
2274807c71cSJoonwoo Park				};
2284807c71cSJoonwoo Park
2294807c71cSJoonwoo Park				core1 {
2304807c71cSJoonwoo Park					cpu = <&CPU5>;
2314807c71cSJoonwoo Park				};
2324807c71cSJoonwoo Park
2334807c71cSJoonwoo Park				core2 {
2344807c71cSJoonwoo Park					cpu = <&CPU6>;
2354807c71cSJoonwoo Park				};
2364807c71cSJoonwoo Park
2374807c71cSJoonwoo Park				core3 {
2384807c71cSJoonwoo Park					cpu = <&CPU7>;
2394807c71cSJoonwoo Park				};
2404807c71cSJoonwoo Park			};
2414807c71cSJoonwoo Park		};
242*c3083c80SAmit Kucheria
243*c3083c80SAmit Kucheria		idle-states {
244*c3083c80SAmit Kucheria			entry-method = "psci";
245*c3083c80SAmit Kucheria
246*c3083c80SAmit Kucheria			LITTLE_CPU_SLEEP_0: cpu-sleep-0-0 {
247*c3083c80SAmit Kucheria				compatible = "arm,idle-state";
248*c3083c80SAmit Kucheria				idle-state-name = "little-retention";
249*c3083c80SAmit Kucheria				arm,psci-suspend-param = <0x00000002>;
250*c3083c80SAmit Kucheria				entry-latency-us = <81>;
251*c3083c80SAmit Kucheria				exit-latency-us = <86>;
252*c3083c80SAmit Kucheria				min-residency-us = <200>;
253*c3083c80SAmit Kucheria			};
254*c3083c80SAmit Kucheria
255*c3083c80SAmit Kucheria			LITTLE_CPU_SLEEP_1: cpu-sleep-0-1 {
256*c3083c80SAmit Kucheria				compatible = "arm,idle-state";
257*c3083c80SAmit Kucheria				idle-state-name = "little-power-collapse";
258*c3083c80SAmit Kucheria				arm,psci-suspend-param = <0x40000003>;
259*c3083c80SAmit Kucheria				entry-latency-us = <273>;
260*c3083c80SAmit Kucheria				exit-latency-us = <612>;
261*c3083c80SAmit Kucheria				min-residency-us = <1000>;
262*c3083c80SAmit Kucheria				local-timer-stop;
263*c3083c80SAmit Kucheria			};
264*c3083c80SAmit Kucheria
265*c3083c80SAmit Kucheria			BIG_CPU_SLEEP_0: cpu-sleep-1-0 {
266*c3083c80SAmit Kucheria				compatible = "arm,idle-state";
267*c3083c80SAmit Kucheria				idle-state-name = "big-retention";
268*c3083c80SAmit Kucheria				arm,psci-suspend-param = <0x00000002>;
269*c3083c80SAmit Kucheria				entry-latency-us = <79>;
270*c3083c80SAmit Kucheria				exit-latency-us = <82>;
271*c3083c80SAmit Kucheria				min-residency-us = <200>;
272*c3083c80SAmit Kucheria			};
273*c3083c80SAmit Kucheria
274*c3083c80SAmit Kucheria			BIG_CPU_SLEEP_1: cpu-sleep-1-1 {
275*c3083c80SAmit Kucheria				compatible = "arm,idle-state";
276*c3083c80SAmit Kucheria				idle-state-name = "big-power-collapse";
277*c3083c80SAmit Kucheria				arm,psci-suspend-param = <0x40000003>;
278*c3083c80SAmit Kucheria				entry-latency-us = <336>;
279*c3083c80SAmit Kucheria				exit-latency-us = <525>;
280*c3083c80SAmit Kucheria				min-residency-us = <1000>;
281*c3083c80SAmit Kucheria				local-timer-stop;
282*c3083c80SAmit Kucheria			};
283*c3083c80SAmit Kucheria		};
2844807c71cSJoonwoo Park	};
2854807c71cSJoonwoo Park
286d850156aSBjorn Andersson	firmware {
287d850156aSBjorn Andersson		scm {
28870827d9fSBjorn Andersson			compatible = "qcom,scm-msm8998", "qcom,scm";
289d850156aSBjorn Andersson		};
290d850156aSBjorn Andersson	};
291d850156aSBjorn Andersson
292c7833949SBjorn Andersson	tcsr_mutex: hwlock {
293c7833949SBjorn Andersson		compatible = "qcom,tcsr-mutex";
294c7833949SBjorn Andersson		syscon = <&tcsr_mutex_regs 0 0x1000>;
295c7833949SBjorn Andersson		#hwlock-cells = <1>;
296c7833949SBjorn Andersson	};
297c7833949SBjorn Andersson
2984807c71cSJoonwoo Park	psci {
2994807c71cSJoonwoo Park		compatible = "arm,psci-1.0";
3004807c71cSJoonwoo Park		method = "smc";
3014807c71cSJoonwoo Park	};
3024807c71cSJoonwoo Park
30331c1f0e3SBjorn Andersson	rpm-glink {
30431c1f0e3SBjorn Andersson		compatible = "qcom,glink-rpm";
30531c1f0e3SBjorn Andersson
30631c1f0e3SBjorn Andersson		interrupts = <GIC_SPI 168 IRQ_TYPE_EDGE_RISING>;
30731c1f0e3SBjorn Andersson		qcom,rpm-msg-ram = <&rpm_msg_ram>;
30831c1f0e3SBjorn Andersson		mboxes = <&apcs_glb 0>;
30931c1f0e3SBjorn Andersson
31031c1f0e3SBjorn Andersson		rpm_requests: rpm-requests {
31131c1f0e3SBjorn Andersson			compatible = "qcom,rpm-msm8998";
31231c1f0e3SBjorn Andersson			qcom,glink-channels = "rpm_requests";
3131fb28636SMarc Gonzalez
3141fb28636SMarc Gonzalez			rpmcc: clock-controller {
3151fb28636SMarc Gonzalez				compatible = "qcom,rpmcc-msm8998", "qcom,rpmcc";
3161fb28636SMarc Gonzalez				#clock-cells = <1>;
3171fb28636SMarc Gonzalez			};
318460f13caSSibi Sankar
319460f13caSSibi Sankar			rpmpd: power-controller {
320460f13caSSibi Sankar				compatible = "qcom,msm8998-rpmpd";
321460f13caSSibi Sankar				#power-domain-cells = <1>;
322460f13caSSibi Sankar				operating-points-v2 = <&rpmpd_opp_table>;
323460f13caSSibi Sankar
324460f13caSSibi Sankar				rpmpd_opp_table: opp-table {
325460f13caSSibi Sankar					compatible = "operating-points-v2";
326460f13caSSibi Sankar
327460f13caSSibi Sankar					rpmpd_opp_ret: opp1 {
328460f13caSSibi Sankar						opp-level = <16>;
329460f13caSSibi Sankar					};
330460f13caSSibi Sankar
331460f13caSSibi Sankar					rpmpd_opp_ret_plus: opp2 {
332460f13caSSibi Sankar						opp-level = <32>;
333460f13caSSibi Sankar					};
334460f13caSSibi Sankar
335460f13caSSibi Sankar					rpmpd_opp_min_svs: opp3 {
336460f13caSSibi Sankar						opp-level = <48>;
337460f13caSSibi Sankar					};
338460f13caSSibi Sankar
339460f13caSSibi Sankar					rpmpd_opp_low_svs: opp4 {
340460f13caSSibi Sankar						opp-level = <64>;
341460f13caSSibi Sankar					};
342460f13caSSibi Sankar
343460f13caSSibi Sankar					rpmpd_opp_svs: opp5 {
344460f13caSSibi Sankar						opp-level = <128>;
345460f13caSSibi Sankar					};
346460f13caSSibi Sankar
347460f13caSSibi Sankar					rpmpd_opp_svs_plus: opp6 {
348460f13caSSibi Sankar						opp-level = <192>;
349460f13caSSibi Sankar					};
350460f13caSSibi Sankar
351460f13caSSibi Sankar					rpmpd_opp_nom: opp7 {
352460f13caSSibi Sankar						opp-level = <256>;
353460f13caSSibi Sankar					};
354460f13caSSibi Sankar
355460f13caSSibi Sankar					rpmpd_opp_nom_plus: opp8 {
356460f13caSSibi Sankar						opp-level = <320>;
357460f13caSSibi Sankar					};
358460f13caSSibi Sankar
359460f13caSSibi Sankar					rpmpd_opp_turbo: opp9 {
360460f13caSSibi Sankar						opp-level = <384>;
361460f13caSSibi Sankar					};
362460f13caSSibi Sankar
363460f13caSSibi Sankar					rpmpd_opp_turbo_plus: opp10 {
364460f13caSSibi Sankar						opp-level = <512>;
365460f13caSSibi Sankar					};
366460f13caSSibi Sankar				};
367460f13caSSibi Sankar			};
36831c1f0e3SBjorn Andersson		};
36931c1f0e3SBjorn Andersson	};
37031c1f0e3SBjorn Andersson
371c7833949SBjorn Andersson	smem {
372c7833949SBjorn Andersson		compatible = "qcom,smem";
373c7833949SBjorn Andersson		memory-region = <&smem_mem>;
374c7833949SBjorn Andersson		hwlocks = <&tcsr_mutex 3>;
375c7833949SBjorn Andersson	};
376c7833949SBjorn Andersson
377e8d006fdSBjorn Andersson	smp2p-lpass {
378e8d006fdSBjorn Andersson		compatible = "qcom,smp2p";
379e8d006fdSBjorn Andersson		qcom,smem = <443>, <429>;
380e8d006fdSBjorn Andersson
381e8d006fdSBjorn Andersson		interrupts = <GIC_SPI 158 IRQ_TYPE_EDGE_RISING>;
382e8d006fdSBjorn Andersson
383e8d006fdSBjorn Andersson		mboxes = <&apcs_glb 10>;
384e8d006fdSBjorn Andersson
385e8d006fdSBjorn Andersson		qcom,local-pid = <0>;
386e8d006fdSBjorn Andersson		qcom,remote-pid = <2>;
387e8d006fdSBjorn Andersson
388e8d006fdSBjorn Andersson		adsp_smp2p_out: master-kernel {
389e8d006fdSBjorn Andersson			qcom,entry-name = "master-kernel";
390e8d006fdSBjorn Andersson			#qcom,smem-state-cells = <1>;
391e8d006fdSBjorn Andersson		};
392e8d006fdSBjorn Andersson
393e8d006fdSBjorn Andersson		adsp_smp2p_in: slave-kernel {
394e8d006fdSBjorn Andersson			qcom,entry-name = "slave-kernel";
395e8d006fdSBjorn Andersson
396e8d006fdSBjorn Andersson			interrupt-controller;
397e8d006fdSBjorn Andersson			#interrupt-cells = <2>;
398e8d006fdSBjorn Andersson		};
399e8d006fdSBjorn Andersson	};
400e8d006fdSBjorn Andersson
401e8d006fdSBjorn Andersson	smp2p-mpss {
402e8d006fdSBjorn Andersson		compatible = "qcom,smp2p";
403e8d006fdSBjorn Andersson		qcom,smem = <435>, <428>;
404e8d006fdSBjorn Andersson		interrupts = <GIC_SPI 451 IRQ_TYPE_EDGE_RISING>;
405e8d006fdSBjorn Andersson		mboxes = <&apcs_glb 14>;
406e8d006fdSBjorn Andersson		qcom,local-pid = <0>;
407e8d006fdSBjorn Andersson		qcom,remote-pid = <1>;
408e8d006fdSBjorn Andersson
409e8d006fdSBjorn Andersson		modem_smp2p_out: master-kernel {
410e8d006fdSBjorn Andersson			qcom,entry-name = "master-kernel";
411e8d006fdSBjorn Andersson			#qcom,smem-state-cells = <1>;
412e8d006fdSBjorn Andersson		};
413e8d006fdSBjorn Andersson
414e8d006fdSBjorn Andersson		modem_smp2p_in: slave-kernel {
415e8d006fdSBjorn Andersson			qcom,entry-name = "slave-kernel";
416e8d006fdSBjorn Andersson			interrupt-controller;
417e8d006fdSBjorn Andersson			#interrupt-cells = <2>;
418e8d006fdSBjorn Andersson		};
419e8d006fdSBjorn Andersson	};
420e8d006fdSBjorn Andersson
421e8d006fdSBjorn Andersson	smp2p-slpi {
422e8d006fdSBjorn Andersson		compatible = "qcom,smp2p";
423e8d006fdSBjorn Andersson		qcom,smem = <481>, <430>;
424e8d006fdSBjorn Andersson		interrupts = <GIC_SPI 178 IRQ_TYPE_EDGE_RISING>;
425e8d006fdSBjorn Andersson		mboxes = <&apcs_glb 26>;
426e8d006fdSBjorn Andersson		qcom,local-pid = <0>;
427e8d006fdSBjorn Andersson		qcom,remote-pid = <3>;
428e8d006fdSBjorn Andersson
429e8d006fdSBjorn Andersson		slpi_smp2p_out: master-kernel {
430e8d006fdSBjorn Andersson			qcom,entry-name = "master-kernel";
431e8d006fdSBjorn Andersson			#qcom,smem-state-cells = <1>;
432e8d006fdSBjorn Andersson		};
433e8d006fdSBjorn Andersson
434e8d006fdSBjorn Andersson		slpi_smp2p_in: slave-kernel {
435e8d006fdSBjorn Andersson			qcom,entry-name = "slave-kernel";
436e8d006fdSBjorn Andersson			interrupt-controller;
437e8d006fdSBjorn Andersson			#interrupt-cells = <2>;
438e8d006fdSBjorn Andersson		};
439e8d006fdSBjorn Andersson	};
440e8d006fdSBjorn Andersson
4414449b6f2SBjorn Andersson	thermal-zones {
442ae8876ddSAmit Kucheria		cpu0-thermal {
4434449b6f2SBjorn Andersson			polling-delay-passive = <250>;
4444449b6f2SBjorn Andersson			polling-delay = <1000>;
4454449b6f2SBjorn Andersson
446b67d9c5dSAmit Kucheria			thermal-sensors = <&tsens0 1>;
4474449b6f2SBjorn Andersson
4484449b6f2SBjorn Andersson			trips {
449ae8876ddSAmit Kucheria				cpu0_alert0: trip-point@0 {
4504449b6f2SBjorn Andersson					temperature = <75000>;
4514449b6f2SBjorn Andersson					hysteresis = <2000>;
4524449b6f2SBjorn Andersson					type = "passive";
4534449b6f2SBjorn Andersson				};
4544449b6f2SBjorn Andersson
455ae8876ddSAmit Kucheria				cpu0_crit: cpu_crit {
4564449b6f2SBjorn Andersson					temperature = <110000>;
4574449b6f2SBjorn Andersson					hysteresis = <2000>;
4584449b6f2SBjorn Andersson					type = "critical";
4594449b6f2SBjorn Andersson				};
4604449b6f2SBjorn Andersson			};
4614449b6f2SBjorn Andersson		};
4624449b6f2SBjorn Andersson
463ae8876ddSAmit Kucheria		cpu1-thermal {
4644449b6f2SBjorn Andersson			polling-delay-passive = <250>;
4654449b6f2SBjorn Andersson			polling-delay = <1000>;
4664449b6f2SBjorn Andersson
467b67d9c5dSAmit Kucheria			thermal-sensors = <&tsens0 2>;
4684449b6f2SBjorn Andersson
4694449b6f2SBjorn Andersson			trips {
470ae8876ddSAmit Kucheria				cpu1_alert0: trip-point@0 {
4714449b6f2SBjorn Andersson					temperature = <75000>;
4724449b6f2SBjorn Andersson					hysteresis = <2000>;
4734449b6f2SBjorn Andersson					type = "passive";
4744449b6f2SBjorn Andersson				};
4754449b6f2SBjorn Andersson
476ae8876ddSAmit Kucheria				cpu1_crit: cpu_crit {
4774449b6f2SBjorn Andersson					temperature = <110000>;
4784449b6f2SBjorn Andersson					hysteresis = <2000>;
4794449b6f2SBjorn Andersson					type = "critical";
4804449b6f2SBjorn Andersson				};
4814449b6f2SBjorn Andersson			};
4824449b6f2SBjorn Andersson		};
4834449b6f2SBjorn Andersson
484ae8876ddSAmit Kucheria		cpu2-thermal {
4854449b6f2SBjorn Andersson			polling-delay-passive = <250>;
4864449b6f2SBjorn Andersson			polling-delay = <1000>;
4874449b6f2SBjorn Andersson
488b67d9c5dSAmit Kucheria			thermal-sensors = <&tsens0 3>;
4894449b6f2SBjorn Andersson
4904449b6f2SBjorn Andersson			trips {
491ae8876ddSAmit Kucheria				cpu2_alert0: trip-point@0 {
4924449b6f2SBjorn Andersson					temperature = <75000>;
4934449b6f2SBjorn Andersson					hysteresis = <2000>;
4944449b6f2SBjorn Andersson					type = "passive";
4954449b6f2SBjorn Andersson				};
4964449b6f2SBjorn Andersson
497ae8876ddSAmit Kucheria				cpu2_crit: cpu_crit {
4984449b6f2SBjorn Andersson					temperature = <110000>;
4994449b6f2SBjorn Andersson					hysteresis = <2000>;
5004449b6f2SBjorn Andersson					type = "critical";
5014449b6f2SBjorn Andersson				};
5024449b6f2SBjorn Andersson			};
5034449b6f2SBjorn Andersson		};
5044449b6f2SBjorn Andersson
505ae8876ddSAmit Kucheria		cpu3-thermal {
5064449b6f2SBjorn Andersson			polling-delay-passive = <250>;
5074449b6f2SBjorn Andersson			polling-delay = <1000>;
5084449b6f2SBjorn Andersson
509b67d9c5dSAmit Kucheria			thermal-sensors = <&tsens0 4>;
5104449b6f2SBjorn Andersson
5114449b6f2SBjorn Andersson			trips {
512ae8876ddSAmit Kucheria				cpu3_alert0: trip-point@0 {
5134449b6f2SBjorn Andersson					temperature = <75000>;
5144449b6f2SBjorn Andersson					hysteresis = <2000>;
5154449b6f2SBjorn Andersson					type = "passive";
5164449b6f2SBjorn Andersson				};
5174449b6f2SBjorn Andersson
518ae8876ddSAmit Kucheria				cpu3_crit: cpu_crit {
5194449b6f2SBjorn Andersson					temperature = <110000>;
5204449b6f2SBjorn Andersson					hysteresis = <2000>;
5214449b6f2SBjorn Andersson					type = "critical";
5224449b6f2SBjorn Andersson				};
5234449b6f2SBjorn Andersson			};
5244449b6f2SBjorn Andersson		};
5254449b6f2SBjorn Andersson
526ae8876ddSAmit Kucheria		cpu4-thermal {
5274449b6f2SBjorn Andersson			polling-delay-passive = <250>;
5284449b6f2SBjorn Andersson			polling-delay = <1000>;
5294449b6f2SBjorn Andersson
5304449b6f2SBjorn Andersson			thermal-sensors = <&tsens0 7>;
5314449b6f2SBjorn Andersson
5324449b6f2SBjorn Andersson			trips {
533ae8876ddSAmit Kucheria				cpu4_alert0: trip-point@0 {
5344449b6f2SBjorn Andersson					temperature = <75000>;
5354449b6f2SBjorn Andersson					hysteresis = <2000>;
5364449b6f2SBjorn Andersson					type = "passive";
5374449b6f2SBjorn Andersson				};
5384449b6f2SBjorn Andersson
539ae8876ddSAmit Kucheria				cpu4_crit: cpu_crit {
5404449b6f2SBjorn Andersson					temperature = <110000>;
5414449b6f2SBjorn Andersson					hysteresis = <2000>;
5424449b6f2SBjorn Andersson					type = "critical";
5434449b6f2SBjorn Andersson				};
5444449b6f2SBjorn Andersson			};
5454449b6f2SBjorn Andersson		};
5464449b6f2SBjorn Andersson
547ae8876ddSAmit Kucheria		cpu5-thermal {
5484449b6f2SBjorn Andersson			polling-delay-passive = <250>;
5494449b6f2SBjorn Andersson			polling-delay = <1000>;
5504449b6f2SBjorn Andersson
5514449b6f2SBjorn Andersson			thermal-sensors = <&tsens0 8>;
5524449b6f2SBjorn Andersson
5534449b6f2SBjorn Andersson			trips {
554ae8876ddSAmit Kucheria				cpu5_alert0: trip-point@0 {
5554449b6f2SBjorn Andersson					temperature = <75000>;
5564449b6f2SBjorn Andersson					hysteresis = <2000>;
5574449b6f2SBjorn Andersson					type = "passive";
5584449b6f2SBjorn Andersson				};
5594449b6f2SBjorn Andersson
560ae8876ddSAmit Kucheria				cpu5_crit: cpu_crit {
5614449b6f2SBjorn Andersson					temperature = <110000>;
5624449b6f2SBjorn Andersson					hysteresis = <2000>;
5634449b6f2SBjorn Andersson					type = "critical";
5644449b6f2SBjorn Andersson				};
5654449b6f2SBjorn Andersson			};
5664449b6f2SBjorn Andersson		};
5674449b6f2SBjorn Andersson
568ae8876ddSAmit Kucheria		cpu6-thermal {
5694449b6f2SBjorn Andersson			polling-delay-passive = <250>;
5704449b6f2SBjorn Andersson			polling-delay = <1000>;
5714449b6f2SBjorn Andersson
5724449b6f2SBjorn Andersson			thermal-sensors = <&tsens0 9>;
5734449b6f2SBjorn Andersson
5744449b6f2SBjorn Andersson			trips {
575ae8876ddSAmit Kucheria				cpu6_alert0: trip-point@0 {
5764449b6f2SBjorn Andersson					temperature = <75000>;
5774449b6f2SBjorn Andersson					hysteresis = <2000>;
5784449b6f2SBjorn Andersson					type = "passive";
5794449b6f2SBjorn Andersson				};
5804449b6f2SBjorn Andersson
581ae8876ddSAmit Kucheria				cpu6_crit: cpu_crit {
5824449b6f2SBjorn Andersson					temperature = <110000>;
5834449b6f2SBjorn Andersson					hysteresis = <2000>;
5844449b6f2SBjorn Andersson					type = "critical";
5854449b6f2SBjorn Andersson				};
5864449b6f2SBjorn Andersson			};
5874449b6f2SBjorn Andersson		};
5884449b6f2SBjorn Andersson
589ae8876ddSAmit Kucheria		cpu7-thermal {
5904449b6f2SBjorn Andersson			polling-delay-passive = <250>;
5914449b6f2SBjorn Andersson			polling-delay = <1000>;
5924449b6f2SBjorn Andersson
5934449b6f2SBjorn Andersson			thermal-sensors = <&tsens0 10>;
5944449b6f2SBjorn Andersson
5954449b6f2SBjorn Andersson			trips {
596ae8876ddSAmit Kucheria				cpu7_alert0: trip-point@0 {
5974449b6f2SBjorn Andersson					temperature = <75000>;
5984449b6f2SBjorn Andersson					hysteresis = <2000>;
5994449b6f2SBjorn Andersson					type = "passive";
6004449b6f2SBjorn Andersson				};
6014449b6f2SBjorn Andersson
602ae8876ddSAmit Kucheria				cpu7_crit: cpu_crit {
6034449b6f2SBjorn Andersson					temperature = <110000>;
6044449b6f2SBjorn Andersson					hysteresis = <2000>;
6054449b6f2SBjorn Andersson					type = "critical";
6064449b6f2SBjorn Andersson				};
6074449b6f2SBjorn Andersson			};
6084449b6f2SBjorn Andersson		};
6094449b6f2SBjorn Andersson
6102fa2d301SAmit Kucheria		gpu-thermal-bottom {
6112fa2d301SAmit Kucheria			polling-delay-passive = <250>;
6122fa2d301SAmit Kucheria			polling-delay = <1000>;
6132fa2d301SAmit Kucheria
6142fa2d301SAmit Kucheria			thermal-sensors = <&tsens0 12>;
6152fa2d301SAmit Kucheria
6162fa2d301SAmit Kucheria			trips {
6172fa2d301SAmit Kucheria				gpu1_alert0: trip-point@0 {
6182fa2d301SAmit Kucheria					temperature = <90000>;
6192fa2d301SAmit Kucheria					hysteresis = <2000>;
6202fa2d301SAmit Kucheria					type = "hot";
6212fa2d301SAmit Kucheria				};
6222fa2d301SAmit Kucheria			};
6232fa2d301SAmit Kucheria		};
6242fa2d301SAmit Kucheria
6252fa2d301SAmit Kucheria		gpu-thermal-top {
6264449b6f2SBjorn Andersson			polling-delay-passive = <250>;
6274449b6f2SBjorn Andersson			polling-delay = <1000>;
6284449b6f2SBjorn Andersson
6299284aa44SAmit Kucheria			thermal-sensors = <&tsens0 13>;
6302fa2d301SAmit Kucheria
6312fa2d301SAmit Kucheria			trips {
6322fa2d301SAmit Kucheria				gpu2_alert0: trip-point@0 {
6332fa2d301SAmit Kucheria					temperature = <90000>;
6342fa2d301SAmit Kucheria					hysteresis = <2000>;
6352fa2d301SAmit Kucheria					type = "hot";
6362fa2d301SAmit Kucheria				};
6372fa2d301SAmit Kucheria			};
6384449b6f2SBjorn Andersson		};
639e9d2729dSAmit Kucheria
640060f4211SAmit Kucheria		clust0-mhm-thermal {
641e9d2729dSAmit Kucheria			polling-delay-passive = <250>;
642e9d2729dSAmit Kucheria			polling-delay = <1000>;
643e9d2729dSAmit Kucheria
644e9d2729dSAmit Kucheria			thermal-sensors = <&tsens0 5>;
645e9d2729dSAmit Kucheria
646e9d2729dSAmit Kucheria			trips {
647e9d2729dSAmit Kucheria				cluster0_mhm_alert0: trip-point@0 {
648e9d2729dSAmit Kucheria					temperature = <90000>;
649e9d2729dSAmit Kucheria					hysteresis = <2000>;
650e9d2729dSAmit Kucheria					type = "hot";
651e9d2729dSAmit Kucheria				};
652e9d2729dSAmit Kucheria			};
653e9d2729dSAmit Kucheria		};
654e9d2729dSAmit Kucheria
655060f4211SAmit Kucheria		clust1-mhm-thermal {
656e9d2729dSAmit Kucheria			polling-delay-passive = <250>;
657e9d2729dSAmit Kucheria			polling-delay = <1000>;
658e9d2729dSAmit Kucheria
659e9d2729dSAmit Kucheria			thermal-sensors = <&tsens0 6>;
660e9d2729dSAmit Kucheria
661e9d2729dSAmit Kucheria			trips {
662e9d2729dSAmit Kucheria				cluster1_mhm_alert0: trip-point@0 {
663e9d2729dSAmit Kucheria					temperature = <90000>;
664e9d2729dSAmit Kucheria					hysteresis = <2000>;
665e9d2729dSAmit Kucheria					type = "hot";
666e9d2729dSAmit Kucheria				};
667e9d2729dSAmit Kucheria			};
668e9d2729dSAmit Kucheria		};
669e9d2729dSAmit Kucheria
670e9d2729dSAmit Kucheria		cluster1-l2-thermal {
6714449b6f2SBjorn Andersson			polling-delay-passive = <250>;
6724449b6f2SBjorn Andersson			polling-delay = <1000>;
6734449b6f2SBjorn Andersson
6744449b6f2SBjorn Andersson			thermal-sensors = <&tsens0 11>;
6754449b6f2SBjorn Andersson
6764449b6f2SBjorn Andersson			trips {
677e9d2729dSAmit Kucheria				cluster1_l2_alert0: trip-point@0 {
678e9d2729dSAmit Kucheria					temperature = <90000>;
6794449b6f2SBjorn Andersson					hysteresis = <2000>;
680e9d2729dSAmit Kucheria					type = "hot";
6814449b6f2SBjorn Andersson				};
6824449b6f2SBjorn Andersson			};
6834449b6f2SBjorn Andersson		};
6844449b6f2SBjorn Andersson
685e9d2729dSAmit Kucheria		modem-thermal {
6864449b6f2SBjorn Andersson			polling-delay-passive = <250>;
6874449b6f2SBjorn Andersson			polling-delay = <1000>;
6884449b6f2SBjorn Andersson
6894449b6f2SBjorn Andersson			thermal-sensors = <&tsens1 1>;
6904449b6f2SBjorn Andersson
6914449b6f2SBjorn Andersson			trips {
692e9d2729dSAmit Kucheria				modem_alert0: trip-point@0 {
693e9d2729dSAmit Kucheria					temperature = <90000>;
6944449b6f2SBjorn Andersson					hysteresis = <2000>;
695e9d2729dSAmit Kucheria					type = "hot";
6964449b6f2SBjorn Andersson				};
6974449b6f2SBjorn Andersson			};
6984449b6f2SBjorn Andersson		};
6994449b6f2SBjorn Andersson
700e9d2729dSAmit Kucheria		mem-thermal {
701e9d2729dSAmit Kucheria			polling-delay-passive = <250>;
702e9d2729dSAmit Kucheria			polling-delay = <1000>;
703e9d2729dSAmit Kucheria
704e9d2729dSAmit Kucheria			thermal-sensors = <&tsens1 2>;
705e9d2729dSAmit Kucheria
706e9d2729dSAmit Kucheria			trips {
707e9d2729dSAmit Kucheria				mem_alert0: trip-point@0 {
708e9d2729dSAmit Kucheria					temperature = <90000>;
709e9d2729dSAmit Kucheria					hysteresis = <2000>;
710e9d2729dSAmit Kucheria					type = "hot";
711e9d2729dSAmit Kucheria				};
712e9d2729dSAmit Kucheria			};
713e9d2729dSAmit Kucheria		};
714e9d2729dSAmit Kucheria
715e9d2729dSAmit Kucheria		wlan-thermal {
7164449b6f2SBjorn Andersson			polling-delay-passive = <250>;
7174449b6f2SBjorn Andersson			polling-delay = <1000>;
7184449b6f2SBjorn Andersson
7194449b6f2SBjorn Andersson			thermal-sensors = <&tsens1 3>;
720e9d2729dSAmit Kucheria
721e9d2729dSAmit Kucheria			trips {
722e9d2729dSAmit Kucheria				wlan_alert0: trip-point@0 {
723e9d2729dSAmit Kucheria					temperature = <90000>;
724e9d2729dSAmit Kucheria					hysteresis = <2000>;
725e9d2729dSAmit Kucheria					type = "hot";
726e9d2729dSAmit Kucheria				};
727e9d2729dSAmit Kucheria			};
728e9d2729dSAmit Kucheria		};
729e9d2729dSAmit Kucheria
730e9d2729dSAmit Kucheria		q6-dsp-thermal {
731e9d2729dSAmit Kucheria			polling-delay-passive = <250>;
732e9d2729dSAmit Kucheria			polling-delay = <1000>;
733e9d2729dSAmit Kucheria
734e9d2729dSAmit Kucheria			thermal-sensors = <&tsens1 4>;
735e9d2729dSAmit Kucheria
736e9d2729dSAmit Kucheria			trips {
737e9d2729dSAmit Kucheria				q6_dsp_alert0: trip-point@0 {
738e9d2729dSAmit Kucheria					temperature = <90000>;
739e9d2729dSAmit Kucheria					hysteresis = <2000>;
740e9d2729dSAmit Kucheria					type = "hot";
741e9d2729dSAmit Kucheria				};
742e9d2729dSAmit Kucheria			};
743e9d2729dSAmit Kucheria		};
744e9d2729dSAmit Kucheria
745e9d2729dSAmit Kucheria		camera-thermal {
746e9d2729dSAmit Kucheria			polling-delay-passive = <250>;
747e9d2729dSAmit Kucheria			polling-delay = <1000>;
748e9d2729dSAmit Kucheria
749e9d2729dSAmit Kucheria			thermal-sensors = <&tsens1 5>;
750e9d2729dSAmit Kucheria
751e9d2729dSAmit Kucheria			trips {
752e9d2729dSAmit Kucheria				camera_alert0: trip-point@0 {
753e9d2729dSAmit Kucheria					temperature = <90000>;
754e9d2729dSAmit Kucheria					hysteresis = <2000>;
755e9d2729dSAmit Kucheria					type = "hot";
756e9d2729dSAmit Kucheria				};
757e9d2729dSAmit Kucheria			};
758e9d2729dSAmit Kucheria		};
759e9d2729dSAmit Kucheria
760e9d2729dSAmit Kucheria		multimedia-thermal {
761e9d2729dSAmit Kucheria			polling-delay-passive = <250>;
762e9d2729dSAmit Kucheria			polling-delay = <1000>;
763e9d2729dSAmit Kucheria
764e9d2729dSAmit Kucheria			thermal-sensors = <&tsens1 6>;
765e9d2729dSAmit Kucheria
766e9d2729dSAmit Kucheria			trips {
767e9d2729dSAmit Kucheria				multimedia_alert0: trip-point@0 {
768e9d2729dSAmit Kucheria					temperature = <90000>;
769e9d2729dSAmit Kucheria					hysteresis = <2000>;
770e9d2729dSAmit Kucheria					type = "hot";
771e9d2729dSAmit Kucheria				};
772e9d2729dSAmit Kucheria			};
7734449b6f2SBjorn Andersson		};
7744449b6f2SBjorn Andersson	};
7754449b6f2SBjorn Andersson
7764807c71cSJoonwoo Park	timer {
7774807c71cSJoonwoo Park		compatible = "arm,armv8-timer";
7784807c71cSJoonwoo Park		interrupts = <GIC_PPI 1 IRQ_TYPE_LEVEL_LOW>,
7794807c71cSJoonwoo Park			     <GIC_PPI 2 IRQ_TYPE_LEVEL_LOW>,
7804807c71cSJoonwoo Park			     <GIC_PPI 3 IRQ_TYPE_LEVEL_LOW>,
7814807c71cSJoonwoo Park			     <GIC_PPI 0 IRQ_TYPE_LEVEL_LOW>;
7824807c71cSJoonwoo Park	};
7834807c71cSJoonwoo Park
7844807c71cSJoonwoo Park	soc: soc {
7854807c71cSJoonwoo Park		#address-cells = <1>;
7864807c71cSJoonwoo Park		#size-cells = <1>;
7874807c71cSJoonwoo Park		ranges = <0 0 0 0xffffffff>;
7884807c71cSJoonwoo Park		compatible = "simple-bus";
7894807c71cSJoonwoo Park
79031c1f0e3SBjorn Andersson		rpm_msg_ram: memory@68000 {
79131c1f0e3SBjorn Andersson			compatible = "qcom,rpm-msg-ram";
79231c1f0e3SBjorn Andersson			reg = <0x778000 0x7000>;
79331c1f0e3SBjorn Andersson		};
79431c1f0e3SBjorn Andersson
795f259e398SBjorn Andersson		qfprom: qfprom@780000 {
796f259e398SBjorn Andersson			compatible = "qcom,qfprom";
797f259e398SBjorn Andersson			reg = <0x780000 0x621c>;
798f259e398SBjorn Andersson			#address-cells = <1>;
799f259e398SBjorn Andersson			#size-cells = <1>;
800026dad8fSJeffrey Hugo
801026dad8fSJeffrey Hugo			qusb2_hstx_trim: hstx-trim@423a {
802026dad8fSJeffrey Hugo				reg = <0x423a 0x1>;
803026dad8fSJeffrey Hugo				bits = <0 4>;
804026dad8fSJeffrey Hugo			};
805f259e398SBjorn Andersson		};
806f259e398SBjorn Andersson
8074807c71cSJoonwoo Park		gcc: clock-controller@100000 {
8084807c71cSJoonwoo Park			compatible = "qcom,gcc-msm8998";
8094807c71cSJoonwoo Park			#clock-cells = <1>;
8104807c71cSJoonwoo Park			#reset-cells = <1>;
8114807c71cSJoonwoo Park			#power-domain-cells = <1>;
8124807c71cSJoonwoo Park			reg = <0x100000 0xb0000>;
8134807c71cSJoonwoo Park		};
8144807c71cSJoonwoo Park
8154807c71cSJoonwoo Park		tlmm: pinctrl@3400000 {
8164807c71cSJoonwoo Park			compatible = "qcom,msm8998-pinctrl";
8174807c71cSJoonwoo Park			reg = <0x3400000 0xc00000>;
8184807c71cSJoonwoo Park			interrupts = <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>;
8194807c71cSJoonwoo Park			gpio-controller;
8204807c71cSJoonwoo Park			#gpio-cells = <0x2>;
8214807c71cSJoonwoo Park			interrupt-controller;
8224807c71cSJoonwoo Park			#interrupt-cells = <0x2>;
8234807c71cSJoonwoo Park		};
8244807c71cSJoonwoo Park
8254807c71cSJoonwoo Park		spmi_bus: spmi@800f000 {
8264807c71cSJoonwoo Park			compatible = "qcom,spmi-pmic-arb";
8274807c71cSJoonwoo Park			reg =	<0x800f000 0x1000>,
8284807c71cSJoonwoo Park				<0x8400000 0x1000000>,
8294807c71cSJoonwoo Park				<0x9400000 0x1000000>,
8304807c71cSJoonwoo Park				<0xa400000 0x220000>,
8314807c71cSJoonwoo Park				<0x800a000 0x3000>;
8324807c71cSJoonwoo Park			reg-names = "core", "chnls", "obsrvr", "intr", "cnfg";
8334807c71cSJoonwoo Park			interrupt-names = "periph_irq";
8344807c71cSJoonwoo Park			interrupts = <GIC_SPI 326 IRQ_TYPE_LEVEL_HIGH>;
8354807c71cSJoonwoo Park			qcom,ee = <0>;
8364807c71cSJoonwoo Park			qcom,channel = <0>;
8374807c71cSJoonwoo Park			#address-cells = <2>;
8384807c71cSJoonwoo Park			#size-cells = <0>;
8394807c71cSJoonwoo Park			interrupt-controller;
8404807c71cSJoonwoo Park			#interrupt-cells = <4>;
8414807c71cSJoonwoo Park			cell-index = <0>;
8424807c71cSJoonwoo Park		};
8434807c71cSJoonwoo Park
84450325048SAmit Kucheria		tsens0: thermal@10ab000 {
8454449b6f2SBjorn Andersson			compatible = "qcom,msm8998-tsens", "qcom,tsens-v2";
84650325048SAmit Kucheria			reg = <0x10ab000 0x1000>, /* TM */
84750325048SAmit Kucheria			      <0x10aa000 0x1000>; /* SROT */
8484449b6f2SBjorn Andersson
849280acabbSAmit Kucheria			#qcom,sensors = <14>;
8504449b6f2SBjorn Andersson			#thermal-sensor-cells = <1>;
8514449b6f2SBjorn Andersson		};
8524449b6f2SBjorn Andersson
85350325048SAmit Kucheria		tsens1: thermal@10ae000 {
8544449b6f2SBjorn Andersson			compatible = "qcom,msm8998-tsens", "qcom,tsens-v2";
85550325048SAmit Kucheria			reg = <0x10ae000 0x1000>, /* TM */
85650325048SAmit Kucheria			      <0x10ad000 0x1000>; /* SROT */
8574449b6f2SBjorn Andersson
8584449b6f2SBjorn Andersson			#qcom,sensors = <8>;
8594449b6f2SBjorn Andersson			#thermal-sensor-cells = <1>;
8604449b6f2SBjorn Andersson		};
8614449b6f2SBjorn Andersson
862c7833949SBjorn Andersson		tcsr_mutex_regs: syscon@1f40000 {
863c7833949SBjorn Andersson			compatible = "syscon";
864c7833949SBjorn Andersson			reg = <0x1f40000 0x20000>;
865c7833949SBjorn Andersson		};
866c7833949SBjorn Andersson
86731c1f0e3SBjorn Andersson		apcs_glb: mailbox@9820000 {
86831c1f0e3SBjorn Andersson			compatible = "qcom,msm8998-apcs-hmss-global";
86931c1f0e3SBjorn Andersson			reg = <0x17911000 0x1000>;
87031c1f0e3SBjorn Andersson
87131c1f0e3SBjorn Andersson			#mbox-cells = <1>;
87231c1f0e3SBjorn Andersson		};
87331c1f0e3SBjorn Andersson
874026dad8fSJeffrey Hugo		usb3: usb@a8f8800 {
875026dad8fSJeffrey Hugo			compatible = "qcom,msm8998-dwc3", "qcom,dwc3";
876026dad8fSJeffrey Hugo			reg = <0x0a8f8800 0x400>;
877026dad8fSJeffrey Hugo			status = "disabled";
878026dad8fSJeffrey Hugo			#address-cells = <1>;
879026dad8fSJeffrey Hugo			#size-cells = <1>;
880026dad8fSJeffrey Hugo			ranges;
881026dad8fSJeffrey Hugo
882026dad8fSJeffrey Hugo			clocks = <&gcc GCC_CFG_NOC_USB3_AXI_CLK>,
883026dad8fSJeffrey Hugo				 <&gcc GCC_USB30_MASTER_CLK>,
884026dad8fSJeffrey Hugo				 <&gcc GCC_AGGRE1_USB3_AXI_CLK>,
885026dad8fSJeffrey Hugo				 <&gcc GCC_USB30_MOCK_UTMI_CLK>,
886026dad8fSJeffrey Hugo				 <&gcc GCC_USB30_SLEEP_CLK>;
887026dad8fSJeffrey Hugo			clock-names = "cfg_noc", "core", "iface", "mock_utmi",
888026dad8fSJeffrey Hugo				      "sleep";
889026dad8fSJeffrey Hugo
890026dad8fSJeffrey Hugo			assigned-clocks = <&gcc GCC_USB30_MOCK_UTMI_CLK>,
891026dad8fSJeffrey Hugo					  <&gcc GCC_USB30_MASTER_CLK>;
892026dad8fSJeffrey Hugo			assigned-clock-rates = <19200000>, <120000000>;
893026dad8fSJeffrey Hugo
894026dad8fSJeffrey Hugo			interrupts = <GIC_SPI 347 IRQ_TYPE_LEVEL_HIGH>,
895026dad8fSJeffrey Hugo				     <GIC_SPI 243 IRQ_TYPE_LEVEL_HIGH>;
896026dad8fSJeffrey Hugo			interrupt-names = "hs_phy_irq", "ss_phy_irq";
897026dad8fSJeffrey Hugo
898026dad8fSJeffrey Hugo			power-domains = <&gcc USB_30_GDSC>;
899026dad8fSJeffrey Hugo
900026dad8fSJeffrey Hugo			resets = <&gcc GCC_USB_30_BCR>;
901026dad8fSJeffrey Hugo
902026dad8fSJeffrey Hugo			usb3_dwc3: dwc3@a800000 {
903026dad8fSJeffrey Hugo				compatible = "snps,dwc3";
904026dad8fSJeffrey Hugo				reg = <0x0a800000 0xcd00>;
905026dad8fSJeffrey Hugo				interrupts = <GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH>;
906026dad8fSJeffrey Hugo				snps,dis_u2_susphy_quirk;
907026dad8fSJeffrey Hugo				snps,dis_enblslpm_quirk;
908026dad8fSJeffrey Hugo				phys = <&qusb2phy>, <&usb1_ssphy>;
909026dad8fSJeffrey Hugo				phy-names = "usb2-phy", "usb3-phy";
910026dad8fSJeffrey Hugo				snps,has-lpm-erratum;
911026dad8fSJeffrey Hugo				snps,hird-threshold = /bits/ 8 <0x10>;
912026dad8fSJeffrey Hugo			};
913026dad8fSJeffrey Hugo		};
914026dad8fSJeffrey Hugo
915026dad8fSJeffrey Hugo		usb3phy: phy@c010000 {
916026dad8fSJeffrey Hugo			compatible = "qcom,msm8998-qmp-usb3-phy";
917026dad8fSJeffrey Hugo			reg = <0x0c010000 0x18c>;
918026dad8fSJeffrey Hugo			status = "disabled";
919026dad8fSJeffrey Hugo			#clock-cells = <1>;
920026dad8fSJeffrey Hugo			#address-cells = <1>;
921026dad8fSJeffrey Hugo			#size-cells = <1>;
922026dad8fSJeffrey Hugo			ranges;
923026dad8fSJeffrey Hugo
924026dad8fSJeffrey Hugo			clocks = <&gcc GCC_USB3_PHY_AUX_CLK>,
925026dad8fSJeffrey Hugo				 <&gcc GCC_USB_PHY_CFG_AHB2PHY_CLK>,
926026dad8fSJeffrey Hugo				 <&gcc GCC_USB3_CLKREF_CLK>;
927026dad8fSJeffrey Hugo			clock-names = "aux", "cfg_ahb", "ref";
928026dad8fSJeffrey Hugo
929026dad8fSJeffrey Hugo			resets = <&gcc GCC_USB3_PHY_BCR>,
930026dad8fSJeffrey Hugo				 <&gcc GCC_USB3PHY_PHY_BCR>;
931026dad8fSJeffrey Hugo			reset-names = "phy", "common";
932026dad8fSJeffrey Hugo
933026dad8fSJeffrey Hugo			usb1_ssphy: lane@c010200 {
934026dad8fSJeffrey Hugo				reg = <0xc010200 0x128>,
935026dad8fSJeffrey Hugo				      <0xc010400 0x200>,
936026dad8fSJeffrey Hugo				      <0xc010c00 0x20c>,
937026dad8fSJeffrey Hugo				      <0xc010600 0x128>,
938026dad8fSJeffrey Hugo				      <0xc010800 0x200>;
939026dad8fSJeffrey Hugo				#phy-cells = <0>;
940026dad8fSJeffrey Hugo				clocks = <&gcc GCC_USB3_PHY_PIPE_CLK>;
941026dad8fSJeffrey Hugo				clock-names = "pipe0";
942026dad8fSJeffrey Hugo				clock-output-names = "usb3_phy_pipe_clk_src";
943026dad8fSJeffrey Hugo			};
944026dad8fSJeffrey Hugo		};
945026dad8fSJeffrey Hugo
946026dad8fSJeffrey Hugo		qusb2phy: phy@c012000 {
947026dad8fSJeffrey Hugo			compatible = "qcom,msm8998-qusb2-phy";
948026dad8fSJeffrey Hugo			reg = <0x0c012000 0x2a8>;
949026dad8fSJeffrey Hugo			status = "disabled";
950026dad8fSJeffrey Hugo			#phy-cells = <0>;
951026dad8fSJeffrey Hugo
952026dad8fSJeffrey Hugo			clocks = <&gcc GCC_USB_PHY_CFG_AHB2PHY_CLK>,
953026dad8fSJeffrey Hugo				 <&gcc GCC_RX1_USB2_CLKREF_CLK>;
954026dad8fSJeffrey Hugo			clock-names = "cfg_ahb", "ref";
955026dad8fSJeffrey Hugo
956026dad8fSJeffrey Hugo			resets = <&gcc GCC_QUSB2PHY_PRIM_BCR>;
957026dad8fSJeffrey Hugo
958026dad8fSJeffrey Hugo			nvmem-cells = <&qusb2_hstx_trim>;
959026dad8fSJeffrey Hugo		};
960026dad8fSJeffrey Hugo
9611cfce828SJeffrey Hugo		sdhc2: sdhci@c0a4900 {
9621cfce828SJeffrey Hugo			compatible = "qcom,sdhci-msm-v4";
9631cfce828SJeffrey Hugo			reg = <0xc0a4900 0x314>, <0xc0a4000 0x800>;
9641cfce828SJeffrey Hugo			reg-names = "hc_mem", "core_mem";
9651cfce828SJeffrey Hugo
9661cfce828SJeffrey Hugo			interrupts = <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>,
9671cfce828SJeffrey Hugo				     <GIC_SPI 221 IRQ_TYPE_LEVEL_HIGH>;
9681cfce828SJeffrey Hugo			interrupt-names = "hc_irq", "pwr_irq";
9691cfce828SJeffrey Hugo
9701cfce828SJeffrey Hugo			clock-names = "iface", "core", "xo";
9711cfce828SJeffrey Hugo			clocks = <&gcc GCC_SDCC2_AHB_CLK>,
9721cfce828SJeffrey Hugo				 <&gcc GCC_SDCC2_APPS_CLK>,
9731cfce828SJeffrey Hugo				 <&xo>;
9741cfce828SJeffrey Hugo			bus-width = <4>;
9751cfce828SJeffrey Hugo			status = "disabled";
9761cfce828SJeffrey Hugo		};
9771cfce828SJeffrey Hugo
9781e71d0c2SJeffrey Hugo		blsp1_i2c1: i2c@c175000 {
9791e71d0c2SJeffrey Hugo			compatible = "qcom,i2c-qup-v2.2.1";
9801e71d0c2SJeffrey Hugo			reg = <0x0c175000 0x600>;
9811e71d0c2SJeffrey Hugo			interrupts = <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>;
9821e71d0c2SJeffrey Hugo
9831e71d0c2SJeffrey Hugo			clocks = <&gcc GCC_BLSP1_QUP1_I2C_APPS_CLK>,
9841e71d0c2SJeffrey Hugo				 <&gcc GCC_BLSP1_AHB_CLK>;
9851e71d0c2SJeffrey Hugo			clock-names = "core", "iface";
9861e71d0c2SJeffrey Hugo			clock-frequency = <400000>;
9871e71d0c2SJeffrey Hugo
9881e71d0c2SJeffrey Hugo			status = "disabled";
9891e71d0c2SJeffrey Hugo			#address-cells = <1>;
9901e71d0c2SJeffrey Hugo			#size-cells = <0>;
9911e71d0c2SJeffrey Hugo		};
9921e71d0c2SJeffrey Hugo
9931e71d0c2SJeffrey Hugo		blsp1_i2c2: i2c@c176000 {
9941e71d0c2SJeffrey Hugo			compatible = "qcom,i2c-qup-v2.2.1";
9951e71d0c2SJeffrey Hugo			reg = <0x0c176000 0x600>;
9961e71d0c2SJeffrey Hugo			interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>;
9971e71d0c2SJeffrey Hugo
9981e71d0c2SJeffrey Hugo			clocks = <&gcc GCC_BLSP1_QUP2_I2C_APPS_CLK>,
9991e71d0c2SJeffrey Hugo				 <&gcc GCC_BLSP1_AHB_CLK>;
10001e71d0c2SJeffrey Hugo			clock-names = "core", "iface";
10011e71d0c2SJeffrey Hugo			clock-frequency = <400000>;
10021e71d0c2SJeffrey Hugo
10031e71d0c2SJeffrey Hugo			status = "disabled";
10041e71d0c2SJeffrey Hugo			#address-cells = <1>;
10051e71d0c2SJeffrey Hugo			#size-cells = <0>;
10061e71d0c2SJeffrey Hugo		};
10071e71d0c2SJeffrey Hugo
10081e71d0c2SJeffrey Hugo		blsp1_i2c3: i2c@c177000 {
10091e71d0c2SJeffrey Hugo			compatible = "qcom,i2c-qup-v2.2.1";
10101e71d0c2SJeffrey Hugo			reg = <0x0c177000 0x600>;
10111e71d0c2SJeffrey Hugo			interrupts = <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>;
10121e71d0c2SJeffrey Hugo
10131e71d0c2SJeffrey Hugo			clocks = <&gcc GCC_BLSP1_QUP3_I2C_APPS_CLK>,
10141e71d0c2SJeffrey Hugo				 <&gcc GCC_BLSP1_AHB_CLK>;
10151e71d0c2SJeffrey Hugo			clock-names = "core", "iface";
10161e71d0c2SJeffrey Hugo			clock-frequency = <400000>;
10171e71d0c2SJeffrey Hugo
10181e71d0c2SJeffrey Hugo			status = "disabled";
10191e71d0c2SJeffrey Hugo			#address-cells = <1>;
10201e71d0c2SJeffrey Hugo			#size-cells = <0>;
10211e71d0c2SJeffrey Hugo		};
10221e71d0c2SJeffrey Hugo
10231e71d0c2SJeffrey Hugo		blsp1_i2c4: i2c@c178000 {
10241e71d0c2SJeffrey Hugo			compatible = "qcom,i2c-qup-v2.2.1";
10251e71d0c2SJeffrey Hugo			reg = <0x0c178000 0x600>;
10261e71d0c2SJeffrey Hugo			interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>;
10271e71d0c2SJeffrey Hugo
10281e71d0c2SJeffrey Hugo			clocks = <&gcc GCC_BLSP1_QUP4_I2C_APPS_CLK>,
10291e71d0c2SJeffrey Hugo				 <&gcc GCC_BLSP1_AHB_CLK>;
10301e71d0c2SJeffrey Hugo			clock-names = "core", "iface";
10311e71d0c2SJeffrey Hugo			clock-frequency = <400000>;
10321e71d0c2SJeffrey Hugo
10331e71d0c2SJeffrey Hugo			status = "disabled";
10341e71d0c2SJeffrey Hugo			#address-cells = <1>;
10351e71d0c2SJeffrey Hugo			#size-cells = <0>;
10361e71d0c2SJeffrey Hugo		};
10371e71d0c2SJeffrey Hugo
10381e71d0c2SJeffrey Hugo		blsp1_i2c5: i2c@c179000 {
10391e71d0c2SJeffrey Hugo			compatible = "qcom,i2c-qup-v2.2.1";
10401e71d0c2SJeffrey Hugo			reg = <0x0c179000 0x600>;
10411e71d0c2SJeffrey Hugo			interrupts = <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>;
10421e71d0c2SJeffrey Hugo
10431e71d0c2SJeffrey Hugo			clocks = <&gcc GCC_BLSP1_QUP5_I2C_APPS_CLK>,
10441e71d0c2SJeffrey Hugo				 <&gcc GCC_BLSP1_AHB_CLK>;
10451e71d0c2SJeffrey Hugo			clock-names = "core", "iface";
10461e71d0c2SJeffrey Hugo			clock-frequency = <400000>;
10471e71d0c2SJeffrey Hugo
10481e71d0c2SJeffrey Hugo			status = "disabled";
10491e71d0c2SJeffrey Hugo			#address-cells = <1>;
10501e71d0c2SJeffrey Hugo			#size-cells = <0>;
10511e71d0c2SJeffrey Hugo		};
10521e71d0c2SJeffrey Hugo
10531e71d0c2SJeffrey Hugo		blsp1_i2c6: i2c@c17a000 {
10541e71d0c2SJeffrey Hugo			compatible = "qcom,i2c-qup-v2.2.1";
10551e71d0c2SJeffrey Hugo			reg = <0x0c17a000 0x600>;
10561e71d0c2SJeffrey Hugo			interrupts = <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>;
10571e71d0c2SJeffrey Hugo
10581e71d0c2SJeffrey Hugo			clocks = <&gcc GCC_BLSP1_QUP6_I2C_APPS_CLK>,
10591e71d0c2SJeffrey Hugo				 <&gcc GCC_BLSP1_AHB_CLK>;
10601e71d0c2SJeffrey Hugo			clock-names = "core", "iface";
10611e71d0c2SJeffrey Hugo			clock-frequency = <400000>;
10621e71d0c2SJeffrey Hugo
10631e71d0c2SJeffrey Hugo			status = "disabled";
10641e71d0c2SJeffrey Hugo			#address-cells = <1>;
10651e71d0c2SJeffrey Hugo			#size-cells = <0>;
10661e71d0c2SJeffrey Hugo		};
10671e71d0c2SJeffrey Hugo
10681e71d0c2SJeffrey Hugo		blsp2_i2c0: i2c@c1b5000 {
10691e71d0c2SJeffrey Hugo			compatible = "qcom,i2c-qup-v2.2.1";
10701e71d0c2SJeffrey Hugo			reg = <0x0c1b5000 0x600>;
10711e71d0c2SJeffrey Hugo			interrupts = <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>;
10721e71d0c2SJeffrey Hugo
10731e71d0c2SJeffrey Hugo			clocks = <&gcc GCC_BLSP2_QUP1_I2C_APPS_CLK>,
10741e71d0c2SJeffrey Hugo				 <&gcc GCC_BLSP2_AHB_CLK>;
10751e71d0c2SJeffrey Hugo			clock-names = "core", "iface";
10761e71d0c2SJeffrey Hugo			clock-frequency = <400000>;
10771e71d0c2SJeffrey Hugo
10781e71d0c2SJeffrey Hugo			status = "disabled";
10791e71d0c2SJeffrey Hugo			#address-cells = <1>;
10801e71d0c2SJeffrey Hugo			#size-cells = <0>;
10811e71d0c2SJeffrey Hugo		};
10821e71d0c2SJeffrey Hugo
10831e71d0c2SJeffrey Hugo		blsp2_i2c1: i2c@c1b6000 {
10841e71d0c2SJeffrey Hugo			compatible = "qcom,i2c-qup-v2.2.1";
10851e71d0c2SJeffrey Hugo			reg = <0x0c1b6000 0x600>;
10861e71d0c2SJeffrey Hugo			interrupts = <GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH>;
10871e71d0c2SJeffrey Hugo
10881e71d0c2SJeffrey Hugo			clocks = <&gcc GCC_BLSP2_QUP2_I2C_APPS_CLK>,
10891e71d0c2SJeffrey Hugo				 <&gcc GCC_BLSP2_AHB_CLK>;
10901e71d0c2SJeffrey Hugo			clock-names = "core", "iface";
10911e71d0c2SJeffrey Hugo			clock-frequency = <400000>;
10921e71d0c2SJeffrey Hugo
10931e71d0c2SJeffrey Hugo			status = "disabled";
10941e71d0c2SJeffrey Hugo			#address-cells = <1>;
10951e71d0c2SJeffrey Hugo			#size-cells = <0>;
10961e71d0c2SJeffrey Hugo		};
10971e71d0c2SJeffrey Hugo
10981e71d0c2SJeffrey Hugo		blsp2_i2c2: i2c@c1b7000 {
10991e71d0c2SJeffrey Hugo			compatible = "qcom,i2c-qup-v2.2.1";
11001e71d0c2SJeffrey Hugo			reg = <0x0c1b7000 0x600>;
11011e71d0c2SJeffrey Hugo			interrupts = <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>;
11021e71d0c2SJeffrey Hugo
11031e71d0c2SJeffrey Hugo			clocks = <&gcc GCC_BLSP2_QUP3_I2C_APPS_CLK>,
11041e71d0c2SJeffrey Hugo				 <&gcc GCC_BLSP2_AHB_CLK>;
11051e71d0c2SJeffrey Hugo			clock-names = "core", "iface";
11061e71d0c2SJeffrey Hugo			clock-frequency = <400000>;
11071e71d0c2SJeffrey Hugo
11081e71d0c2SJeffrey Hugo			status = "disabled";
11091e71d0c2SJeffrey Hugo			#address-cells = <1>;
11101e71d0c2SJeffrey Hugo			#size-cells = <0>;
11111e71d0c2SJeffrey Hugo		};
11121e71d0c2SJeffrey Hugo
11131e71d0c2SJeffrey Hugo		blsp2_i2c3: i2c@c1b8000 {
11141e71d0c2SJeffrey Hugo			compatible = "qcom,i2c-qup-v2.2.1";
11151e71d0c2SJeffrey Hugo			reg = <0x0c1b8000 0x600>;
11161e71d0c2SJeffrey Hugo			interrupts = <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>;
11171e71d0c2SJeffrey Hugo
11181e71d0c2SJeffrey Hugo			clocks = <&gcc GCC_BLSP2_QUP4_I2C_APPS_CLK>,
11191e71d0c2SJeffrey Hugo				 <&gcc GCC_BLSP2_AHB_CLK>;
11201e71d0c2SJeffrey Hugo			clock-names = "core", "iface";
11211e71d0c2SJeffrey Hugo			clock-frequency = <400000>;
11221e71d0c2SJeffrey Hugo
11231e71d0c2SJeffrey Hugo			status = "disabled";
11241e71d0c2SJeffrey Hugo			#address-cells = <1>;
11251e71d0c2SJeffrey Hugo			#size-cells = <0>;
11261e71d0c2SJeffrey Hugo		};
11271e71d0c2SJeffrey Hugo
11281e71d0c2SJeffrey Hugo		blsp2_i2c4: i2c@c1b9000 {
11291e71d0c2SJeffrey Hugo			compatible = "qcom,i2c-qup-v2.2.1";
11301e71d0c2SJeffrey Hugo			reg = <0x0c1b9000 0x600>;
11311e71d0c2SJeffrey Hugo			interrupts = <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>;
11321e71d0c2SJeffrey Hugo
11331e71d0c2SJeffrey Hugo			clocks = <&gcc GCC_BLSP2_QUP5_I2C_APPS_CLK>,
11341e71d0c2SJeffrey Hugo				 <&gcc GCC_BLSP2_AHB_CLK>;
11351e71d0c2SJeffrey Hugo			clock-names = "core", "iface";
11361e71d0c2SJeffrey Hugo			clock-frequency = <400000>;
11371e71d0c2SJeffrey Hugo
11381e71d0c2SJeffrey Hugo			status = "disabled";
11391e71d0c2SJeffrey Hugo			#address-cells = <1>;
11401e71d0c2SJeffrey Hugo			#size-cells = <0>;
11411e71d0c2SJeffrey Hugo		};
11421e71d0c2SJeffrey Hugo
11431e71d0c2SJeffrey Hugo		blsp2_i2c5: i2c@c1ba000 {
11441e71d0c2SJeffrey Hugo			compatible = "qcom,i2c-qup-v2.2.1";
1145c8be5541SMarc Gonzalez			reg = <0x0c1ba000 0x600>;
11461e71d0c2SJeffrey Hugo			interrupts = <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>;
11471e71d0c2SJeffrey Hugo
11481e71d0c2SJeffrey Hugo			clocks = <&gcc GCC_BLSP2_QUP6_I2C_APPS_CLK>,
11491e71d0c2SJeffrey Hugo				 <&gcc GCC_BLSP2_AHB_CLK>;
11501e71d0c2SJeffrey Hugo			clock-names = "core", "iface";
11511e71d0c2SJeffrey Hugo			clock-frequency = <400000>;
11521e71d0c2SJeffrey Hugo
11531e71d0c2SJeffrey Hugo			status = "disabled";
11541e71d0c2SJeffrey Hugo			#address-cells = <1>;
11551e71d0c2SJeffrey Hugo			#size-cells = <0>;
11561e71d0c2SJeffrey Hugo		};
11571e71d0c2SJeffrey Hugo
11584807c71cSJoonwoo Park		blsp2_uart1: serial@c1b0000 {
11594807c71cSJoonwoo Park			compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm";
11604807c71cSJoonwoo Park			reg = <0xc1b0000 0x1000>;
11614807c71cSJoonwoo Park			interrupts = <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>;
11624807c71cSJoonwoo Park			clocks = <&gcc GCC_BLSP2_UART2_APPS_CLK>,
11634807c71cSJoonwoo Park				 <&gcc GCC_BLSP2_AHB_CLK>;
11644807c71cSJoonwoo Park			clock-names = "core", "iface";
11654807c71cSJoonwoo Park			status = "disabled";
11664807c71cSJoonwoo Park		};
11674807c71cSJoonwoo Park
11684807c71cSJoonwoo Park		timer@17920000 {
11694807c71cSJoonwoo Park			#address-cells = <1>;
11704807c71cSJoonwoo Park			#size-cells = <1>;
11714807c71cSJoonwoo Park			ranges;
11724807c71cSJoonwoo Park			compatible = "arm,armv7-timer-mem";
11734807c71cSJoonwoo Park			reg = <0x17920000 0x1000>;
11744807c71cSJoonwoo Park
11754807c71cSJoonwoo Park			frame@17921000 {
11764807c71cSJoonwoo Park				frame-number = <0>;
11774807c71cSJoonwoo Park				interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>,
11784807c71cSJoonwoo Park					     <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>;
11794807c71cSJoonwoo Park				reg = <0x17921000 0x1000>,
11804807c71cSJoonwoo Park				      <0x17922000 0x1000>;
11814807c71cSJoonwoo Park			};
11824807c71cSJoonwoo Park
11834807c71cSJoonwoo Park			frame@17923000 {
11844807c71cSJoonwoo Park				frame-number = <1>;
11854807c71cSJoonwoo Park				interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>;
11864807c71cSJoonwoo Park				reg = <0x17923000 0x1000>;
11874807c71cSJoonwoo Park				status = "disabled";
11884807c71cSJoonwoo Park			};
11894807c71cSJoonwoo Park
11904807c71cSJoonwoo Park			frame@17924000 {
11914807c71cSJoonwoo Park				frame-number = <2>;
11924807c71cSJoonwoo Park				interrupts = <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>;
11934807c71cSJoonwoo Park				reg = <0x17924000 0x1000>;
11944807c71cSJoonwoo Park				status = "disabled";
11954807c71cSJoonwoo Park			};
11964807c71cSJoonwoo Park
11974807c71cSJoonwoo Park			frame@17925000 {
11984807c71cSJoonwoo Park				frame-number = <3>;
11994807c71cSJoonwoo Park				interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>;
12004807c71cSJoonwoo Park				reg = <0x17925000 0x1000>;
12014807c71cSJoonwoo Park				status = "disabled";
12024807c71cSJoonwoo Park			};
12034807c71cSJoonwoo Park
12044807c71cSJoonwoo Park			frame@17926000 {
12054807c71cSJoonwoo Park				frame-number = <4>;
12064807c71cSJoonwoo Park				interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>;
12074807c71cSJoonwoo Park				reg = <0x17926000 0x1000>;
12084807c71cSJoonwoo Park				status = "disabled";
12094807c71cSJoonwoo Park			};
12104807c71cSJoonwoo Park
12114807c71cSJoonwoo Park			frame@17927000 {
12124807c71cSJoonwoo Park				frame-number = <5>;
12134807c71cSJoonwoo Park				interrupts = <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>;
12144807c71cSJoonwoo Park				reg = <0x17927000 0x1000>;
12154807c71cSJoonwoo Park				status = "disabled";
12164807c71cSJoonwoo Park			};
12174807c71cSJoonwoo Park
12184807c71cSJoonwoo Park			frame@17928000 {
12194807c71cSJoonwoo Park				frame-number = <6>;
12204807c71cSJoonwoo Park				interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>;
12214807c71cSJoonwoo Park				reg = <0x17928000 0x1000>;
12224807c71cSJoonwoo Park				status = "disabled";
12234807c71cSJoonwoo Park			};
12244807c71cSJoonwoo Park		};
12254807c71cSJoonwoo Park
12264807c71cSJoonwoo Park		intc: interrupt-controller@17a00000 {
12274807c71cSJoonwoo Park			compatible = "arm,gic-v3";
12284807c71cSJoonwoo Park			reg = <0x17a00000 0x10000>,       /* GICD */
12294807c71cSJoonwoo Park			      <0x17b00000 0x100000>;      /* GICR * 8 */
12304807c71cSJoonwoo Park			#interrupt-cells = <3>;
12314807c71cSJoonwoo Park			#address-cells = <1>;
12324807c71cSJoonwoo Park			#size-cells = <1>;
12334807c71cSJoonwoo Park			ranges;
12344807c71cSJoonwoo Park			interrupt-controller;
12354807c71cSJoonwoo Park			#redistributor-regions = <1>;
12364807c71cSJoonwoo Park			redistributor-stride = <0x0 0x20000>;
12374807c71cSJoonwoo Park			interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>;
12384807c71cSJoonwoo Park		};
1239cd3dbe2aSMarc Gonzalez
1240cd3dbe2aSMarc Gonzalez		ufshc: ufshc@1da4000 {
1241cd3dbe2aSMarc Gonzalez			compatible = "qcom,msm8998-ufshc", "qcom,ufshc", "jedec,ufs-2.0";
1242cd3dbe2aSMarc Gonzalez			reg = <0x01da4000 0x2500>;
1243cd3dbe2aSMarc Gonzalez			interrupts = <GIC_SPI 265 IRQ_TYPE_LEVEL_HIGH>;
1244cd3dbe2aSMarc Gonzalez			phys = <&ufsphy_lanes>;
1245cd3dbe2aSMarc Gonzalez			phy-names = "ufsphy";
1246cd3dbe2aSMarc Gonzalez			lanes-per-direction = <2>;
1247cd3dbe2aSMarc Gonzalez			power-domains = <&gcc UFS_GDSC>;
1248c35b67d3SMarc Gonzalez			#reset-cells = <1>;
1249cd3dbe2aSMarc Gonzalez
1250cd3dbe2aSMarc Gonzalez			clock-names =
1251cd3dbe2aSMarc Gonzalez				"core_clk",
1252cd3dbe2aSMarc Gonzalez				"bus_aggr_clk",
1253cd3dbe2aSMarc Gonzalez				"iface_clk",
1254cd3dbe2aSMarc Gonzalez				"core_clk_unipro",
1255cd3dbe2aSMarc Gonzalez				"ref_clk",
1256cd3dbe2aSMarc Gonzalez				"tx_lane0_sync_clk",
1257cd3dbe2aSMarc Gonzalez				"rx_lane0_sync_clk",
1258cd3dbe2aSMarc Gonzalez				"rx_lane1_sync_clk";
1259cd3dbe2aSMarc Gonzalez			clocks =
1260cd3dbe2aSMarc Gonzalez				<&gcc GCC_UFS_AXI_CLK>,
1261cd3dbe2aSMarc Gonzalez				<&gcc GCC_AGGRE1_UFS_AXI_CLK>,
1262cd3dbe2aSMarc Gonzalez				<&gcc GCC_UFS_AHB_CLK>,
1263cd3dbe2aSMarc Gonzalez				<&gcc GCC_UFS_UNIPRO_CORE_CLK>,
1264cd3dbe2aSMarc Gonzalez				<&rpmcc RPM_SMD_LN_BB_CLK1>,
1265cd3dbe2aSMarc Gonzalez				<&gcc GCC_UFS_TX_SYMBOL_0_CLK>,
1266cd3dbe2aSMarc Gonzalez				<&gcc GCC_UFS_RX_SYMBOL_0_CLK>,
1267cd3dbe2aSMarc Gonzalez				<&gcc GCC_UFS_RX_SYMBOL_1_CLK>;
1268cd3dbe2aSMarc Gonzalez			freq-table-hz =
1269cd3dbe2aSMarc Gonzalez				<50000000 200000000>,
1270cd3dbe2aSMarc Gonzalez				<0 0>,
1271cd3dbe2aSMarc Gonzalez				<0 0>,
1272cd3dbe2aSMarc Gonzalez				<37500000 150000000>,
1273cd3dbe2aSMarc Gonzalez				<0 0>,
1274cd3dbe2aSMarc Gonzalez				<0 0>,
1275cd3dbe2aSMarc Gonzalez				<0 0>,
1276cd3dbe2aSMarc Gonzalez				<0 0>;
1277cd3dbe2aSMarc Gonzalez
1278cd3dbe2aSMarc Gonzalez			resets = <&gcc GCC_UFS_BCR>;
1279cd3dbe2aSMarc Gonzalez			reset-names = "rst";
1280cd3dbe2aSMarc Gonzalez		};
1281cd3dbe2aSMarc Gonzalez
1282cd3dbe2aSMarc Gonzalez		ufsphy: phy@1da7000 {
1283cd3dbe2aSMarc Gonzalez			compatible = "qcom,msm8998-qmp-ufs-phy";
1284cd3dbe2aSMarc Gonzalez			reg = <0x01da7000 0x18c>;
1285cd3dbe2aSMarc Gonzalez			#address-cells = <1>;
1286cd3dbe2aSMarc Gonzalez			#size-cells = <1>;
1287cd3dbe2aSMarc Gonzalez			ranges;
1288cd3dbe2aSMarc Gonzalez
1289cd3dbe2aSMarc Gonzalez			clock-names =
1290cd3dbe2aSMarc Gonzalez				"ref",
1291cd3dbe2aSMarc Gonzalez				"ref_aux";
1292cd3dbe2aSMarc Gonzalez			clocks =
1293cd3dbe2aSMarc Gonzalez				<&gcc GCC_UFS_CLKREF_CLK>,
1294cd3dbe2aSMarc Gonzalez				<&gcc GCC_UFS_PHY_AUX_CLK>;
1295cd3dbe2aSMarc Gonzalez
1296c35b67d3SMarc Gonzalez			reset-names = "ufsphy";
1297c35b67d3SMarc Gonzalez			resets = <&ufshc 0>;
1298c35b67d3SMarc Gonzalez
1299cd3dbe2aSMarc Gonzalez			ufsphy_lanes: lanes@1da7400 {
1300cd3dbe2aSMarc Gonzalez				reg = <0x01da7400 0x128>,
1301cd3dbe2aSMarc Gonzalez				      <0x01da7600 0x1fc>,
1302cd3dbe2aSMarc Gonzalez				      <0x01da7c00 0x1dc>,
1303cd3dbe2aSMarc Gonzalez				      <0x01da7800 0x128>,
1304cd3dbe2aSMarc Gonzalez				      <0x01da7a00 0x1fc>;
1305cd3dbe2aSMarc Gonzalez				#phy-cells = <0>;
1306cd3dbe2aSMarc Gonzalez			};
1307cd3dbe2aSMarc Gonzalez		};
13084807c71cSJoonwoo Park	};
13094807c71cSJoonwoo Park};
13106da80161SJeffrey Hugo
13116da80161SJeffrey Hugo#include "msm8998-pins.dtsi"
1312