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