1c66ec88fSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0-only
2*8bab661aSEmmanuel Vadot/*
3*8bab661aSEmmanuel Vadot * Copyright (c) 2013-2016, The Linux Foundation. All rights reserved.
4c66ec88fSEmmanuel Vadot */
5c66ec88fSEmmanuel Vadot
6c66ec88fSEmmanuel Vadot#include <dt-bindings/interrupt-controller/arm-gic.h>
7c66ec88fSEmmanuel Vadot#include <dt-bindings/clock/qcom,gcc-msm8994.h>
8d5b0e70fSEmmanuel Vadot#include <dt-bindings/clock/qcom,mmcc-msm8994.h>
9d5b0e70fSEmmanuel Vadot#include <dt-bindings/clock/qcom,rpmcc.h>
107ef62cebSEmmanuel Vadot#include <dt-bindings/gpio/gpio.h>
115def4c47SEmmanuel Vadot#include <dt-bindings/power/qcom-rpmpd.h>
12c66ec88fSEmmanuel Vadot
13c66ec88fSEmmanuel Vadot/ {
14c66ec88fSEmmanuel Vadot	interrupt-parent = <&intc>;
15c66ec88fSEmmanuel Vadot
16c66ec88fSEmmanuel Vadot	#address-cells = <2>;
17c66ec88fSEmmanuel Vadot	#size-cells = <2>;
18c66ec88fSEmmanuel Vadot
19d5b0e70fSEmmanuel Vadot	aliases {
20d5b0e70fSEmmanuel Vadot		mmc1 = &sdhc1;
21d5b0e70fSEmmanuel Vadot		mmc2 = &sdhc2;
22d5b0e70fSEmmanuel Vadot	};
23d5b0e70fSEmmanuel Vadot
24c66ec88fSEmmanuel Vadot	chosen { };
25c66ec88fSEmmanuel Vadot
26c66ec88fSEmmanuel Vadot	clocks {
27354d7675SEmmanuel Vadot		xo_board: xo-board {
28c66ec88fSEmmanuel Vadot			compatible = "fixed-clock";
29c66ec88fSEmmanuel Vadot			#clock-cells = <0>;
30c66ec88fSEmmanuel Vadot			clock-frequency = <19200000>;
31354d7675SEmmanuel Vadot			clock-output-names = "xo_board";
32c66ec88fSEmmanuel Vadot		};
33c66ec88fSEmmanuel Vadot
34354d7675SEmmanuel Vadot		sleep_clk: sleep-clk {
35c66ec88fSEmmanuel Vadot			compatible = "fixed-clock";
36c66ec88fSEmmanuel Vadot			#clock-cells = <0>;
37c66ec88fSEmmanuel Vadot			clock-frequency = <32768>;
38354d7675SEmmanuel Vadot			clock-output-names = "sleep_clk";
39c66ec88fSEmmanuel Vadot		};
40c66ec88fSEmmanuel Vadot	};
41c66ec88fSEmmanuel Vadot
42c66ec88fSEmmanuel Vadot	cpus {
43c66ec88fSEmmanuel Vadot		#address-cells = <2>;
44c66ec88fSEmmanuel Vadot		#size-cells = <0>;
45c66ec88fSEmmanuel Vadot
46c66ec88fSEmmanuel Vadot		CPU0: cpu@0 {
47c66ec88fSEmmanuel Vadot			device_type = "cpu";
48c66ec88fSEmmanuel Vadot			compatible = "arm,cortex-a53";
49c66ec88fSEmmanuel Vadot			reg = <0x0 0x0>;
50c66ec88fSEmmanuel Vadot			enable-method = "psci";
51c66ec88fSEmmanuel Vadot			next-level-cache = <&L2_0>;
52c66ec88fSEmmanuel Vadot			L2_0: l2-cache {
53c66ec88fSEmmanuel Vadot				compatible = "cache";
54c66ec88fSEmmanuel Vadot				cache-level = <2>;
55c66ec88fSEmmanuel Vadot			};
56c66ec88fSEmmanuel Vadot		};
57c66ec88fSEmmanuel Vadot
58c66ec88fSEmmanuel Vadot		CPU1: cpu@1 {
59c66ec88fSEmmanuel Vadot			device_type = "cpu";
60c66ec88fSEmmanuel Vadot			compatible = "arm,cortex-a53";
61c66ec88fSEmmanuel Vadot			reg = <0x0 0x1>;
62c66ec88fSEmmanuel Vadot			enable-method = "psci";
63c66ec88fSEmmanuel Vadot			next-level-cache = <&L2_0>;
64c66ec88fSEmmanuel Vadot		};
65c66ec88fSEmmanuel Vadot
66c66ec88fSEmmanuel Vadot		CPU2: cpu@2 {
67c66ec88fSEmmanuel Vadot			device_type = "cpu";
68c66ec88fSEmmanuel Vadot			compatible = "arm,cortex-a53";
69c66ec88fSEmmanuel Vadot			reg = <0x0 0x2>;
70c66ec88fSEmmanuel Vadot			enable-method = "psci";
71c66ec88fSEmmanuel Vadot			next-level-cache = <&L2_0>;
72c66ec88fSEmmanuel Vadot		};
73c66ec88fSEmmanuel Vadot
74c66ec88fSEmmanuel Vadot		CPU3: cpu@3 {
75c66ec88fSEmmanuel Vadot			device_type = "cpu";
76c66ec88fSEmmanuel Vadot			compatible = "arm,cortex-a53";
77c66ec88fSEmmanuel Vadot			reg = <0x0 0x3>;
78c66ec88fSEmmanuel Vadot			enable-method = "psci";
79c66ec88fSEmmanuel Vadot			next-level-cache = <&L2_0>;
80c66ec88fSEmmanuel Vadot		};
81c66ec88fSEmmanuel Vadot
82c66ec88fSEmmanuel Vadot		CPU4: cpu@100 {
83c66ec88fSEmmanuel Vadot			device_type = "cpu";
84c66ec88fSEmmanuel Vadot			compatible = "arm,cortex-a57";
85c66ec88fSEmmanuel Vadot			reg = <0x0 0x100>;
86c66ec88fSEmmanuel Vadot			enable-method = "psci";
87c66ec88fSEmmanuel Vadot			next-level-cache = <&L2_1>;
88c66ec88fSEmmanuel Vadot			L2_1: l2-cache {
89c66ec88fSEmmanuel Vadot				compatible = "cache";
90c66ec88fSEmmanuel Vadot				cache-level = <2>;
91c66ec88fSEmmanuel Vadot			};
92c66ec88fSEmmanuel Vadot		};
93c66ec88fSEmmanuel Vadot
94c66ec88fSEmmanuel Vadot		CPU5: cpu@101 {
95c66ec88fSEmmanuel Vadot			device_type = "cpu";
96c66ec88fSEmmanuel Vadot			compatible = "arm,cortex-a57";
97c66ec88fSEmmanuel Vadot			reg = <0x0 0x101>;
98c66ec88fSEmmanuel Vadot			enable-method = "psci";
99c66ec88fSEmmanuel Vadot			next-level-cache = <&L2_1>;
100c66ec88fSEmmanuel Vadot		};
101c66ec88fSEmmanuel Vadot
102c66ec88fSEmmanuel Vadot		CPU6: cpu@102 {
103c66ec88fSEmmanuel Vadot			device_type = "cpu";
104c66ec88fSEmmanuel Vadot			compatible = "arm,cortex-a57";
105d5b0e70fSEmmanuel Vadot			reg = <0x0 0x102>;
106c66ec88fSEmmanuel Vadot			enable-method = "psci";
107c66ec88fSEmmanuel Vadot			next-level-cache = <&L2_1>;
108c66ec88fSEmmanuel Vadot		};
109c66ec88fSEmmanuel Vadot
110c66ec88fSEmmanuel Vadot		CPU7: cpu@103 {
111c66ec88fSEmmanuel Vadot			device_type = "cpu";
112c66ec88fSEmmanuel Vadot			compatible = "arm,cortex-a57";
113d5b0e70fSEmmanuel Vadot			reg = <0x0 0x103>;
114c66ec88fSEmmanuel Vadot			enable-method = "psci";
115c66ec88fSEmmanuel Vadot			next-level-cache = <&L2_1>;
116c66ec88fSEmmanuel Vadot		};
117c66ec88fSEmmanuel Vadot
118c66ec88fSEmmanuel Vadot		cpu-map {
119c66ec88fSEmmanuel Vadot			cluster0 {
120c66ec88fSEmmanuel Vadot				core0 {
121c66ec88fSEmmanuel Vadot					cpu = <&CPU0>;
122c66ec88fSEmmanuel Vadot				};
123c66ec88fSEmmanuel Vadot
124c66ec88fSEmmanuel Vadot				core1 {
125c66ec88fSEmmanuel Vadot					cpu = <&CPU1>;
126c66ec88fSEmmanuel Vadot				};
127c66ec88fSEmmanuel Vadot
128c66ec88fSEmmanuel Vadot				core2 {
129c66ec88fSEmmanuel Vadot					cpu = <&CPU2>;
130c66ec88fSEmmanuel Vadot				};
131c66ec88fSEmmanuel Vadot
132c66ec88fSEmmanuel Vadot				core3 {
133c66ec88fSEmmanuel Vadot					cpu = <&CPU3>;
134c66ec88fSEmmanuel Vadot				};
135c66ec88fSEmmanuel Vadot			};
136c66ec88fSEmmanuel Vadot
137c66ec88fSEmmanuel Vadot			cluster1 {
138c66ec88fSEmmanuel Vadot				core0 {
139c66ec88fSEmmanuel Vadot					cpu = <&CPU4>;
140c66ec88fSEmmanuel Vadot				};
141c66ec88fSEmmanuel Vadot
142c66ec88fSEmmanuel Vadot				core1 {
143c66ec88fSEmmanuel Vadot					cpu = <&CPU5>;
144c66ec88fSEmmanuel Vadot				};
145c66ec88fSEmmanuel Vadot
1465def4c47SEmmanuel Vadot				cpu6_map: core2 {
147c66ec88fSEmmanuel Vadot					cpu = <&CPU6>;
148c66ec88fSEmmanuel Vadot				};
149c66ec88fSEmmanuel Vadot
1505def4c47SEmmanuel Vadot				cpu7_map: core3 {
151c66ec88fSEmmanuel Vadot					cpu = <&CPU7>;
152c66ec88fSEmmanuel Vadot				};
153c66ec88fSEmmanuel Vadot			};
154c66ec88fSEmmanuel Vadot		};
155c66ec88fSEmmanuel Vadot	};
156c66ec88fSEmmanuel Vadot
157c66ec88fSEmmanuel Vadot	firmware {
158c66ec88fSEmmanuel Vadot		scm {
159c66ec88fSEmmanuel Vadot			compatible = "qcom,scm-msm8994", "qcom,scm";
160c66ec88fSEmmanuel Vadot		};
161c66ec88fSEmmanuel Vadot	};
162c66ec88fSEmmanuel Vadot
1632eb4d8dcSEmmanuel Vadot	memory@80000000 {
164c66ec88fSEmmanuel Vadot		device_type = "memory";
165c66ec88fSEmmanuel Vadot		/* We expect the bootloader to fill in the reg */
1662eb4d8dcSEmmanuel Vadot		reg = <0 0x80000000 0 0>;
167c66ec88fSEmmanuel Vadot	};
168c66ec88fSEmmanuel Vadot
169c66ec88fSEmmanuel Vadot	pmu {
170c66ec88fSEmmanuel Vadot		compatible = "arm,cortex-a53-pmu";
171c66ec88fSEmmanuel Vadot		interrupts = <GIC_PPI 7 (GIC_CPU_MASK_SIMPLE(4)| IRQ_TYPE_LEVEL_HIGH)>;
172c66ec88fSEmmanuel Vadot	};
173c66ec88fSEmmanuel Vadot
174c66ec88fSEmmanuel Vadot	psci {
175c66ec88fSEmmanuel Vadot		compatible = "arm,psci-0.2";
176c66ec88fSEmmanuel Vadot		method = "hvc";
177c66ec88fSEmmanuel Vadot	};
178c66ec88fSEmmanuel Vadot
179c66ec88fSEmmanuel Vadot	reserved-memory {
180c66ec88fSEmmanuel Vadot		#address-cells = <2>;
181c66ec88fSEmmanuel Vadot		#size-cells = <2>;
182c66ec88fSEmmanuel Vadot		ranges;
183c66ec88fSEmmanuel Vadot
1845def4c47SEmmanuel Vadot		dfps_data_mem: dfps_data_mem@3400000 {
1855def4c47SEmmanuel Vadot			reg = <0 0x03400000 0 0x1000>;
1865def4c47SEmmanuel Vadot			no-map;
1875def4c47SEmmanuel Vadot		};
1885def4c47SEmmanuel Vadot
189d5b0e70fSEmmanuel Vadot		cont_splash_mem: memory@3401000 {
190d5b0e70fSEmmanuel Vadot			reg = <0 0x03401000 0 0x2200000>;
1915def4c47SEmmanuel Vadot			no-map;
1925def4c47SEmmanuel Vadot		};
1935def4c47SEmmanuel Vadot
194c66ec88fSEmmanuel Vadot		smem_mem: smem_region@6a00000 {
1955def4c47SEmmanuel Vadot			reg = <0 0x06a00000 0 0x200000>;
1965def4c47SEmmanuel Vadot			no-map;
1975def4c47SEmmanuel Vadot		};
1985def4c47SEmmanuel Vadot
1995def4c47SEmmanuel Vadot		mpss_mem: memory@7000000 {
2005def4c47SEmmanuel Vadot			reg = <0 0x07000000 0 0x5a00000>;
2015def4c47SEmmanuel Vadot			no-map;
2025def4c47SEmmanuel Vadot		};
2035def4c47SEmmanuel Vadot
2045def4c47SEmmanuel Vadot		peripheral_region: memory@ca00000 {
2055def4c47SEmmanuel Vadot			reg = <0 0x0ca00000 0 0x1f00000>;
2065def4c47SEmmanuel Vadot			no-map;
2075def4c47SEmmanuel Vadot		};
2085def4c47SEmmanuel Vadot
2095def4c47SEmmanuel Vadot		rmtfs_mem: memory@c6400000 {
2105def4c47SEmmanuel Vadot			compatible = "qcom,rmtfs-mem";
2115def4c47SEmmanuel Vadot			reg = <0 0xc6400000 0 0x180000>;
2125def4c47SEmmanuel Vadot			no-map;
2135def4c47SEmmanuel Vadot
2145def4c47SEmmanuel Vadot			qcom,client-id = <1>;
2155def4c47SEmmanuel Vadot		};
2165def4c47SEmmanuel Vadot
2175def4c47SEmmanuel Vadot		mba_mem: memory@c6700000 {
2185def4c47SEmmanuel Vadot			reg = <0 0xc6700000 0 0x100000>;
2195def4c47SEmmanuel Vadot			no-map;
2205def4c47SEmmanuel Vadot		};
2215def4c47SEmmanuel Vadot
2225def4c47SEmmanuel Vadot		audio_mem: memory@c7000000 {
2235def4c47SEmmanuel Vadot			reg = <0 0xc7000000 0 0x800000>;
2245def4c47SEmmanuel Vadot			no-map;
2255def4c47SEmmanuel Vadot		};
2265def4c47SEmmanuel Vadot
2275def4c47SEmmanuel Vadot		adsp_mem: memory@c9400000 {
2285def4c47SEmmanuel Vadot			reg = <0 0xc9400000 0 0x3f00000>;
229c66ec88fSEmmanuel Vadot			no-map;
230c66ec88fSEmmanuel Vadot		};
231c66ec88fSEmmanuel Vadot	};
232c66ec88fSEmmanuel Vadot
233c66ec88fSEmmanuel Vadot	smd {
234c66ec88fSEmmanuel Vadot		compatible = "qcom,smd";
235c66ec88fSEmmanuel Vadot		rpm {
236c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 168 IRQ_TYPE_EDGE_RISING>;
237c66ec88fSEmmanuel Vadot			qcom,ipc = <&apcs 8 0>;
238c66ec88fSEmmanuel Vadot			qcom,smd-edge = <15>;
239c66ec88fSEmmanuel Vadot			qcom,remote-pid = <6>;
240c66ec88fSEmmanuel Vadot
241c66ec88fSEmmanuel Vadot			rpm_requests: rpm-requests {
242c66ec88fSEmmanuel Vadot				compatible = "qcom,rpm-msm8994";
243c66ec88fSEmmanuel Vadot				qcom,smd-channels = "rpm_requests";
244c66ec88fSEmmanuel Vadot
245c66ec88fSEmmanuel Vadot				rpmcc: rpmcc {
246d5b0e70fSEmmanuel Vadot					compatible = "qcom,rpmcc-msm8994", "qcom,rpmcc";
247c66ec88fSEmmanuel Vadot					#clock-cells = <1>;
248c66ec88fSEmmanuel Vadot				};
2495def4c47SEmmanuel Vadot
2505def4c47SEmmanuel Vadot				rpmpd: power-controller {
2515def4c47SEmmanuel Vadot					compatible = "qcom,msm8994-rpmpd";
2525def4c47SEmmanuel Vadot					#power-domain-cells = <1>;
2535def4c47SEmmanuel Vadot					operating-points-v2 = <&rpmpd_opp_table>;
2545def4c47SEmmanuel Vadot
2555def4c47SEmmanuel Vadot					rpmpd_opp_table: opp-table {
2565def4c47SEmmanuel Vadot						compatible = "operating-points-v2";
2575def4c47SEmmanuel Vadot
2585def4c47SEmmanuel Vadot						rpmpd_opp_ret: opp1 {
2595def4c47SEmmanuel Vadot							opp-level = <1>;
2605def4c47SEmmanuel Vadot						};
2615def4c47SEmmanuel Vadot						rpmpd_opp_svs_krait: opp2 {
2625def4c47SEmmanuel Vadot							opp-level = <2>;
2635def4c47SEmmanuel Vadot						};
2645def4c47SEmmanuel Vadot						rpmpd_opp_svs_soc: opp3 {
2655def4c47SEmmanuel Vadot							opp-level = <3>;
2665def4c47SEmmanuel Vadot						};
2675def4c47SEmmanuel Vadot						rpmpd_opp_nom: opp4 {
2685def4c47SEmmanuel Vadot							opp-level = <4>;
2695def4c47SEmmanuel Vadot						};
2705def4c47SEmmanuel Vadot						rpmpd_opp_turbo: opp5 {
2715def4c47SEmmanuel Vadot							opp-level = <5>;
2725def4c47SEmmanuel Vadot						};
2735def4c47SEmmanuel Vadot						rpmpd_opp_super_turbo: opp6 {
2745def4c47SEmmanuel Vadot							opp-level = <6>;
2755def4c47SEmmanuel Vadot						};
2765def4c47SEmmanuel Vadot					};
2775def4c47SEmmanuel Vadot				};
278c66ec88fSEmmanuel Vadot			};
279c66ec88fSEmmanuel Vadot		};
280c66ec88fSEmmanuel Vadot	};
281c66ec88fSEmmanuel Vadot
282c66ec88fSEmmanuel Vadot	smem {
283c66ec88fSEmmanuel Vadot		compatible = "qcom,smem";
284c66ec88fSEmmanuel Vadot		memory-region = <&smem_mem>;
285c66ec88fSEmmanuel Vadot		qcom,rpm-msg-ram = <&rpm_msg_ram>;
286c66ec88fSEmmanuel Vadot		hwlocks = <&tcsr_mutex 3>;
287c66ec88fSEmmanuel Vadot	};
288c66ec88fSEmmanuel Vadot
2895def4c47SEmmanuel Vadot	smp2p-lpass {
2905def4c47SEmmanuel Vadot		compatible = "qcom,smp2p";
2915def4c47SEmmanuel Vadot		qcom,smem = <443>, <429>;
2925def4c47SEmmanuel Vadot
2935def4c47SEmmanuel Vadot		interrupts = <GIC_SPI 158 IRQ_TYPE_EDGE_RISING>;
2945def4c47SEmmanuel Vadot
2955def4c47SEmmanuel Vadot		qcom,ipc = <&apcs 8 10>;
2965def4c47SEmmanuel Vadot
2975def4c47SEmmanuel Vadot		qcom,local-pid = <0>;
2985def4c47SEmmanuel Vadot		qcom,remote-pid = <2>;
2995def4c47SEmmanuel Vadot
3005def4c47SEmmanuel Vadot		adsp_smp2p_out: master-kernel {
3015def4c47SEmmanuel Vadot			qcom,entry-name = "master-kernel";
3025def4c47SEmmanuel Vadot			#qcom,smem-state-cells = <1>;
3035def4c47SEmmanuel Vadot		};
3045def4c47SEmmanuel Vadot
3055def4c47SEmmanuel Vadot		adsp_smp2p_in: slave-kernel {
3065def4c47SEmmanuel Vadot			qcom,entry-name = "slave-kernel";
3075def4c47SEmmanuel Vadot
3085def4c47SEmmanuel Vadot			interrupt-controller;
3095def4c47SEmmanuel Vadot			#interrupt-cells = <2>;
3105def4c47SEmmanuel Vadot		};
3115def4c47SEmmanuel Vadot	};
3125def4c47SEmmanuel Vadot
3135def4c47SEmmanuel Vadot	smp2p-modem {
3145def4c47SEmmanuel Vadot		compatible = "qcom,smp2p";
3155def4c47SEmmanuel Vadot		qcom,smem = <435>, <428>;
3165def4c47SEmmanuel Vadot
3175def4c47SEmmanuel Vadot		interrupt-parent = <&intc>;
3185def4c47SEmmanuel Vadot		interrupts = <GIC_SPI 27 IRQ_TYPE_EDGE_RISING>;
3195def4c47SEmmanuel Vadot
3205def4c47SEmmanuel Vadot		qcom,ipc = <&apcs 8 14>;
3215def4c47SEmmanuel Vadot
3225def4c47SEmmanuel Vadot		qcom,local-pid = <0>;
3235def4c47SEmmanuel Vadot		qcom,remote-pid = <1>;
3245def4c47SEmmanuel Vadot
3255def4c47SEmmanuel Vadot		modem_smp2p_out: master-kernel {
3265def4c47SEmmanuel Vadot			qcom,entry-name = "master-kernel";
3275def4c47SEmmanuel Vadot			#qcom,smem-state-cells = <1>;
3285def4c47SEmmanuel Vadot		};
3295def4c47SEmmanuel Vadot
3305def4c47SEmmanuel Vadot		modem_smp2p_in: slave-kernel {
3315def4c47SEmmanuel Vadot			qcom,entry-name = "slave-kernel";
3325def4c47SEmmanuel Vadot
3335def4c47SEmmanuel Vadot			interrupt-controller;
3345def4c47SEmmanuel Vadot			#interrupt-cells = <2>;
3355def4c47SEmmanuel Vadot		};
3365def4c47SEmmanuel Vadot	};
3375def4c47SEmmanuel Vadot
338c66ec88fSEmmanuel Vadot	soc: soc {
339c66ec88fSEmmanuel Vadot
340c66ec88fSEmmanuel Vadot		#address-cells = <1>;
341c66ec88fSEmmanuel Vadot		#size-cells = <1>;
342c66ec88fSEmmanuel Vadot		ranges = <0 0 0 0xffffffff>;
343c66ec88fSEmmanuel Vadot		compatible = "simple-bus";
344c66ec88fSEmmanuel Vadot
345c66ec88fSEmmanuel Vadot		intc: interrupt-controller@f9000000 {
346c66ec88fSEmmanuel Vadot			compatible = "qcom,msm-qgic2";
347c66ec88fSEmmanuel Vadot			interrupt-controller;
348c66ec88fSEmmanuel Vadot			#interrupt-cells = <3>;
349c66ec88fSEmmanuel Vadot			reg = <0xf9000000 0x1000>,
350c66ec88fSEmmanuel Vadot			      <0xf9002000 0x1000>;
351c66ec88fSEmmanuel Vadot		};
352c66ec88fSEmmanuel Vadot
353c66ec88fSEmmanuel Vadot		apcs: mailbox@f900d000 {
354c66ec88fSEmmanuel Vadot			compatible = "qcom,msm8994-apcs-kpss-global", "syscon";
355c66ec88fSEmmanuel Vadot			reg = <0xf900d000 0x2000>;
356c66ec88fSEmmanuel Vadot			#mbox-cells = <1>;
357c66ec88fSEmmanuel Vadot		};
358c66ec88fSEmmanuel Vadot
359d5b0e70fSEmmanuel Vadot		watchdog@f9017000 {
360d5b0e70fSEmmanuel Vadot			compatible = "qcom,apss-wdt-msm8994", "qcom,kpss-wdt";
361d5b0e70fSEmmanuel Vadot			reg = <0xf9017000 0x1000>;
362d5b0e70fSEmmanuel Vadot			interrupts = <GIC_SPI 3 IRQ_TYPE_EDGE_RISING>,
363d5b0e70fSEmmanuel Vadot				     <GIC_SPI 4 IRQ_TYPE_EDGE_RISING>;
364d5b0e70fSEmmanuel Vadot			clocks = <&sleep_clk>;
365d5b0e70fSEmmanuel Vadot			timeout-sec = <10>;
366d5b0e70fSEmmanuel Vadot		};
367d5b0e70fSEmmanuel Vadot
368c66ec88fSEmmanuel Vadot		timer@f9020000 {
369c66ec88fSEmmanuel Vadot			#address-cells = <1>;
370c66ec88fSEmmanuel Vadot			#size-cells = <1>;
371c66ec88fSEmmanuel Vadot			ranges;
372c66ec88fSEmmanuel Vadot			compatible = "arm,armv7-timer-mem";
373c66ec88fSEmmanuel Vadot			reg = <0xf9020000 0x1000>;
374c66ec88fSEmmanuel Vadot
375c66ec88fSEmmanuel Vadot			frame@f9021000 {
376c66ec88fSEmmanuel Vadot				frame-number = <0>;
377c66ec88fSEmmanuel Vadot				interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>,
378c66ec88fSEmmanuel Vadot					     <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>;
379c66ec88fSEmmanuel Vadot				reg = <0xf9021000 0x1000>,
380c66ec88fSEmmanuel Vadot				      <0xf9022000 0x1000>;
381c66ec88fSEmmanuel Vadot			};
382c66ec88fSEmmanuel Vadot
383c66ec88fSEmmanuel Vadot			frame@f9023000 {
384c66ec88fSEmmanuel Vadot				frame-number = <1>;
385c66ec88fSEmmanuel Vadot				interrupts = <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>;
386c66ec88fSEmmanuel Vadot				reg = <0xf9023000 0x1000>;
387c66ec88fSEmmanuel Vadot				status = "disabled";
388c66ec88fSEmmanuel Vadot			};
389c66ec88fSEmmanuel Vadot
390c66ec88fSEmmanuel Vadot			frame@f9024000 {
391c66ec88fSEmmanuel Vadot				frame-number = <2>;
392c66ec88fSEmmanuel Vadot				interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>;
393c66ec88fSEmmanuel Vadot				reg = <0xf9024000 0x1000>;
394c66ec88fSEmmanuel Vadot				status = "disabled";
395c66ec88fSEmmanuel Vadot			};
396c66ec88fSEmmanuel Vadot
397c66ec88fSEmmanuel Vadot			frame@f9025000 {
398c66ec88fSEmmanuel Vadot				frame-number = <3>;
399c66ec88fSEmmanuel Vadot				interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>;
400c66ec88fSEmmanuel Vadot				reg = <0xf9025000 0x1000>;
401c66ec88fSEmmanuel Vadot				status = "disabled";
402c66ec88fSEmmanuel Vadot			};
403c66ec88fSEmmanuel Vadot
404c66ec88fSEmmanuel Vadot			frame@f9026000 {
405c66ec88fSEmmanuel Vadot				frame-number = <4>;
406c66ec88fSEmmanuel Vadot				interrupts = <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>;
407c66ec88fSEmmanuel Vadot				reg = <0xf9026000 0x1000>;
408c66ec88fSEmmanuel Vadot				status = "disabled";
409c66ec88fSEmmanuel Vadot			};
410c66ec88fSEmmanuel Vadot
411c66ec88fSEmmanuel Vadot			frame@f9027000 {
412c66ec88fSEmmanuel Vadot				frame-number = <5>;
413c66ec88fSEmmanuel Vadot				interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>;
414c66ec88fSEmmanuel Vadot				reg = <0xf9027000 0x1000>;
415c66ec88fSEmmanuel Vadot				status = "disabled";
416c66ec88fSEmmanuel Vadot			};
417c66ec88fSEmmanuel Vadot
418c66ec88fSEmmanuel Vadot			frame@f9028000 {
419c66ec88fSEmmanuel Vadot				frame-number = <6>;
420c66ec88fSEmmanuel Vadot				interrupts = <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>;
421c66ec88fSEmmanuel Vadot				reg = <0xf9028000 0x1000>;
422c66ec88fSEmmanuel Vadot				status = "disabled";
423c66ec88fSEmmanuel Vadot			};
424c66ec88fSEmmanuel Vadot		};
425c66ec88fSEmmanuel Vadot
4265def4c47SEmmanuel Vadot		usb3: usb@f92f8800 {
427d5b0e70fSEmmanuel Vadot			compatible = "qcom,msm8994-dwc3", "qcom,dwc3";
4285def4c47SEmmanuel Vadot			reg = <0xf92f8800 0x400>;
4295def4c47SEmmanuel Vadot			#address-cells = <1>;
4305def4c47SEmmanuel Vadot			#size-cells = <1>;
4315def4c47SEmmanuel Vadot			ranges;
4325def4c47SEmmanuel Vadot
4335def4c47SEmmanuel Vadot			clocks = <&gcc GCC_USB30_MASTER_CLK>,
4345def4c47SEmmanuel Vadot				 <&gcc GCC_SYS_NOC_USB3_AXI_CLK>,
4355def4c47SEmmanuel Vadot				 <&gcc GCC_USB30_SLEEP_CLK>,
4365def4c47SEmmanuel Vadot				 <&gcc GCC_USB30_MOCK_UTMI_CLK>;
437d5b0e70fSEmmanuel Vadot			clock-names = "core",
438d5b0e70fSEmmanuel Vadot				      "iface",
439d5b0e70fSEmmanuel Vadot				      "sleep",
440d5b0e70fSEmmanuel Vadot				      "mock_utmi";
4415def4c47SEmmanuel Vadot
4425def4c47SEmmanuel Vadot			assigned-clocks = <&gcc GCC_USB30_MOCK_UTMI_CLK>,
4435def4c47SEmmanuel Vadot					  <&gcc GCC_USB30_MASTER_CLK>;
4445def4c47SEmmanuel Vadot			assigned-clock-rates = <19200000>, <120000000>;
4455def4c47SEmmanuel Vadot
4465def4c47SEmmanuel Vadot			power-domains = <&gcc USB30_GDSC>;
4475def4c47SEmmanuel Vadot			qcom,select-utmi-as-pipe-clk;
4485def4c47SEmmanuel Vadot
449354d7675SEmmanuel Vadot			usb@f9200000 {
4505def4c47SEmmanuel Vadot				compatible = "snps,dwc3";
4515def4c47SEmmanuel Vadot				reg = <0xf9200000 0xcc00>;
4525def4c47SEmmanuel Vadot				interrupts = <0 131 IRQ_TYPE_LEVEL_HIGH>;
4535def4c47SEmmanuel Vadot				snps,dis_u2_susphy_quirk;
4545def4c47SEmmanuel Vadot				snps,dis_enblslpm_quirk;
4555def4c47SEmmanuel Vadot				maximum-speed = "high-speed";
4565def4c47SEmmanuel Vadot				dr_mode = "peripheral";
4575def4c47SEmmanuel Vadot			};
4585def4c47SEmmanuel Vadot		};
4595def4c47SEmmanuel Vadot
460b97ee269SEmmanuel Vadot		sdhc1: mmc@f9824900 {
461c9ccf3a3SEmmanuel Vadot			compatible = "qcom,msm8994-sdhci", "qcom,sdhci-msm-v4";
462c66ec88fSEmmanuel Vadot			reg = <0xf9824900 0x1a0>, <0xf9824000 0x800>;
4637ef62cebSEmmanuel Vadot			reg-names = "hc", "core";
464c66ec88fSEmmanuel Vadot
465c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>,
466c66ec88fSEmmanuel Vadot				     <GIC_SPI 138 IRQ_TYPE_LEVEL_HIGH>;
467c66ec88fSEmmanuel Vadot			interrupt-names = "hc_irq", "pwr_irq";
468c66ec88fSEmmanuel Vadot
469b97ee269SEmmanuel Vadot			clocks = <&gcc GCC_SDCC1_AHB_CLK>,
470b97ee269SEmmanuel Vadot				 <&gcc GCC_SDCC1_APPS_CLK>,
471c66ec88fSEmmanuel Vadot				 <&xo_board>;
472b97ee269SEmmanuel Vadot			clock-names = "iface", "core", "xo";
473c66ec88fSEmmanuel Vadot
474c66ec88fSEmmanuel Vadot			pinctrl-names = "default", "sleep";
475c66ec88fSEmmanuel Vadot			pinctrl-0 = <&sdc1_clk_on &sdc1_cmd_on &sdc1_data_on &sdc1_rclk_on>;
476c66ec88fSEmmanuel Vadot			pinctrl-1 = <&sdc1_clk_off &sdc1_cmd_off &sdc1_data_off &sdc1_rclk_off>;
477c66ec88fSEmmanuel Vadot
478c66ec88fSEmmanuel Vadot			bus-width = <8>;
479c66ec88fSEmmanuel Vadot			non-removable;
480c66ec88fSEmmanuel Vadot			status = "disabled";
481c66ec88fSEmmanuel Vadot		};
482c66ec88fSEmmanuel Vadot
483b97ee269SEmmanuel Vadot		sdhc2: mmc@f98a4900 {
484c9ccf3a3SEmmanuel Vadot			compatible = "qcom,msm8994-sdhci", "qcom,sdhci-msm-v4";
4855def4c47SEmmanuel Vadot			reg = <0xf98a4900 0x11c>, <0xf98a4000 0x800>;
4867ef62cebSEmmanuel Vadot			reg-names = "hc", "core";
4875def4c47SEmmanuel Vadot
4885def4c47SEmmanuel Vadot			interrupts = <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>,
4895def4c47SEmmanuel Vadot				<GIC_SPI 221 IRQ_TYPE_LEVEL_HIGH>;
4905def4c47SEmmanuel Vadot			interrupt-names = "hc_irq", "pwr_irq";
4915def4c47SEmmanuel Vadot
492b97ee269SEmmanuel Vadot			clocks = <&gcc GCC_SDCC2_AHB_CLK>,
493b97ee269SEmmanuel Vadot				 <&gcc GCC_SDCC2_APPS_CLK>,
4945def4c47SEmmanuel Vadot				 <&xo_board>;
495b97ee269SEmmanuel Vadot			clock-names = "iface", "core", "xo";
4965def4c47SEmmanuel Vadot
4975def4c47SEmmanuel Vadot			pinctrl-names = "default", "sleep";
4985def4c47SEmmanuel Vadot			pinctrl-0 = <&sdc2_clk_on &sdc2_cmd_on &sdc2_data_on>;
4995def4c47SEmmanuel Vadot			pinctrl-1 = <&sdc2_clk_off &sdc2_cmd_off &sdc2_data_off>;
5005def4c47SEmmanuel Vadot
5017ef62cebSEmmanuel Vadot			cd-gpios = <&tlmm 100 GPIO_ACTIVE_HIGH>;
5025def4c47SEmmanuel Vadot			bus-width = <4>;
5035def4c47SEmmanuel Vadot			status = "disabled";
5045def4c47SEmmanuel Vadot		};
5055def4c47SEmmanuel Vadot
5065def4c47SEmmanuel Vadot		blsp1_dma: dma-controller@f9904000 {
507c66ec88fSEmmanuel Vadot			compatible = "qcom,bam-v1.7.0";
508c66ec88fSEmmanuel Vadot			reg = <0xf9904000 0x19000>;
509c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 238 IRQ_TYPE_LEVEL_HIGH>;
510c66ec88fSEmmanuel Vadot			clocks = <&gcc GCC_BLSP1_AHB_CLK>;
511c66ec88fSEmmanuel Vadot			clock-names = "bam_clk";
512c66ec88fSEmmanuel Vadot			#dma-cells = <1>;
513c66ec88fSEmmanuel Vadot			qcom,ee = <0>;
514c66ec88fSEmmanuel Vadot			qcom,controlled-remotely;
515d5b0e70fSEmmanuel Vadot			num-channels = <24>;
516c66ec88fSEmmanuel Vadot			qcom,num-ees = <4>;
517c66ec88fSEmmanuel Vadot		};
518c66ec88fSEmmanuel Vadot
519c66ec88fSEmmanuel Vadot		blsp1_uart2: serial@f991e000 {
520c66ec88fSEmmanuel Vadot			compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm";
521c66ec88fSEmmanuel Vadot			reg = <0xf991e000 0x1000>;
522c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>;
523c66ec88fSEmmanuel Vadot			clock-names = "core", "iface";
524c66ec88fSEmmanuel Vadot			clocks = <&gcc GCC_BLSP1_UART2_APPS_CLK>,
525c66ec88fSEmmanuel Vadot				 <&gcc GCC_BLSP1_AHB_CLK>;
526c66ec88fSEmmanuel Vadot			pinctrl-names = "default", "sleep";
527c66ec88fSEmmanuel Vadot			pinctrl-0 = <&blsp1_uart2_default>;
528c66ec88fSEmmanuel Vadot			pinctrl-1 = <&blsp1_uart2_sleep>;
529c66ec88fSEmmanuel Vadot			status = "disabled";
530c66ec88fSEmmanuel Vadot		};
531c66ec88fSEmmanuel Vadot
5325def4c47SEmmanuel Vadot		blsp1_i2c1: i2c@f9923000 {
533c66ec88fSEmmanuel Vadot			compatible = "qcom,i2c-qup-v2.2.1";
534c66ec88fSEmmanuel Vadot			reg = <0xf9923000 0x500>;
535c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>;
536d5b0e70fSEmmanuel Vadot			clocks = <&gcc GCC_BLSP1_QUP1_I2C_APPS_CLK>,
537d5b0e70fSEmmanuel Vadot				 <&gcc GCC_BLSP1_AHB_CLK>;
538d5b0e70fSEmmanuel Vadot			clock-names = "core", "iface";
539c66ec88fSEmmanuel Vadot			clock-frequency = <400000>;
5405def4c47SEmmanuel Vadot			dmas = <&blsp1_dma 12>, <&blsp1_dma 13>;
5415def4c47SEmmanuel Vadot			dma-names = "tx", "rx";
542c66ec88fSEmmanuel Vadot			pinctrl-names = "default", "sleep";
543c66ec88fSEmmanuel Vadot			pinctrl-0 = <&i2c1_default>;
544c66ec88fSEmmanuel Vadot			pinctrl-1 = <&i2c1_sleep>;
545c66ec88fSEmmanuel Vadot			#address-cells = <1>;
546c66ec88fSEmmanuel Vadot			#size-cells = <0>;
547c66ec88fSEmmanuel Vadot			status = "disabled";
548c66ec88fSEmmanuel Vadot		};
549c66ec88fSEmmanuel Vadot
5505def4c47SEmmanuel Vadot		blsp1_spi1: spi@f9923000 {
551c66ec88fSEmmanuel Vadot			compatible = "qcom,spi-qup-v2.2.1";
552c66ec88fSEmmanuel Vadot			reg = <0xf9923000 0x500>;
553c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>;
554c66ec88fSEmmanuel Vadot			clocks = <&gcc GCC_BLSP1_QUP1_SPI_APPS_CLK>,
555c66ec88fSEmmanuel Vadot				 <&gcc GCC_BLSP1_AHB_CLK>;
556c66ec88fSEmmanuel Vadot			clock-names = "core", "iface";
557c66ec88fSEmmanuel Vadot			dmas = <&blsp1_dma 12>, <&blsp1_dma 13>;
558c66ec88fSEmmanuel Vadot			dma-names = "tx", "rx";
559c66ec88fSEmmanuel Vadot			pinctrl-names = "default", "sleep";
5605def4c47SEmmanuel Vadot			pinctrl-0 = <&blsp1_spi1_default>;
5615def4c47SEmmanuel Vadot			pinctrl-1 = <&blsp1_spi1_sleep>;
562c66ec88fSEmmanuel Vadot			#address-cells = <1>;
563c66ec88fSEmmanuel Vadot			#size-cells = <0>;
564c66ec88fSEmmanuel Vadot			status = "disabled";
565c66ec88fSEmmanuel Vadot		};
566c66ec88fSEmmanuel Vadot
5675def4c47SEmmanuel Vadot		blsp1_i2c2: i2c@f9924000 {
568c66ec88fSEmmanuel Vadot			compatible = "qcom,i2c-qup-v2.2.1";
569c66ec88fSEmmanuel Vadot			reg = <0xf9924000 0x500>;
570c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>;
571d5b0e70fSEmmanuel Vadot			clocks = <&gcc GCC_BLSP1_QUP2_I2C_APPS_CLK>,
572d5b0e70fSEmmanuel Vadot				 <&gcc GCC_BLSP1_AHB_CLK>;
573d5b0e70fSEmmanuel Vadot			clock-names = "core", "iface";
5745def4c47SEmmanuel Vadot			clock-frequency = <400000>;
575c66ec88fSEmmanuel Vadot			dmas = <&blsp1_dma 14>, <&blsp1_dma 15>;
576c66ec88fSEmmanuel Vadot			dma-names = "tx", "rx";
577c66ec88fSEmmanuel Vadot			pinctrl-names = "default", "sleep";
578c66ec88fSEmmanuel Vadot			pinctrl-0 = <&i2c2_default>;
579c66ec88fSEmmanuel Vadot			pinctrl-1 = <&i2c2_sleep>;
580c66ec88fSEmmanuel Vadot			#address-cells = <1>;
581c66ec88fSEmmanuel Vadot			#size-cells = <0>;
582c66ec88fSEmmanuel Vadot			status = "disabled";
583c66ec88fSEmmanuel Vadot		};
584c66ec88fSEmmanuel Vadot
585c66ec88fSEmmanuel Vadot		/* I2C3 doesn't exist */
586c66ec88fSEmmanuel Vadot
5875def4c47SEmmanuel Vadot		blsp1_i2c4: i2c@f9926000 {
588c66ec88fSEmmanuel Vadot			compatible = "qcom,i2c-qup-v2.2.1";
589c66ec88fSEmmanuel Vadot			reg = <0xf9926000 0x500>;
590c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>;
591d5b0e70fSEmmanuel Vadot			clocks = <&gcc GCC_BLSP1_QUP4_I2C_APPS_CLK>,
592d5b0e70fSEmmanuel Vadot				 <&gcc GCC_BLSP1_AHB_CLK>;
593d5b0e70fSEmmanuel Vadot			clock-names = "core", "iface";
5945def4c47SEmmanuel Vadot			clock-frequency = <400000>;
5955def4c47SEmmanuel Vadot			dmas = <&blsp1_dma 18>, <&blsp1_dma 19>;
5965def4c47SEmmanuel Vadot			dma-names = "tx", "rx";
597c66ec88fSEmmanuel Vadot			pinctrl-names = "default", "sleep";
598c66ec88fSEmmanuel Vadot			pinctrl-0 = <&i2c4_default>;
599c66ec88fSEmmanuel Vadot			pinctrl-1 = <&i2c4_sleep>;
600c66ec88fSEmmanuel Vadot			#address-cells = <1>;
601c66ec88fSEmmanuel Vadot			#size-cells = <0>;
602c66ec88fSEmmanuel Vadot			status = "disabled";
603c66ec88fSEmmanuel Vadot		};
604c66ec88fSEmmanuel Vadot
6055def4c47SEmmanuel Vadot		blsp1_i2c5: i2c@f9927000 {
6065def4c47SEmmanuel Vadot			compatible = "qcom,i2c-qup-v2.2.1";
6075def4c47SEmmanuel Vadot			reg = <0xf9927000 0x500>;
6085def4c47SEmmanuel Vadot			interrupts = <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>;
609d5b0e70fSEmmanuel Vadot			clocks = <&gcc GCC_BLSP1_QUP5_I2C_APPS_CLK>,
610d5b0e70fSEmmanuel Vadot				 <&gcc GCC_BLSP1_AHB_CLK>;
611d5b0e70fSEmmanuel Vadot			clock-names = "core", "iface";
6125def4c47SEmmanuel Vadot			clock-frequency = <400000>;
6135def4c47SEmmanuel Vadot			dmas = <&blsp2_dma 20>, <&blsp2_dma 21>;
6145def4c47SEmmanuel Vadot			dma-names = "tx", "rx";
6155def4c47SEmmanuel Vadot			pinctrl-names = "default", "sleep";
6165def4c47SEmmanuel Vadot			pinctrl-0 = <&i2c5_default>;
6175def4c47SEmmanuel Vadot			pinctrl-1 = <&i2c5_sleep>;
6185def4c47SEmmanuel Vadot			#address-cells = <1>;
6195def4c47SEmmanuel Vadot			#size-cells = <0>;
6205def4c47SEmmanuel Vadot			status = "disabled";
6215def4c47SEmmanuel Vadot		};
6225def4c47SEmmanuel Vadot
6235def4c47SEmmanuel Vadot		blsp1_i2c6: i2c@f9928000 {
6245def4c47SEmmanuel Vadot			compatible = "qcom,i2c-qup-v2.2.1";
6255def4c47SEmmanuel Vadot			reg = <0xf9928000 0x500>;
6265def4c47SEmmanuel Vadot			interrupts = <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>;
627d5b0e70fSEmmanuel Vadot			clocks = <&gcc GCC_BLSP1_QUP6_I2C_APPS_CLK>,
628d5b0e70fSEmmanuel Vadot				 <&gcc GCC_BLSP1_AHB_CLK>;
629d5b0e70fSEmmanuel Vadot			clock-names = "core", "iface";
6305def4c47SEmmanuel Vadot			clock-frequency = <400000>;
6315def4c47SEmmanuel Vadot			dmas = <&blsp1_dma 22>, <&blsp1_dma 23>;
6325def4c47SEmmanuel Vadot			dma-names = "tx", "rx";
6335def4c47SEmmanuel Vadot			pinctrl-names = "default", "sleep";
6345def4c47SEmmanuel Vadot			pinctrl-0 = <&i2c6_default>;
6355def4c47SEmmanuel Vadot			pinctrl-1 = <&i2c6_sleep>;
6365def4c47SEmmanuel Vadot			#address-cells = <1>;
6375def4c47SEmmanuel Vadot			#size-cells = <0>;
6385def4c47SEmmanuel Vadot			status = "disabled";
6395def4c47SEmmanuel Vadot		};
6405def4c47SEmmanuel Vadot
6415def4c47SEmmanuel Vadot		blsp2_dma: dma-controller@f9944000 {
642c66ec88fSEmmanuel Vadot			compatible = "qcom,bam-v1.7.0";
643c66ec88fSEmmanuel Vadot			reg = <0xf9944000 0x19000>;
644c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 239 IRQ_TYPE_LEVEL_HIGH>;
645c66ec88fSEmmanuel Vadot			clocks = <&gcc GCC_BLSP2_AHB_CLK>;
646c66ec88fSEmmanuel Vadot			clock-names = "bam_clk";
647c66ec88fSEmmanuel Vadot			#dma-cells = <1>;
648c66ec88fSEmmanuel Vadot			qcom,ee = <0>;
649c66ec88fSEmmanuel Vadot			qcom,controlled-remotely;
650d5b0e70fSEmmanuel Vadot			num-channels = <24>;
651c66ec88fSEmmanuel Vadot			qcom,num-ees = <4>;
652c66ec88fSEmmanuel Vadot		};
653c66ec88fSEmmanuel Vadot
654c66ec88fSEmmanuel Vadot		blsp2_uart2: serial@f995e000 {
655c66ec88fSEmmanuel Vadot			compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm";
656c66ec88fSEmmanuel Vadot			reg = <0xf995e000 0x1000>;
6575def4c47SEmmanuel Vadot			interrupts = <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>;
658c66ec88fSEmmanuel Vadot			clock-names = "core", "iface";
659c66ec88fSEmmanuel Vadot			clocks = <&gcc GCC_BLSP2_UART2_APPS_CLK>,
660c66ec88fSEmmanuel Vadot					<&gcc GCC_BLSP2_AHB_CLK>;
661c66ec88fSEmmanuel Vadot			dmas = <&blsp2_dma 2>, <&blsp2_dma 3>;
662c66ec88fSEmmanuel Vadot			dma-names = "tx", "rx";
663c66ec88fSEmmanuel Vadot			pinctrl-names = "default", "sleep";
664c66ec88fSEmmanuel Vadot			pinctrl-0 = <&blsp2_uart2_default>;
665c66ec88fSEmmanuel Vadot			pinctrl-1 = <&blsp2_uart2_sleep>;
666c66ec88fSEmmanuel Vadot			status = "disabled";
667c66ec88fSEmmanuel Vadot		};
668c66ec88fSEmmanuel Vadot
6695def4c47SEmmanuel Vadot		blsp2_i2c1: i2c@f9963000 {
6705def4c47SEmmanuel Vadot			compatible = "qcom,i2c-qup-v2.2.1";
6715def4c47SEmmanuel Vadot			reg = <0xf9963000 0x500>;
6725def4c47SEmmanuel Vadot			interrupts = <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>;
673d5b0e70fSEmmanuel Vadot			clocks = <&gcc GCC_BLSP2_QUP1_I2C_APPS_CLK>,
674d5b0e70fSEmmanuel Vadot				 <&gcc GCC_BLSP2_AHB_CLK>;
675d5b0e70fSEmmanuel Vadot			clock-names = "core", "iface";
6765def4c47SEmmanuel Vadot			clock-frequency = <400000>;
6775def4c47SEmmanuel Vadot			dmas = <&blsp2_dma 12>, <&blsp2_dma 13>;
6785def4c47SEmmanuel Vadot			dma-names = "tx", "rx";
6795def4c47SEmmanuel Vadot			pinctrl-names = "default", "sleep";
6805def4c47SEmmanuel Vadot			pinctrl-0 = <&i2c7_default>;
6815def4c47SEmmanuel Vadot			pinctrl-1 = <&i2c7_sleep>;
6825def4c47SEmmanuel Vadot			#address-cells = <1>;
6835def4c47SEmmanuel Vadot			#size-cells = <0>;
6845def4c47SEmmanuel Vadot			status = "disabled";
6855def4c47SEmmanuel Vadot		};
6865def4c47SEmmanuel Vadot
6875def4c47SEmmanuel Vadot		blsp2_spi4: spi@f9966000 {
6885def4c47SEmmanuel Vadot			compatible = "qcom,spi-qup-v2.2.1";
6895def4c47SEmmanuel Vadot			reg = <0xf9966000 0x500>;
6905def4c47SEmmanuel Vadot			interrupts = <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>;
6915def4c47SEmmanuel Vadot			clocks = <&gcc GCC_BLSP2_QUP4_SPI_APPS_CLK>,
6925def4c47SEmmanuel Vadot				 <&gcc GCC_BLSP2_AHB_CLK>;
6935def4c47SEmmanuel Vadot			clock-names = "core", "iface";
6945def4c47SEmmanuel Vadot			dmas = <&blsp2_dma 18>, <&blsp2_dma 19>;
6955def4c47SEmmanuel Vadot			dma-names = "tx", "rx";
6965def4c47SEmmanuel Vadot			pinctrl-names = "default", "sleep";
6975def4c47SEmmanuel Vadot			pinctrl-0 = <&blsp2_spi10_default>;
6985def4c47SEmmanuel Vadot			pinctrl-1 = <&blsp2_spi10_sleep>;
6995def4c47SEmmanuel Vadot			#address-cells = <1>;
7005def4c47SEmmanuel Vadot			#size-cells = <0>;
7015def4c47SEmmanuel Vadot			status = "disabled";
7025def4c47SEmmanuel Vadot		};
7035def4c47SEmmanuel Vadot
7045def4c47SEmmanuel Vadot		blsp2_i2c5: i2c@f9967000 {
705c66ec88fSEmmanuel Vadot			compatible = "qcom,i2c-qup-v2.2.1";
706c66ec88fSEmmanuel Vadot			reg = <0xf9967000 0x500>;
707c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>;
708d5b0e70fSEmmanuel Vadot			clocks = <&gcc GCC_BLSP2_QUP5_I2C_APPS_CLK>,
709d5b0e70fSEmmanuel Vadot				 <&gcc GCC_BLSP2_AHB_CLK>;
710d5b0e70fSEmmanuel Vadot			clock-names = "core", "iface";
711c66ec88fSEmmanuel Vadot			clock-frequency = <355000>;
712c66ec88fSEmmanuel Vadot			dmas = <&blsp2_dma 20>, <&blsp2_dma 21>;
713c66ec88fSEmmanuel Vadot			dma-names = "tx", "rx";
714c66ec88fSEmmanuel Vadot			pinctrl-names = "default", "sleep";
7155def4c47SEmmanuel Vadot			pinctrl-0 = <&i2c11_default>;
7165def4c47SEmmanuel Vadot			pinctrl-1 = <&i2c11_sleep>;
717c66ec88fSEmmanuel Vadot			#address-cells = <1>;
718c66ec88fSEmmanuel Vadot			#size-cells = <0>;
719c66ec88fSEmmanuel Vadot			status = "disabled";
720c66ec88fSEmmanuel Vadot		};
721c66ec88fSEmmanuel Vadot
722c66ec88fSEmmanuel Vadot		gcc: clock-controller@fc400000 {
723c66ec88fSEmmanuel Vadot			compatible = "qcom,gcc-msm8994";
724c66ec88fSEmmanuel Vadot			#clock-cells = <1>;
725c66ec88fSEmmanuel Vadot			#reset-cells = <1>;
726c66ec88fSEmmanuel Vadot			#power-domain-cells = <1>;
727c66ec88fSEmmanuel Vadot			reg = <0xfc400000 0x2000>;
728c9ccf3a3SEmmanuel Vadot
729d5b0e70fSEmmanuel Vadot			clock-names = "xo", "sleep";
730c9ccf3a3SEmmanuel Vadot			clocks = <&xo_board>, <&sleep_clk>;
731c66ec88fSEmmanuel Vadot		};
732c66ec88fSEmmanuel Vadot
7338cc087a1SEmmanuel Vadot		rpm_msg_ram: sram@fc428000 {
734c66ec88fSEmmanuel Vadot			compatible = "qcom,rpm-msg-ram";
735c66ec88fSEmmanuel Vadot			reg = <0xfc428000 0x4000>;
736c66ec88fSEmmanuel Vadot		};
737c66ec88fSEmmanuel Vadot
738c66ec88fSEmmanuel Vadot		restart@fc4ab000 {
739c66ec88fSEmmanuel Vadot			compatible = "qcom,pshold";
740c66ec88fSEmmanuel Vadot			reg = <0xfc4ab000 0x4>;
741c66ec88fSEmmanuel Vadot		};
742c66ec88fSEmmanuel Vadot
743c66ec88fSEmmanuel Vadot		spmi_bus: spmi@fc4c0000 {
744c66ec88fSEmmanuel Vadot			compatible = "qcom,spmi-pmic-arb";
745c66ec88fSEmmanuel Vadot			reg = <0xfc4cf000 0x1000>,
746c66ec88fSEmmanuel Vadot			      <0xfc4cb000 0x1000>,
747c66ec88fSEmmanuel Vadot			      <0xfc4ca000 0x1000>;
748c66ec88fSEmmanuel Vadot			reg-names = "core", "intr", "cnfg";
749c66ec88fSEmmanuel Vadot			interrupt-names = "periph_irq";
750c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 190 IRQ_TYPE_LEVEL_HIGH>;
751c66ec88fSEmmanuel Vadot			qcom,ee = <0>;
752c66ec88fSEmmanuel Vadot			qcom,channel = <0>;
753c66ec88fSEmmanuel Vadot			#address-cells = <2>;
754c66ec88fSEmmanuel Vadot			#size-cells = <0>;
755c66ec88fSEmmanuel Vadot			interrupt-controller;
756c66ec88fSEmmanuel Vadot			#interrupt-cells = <4>;
757c66ec88fSEmmanuel Vadot		};
758c66ec88fSEmmanuel Vadot
7597ef62cebSEmmanuel Vadot		tcsr_mutex: hwlock@fd484000 {
7607ef62cebSEmmanuel Vadot			compatible = "qcom,msm8994-tcsr-mutex", "qcom,tcsr-mutex";
7617ef62cebSEmmanuel Vadot			reg = <0xfd484000 0x1000>;
7627ef62cebSEmmanuel Vadot			#hwlock-cells = <1>;
763c66ec88fSEmmanuel Vadot		};
764c66ec88fSEmmanuel Vadot
765c66ec88fSEmmanuel Vadot		tlmm: pinctrl@fd510000 {
766c66ec88fSEmmanuel Vadot			compatible = "qcom,msm8994-pinctrl";
767c66ec88fSEmmanuel Vadot			reg = <0xfd510000 0x4000>;
768c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>;
769c66ec88fSEmmanuel Vadot			gpio-controller;
770c66ec88fSEmmanuel Vadot			gpio-ranges = <&tlmm 0 0 146>;
771c66ec88fSEmmanuel Vadot			#gpio-cells = <2>;
772c66ec88fSEmmanuel Vadot			interrupt-controller;
773c66ec88fSEmmanuel Vadot			#interrupt-cells = <2>;
774c66ec88fSEmmanuel Vadot
775*8bab661aSEmmanuel Vadot			blsp1_uart2_default: blsp1-uart2-default-state {
776c66ec88fSEmmanuel Vadot				pins = "gpio4", "gpio5";
777*8bab661aSEmmanuel Vadot				function = "blsp_uart2";
778c66ec88fSEmmanuel Vadot				drive-strength = <16>;
779c66ec88fSEmmanuel Vadot				bias-disable;
780c66ec88fSEmmanuel Vadot			};
781c66ec88fSEmmanuel Vadot
782*8bab661aSEmmanuel Vadot			blsp1_uart2_sleep: blsp1-uart2-sleep-state {
783c66ec88fSEmmanuel Vadot				pins = "gpio4", "gpio5";
784*8bab661aSEmmanuel Vadot				function = "gpio";
785c66ec88fSEmmanuel Vadot				drive-strength = <2>;
786c66ec88fSEmmanuel Vadot				bias-pull-down;
787c66ec88fSEmmanuel Vadot			};
788c66ec88fSEmmanuel Vadot
789*8bab661aSEmmanuel Vadot			blsp2_uart2_default: blsp2-uart2-default-state {
790*8bab661aSEmmanuel Vadot				pins = "gpio45", "gpio46", "gpio47", "gpio48";
791c66ec88fSEmmanuel Vadot				function = "blsp_uart8";
7925def4c47SEmmanuel Vadot				drive-strength = <16>;
793c66ec88fSEmmanuel Vadot				bias-disable;
794c66ec88fSEmmanuel Vadot			};
795c66ec88fSEmmanuel Vadot
796*8bab661aSEmmanuel Vadot			blsp2_uart2_sleep: blsp2-uart2-sleep-state {
797*8bab661aSEmmanuel Vadot				pins = "gpio45", "gpio46", "gpio47", "gpio48";
798c66ec88fSEmmanuel Vadot				function = "gpio";
799c66ec88fSEmmanuel Vadot				drive-strength = <2>;
8005def4c47SEmmanuel Vadot				bias-disable;
801c66ec88fSEmmanuel Vadot			};
802c66ec88fSEmmanuel Vadot
803*8bab661aSEmmanuel Vadot			i2c1_default: i2c1-default-state {
804*8bab661aSEmmanuel Vadot				pins = "gpio2", "gpio3";
805c66ec88fSEmmanuel Vadot				function = "blsp_i2c1";
806c66ec88fSEmmanuel Vadot				drive-strength = <2>;
807c66ec88fSEmmanuel Vadot				bias-disable;
808c66ec88fSEmmanuel Vadot			};
809c66ec88fSEmmanuel Vadot
810*8bab661aSEmmanuel Vadot			i2c1_sleep: i2c1-sleep-state {
811*8bab661aSEmmanuel Vadot				pins = "gpio2", "gpio3";
812c66ec88fSEmmanuel Vadot				function = "gpio";
813c66ec88fSEmmanuel Vadot				drive-strength = <2>;
814c66ec88fSEmmanuel Vadot				bias-disable;
815c66ec88fSEmmanuel Vadot			};
816c66ec88fSEmmanuel Vadot
817*8bab661aSEmmanuel Vadot			i2c2_default: i2c2-default-state {
818*8bab661aSEmmanuel Vadot				pins = "gpio6", "gpio7";
819c66ec88fSEmmanuel Vadot				function = "blsp_i2c2";
820c66ec88fSEmmanuel Vadot				drive-strength = <2>;
821c66ec88fSEmmanuel Vadot				bias-disable;
822c66ec88fSEmmanuel Vadot			};
823c66ec88fSEmmanuel Vadot
824*8bab661aSEmmanuel Vadot			i2c2_sleep: i2c2-sleep-state {
825*8bab661aSEmmanuel Vadot				pins = "gpio6", "gpio7";
826c66ec88fSEmmanuel Vadot				function = "gpio";
827c66ec88fSEmmanuel Vadot				drive-strength = <2>;
828c66ec88fSEmmanuel Vadot				bias-disable;
829c66ec88fSEmmanuel Vadot			};
830c66ec88fSEmmanuel Vadot
831*8bab661aSEmmanuel Vadot			i2c4_default: i2c4-default-state {
832*8bab661aSEmmanuel Vadot				pins = "gpio19", "gpio20";
833c66ec88fSEmmanuel Vadot				function = "blsp_i2c4";
834c66ec88fSEmmanuel Vadot				drive-strength = <2>;
835c66ec88fSEmmanuel Vadot				bias-disable;
836c66ec88fSEmmanuel Vadot			};
837c66ec88fSEmmanuel Vadot
838*8bab661aSEmmanuel Vadot			i2c4_sleep: i2c4-sleep-state {
839c66ec88fSEmmanuel Vadot				pins = "gpio19", "gpio20";
840*8bab661aSEmmanuel Vadot				function = "gpio";
841c66ec88fSEmmanuel Vadot				drive-strength = <2>;
842c66ec88fSEmmanuel Vadot				bias-pull-down;
843c66ec88fSEmmanuel Vadot				input-enable;
844c66ec88fSEmmanuel Vadot			};
845c66ec88fSEmmanuel Vadot
846*8bab661aSEmmanuel Vadot			i2c5_default: i2c5-default-state {
847*8bab661aSEmmanuel Vadot				pins = "gpio23", "gpio24";
848c66ec88fSEmmanuel Vadot				function = "blsp_i2c5";
849c66ec88fSEmmanuel Vadot				drive-strength = <2>;
850c66ec88fSEmmanuel Vadot				bias-disable;
851c66ec88fSEmmanuel Vadot			};
852c66ec88fSEmmanuel Vadot
853*8bab661aSEmmanuel Vadot			i2c5_sleep: i2c5-sleep-state {
854*8bab661aSEmmanuel Vadot				pins = "gpio23", "gpio24";
855c66ec88fSEmmanuel Vadot				function = "gpio";
856c66ec88fSEmmanuel Vadot				drive-strength = <2>;
857c66ec88fSEmmanuel Vadot				bias-disable;
858c66ec88fSEmmanuel Vadot			};
859c66ec88fSEmmanuel Vadot
860*8bab661aSEmmanuel Vadot			i2c6_default: i2c6-default-state {
861*8bab661aSEmmanuel Vadot				pins = "gpio28", "gpio27";
862c66ec88fSEmmanuel Vadot				function = "blsp_i2c6";
863c66ec88fSEmmanuel Vadot				drive-strength = <2>;
864c66ec88fSEmmanuel Vadot				bias-disable;
865c66ec88fSEmmanuel Vadot			};
866c66ec88fSEmmanuel Vadot
867*8bab661aSEmmanuel Vadot			i2c6_sleep: i2c6-sleep-state {
868*8bab661aSEmmanuel Vadot				pins = "gpio28", "gpio27";
869c66ec88fSEmmanuel Vadot				function = "gpio";
870c66ec88fSEmmanuel Vadot				drive-strength = <2>;
871c66ec88fSEmmanuel Vadot				bias-disable;
872c66ec88fSEmmanuel Vadot			};
873c66ec88fSEmmanuel Vadot
874*8bab661aSEmmanuel Vadot			i2c7_default: i2c7-default-state {
875*8bab661aSEmmanuel Vadot				pins = "gpio44", "gpio43";
8765def4c47SEmmanuel Vadot				function = "blsp_i2c7";
8775def4c47SEmmanuel Vadot				drive-strength = <2>;
8785def4c47SEmmanuel Vadot				bias-disable;
8795def4c47SEmmanuel Vadot			};
8805def4c47SEmmanuel Vadot
881*8bab661aSEmmanuel Vadot			i2c7_sleep: i2c7-sleep-state {
882*8bab661aSEmmanuel Vadot				pins = "gpio44", "gpio43";
8835def4c47SEmmanuel Vadot				function = "gpio";
8845def4c47SEmmanuel Vadot				drive-strength = <2>;
8855def4c47SEmmanuel Vadot				bias-disable;
8865def4c47SEmmanuel Vadot			};
8875def4c47SEmmanuel Vadot
888*8bab661aSEmmanuel Vadot			blsp2_spi10_default: blsp2-spi10-default-state {
889*8bab661aSEmmanuel Vadot				default-pins {
890*8bab661aSEmmanuel Vadot					pins = "gpio53", "gpio54", "gpio55";
8915def4c47SEmmanuel Vadot					function = "blsp_spi10";
8925def4c47SEmmanuel Vadot					drive-strength = <10>;
8935def4c47SEmmanuel Vadot					bias-pull-down;
8945def4c47SEmmanuel Vadot				};
895*8bab661aSEmmanuel Vadot
896*8bab661aSEmmanuel Vadot				cs-pins {
897*8bab661aSEmmanuel Vadot					pins = "gpio67";
8985def4c47SEmmanuel Vadot					function = "gpio";
8995def4c47SEmmanuel Vadot					drive-strength = <2>;
9005def4c47SEmmanuel Vadot					bias-disable;
9015def4c47SEmmanuel Vadot				};
9025def4c47SEmmanuel Vadot			};
9035def4c47SEmmanuel Vadot
904*8bab661aSEmmanuel Vadot			blsp2_spi10_sleep: blsp2-spi10-sleep-state {
9055def4c47SEmmanuel Vadot				pins = "gpio53", "gpio54", "gpio55";
906*8bab661aSEmmanuel Vadot				function = "gpio";
9075def4c47SEmmanuel Vadot				drive-strength = <2>;
9085def4c47SEmmanuel Vadot				bias-disable;
9095def4c47SEmmanuel Vadot			};
9105def4c47SEmmanuel Vadot
911*8bab661aSEmmanuel Vadot			i2c11_default: i2c11-default-state {
912*8bab661aSEmmanuel Vadot				pins = "gpio83", "gpio84";
9135def4c47SEmmanuel Vadot				function = "blsp_i2c11";
9145def4c47SEmmanuel Vadot				drive-strength = <2>;
9155def4c47SEmmanuel Vadot				bias-disable;
9165def4c47SEmmanuel Vadot			};
9175def4c47SEmmanuel Vadot
918*8bab661aSEmmanuel Vadot			i2c11_sleep: i2c11-sleep-state {
919*8bab661aSEmmanuel Vadot				pins = "gpio83", "gpio84";
9205def4c47SEmmanuel Vadot				function = "gpio";
9215def4c47SEmmanuel Vadot				drive-strength = <2>;
9225def4c47SEmmanuel Vadot				bias-disable;
9235def4c47SEmmanuel Vadot			};
9245def4c47SEmmanuel Vadot
925*8bab661aSEmmanuel Vadot			blsp1_spi1_default: blsp1-spi1-default-state {
926*8bab661aSEmmanuel Vadot				default-pins {
927c66ec88fSEmmanuel Vadot					pins = "gpio0", "gpio1", "gpio3";
928*8bab661aSEmmanuel Vadot					function = "blsp_spi1";
929c66ec88fSEmmanuel Vadot					drive-strength = <10>;
930c66ec88fSEmmanuel Vadot					bias-pull-down;
931c66ec88fSEmmanuel Vadot				};
932*8bab661aSEmmanuel Vadot
933*8bab661aSEmmanuel Vadot				cs-pins {
934c66ec88fSEmmanuel Vadot					pins = "gpio8";
935*8bab661aSEmmanuel Vadot					function = "gpio";
936c66ec88fSEmmanuel Vadot					drive-strength = <2>;
937c66ec88fSEmmanuel Vadot					bias-disable;
938c66ec88fSEmmanuel Vadot				};
939c66ec88fSEmmanuel Vadot			};
940c66ec88fSEmmanuel Vadot
941*8bab661aSEmmanuel Vadot			blsp1_spi1_sleep: blsp1-spi1-sleep-state {
942c66ec88fSEmmanuel Vadot				pins = "gpio0", "gpio1", "gpio3";
943*8bab661aSEmmanuel Vadot				function = "gpio";
944c66ec88fSEmmanuel Vadot				drive-strength = <2>;
945c66ec88fSEmmanuel Vadot				bias-disable;
946c66ec88fSEmmanuel Vadot			};
947c66ec88fSEmmanuel Vadot
948*8bab661aSEmmanuel Vadot			sdc1_clk_on: clk-on-state {
949c66ec88fSEmmanuel Vadot				pins = "sdc1_clk";
950c66ec88fSEmmanuel Vadot				bias-disable;
951c66ec88fSEmmanuel Vadot				drive-strength = <16>;
952c66ec88fSEmmanuel Vadot			};
953c66ec88fSEmmanuel Vadot
954*8bab661aSEmmanuel Vadot			sdc1_clk_off: clk-off-state {
955c66ec88fSEmmanuel Vadot				pins = "sdc1_clk";
956c66ec88fSEmmanuel Vadot				bias-disable;
957c66ec88fSEmmanuel Vadot				drive-strength = <2>;
958c66ec88fSEmmanuel Vadot			};
959c66ec88fSEmmanuel Vadot
960*8bab661aSEmmanuel Vadot			sdc1_cmd_on: cmd-on-state {
961c66ec88fSEmmanuel Vadot				pins = "sdc1_cmd";
962c66ec88fSEmmanuel Vadot				bias-pull-up;
963c66ec88fSEmmanuel Vadot				drive-strength = <8>;
964c66ec88fSEmmanuel Vadot			};
965c66ec88fSEmmanuel Vadot
966*8bab661aSEmmanuel Vadot			sdc1_cmd_off: cmd-off-state {
967c66ec88fSEmmanuel Vadot				pins = "sdc1_cmd";
968c66ec88fSEmmanuel Vadot				bias-pull-up;
969c66ec88fSEmmanuel Vadot				drive-strength = <2>;
970c66ec88fSEmmanuel Vadot			};
971c66ec88fSEmmanuel Vadot
972*8bab661aSEmmanuel Vadot			sdc1_data_on: data-on-state {
973c66ec88fSEmmanuel Vadot				pins = "sdc1_data";
974c66ec88fSEmmanuel Vadot				bias-pull-up;
975c66ec88fSEmmanuel Vadot				drive-strength = <8>;
976c66ec88fSEmmanuel Vadot			};
977c66ec88fSEmmanuel Vadot
978*8bab661aSEmmanuel Vadot			sdc1_data_off: data-off-state {
979c66ec88fSEmmanuel Vadot				pins = "sdc1_data";
980c66ec88fSEmmanuel Vadot				bias-pull-up;
981c66ec88fSEmmanuel Vadot				drive-strength = <2>;
982c66ec88fSEmmanuel Vadot			};
983c66ec88fSEmmanuel Vadot
984*8bab661aSEmmanuel Vadot			sdc1_rclk_on: rclk-on-state {
985c66ec88fSEmmanuel Vadot				pins = "sdc1_rclk";
986c66ec88fSEmmanuel Vadot				bias-pull-down;
987c66ec88fSEmmanuel Vadot			};
988c66ec88fSEmmanuel Vadot
989*8bab661aSEmmanuel Vadot			sdc1_rclk_off: rclk-off-state {
990c66ec88fSEmmanuel Vadot				pins = "sdc1_rclk";
991c66ec88fSEmmanuel Vadot				bias-pull-down;
992c66ec88fSEmmanuel Vadot			};
9935def4c47SEmmanuel Vadot
994*8bab661aSEmmanuel Vadot			sdc2_clk_on: sdc2-clk-on-state {
9955def4c47SEmmanuel Vadot				pins = "sdc2_clk";
9965def4c47SEmmanuel Vadot				bias-disable;
9975def4c47SEmmanuel Vadot				drive-strength = <10>;
9985def4c47SEmmanuel Vadot			};
9995def4c47SEmmanuel Vadot
1000*8bab661aSEmmanuel Vadot			sdc2_clk_off: sdc2-clk-off-state {
10015def4c47SEmmanuel Vadot				pins = "sdc2_clk";
10025def4c47SEmmanuel Vadot				bias-disable;
10035def4c47SEmmanuel Vadot				drive-strength = <2>;
10045def4c47SEmmanuel Vadot			};
10055def4c47SEmmanuel Vadot
1006*8bab661aSEmmanuel Vadot			sdc2_cmd_on: sdc2-cmd-on-state {
10075def4c47SEmmanuel Vadot				pins = "sdc2_cmd";
10085def4c47SEmmanuel Vadot				bias-pull-up;
10095def4c47SEmmanuel Vadot				drive-strength = <10>;
10105def4c47SEmmanuel Vadot			};
10115def4c47SEmmanuel Vadot
1012*8bab661aSEmmanuel Vadot			sdc2_cmd_off: sdc2-cmd-off-state {
10135def4c47SEmmanuel Vadot				pins = "sdc2_cmd";
10145def4c47SEmmanuel Vadot				bias-pull-up;
10155def4c47SEmmanuel Vadot				drive-strength = <2>;
10165def4c47SEmmanuel Vadot			};
10175def4c47SEmmanuel Vadot
1018*8bab661aSEmmanuel Vadot			sdc2_data_on: sdc2-data-on-state {
10195def4c47SEmmanuel Vadot				pins = "sdc2_data";
10205def4c47SEmmanuel Vadot				bias-pull-up;
10215def4c47SEmmanuel Vadot				drive-strength = <10>;
10225def4c47SEmmanuel Vadot			};
10235def4c47SEmmanuel Vadot
1024*8bab661aSEmmanuel Vadot			sdc2_data_off: sdc2-data-off-state {
10255def4c47SEmmanuel Vadot				pins = "sdc2_data";
10265def4c47SEmmanuel Vadot				bias-pull-up;
10275def4c47SEmmanuel Vadot				drive-strength = <2>;
10285def4c47SEmmanuel Vadot			};
1029c66ec88fSEmmanuel Vadot		};
1030d5b0e70fSEmmanuel Vadot
1031d5b0e70fSEmmanuel Vadot		mmcc: clock-controller@fd8c0000 {
1032d5b0e70fSEmmanuel Vadot			compatible = "qcom,mmcc-msm8994";
1033d5b0e70fSEmmanuel Vadot			reg = <0xfd8c0000 0x5200>;
1034d5b0e70fSEmmanuel Vadot			#clock-cells = <1>;
1035d5b0e70fSEmmanuel Vadot			#reset-cells = <1>;
1036d5b0e70fSEmmanuel Vadot			#power-domain-cells = <1>;
1037d5b0e70fSEmmanuel Vadot
1038d5b0e70fSEmmanuel Vadot			clock-names = "xo",
1039d5b0e70fSEmmanuel Vadot				      "gpll0",
1040d5b0e70fSEmmanuel Vadot				      "mmssnoc_ahb",
1041d5b0e70fSEmmanuel Vadot				      "oxili_gfx3d_clk_src",
1042d5b0e70fSEmmanuel Vadot				      "dsi0pll",
1043d5b0e70fSEmmanuel Vadot				      "dsi0pllbyte",
1044d5b0e70fSEmmanuel Vadot				      "dsi1pll",
1045d5b0e70fSEmmanuel Vadot				      "dsi1pllbyte",
1046d5b0e70fSEmmanuel Vadot				      "hdmipll";
1047d5b0e70fSEmmanuel Vadot			clocks = <&xo_board>,
1048d5b0e70fSEmmanuel Vadot				 <&gcc GPLL0_OUT_MMSSCC>,
1049d5b0e70fSEmmanuel Vadot				 <&rpmcc RPM_SMD_MMSSNOC_AHB_CLK>,
1050d5b0e70fSEmmanuel Vadot				 <&rpmcc RPM_SMD_GFX3D_CLK_SRC>,
1051d5b0e70fSEmmanuel Vadot				 <0>,
1052d5b0e70fSEmmanuel Vadot				 <0>,
1053d5b0e70fSEmmanuel Vadot				 <0>,
1054d5b0e70fSEmmanuel Vadot				 <0>,
1055d5b0e70fSEmmanuel Vadot				 <0>;
1056d5b0e70fSEmmanuel Vadot
1057d5b0e70fSEmmanuel Vadot			assigned-clocks = <&mmcc MMPLL0_PLL>,
1058d5b0e70fSEmmanuel Vadot					  <&mmcc MMPLL1_PLL>,
1059d5b0e70fSEmmanuel Vadot					  <&mmcc MMPLL3_PLL>,
1060d5b0e70fSEmmanuel Vadot					  <&mmcc MMPLL4_PLL>,
1061d5b0e70fSEmmanuel Vadot					  <&mmcc MMPLL5_PLL>;
1062d5b0e70fSEmmanuel Vadot			assigned-clock-rates = <800000000>,
1063d5b0e70fSEmmanuel Vadot					       <1167000000>,
1064d5b0e70fSEmmanuel Vadot					       <1020000000>,
1065d5b0e70fSEmmanuel Vadot					       <960000000>,
1066d5b0e70fSEmmanuel Vadot					       <600000000>;
1067d5b0e70fSEmmanuel Vadot		};
1068d5b0e70fSEmmanuel Vadot
1069b97ee269SEmmanuel Vadot		ocmem: sram@fdd00000 {
1070d5b0e70fSEmmanuel Vadot			compatible = "qcom,msm8974-ocmem";
1071d5b0e70fSEmmanuel Vadot			reg = <0xfdd00000 0x2000>,
1072d5b0e70fSEmmanuel Vadot			      <0xfec00000 0x200000>;
1073d5b0e70fSEmmanuel Vadot			reg-names = "ctrl", "mem";
1074b97ee269SEmmanuel Vadot			ranges = <0 0xfec00000 0x200000>;
1075d5b0e70fSEmmanuel Vadot			clocks = <&rpmcc RPM_SMD_OCMEMGX_CLK>,
1076d5b0e70fSEmmanuel Vadot				 <&mmcc OCMEMCX_OCMEMNOC_CLK>;
1077d5b0e70fSEmmanuel Vadot			clock-names = "core", "iface";
1078d5b0e70fSEmmanuel Vadot
1079d5b0e70fSEmmanuel Vadot			#address-cells = <1>;
1080d5b0e70fSEmmanuel Vadot			#size-cells = <1>;
1081d5b0e70fSEmmanuel Vadot
1082d5b0e70fSEmmanuel Vadot			gmu_sram: gmu-sram@0 {
1083d5b0e70fSEmmanuel Vadot				reg = <0x0 0x180000>;
1084d5b0e70fSEmmanuel Vadot			};
1085d5b0e70fSEmmanuel Vadot		};
1086c66ec88fSEmmanuel Vadot	};
1087c66ec88fSEmmanuel Vadot
10885def4c47SEmmanuel Vadot	timer: timer {
1089c66ec88fSEmmanuel Vadot		compatible = "arm,armv8-timer";
1090c66ec88fSEmmanuel Vadot		interrupts = <GIC_PPI 2 0xff08>,
1091c66ec88fSEmmanuel Vadot			     <GIC_PPI 3 0xff08>,
1092c66ec88fSEmmanuel Vadot			     <GIC_PPI 4 0xff08>,
1093c66ec88fSEmmanuel Vadot			     <GIC_PPI 1 0xff08>;
1094c66ec88fSEmmanuel Vadot	};
1095c66ec88fSEmmanuel Vadot
10965def4c47SEmmanuel Vadot	vph_pwr: vph-pwr-regulator {
1097c66ec88fSEmmanuel Vadot		compatible = "regulator-fixed";
10985def4c47SEmmanuel Vadot		regulator-name = "vph_pwr";
1099c66ec88fSEmmanuel Vadot
1100c66ec88fSEmmanuel Vadot		regulator-min-microvolt = <3600000>;
1101c66ec88fSEmmanuel Vadot		regulator-max-microvolt = <3600000>;
1102c66ec88fSEmmanuel Vadot
1103c66ec88fSEmmanuel Vadot		regulator-always-on;
1104c66ec88fSEmmanuel Vadot	};
1105c66ec88fSEmmanuel Vadot};
1106c66ec88fSEmmanuel Vadot
1107