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>
623bd4f78SJeffrey Hugo#include <dt-bindings/gpio/gpio.h>
74807c71cSJoonwoo Park
84807c71cSJoonwoo Park/ {
94807c71cSJoonwoo Park	interrupt-parent = <&intc>;
104807c71cSJoonwoo Park
114807c71cSJoonwoo Park	qcom,msm-id = <292 0x0>;
124807c71cSJoonwoo Park
134807c71cSJoonwoo Park	#address-cells = <2>;
144807c71cSJoonwoo Park	#size-cells = <2>;
154807c71cSJoonwoo Park
164807c71cSJoonwoo Park	chosen { };
174807c71cSJoonwoo Park
184807c71cSJoonwoo Park	memory {
194807c71cSJoonwoo Park		device_type = "memory";
204807c71cSJoonwoo Park		/* We expect the bootloader to fill in the reg */
214807c71cSJoonwoo Park		reg = <0 0 0 0>;
224807c71cSJoonwoo Park	};
234807c71cSJoonwoo Park
24c7833949SBjorn Andersson	reserved-memory {
25c7833949SBjorn Andersson		#address-cells = <2>;
26c7833949SBjorn Andersson		#size-cells = <2>;
27c7833949SBjorn Andersson		ranges;
28c7833949SBjorn Andersson
29c7833949SBjorn Andersson		memory@85800000 {
30c7833949SBjorn Andersson			reg = <0x0 0x85800000 0x0 0x800000>;
31c7833949SBjorn Andersson			no-map;
32c7833949SBjorn Andersson		};
33c7833949SBjorn Andersson
34c7833949SBjorn Andersson		smem_mem: smem-mem@86000000 {
35c7833949SBjorn Andersson			reg = <0x0 0x86000000 0x0 0x200000>;
36c7833949SBjorn Andersson			no-map;
37c7833949SBjorn Andersson		};
38c7833949SBjorn Andersson
39c7833949SBjorn Andersson		memory@86200000 {
40c7833949SBjorn Andersson			reg = <0x0 0x86200000 0x0 0x2600000>;
41c7833949SBjorn Andersson			no-map;
42c7833949SBjorn Andersson		};
43c7833949SBjorn Andersson
44c7833949SBjorn Andersson		rmtfs {
45c7833949SBjorn Andersson			compatible = "qcom,rmtfs-mem";
46c7833949SBjorn Andersson
47c7833949SBjorn Andersson			size = <0x0 0x200000>;
48c7833949SBjorn Andersson			alloc-ranges = <0x0 0xa0000000 0x0 0x2000000>;
49c7833949SBjorn Andersson			no-map;
50c7833949SBjorn Andersson
51c7833949SBjorn Andersson			qcom,client-id = <1>;
52c7833949SBjorn Andersson			qcom,vmid = <15>;
53c7833949SBjorn Andersson		};
54c7833949SBjorn Andersson	};
55c7833949SBjorn Andersson
564807c71cSJoonwoo Park	clocks {
571cfce828SJeffrey Hugo		xo: xo {
584807c71cSJoonwoo Park			compatible = "fixed-clock";
594807c71cSJoonwoo Park			#clock-cells = <0>;
604807c71cSJoonwoo Park			clock-frequency = <19200000>;
614807c71cSJoonwoo Park		};
624807c71cSJoonwoo Park
634807c71cSJoonwoo Park		sleep_clk {
644807c71cSJoonwoo Park			compatible = "fixed-clock";
654807c71cSJoonwoo Park			#clock-cells = <0>;
664807c71cSJoonwoo Park			clock-frequency = <32764>;
674807c71cSJoonwoo Park		};
684807c71cSJoonwoo Park	};
694807c71cSJoonwoo Park
704807c71cSJoonwoo Park	cpus {
714807c71cSJoonwoo Park		#address-cells = <2>;
724807c71cSJoonwoo Park		#size-cells = <0>;
734807c71cSJoonwoo Park
744807c71cSJoonwoo Park		CPU0: cpu@0 {
754807c71cSJoonwoo Park			device_type = "cpu";
764807c71cSJoonwoo Park			compatible = "arm,armv8";
774807c71cSJoonwoo Park			reg = <0x0 0x0>;
784807c71cSJoonwoo Park			enable-method = "psci";
794807c71cSJoonwoo Park			efficiency = <1024>;
804807c71cSJoonwoo Park			next-level-cache = <&L2_0>;
814807c71cSJoonwoo Park			L2_0: l2-cache {
824807c71cSJoonwoo Park				compatible = "arm,arch-cache";
834807c71cSJoonwoo Park				cache-level = <2>;
844807c71cSJoonwoo Park			};
854807c71cSJoonwoo Park			L1_I_0: l1-icache {
864807c71cSJoonwoo Park				compatible = "arm,arch-cache";
874807c71cSJoonwoo Park			};
884807c71cSJoonwoo Park			L1_D_0: l1-dcache {
894807c71cSJoonwoo Park				compatible = "arm,arch-cache";
904807c71cSJoonwoo Park			};
914807c71cSJoonwoo Park		};
924807c71cSJoonwoo Park
934807c71cSJoonwoo Park		CPU1: cpu@1 {
944807c71cSJoonwoo Park			device_type = "cpu";
954807c71cSJoonwoo Park			compatible = "arm,armv8";
964807c71cSJoonwoo Park			reg = <0x0 0x1>;
974807c71cSJoonwoo Park			enable-method = "psci";
984807c71cSJoonwoo Park			efficiency = <1024>;
994807c71cSJoonwoo Park			next-level-cache = <&L2_0>;
1004807c71cSJoonwoo Park			L1_I_1: l1-icache {
1014807c71cSJoonwoo Park				compatible = "arm,arch-cache";
1024807c71cSJoonwoo Park			};
1034807c71cSJoonwoo Park			L1_D_1: l1-dcache {
1044807c71cSJoonwoo Park				compatible = "arm,arch-cache";
1054807c71cSJoonwoo Park			};
1064807c71cSJoonwoo Park		};
1074807c71cSJoonwoo Park
1084807c71cSJoonwoo Park		CPU2: cpu@2 {
1094807c71cSJoonwoo Park			device_type = "cpu";
1104807c71cSJoonwoo Park			compatible = "arm,armv8";
1114807c71cSJoonwoo Park			reg = <0x0 0x2>;
1124807c71cSJoonwoo Park			enable-method = "psci";
1134807c71cSJoonwoo Park			efficiency = <1024>;
1144807c71cSJoonwoo Park			next-level-cache = <&L2_0>;
1154807c71cSJoonwoo Park			L1_I_2: l1-icache {
1164807c71cSJoonwoo Park				compatible = "arm,arch-cache";
1174807c71cSJoonwoo Park			};
1184807c71cSJoonwoo Park			L1_D_2: l1-dcache {
1194807c71cSJoonwoo Park				compatible = "arm,arch-cache";
1204807c71cSJoonwoo Park			};
1214807c71cSJoonwoo Park		};
1224807c71cSJoonwoo Park
1234807c71cSJoonwoo Park		CPU3: cpu@3 {
1244807c71cSJoonwoo Park			device_type = "cpu";
1254807c71cSJoonwoo Park			compatible = "arm,armv8";
1264807c71cSJoonwoo Park			reg = <0x0 0x3>;
1274807c71cSJoonwoo Park			enable-method = "psci";
1284807c71cSJoonwoo Park			efficiency = <1024>;
1294807c71cSJoonwoo Park			next-level-cache = <&L2_0>;
1304807c71cSJoonwoo Park			L1_I_3: l1-icache {
1314807c71cSJoonwoo Park				compatible = "arm,arch-cache";
1324807c71cSJoonwoo Park			};
1334807c71cSJoonwoo Park			L1_D_3: l1-dcache {
1344807c71cSJoonwoo Park				compatible = "arm,arch-cache";
1354807c71cSJoonwoo Park			};
1364807c71cSJoonwoo Park		};
1374807c71cSJoonwoo Park
1384807c71cSJoonwoo Park		CPU4: cpu@100 {
1394807c71cSJoonwoo Park			device_type = "cpu";
1404807c71cSJoonwoo Park			compatible = "arm,armv8";
1414807c71cSJoonwoo Park			reg = <0x0 0x100>;
1424807c71cSJoonwoo Park			enable-method = "psci";
1434807c71cSJoonwoo Park			efficiency = <1536>;
1444807c71cSJoonwoo Park			next-level-cache = <&L2_1>;
1454807c71cSJoonwoo Park			L2_1: l2-cache {
1464807c71cSJoonwoo Park				compatible = "arm,arch-cache";
1474807c71cSJoonwoo Park				cache-level = <2>;
1484807c71cSJoonwoo Park			};
1494807c71cSJoonwoo Park			L1_I_100: l1-icache {
1504807c71cSJoonwoo Park				compatible = "arm,arch-cache";
1514807c71cSJoonwoo Park			};
1524807c71cSJoonwoo Park			L1_D_100: l1-dcache {
1534807c71cSJoonwoo Park				compatible = "arm,arch-cache";
1544807c71cSJoonwoo Park			};
1554807c71cSJoonwoo Park		};
1564807c71cSJoonwoo Park
1574807c71cSJoonwoo Park		CPU5: cpu@101 {
1584807c71cSJoonwoo Park			device_type = "cpu";
1594807c71cSJoonwoo Park			compatible = "arm,armv8";
1604807c71cSJoonwoo Park			reg = <0x0 0x101>;
1614807c71cSJoonwoo Park			enable-method = "psci";
1624807c71cSJoonwoo Park			efficiency = <1536>;
1634807c71cSJoonwoo Park			next-level-cache = <&L2_1>;
1644807c71cSJoonwoo Park			L1_I_101: l1-icache {
1654807c71cSJoonwoo Park				compatible = "arm,arch-cache";
1664807c71cSJoonwoo Park			};
1674807c71cSJoonwoo Park			L1_D_101: l1-dcache {
1684807c71cSJoonwoo Park				compatible = "arm,arch-cache";
1694807c71cSJoonwoo Park			};
1704807c71cSJoonwoo Park		};
1714807c71cSJoonwoo Park
1724807c71cSJoonwoo Park		CPU6: cpu@102 {
1734807c71cSJoonwoo Park			device_type = "cpu";
1744807c71cSJoonwoo Park			compatible = "arm,armv8";
1754807c71cSJoonwoo Park			reg = <0x0 0x102>;
1764807c71cSJoonwoo Park			enable-method = "psci";
1774807c71cSJoonwoo Park			efficiency = <1536>;
1784807c71cSJoonwoo Park			next-level-cache = <&L2_1>;
1794807c71cSJoonwoo Park			L1_I_102: l1-icache {
1804807c71cSJoonwoo Park				compatible = "arm,arch-cache";
1814807c71cSJoonwoo Park			};
1824807c71cSJoonwoo Park			L1_D_102: l1-dcache {
1834807c71cSJoonwoo Park				compatible = "arm,arch-cache";
1844807c71cSJoonwoo Park			};
1854807c71cSJoonwoo Park		};
1864807c71cSJoonwoo Park
1874807c71cSJoonwoo Park		CPU7: cpu@103 {
1884807c71cSJoonwoo Park			device_type = "cpu";
1894807c71cSJoonwoo Park			compatible = "arm,armv8";
1904807c71cSJoonwoo Park			reg = <0x0 0x103>;
1914807c71cSJoonwoo Park			enable-method = "psci";
1924807c71cSJoonwoo Park			efficiency = <1536>;
1934807c71cSJoonwoo Park			next-level-cache = <&L2_1>;
1944807c71cSJoonwoo Park			L1_I_103: l1-icache {
1954807c71cSJoonwoo Park				compatible = "arm,arch-cache";
1964807c71cSJoonwoo Park			};
1974807c71cSJoonwoo Park			L1_D_103: l1-dcache {
1984807c71cSJoonwoo Park				compatible = "arm,arch-cache";
1994807c71cSJoonwoo Park			};
2004807c71cSJoonwoo Park		};
2014807c71cSJoonwoo Park
2024807c71cSJoonwoo Park		cpu-map {
2034807c71cSJoonwoo Park			cluster0 {
2044807c71cSJoonwoo Park				core0 {
2054807c71cSJoonwoo Park					cpu = <&CPU0>;
2064807c71cSJoonwoo Park				};
2074807c71cSJoonwoo Park
2084807c71cSJoonwoo Park				core1 {
2094807c71cSJoonwoo Park					cpu = <&CPU1>;
2104807c71cSJoonwoo Park				};
2114807c71cSJoonwoo Park
2124807c71cSJoonwoo Park				core2 {
2134807c71cSJoonwoo Park					cpu = <&CPU2>;
2144807c71cSJoonwoo Park				};
2154807c71cSJoonwoo Park
2164807c71cSJoonwoo Park				core3 {
2174807c71cSJoonwoo Park					cpu = <&CPU3>;
2184807c71cSJoonwoo Park				};
2194807c71cSJoonwoo Park			};
2204807c71cSJoonwoo Park
2214807c71cSJoonwoo Park			cluster1 {
2224807c71cSJoonwoo Park				core0 {
2234807c71cSJoonwoo Park					cpu = <&CPU4>;
2244807c71cSJoonwoo Park				};
2254807c71cSJoonwoo Park
2264807c71cSJoonwoo Park				core1 {
2274807c71cSJoonwoo Park					cpu = <&CPU5>;
2284807c71cSJoonwoo Park				};
2294807c71cSJoonwoo Park
2304807c71cSJoonwoo Park				core2 {
2314807c71cSJoonwoo Park					cpu = <&CPU6>;
2324807c71cSJoonwoo Park				};
2334807c71cSJoonwoo Park
2344807c71cSJoonwoo Park				core3 {
2354807c71cSJoonwoo Park					cpu = <&CPU7>;
2364807c71cSJoonwoo Park				};
2374807c71cSJoonwoo Park			};
2384807c71cSJoonwoo Park		};
2394807c71cSJoonwoo Park	};
2404807c71cSJoonwoo Park
241d850156aSBjorn Andersson	firmware {
242d850156aSBjorn Andersson		scm {
243d850156aSBjorn Andersson			compatible = "qcom,scm-msm8998";
244d850156aSBjorn Andersson		};
245d850156aSBjorn Andersson	};
246d850156aSBjorn Andersson
247c7833949SBjorn Andersson	tcsr_mutex: hwlock {
248c7833949SBjorn Andersson		compatible = "qcom,tcsr-mutex";
249c7833949SBjorn Andersson		syscon = <&tcsr_mutex_regs 0 0x1000>;
250c7833949SBjorn Andersson		#hwlock-cells = <1>;
251c7833949SBjorn Andersson	};
252c7833949SBjorn Andersson
2534807c71cSJoonwoo Park	psci {
2544807c71cSJoonwoo Park		compatible = "arm,psci-1.0";
2554807c71cSJoonwoo Park		method = "smc";
2564807c71cSJoonwoo Park	};
2574807c71cSJoonwoo Park
25831c1f0e3SBjorn Andersson	rpm-glink {
25931c1f0e3SBjorn Andersson		compatible = "qcom,glink-rpm";
26031c1f0e3SBjorn Andersson
26131c1f0e3SBjorn Andersson		interrupts = <GIC_SPI 168 IRQ_TYPE_EDGE_RISING>;
26231c1f0e3SBjorn Andersson		qcom,rpm-msg-ram = <&rpm_msg_ram>;
26331c1f0e3SBjorn Andersson		mboxes = <&apcs_glb 0>;
26431c1f0e3SBjorn Andersson
26531c1f0e3SBjorn Andersson		rpm_requests: rpm-requests {
26631c1f0e3SBjorn Andersson			compatible = "qcom,rpm-msm8998";
26731c1f0e3SBjorn Andersson			qcom,glink-channels = "rpm_requests";
26831c1f0e3SBjorn Andersson		};
26931c1f0e3SBjorn Andersson	};
27031c1f0e3SBjorn Andersson
271c7833949SBjorn Andersson	smem {
272c7833949SBjorn Andersson		compatible = "qcom,smem";
273c7833949SBjorn Andersson		memory-region = <&smem_mem>;
274c7833949SBjorn Andersson		hwlocks = <&tcsr_mutex 3>;
275c7833949SBjorn Andersson	};
276c7833949SBjorn Andersson
277e8d006fdSBjorn Andersson	smp2p-lpass {
278e8d006fdSBjorn Andersson		compatible = "qcom,smp2p";
279e8d006fdSBjorn Andersson		qcom,smem = <443>, <429>;
280e8d006fdSBjorn Andersson
281e8d006fdSBjorn Andersson		interrupts = <GIC_SPI 158 IRQ_TYPE_EDGE_RISING>;
282e8d006fdSBjorn Andersson
283e8d006fdSBjorn Andersson		mboxes = <&apcs_glb 10>;
284e8d006fdSBjorn Andersson
285e8d006fdSBjorn Andersson		qcom,local-pid = <0>;
286e8d006fdSBjorn Andersson		qcom,remote-pid = <2>;
287e8d006fdSBjorn Andersson
288e8d006fdSBjorn Andersson		adsp_smp2p_out: master-kernel {
289e8d006fdSBjorn Andersson			qcom,entry-name = "master-kernel";
290e8d006fdSBjorn Andersson			#qcom,smem-state-cells = <1>;
291e8d006fdSBjorn Andersson		};
292e8d006fdSBjorn Andersson
293e8d006fdSBjorn Andersson		adsp_smp2p_in: slave-kernel {
294e8d006fdSBjorn Andersson			qcom,entry-name = "slave-kernel";
295e8d006fdSBjorn Andersson
296e8d006fdSBjorn Andersson			interrupt-controller;
297e8d006fdSBjorn Andersson			#interrupt-cells = <2>;
298e8d006fdSBjorn Andersson		};
299e8d006fdSBjorn Andersson	};
300e8d006fdSBjorn Andersson
301e8d006fdSBjorn Andersson	smp2p-mpss {
302e8d006fdSBjorn Andersson		compatible = "qcom,smp2p";
303e8d006fdSBjorn Andersson		qcom,smem = <435>, <428>;
304e8d006fdSBjorn Andersson		interrupts = <GIC_SPI 451 IRQ_TYPE_EDGE_RISING>;
305e8d006fdSBjorn Andersson		mboxes = <&apcs_glb 14>;
306e8d006fdSBjorn Andersson		qcom,local-pid = <0>;
307e8d006fdSBjorn Andersson		qcom,remote-pid = <1>;
308e8d006fdSBjorn Andersson
309e8d006fdSBjorn Andersson		modem_smp2p_out: master-kernel {
310e8d006fdSBjorn Andersson			qcom,entry-name = "master-kernel";
311e8d006fdSBjorn Andersson			#qcom,smem-state-cells = <1>;
312e8d006fdSBjorn Andersson		};
313e8d006fdSBjorn Andersson
314e8d006fdSBjorn Andersson		modem_smp2p_in: slave-kernel {
315e8d006fdSBjorn Andersson			qcom,entry-name = "slave-kernel";
316e8d006fdSBjorn Andersson			interrupt-controller;
317e8d006fdSBjorn Andersson			#interrupt-cells = <2>;
318e8d006fdSBjorn Andersson		};
319e8d006fdSBjorn Andersson	};
320e8d006fdSBjorn Andersson
321e8d006fdSBjorn Andersson	smp2p-slpi {
322e8d006fdSBjorn Andersson		compatible = "qcom,smp2p";
323e8d006fdSBjorn Andersson		qcom,smem = <481>, <430>;
324e8d006fdSBjorn Andersson		interrupts = <GIC_SPI 178 IRQ_TYPE_EDGE_RISING>;
325e8d006fdSBjorn Andersson		mboxes = <&apcs_glb 26>;
326e8d006fdSBjorn Andersson		qcom,local-pid = <0>;
327e8d006fdSBjorn Andersson		qcom,remote-pid = <3>;
328e8d006fdSBjorn Andersson
329e8d006fdSBjorn Andersson		slpi_smp2p_out: master-kernel {
330e8d006fdSBjorn Andersson			qcom,entry-name = "master-kernel";
331e8d006fdSBjorn Andersson			#qcom,smem-state-cells = <1>;
332e8d006fdSBjorn Andersson		};
333e8d006fdSBjorn Andersson
334e8d006fdSBjorn Andersson		slpi_smp2p_in: slave-kernel {
335e8d006fdSBjorn Andersson			qcom,entry-name = "slave-kernel";
336e8d006fdSBjorn Andersson			interrupt-controller;
337e8d006fdSBjorn Andersson			#interrupt-cells = <2>;
338e8d006fdSBjorn Andersson		};
339e8d006fdSBjorn Andersson	};
340e8d006fdSBjorn Andersson
3414449b6f2SBjorn Andersson	thermal-zones {
3424449b6f2SBjorn Andersson		cpu-thermal0 {
3434449b6f2SBjorn Andersson			polling-delay-passive = <250>;
3444449b6f2SBjorn Andersson			polling-delay = <1000>;
3454449b6f2SBjorn Andersson
3464449b6f2SBjorn Andersson			thermal-sensors = <&tsens0 6>;
3474449b6f2SBjorn Andersson
3484449b6f2SBjorn Andersson			trips {
3494449b6f2SBjorn Andersson				cpu_alert0: trip0 {
3504449b6f2SBjorn Andersson					temperature = <75000>;
3514449b6f2SBjorn Andersson					hysteresis = <2000>;
3524449b6f2SBjorn Andersson					type = "passive";
3534449b6f2SBjorn Andersson				};
3544449b6f2SBjorn Andersson
3554449b6f2SBjorn Andersson				cpu_crit0: trip1 {
3564449b6f2SBjorn Andersson					temperature = <110000>;
3574449b6f2SBjorn Andersson					hysteresis = <2000>;
3584449b6f2SBjorn Andersson					type = "critical";
3594449b6f2SBjorn Andersson				};
3604449b6f2SBjorn Andersson			};
3614449b6f2SBjorn Andersson		};
3624449b6f2SBjorn Andersson
3634449b6f2SBjorn Andersson		cpu-thermal1 {
3644449b6f2SBjorn Andersson			polling-delay-passive = <250>;
3654449b6f2SBjorn Andersson			polling-delay = <1000>;
3664449b6f2SBjorn Andersson
3674449b6f2SBjorn Andersson			thermal-sensors = <&tsens0 7>;
3684449b6f2SBjorn Andersson
3694449b6f2SBjorn Andersson			trips {
3704449b6f2SBjorn Andersson				cpu_alert1: trip0 {
3714449b6f2SBjorn Andersson					temperature = <75000>;
3724449b6f2SBjorn Andersson					hysteresis = <2000>;
3734449b6f2SBjorn Andersson					type = "passive";
3744449b6f2SBjorn Andersson				};
3754449b6f2SBjorn Andersson
3764449b6f2SBjorn Andersson				cpu_crit1: trip1 {
3774449b6f2SBjorn Andersson					temperature = <110000>;
3784449b6f2SBjorn Andersson					hysteresis = <2000>;
3794449b6f2SBjorn Andersson					type = "critical";
3804449b6f2SBjorn Andersson				};
3814449b6f2SBjorn Andersson			};
3824449b6f2SBjorn Andersson		};
3834449b6f2SBjorn Andersson
3844449b6f2SBjorn Andersson		cpu-thermal2 {
3854449b6f2SBjorn Andersson			polling-delay-passive = <250>;
3864449b6f2SBjorn Andersson			polling-delay = <1000>;
3874449b6f2SBjorn Andersson
3884449b6f2SBjorn Andersson			thermal-sensors = <&tsens0 8>;
3894449b6f2SBjorn Andersson
3904449b6f2SBjorn Andersson			trips {
3914449b6f2SBjorn Andersson				cpu_alert2: trip0 {
3924449b6f2SBjorn Andersson					temperature = <75000>;
3934449b6f2SBjorn Andersson					hysteresis = <2000>;
3944449b6f2SBjorn Andersson					type = "passive";
3954449b6f2SBjorn Andersson				};
3964449b6f2SBjorn Andersson
3974449b6f2SBjorn Andersson				cpu_crit2: trip1 {
3984449b6f2SBjorn Andersson					temperature = <110000>;
3994449b6f2SBjorn Andersson					hysteresis = <2000>;
4004449b6f2SBjorn Andersson					type = "critical";
4014449b6f2SBjorn Andersson				};
4024449b6f2SBjorn Andersson			};
4034449b6f2SBjorn Andersson		};
4044449b6f2SBjorn Andersson
4054449b6f2SBjorn Andersson		cpu-thermal3 {
4064449b6f2SBjorn Andersson			polling-delay-passive = <250>;
4074449b6f2SBjorn Andersson			polling-delay = <1000>;
4084449b6f2SBjorn Andersson
4094449b6f2SBjorn Andersson			thermal-sensors = <&tsens0 9>;
4104449b6f2SBjorn Andersson
4114449b6f2SBjorn Andersson			trips {
4124449b6f2SBjorn Andersson				cpu_alert3: trip0 {
4134449b6f2SBjorn Andersson					temperature = <75000>;
4144449b6f2SBjorn Andersson					hysteresis = <2000>;
4154449b6f2SBjorn Andersson					type = "passive";
4164449b6f2SBjorn Andersson				};
4174449b6f2SBjorn Andersson
4184449b6f2SBjorn Andersson				cpu_crit3: trip1 {
4194449b6f2SBjorn Andersson					temperature = <110000>;
4204449b6f2SBjorn Andersson					hysteresis = <2000>;
4214449b6f2SBjorn Andersson					type = "critical";
4224449b6f2SBjorn Andersson				};
4234449b6f2SBjorn Andersson			};
4244449b6f2SBjorn Andersson		};
4254449b6f2SBjorn Andersson
4264449b6f2SBjorn Andersson		cpu-thermal4 {
4274449b6f2SBjorn Andersson			polling-delay-passive = <250>;
4284449b6f2SBjorn Andersson			polling-delay = <1000>;
4294449b6f2SBjorn Andersson
4304449b6f2SBjorn Andersson			thermal-sensors = <&tsens0 10>;
4314449b6f2SBjorn Andersson
4324449b6f2SBjorn Andersson			trips {
4334449b6f2SBjorn Andersson				cpu_alert4: trip0 {
4344449b6f2SBjorn Andersson					temperature = <75000>;
4354449b6f2SBjorn Andersson					hysteresis = <2000>;
4364449b6f2SBjorn Andersson					type = "passive";
4374449b6f2SBjorn Andersson				};
4384449b6f2SBjorn Andersson
4394449b6f2SBjorn Andersson				cpu_crit4: trip1 {
4404449b6f2SBjorn Andersson					temperature = <110000>;
4414449b6f2SBjorn Andersson					hysteresis = <2000>;
4424449b6f2SBjorn Andersson					type = "critical";
4434449b6f2SBjorn Andersson				};
4444449b6f2SBjorn Andersson			};
4454449b6f2SBjorn Andersson		};
4464449b6f2SBjorn Andersson
4474449b6f2SBjorn Andersson		cpu-thermal5 {
4484449b6f2SBjorn Andersson			polling-delay-passive = <250>;
4494449b6f2SBjorn Andersson			polling-delay = <1000>;
4504449b6f2SBjorn Andersson
4514449b6f2SBjorn Andersson			thermal-sensors = <&tsens0 11>;
4524449b6f2SBjorn Andersson
4534449b6f2SBjorn Andersson			trips {
4544449b6f2SBjorn Andersson				cpu_alert5: trip0 {
4554449b6f2SBjorn Andersson					temperature = <75000>;
4564449b6f2SBjorn Andersson					hysteresis = <2000>;
4574449b6f2SBjorn Andersson					type = "passive";
4584449b6f2SBjorn Andersson				};
4594449b6f2SBjorn Andersson
4604449b6f2SBjorn Andersson				cpu_crit5: trip1 {
4614449b6f2SBjorn Andersson					temperature = <110000>;
4624449b6f2SBjorn Andersson					hysteresis = <2000>;
4634449b6f2SBjorn Andersson					type = "critical";
4644449b6f2SBjorn Andersson				};
4654449b6f2SBjorn Andersson			};
4664449b6f2SBjorn Andersson		};
4674449b6f2SBjorn Andersson
4684449b6f2SBjorn Andersson		cpu-thermal6 {
4694449b6f2SBjorn Andersson			polling-delay-passive = <250>;
4704449b6f2SBjorn Andersson			polling-delay = <1000>;
4714449b6f2SBjorn Andersson
4724449b6f2SBjorn Andersson			thermal-sensors = <&tsens1 0>;
4734449b6f2SBjorn Andersson
4744449b6f2SBjorn Andersson			trips {
4754449b6f2SBjorn Andersson				cpu_alert6: trip0 {
4764449b6f2SBjorn Andersson					temperature = <75000>;
4774449b6f2SBjorn Andersson					hysteresis = <2000>;
4784449b6f2SBjorn Andersson					type = "passive";
4794449b6f2SBjorn Andersson				};
4804449b6f2SBjorn Andersson
4814449b6f2SBjorn Andersson				cpu_crit6: trip1 {
4824449b6f2SBjorn Andersson					temperature = <110000>;
4834449b6f2SBjorn Andersson					hysteresis = <2000>;
4844449b6f2SBjorn Andersson					type = "critical";
4854449b6f2SBjorn Andersson				};
4864449b6f2SBjorn Andersson			};
4874449b6f2SBjorn Andersson		};
4884449b6f2SBjorn Andersson
4894449b6f2SBjorn Andersson		cpu-thermal7 {
4904449b6f2SBjorn Andersson			polling-delay-passive = <250>;
4914449b6f2SBjorn Andersson			polling-delay = <1000>;
4924449b6f2SBjorn Andersson
4934449b6f2SBjorn Andersson			thermal-sensors = <&tsens1 1>;
4944449b6f2SBjorn Andersson
4954449b6f2SBjorn Andersson			trips {
4964449b6f2SBjorn Andersson				cpu_alert7: trip0 {
4974449b6f2SBjorn Andersson					temperature = <75000>;
4984449b6f2SBjorn Andersson					hysteresis = <2000>;
4994449b6f2SBjorn Andersson					type = "passive";
5004449b6f2SBjorn Andersson				};
5014449b6f2SBjorn Andersson
5024449b6f2SBjorn Andersson				cpu_crit7: trip1 {
5034449b6f2SBjorn Andersson					temperature = <110000>;
5044449b6f2SBjorn Andersson					hysteresis = <2000>;
5054449b6f2SBjorn Andersson					type = "critical";
5064449b6f2SBjorn Andersson				};
5074449b6f2SBjorn Andersson			};
5084449b6f2SBjorn Andersson		};
5094449b6f2SBjorn Andersson
5104449b6f2SBjorn Andersson		gpu-thermal {
5114449b6f2SBjorn Andersson			polling-delay-passive = <250>;
5124449b6f2SBjorn Andersson			polling-delay = <1000>;
5134449b6f2SBjorn Andersson
5144449b6f2SBjorn Andersson			thermal-sensors = <&tsens1 3>;
5154449b6f2SBjorn Andersson		};
5164449b6f2SBjorn Andersson	};
5174449b6f2SBjorn Andersson
5184807c71cSJoonwoo Park	timer {
5194807c71cSJoonwoo Park		compatible = "arm,armv8-timer";
5204807c71cSJoonwoo Park		interrupts = <GIC_PPI 1 IRQ_TYPE_LEVEL_LOW>,
5214807c71cSJoonwoo Park			     <GIC_PPI 2 IRQ_TYPE_LEVEL_LOW>,
5224807c71cSJoonwoo Park			     <GIC_PPI 3 IRQ_TYPE_LEVEL_LOW>,
5234807c71cSJoonwoo Park			     <GIC_PPI 0 IRQ_TYPE_LEVEL_LOW>;
5244807c71cSJoonwoo Park	};
5254807c71cSJoonwoo Park
5264807c71cSJoonwoo Park	soc: soc {
5274807c71cSJoonwoo Park		#address-cells = <1>;
5284807c71cSJoonwoo Park		#size-cells = <1>;
5294807c71cSJoonwoo Park		ranges = <0 0 0 0xffffffff>;
5304807c71cSJoonwoo Park		compatible = "simple-bus";
5314807c71cSJoonwoo Park
53231c1f0e3SBjorn Andersson		rpm_msg_ram: memory@68000 {
53331c1f0e3SBjorn Andersson			compatible = "qcom,rpm-msg-ram";
53431c1f0e3SBjorn Andersson			reg = <0x778000 0x7000>;
53531c1f0e3SBjorn Andersson		};
53631c1f0e3SBjorn Andersson
537f259e398SBjorn Andersson		qfprom: qfprom@780000 {
538f259e398SBjorn Andersson			compatible = "qcom,qfprom";
539f259e398SBjorn Andersson			reg = <0x780000 0x621c>;
540f259e398SBjorn Andersson			#address-cells = <1>;
541f259e398SBjorn Andersson			#size-cells = <1>;
542f259e398SBjorn Andersson		};
543f259e398SBjorn Andersson
5444807c71cSJoonwoo Park		gcc: clock-controller@100000 {
5454807c71cSJoonwoo Park			compatible = "qcom,gcc-msm8998";
5464807c71cSJoonwoo Park			#clock-cells = <1>;
5474807c71cSJoonwoo Park			#reset-cells = <1>;
5484807c71cSJoonwoo Park			#power-domain-cells = <1>;
5494807c71cSJoonwoo Park			reg = <0x100000 0xb0000>;
5504807c71cSJoonwoo Park		};
5514807c71cSJoonwoo Park
5524807c71cSJoonwoo Park		tlmm: pinctrl@3400000 {
5534807c71cSJoonwoo Park			compatible = "qcom,msm8998-pinctrl";
5544807c71cSJoonwoo Park			reg = <0x3400000 0xc00000>;
5554807c71cSJoonwoo Park			interrupts = <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>;
5564807c71cSJoonwoo Park			gpio-controller;
5574807c71cSJoonwoo Park			#gpio-cells = <0x2>;
5584807c71cSJoonwoo Park			interrupt-controller;
5594807c71cSJoonwoo Park			#interrupt-cells = <0x2>;
5604807c71cSJoonwoo Park		};
5614807c71cSJoonwoo Park
5624807c71cSJoonwoo Park		spmi_bus: spmi@800f000 {
5634807c71cSJoonwoo Park			compatible = "qcom,spmi-pmic-arb";
5644807c71cSJoonwoo Park			reg =	<0x800f000 0x1000>,
5654807c71cSJoonwoo Park				<0x8400000 0x1000000>,
5664807c71cSJoonwoo Park				<0x9400000 0x1000000>,
5674807c71cSJoonwoo Park				<0xa400000 0x220000>,
5684807c71cSJoonwoo Park				<0x800a000 0x3000>;
5694807c71cSJoonwoo Park			reg-names = "core", "chnls", "obsrvr", "intr", "cnfg";
5704807c71cSJoonwoo Park			interrupt-names = "periph_irq";
5714807c71cSJoonwoo Park			interrupts = <GIC_SPI 326 IRQ_TYPE_LEVEL_HIGH>;
5724807c71cSJoonwoo Park			qcom,ee = <0>;
5734807c71cSJoonwoo Park			qcom,channel = <0>;
5744807c71cSJoonwoo Park			#address-cells = <2>;
5754807c71cSJoonwoo Park			#size-cells = <0>;
5764807c71cSJoonwoo Park			interrupt-controller;
5774807c71cSJoonwoo Park			#interrupt-cells = <4>;
5784807c71cSJoonwoo Park			cell-index = <0>;
5794807c71cSJoonwoo Park		};
5804807c71cSJoonwoo Park
5814449b6f2SBjorn Andersson		tsens0: thermal@10aa000 {
5824449b6f2SBjorn Andersson			compatible = "qcom,msm8998-tsens", "qcom,tsens-v2";
5834449b6f2SBjorn Andersson			reg = <0x10aa000 0x2000>;
5844449b6f2SBjorn Andersson
5854449b6f2SBjorn Andersson			#qcom,sensors = <12>;
5864449b6f2SBjorn Andersson			#thermal-sensor-cells = <1>;
5874449b6f2SBjorn Andersson		};
5884449b6f2SBjorn Andersson
5894449b6f2SBjorn Andersson		tsens1: thermal@10ad000 {
5904449b6f2SBjorn Andersson			compatible = "qcom,msm8998-tsens", "qcom,tsens-v2";
5914449b6f2SBjorn Andersson			reg = <0x10ad000 0x2000>;
5924449b6f2SBjorn Andersson
5934449b6f2SBjorn Andersson			#qcom,sensors = <8>;
5944449b6f2SBjorn Andersson			#thermal-sensor-cells = <1>;
5954449b6f2SBjorn Andersson		};
5964449b6f2SBjorn Andersson
597c7833949SBjorn Andersson		tcsr_mutex_regs: syscon@1f40000 {
598c7833949SBjorn Andersson			compatible = "syscon";
599c7833949SBjorn Andersson			reg = <0x1f40000 0x20000>;
600c7833949SBjorn Andersson		};
601c7833949SBjorn Andersson
60231c1f0e3SBjorn Andersson		apcs_glb: mailbox@9820000 {
60331c1f0e3SBjorn Andersson			compatible = "qcom,msm8998-apcs-hmss-global";
60431c1f0e3SBjorn Andersson			reg = <0x17911000 0x1000>;
60531c1f0e3SBjorn Andersson
60631c1f0e3SBjorn Andersson			#mbox-cells = <1>;
60731c1f0e3SBjorn Andersson		};
60831c1f0e3SBjorn Andersson
6091cfce828SJeffrey Hugo		sdhc2: sdhci@c0a4900 {
6101cfce828SJeffrey Hugo			compatible = "qcom,sdhci-msm-v4";
6111cfce828SJeffrey Hugo			reg = <0xc0a4900 0x314>, <0xc0a4000 0x800>;
6121cfce828SJeffrey Hugo			reg-names = "hc_mem", "core_mem";
6131cfce828SJeffrey Hugo
6141cfce828SJeffrey Hugo			interrupts = <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>,
6151cfce828SJeffrey Hugo				     <GIC_SPI 221 IRQ_TYPE_LEVEL_HIGH>;
6161cfce828SJeffrey Hugo			interrupt-names = "hc_irq", "pwr_irq";
6171cfce828SJeffrey Hugo
6181cfce828SJeffrey Hugo			clock-names = "iface", "core", "xo";
6191cfce828SJeffrey Hugo			clocks = <&gcc GCC_SDCC2_AHB_CLK>,
6201cfce828SJeffrey Hugo				 <&gcc GCC_SDCC2_APPS_CLK>,
6211cfce828SJeffrey Hugo				 <&xo>;
6221cfce828SJeffrey Hugo			bus-width = <4>;
6231cfce828SJeffrey Hugo			status = "disabled";
6241cfce828SJeffrey Hugo		};
6251cfce828SJeffrey Hugo
6264807c71cSJoonwoo Park		blsp2_uart1: serial@c1b0000 {
6274807c71cSJoonwoo Park			compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm";
6284807c71cSJoonwoo Park			reg = <0xc1b0000 0x1000>;
6294807c71cSJoonwoo Park			interrupts = <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>;
6304807c71cSJoonwoo Park			clocks = <&gcc GCC_BLSP2_UART2_APPS_CLK>,
6314807c71cSJoonwoo Park				 <&gcc GCC_BLSP2_AHB_CLK>;
6324807c71cSJoonwoo Park			clock-names = "core", "iface";
6334807c71cSJoonwoo Park			status = "disabled";
6344807c71cSJoonwoo Park		};
6354807c71cSJoonwoo Park
6364807c71cSJoonwoo Park		timer@17920000 {
6374807c71cSJoonwoo Park			#address-cells = <1>;
6384807c71cSJoonwoo Park			#size-cells = <1>;
6394807c71cSJoonwoo Park			ranges;
6404807c71cSJoonwoo Park			compatible = "arm,armv7-timer-mem";
6414807c71cSJoonwoo Park			reg = <0x17920000 0x1000>;
6424807c71cSJoonwoo Park
6434807c71cSJoonwoo Park			frame@17921000 {
6444807c71cSJoonwoo Park				frame-number = <0>;
6454807c71cSJoonwoo Park				interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>,
6464807c71cSJoonwoo Park					     <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>;
6474807c71cSJoonwoo Park				reg = <0x17921000 0x1000>,
6484807c71cSJoonwoo Park				      <0x17922000 0x1000>;
6494807c71cSJoonwoo Park			};
6504807c71cSJoonwoo Park
6514807c71cSJoonwoo Park			frame@17923000 {
6524807c71cSJoonwoo Park				frame-number = <1>;
6534807c71cSJoonwoo Park				interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>;
6544807c71cSJoonwoo Park				reg = <0x17923000 0x1000>;
6554807c71cSJoonwoo Park				status = "disabled";
6564807c71cSJoonwoo Park			};
6574807c71cSJoonwoo Park
6584807c71cSJoonwoo Park			frame@17924000 {
6594807c71cSJoonwoo Park				frame-number = <2>;
6604807c71cSJoonwoo Park				interrupts = <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>;
6614807c71cSJoonwoo Park				reg = <0x17924000 0x1000>;
6624807c71cSJoonwoo Park				status = "disabled";
6634807c71cSJoonwoo Park			};
6644807c71cSJoonwoo Park
6654807c71cSJoonwoo Park			frame@17925000 {
6664807c71cSJoonwoo Park				frame-number = <3>;
6674807c71cSJoonwoo Park				interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>;
6684807c71cSJoonwoo Park				reg = <0x17925000 0x1000>;
6694807c71cSJoonwoo Park				status = "disabled";
6704807c71cSJoonwoo Park			};
6714807c71cSJoonwoo Park
6724807c71cSJoonwoo Park			frame@17926000 {
6734807c71cSJoonwoo Park				frame-number = <4>;
6744807c71cSJoonwoo Park				interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>;
6754807c71cSJoonwoo Park				reg = <0x17926000 0x1000>;
6764807c71cSJoonwoo Park				status = "disabled";
6774807c71cSJoonwoo Park			};
6784807c71cSJoonwoo Park
6794807c71cSJoonwoo Park			frame@17927000 {
6804807c71cSJoonwoo Park				frame-number = <5>;
6814807c71cSJoonwoo Park				interrupts = <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>;
6824807c71cSJoonwoo Park				reg = <0x17927000 0x1000>;
6834807c71cSJoonwoo Park				status = "disabled";
6844807c71cSJoonwoo Park			};
6854807c71cSJoonwoo Park
6864807c71cSJoonwoo Park			frame@17928000 {
6874807c71cSJoonwoo Park				frame-number = <6>;
6884807c71cSJoonwoo Park				interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>;
6894807c71cSJoonwoo Park				reg = <0x17928000 0x1000>;
6904807c71cSJoonwoo Park				status = "disabled";
6914807c71cSJoonwoo Park			};
6924807c71cSJoonwoo Park		};
6934807c71cSJoonwoo Park
6944807c71cSJoonwoo Park		intc: interrupt-controller@17a00000 {
6954807c71cSJoonwoo Park			compatible = "arm,gic-v3";
6964807c71cSJoonwoo Park			reg = <0x17a00000 0x10000>,       /* GICD */
6974807c71cSJoonwoo Park			      <0x17b00000 0x100000>;      /* GICR * 8 */
6984807c71cSJoonwoo Park			#interrupt-cells = <3>;
6994807c71cSJoonwoo Park			#address-cells = <1>;
7004807c71cSJoonwoo Park			#size-cells = <1>;
7014807c71cSJoonwoo Park			ranges;
7024807c71cSJoonwoo Park			interrupt-controller;
7034807c71cSJoonwoo Park			#redistributor-regions = <1>;
7044807c71cSJoonwoo Park			redistributor-stride = <0x0 0x20000>;
7054807c71cSJoonwoo Park			interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>;
7064807c71cSJoonwoo Park		};
7074807c71cSJoonwoo Park	};
7084807c71cSJoonwoo Park};
709*6da80161SJeffrey Hugo
710*6da80161SJeffrey Hugo#include "msm8998-pins.dtsi"
711