1c66ec88fSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0-only
28bab661aSEmmanuel Vadot/*
38bab661aSEmmanuel 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>;
55fac71e4eSEmmanuel Vadot				cache-unified;
56c66ec88fSEmmanuel Vadot			};
57c66ec88fSEmmanuel Vadot		};
58c66ec88fSEmmanuel Vadot
59c66ec88fSEmmanuel Vadot		CPU1: cpu@1 {
60c66ec88fSEmmanuel Vadot			device_type = "cpu";
61c66ec88fSEmmanuel Vadot			compatible = "arm,cortex-a53";
62c66ec88fSEmmanuel Vadot			reg = <0x0 0x1>;
63c66ec88fSEmmanuel Vadot			enable-method = "psci";
64c66ec88fSEmmanuel Vadot			next-level-cache = <&L2_0>;
65c66ec88fSEmmanuel Vadot		};
66c66ec88fSEmmanuel Vadot
67c66ec88fSEmmanuel Vadot		CPU2: cpu@2 {
68c66ec88fSEmmanuel Vadot			device_type = "cpu";
69c66ec88fSEmmanuel Vadot			compatible = "arm,cortex-a53";
70c66ec88fSEmmanuel Vadot			reg = <0x0 0x2>;
71c66ec88fSEmmanuel Vadot			enable-method = "psci";
72c66ec88fSEmmanuel Vadot			next-level-cache = <&L2_0>;
73c66ec88fSEmmanuel Vadot		};
74c66ec88fSEmmanuel Vadot
75c66ec88fSEmmanuel Vadot		CPU3: cpu@3 {
76c66ec88fSEmmanuel Vadot			device_type = "cpu";
77c66ec88fSEmmanuel Vadot			compatible = "arm,cortex-a53";
78c66ec88fSEmmanuel Vadot			reg = <0x0 0x3>;
79c66ec88fSEmmanuel Vadot			enable-method = "psci";
80c66ec88fSEmmanuel Vadot			next-level-cache = <&L2_0>;
81c66ec88fSEmmanuel Vadot		};
82c66ec88fSEmmanuel Vadot
83c66ec88fSEmmanuel Vadot		CPU4: cpu@100 {
84c66ec88fSEmmanuel Vadot			device_type = "cpu";
85c66ec88fSEmmanuel Vadot			compatible = "arm,cortex-a57";
86c66ec88fSEmmanuel Vadot			reg = <0x0 0x100>;
87c66ec88fSEmmanuel Vadot			enable-method = "psci";
88c66ec88fSEmmanuel Vadot			next-level-cache = <&L2_1>;
89c66ec88fSEmmanuel Vadot			L2_1: l2-cache {
90c66ec88fSEmmanuel Vadot				compatible = "cache";
91c66ec88fSEmmanuel Vadot				cache-level = <2>;
92fac71e4eSEmmanuel Vadot				cache-unified;
93c66ec88fSEmmanuel Vadot			};
94c66ec88fSEmmanuel Vadot		};
95c66ec88fSEmmanuel Vadot
96c66ec88fSEmmanuel Vadot		CPU5: cpu@101 {
97c66ec88fSEmmanuel Vadot			device_type = "cpu";
98c66ec88fSEmmanuel Vadot			compatible = "arm,cortex-a57";
99c66ec88fSEmmanuel Vadot			reg = <0x0 0x101>;
100c66ec88fSEmmanuel Vadot			enable-method = "psci";
101c66ec88fSEmmanuel Vadot			next-level-cache = <&L2_1>;
102c66ec88fSEmmanuel Vadot		};
103c66ec88fSEmmanuel Vadot
104c66ec88fSEmmanuel Vadot		CPU6: cpu@102 {
105c66ec88fSEmmanuel Vadot			device_type = "cpu";
106c66ec88fSEmmanuel Vadot			compatible = "arm,cortex-a57";
107d5b0e70fSEmmanuel Vadot			reg = <0x0 0x102>;
108c66ec88fSEmmanuel Vadot			enable-method = "psci";
109c66ec88fSEmmanuel Vadot			next-level-cache = <&L2_1>;
110c66ec88fSEmmanuel Vadot		};
111c66ec88fSEmmanuel Vadot
112c66ec88fSEmmanuel Vadot		CPU7: cpu@103 {
113c66ec88fSEmmanuel Vadot			device_type = "cpu";
114c66ec88fSEmmanuel Vadot			compatible = "arm,cortex-a57";
115d5b0e70fSEmmanuel Vadot			reg = <0x0 0x103>;
116c66ec88fSEmmanuel Vadot			enable-method = "psci";
117c66ec88fSEmmanuel Vadot			next-level-cache = <&L2_1>;
118c66ec88fSEmmanuel Vadot		};
119c66ec88fSEmmanuel Vadot
120c66ec88fSEmmanuel Vadot		cpu-map {
121c66ec88fSEmmanuel Vadot			cluster0 {
122c66ec88fSEmmanuel Vadot				core0 {
123c66ec88fSEmmanuel Vadot					cpu = <&CPU0>;
124c66ec88fSEmmanuel Vadot				};
125c66ec88fSEmmanuel Vadot
126c66ec88fSEmmanuel Vadot				core1 {
127c66ec88fSEmmanuel Vadot					cpu = <&CPU1>;
128c66ec88fSEmmanuel Vadot				};
129c66ec88fSEmmanuel Vadot
130c66ec88fSEmmanuel Vadot				core2 {
131c66ec88fSEmmanuel Vadot					cpu = <&CPU2>;
132c66ec88fSEmmanuel Vadot				};
133c66ec88fSEmmanuel Vadot
134c66ec88fSEmmanuel Vadot				core3 {
135c66ec88fSEmmanuel Vadot					cpu = <&CPU3>;
136c66ec88fSEmmanuel Vadot				};
137c66ec88fSEmmanuel Vadot			};
138c66ec88fSEmmanuel Vadot
139c66ec88fSEmmanuel Vadot			cluster1 {
140c66ec88fSEmmanuel Vadot				core0 {
141c66ec88fSEmmanuel Vadot					cpu = <&CPU4>;
142c66ec88fSEmmanuel Vadot				};
143c66ec88fSEmmanuel Vadot
144c66ec88fSEmmanuel Vadot				core1 {
145c66ec88fSEmmanuel Vadot					cpu = <&CPU5>;
146c66ec88fSEmmanuel Vadot				};
147c66ec88fSEmmanuel Vadot
1485def4c47SEmmanuel Vadot				cpu6_map: core2 {
149c66ec88fSEmmanuel Vadot					cpu = <&CPU6>;
150c66ec88fSEmmanuel Vadot				};
151c66ec88fSEmmanuel Vadot
1525def4c47SEmmanuel Vadot				cpu7_map: core3 {
153c66ec88fSEmmanuel Vadot					cpu = <&CPU7>;
154c66ec88fSEmmanuel Vadot				};
155c66ec88fSEmmanuel Vadot			};
156c66ec88fSEmmanuel Vadot		};
157c66ec88fSEmmanuel Vadot	};
158c66ec88fSEmmanuel Vadot
159c66ec88fSEmmanuel Vadot	firmware {
160c66ec88fSEmmanuel Vadot		scm {
161c66ec88fSEmmanuel Vadot			compatible = "qcom,scm-msm8994", "qcom,scm";
162c66ec88fSEmmanuel Vadot		};
163c66ec88fSEmmanuel Vadot	};
164c66ec88fSEmmanuel Vadot
1652eb4d8dcSEmmanuel Vadot	memory@80000000 {
166c66ec88fSEmmanuel Vadot		device_type = "memory";
167c66ec88fSEmmanuel Vadot		/* We expect the bootloader to fill in the reg */
1682eb4d8dcSEmmanuel Vadot		reg = <0 0x80000000 0 0>;
169c66ec88fSEmmanuel Vadot	};
170c66ec88fSEmmanuel Vadot
171c66ec88fSEmmanuel Vadot	pmu {
172c66ec88fSEmmanuel Vadot		compatible = "arm,cortex-a53-pmu";
173c66ec88fSEmmanuel Vadot		interrupts = <GIC_PPI 7 (GIC_CPU_MASK_SIMPLE(4)| IRQ_TYPE_LEVEL_HIGH)>;
174c66ec88fSEmmanuel Vadot	};
175c66ec88fSEmmanuel Vadot
176c66ec88fSEmmanuel Vadot	psci {
177c66ec88fSEmmanuel Vadot		compatible = "arm,psci-0.2";
178c66ec88fSEmmanuel Vadot		method = "hvc";
179c66ec88fSEmmanuel Vadot	};
180c66ec88fSEmmanuel Vadot
181aa1a8ff2SEmmanuel Vadot	rpm: remoteproc {
182aa1a8ff2SEmmanuel Vadot		compatible = "qcom,msm8994-rpm-proc", "qcom,rpm-proc";
183aa1a8ff2SEmmanuel Vadot
184aa1a8ff2SEmmanuel Vadot		smd-edge {
185aa1a8ff2SEmmanuel Vadot			interrupts = <GIC_SPI 168 IRQ_TYPE_EDGE_RISING>;
186aa1a8ff2SEmmanuel Vadot			qcom,ipc = <&apcs 8 0>;
187aa1a8ff2SEmmanuel Vadot			qcom,smd-edge = <15>;
188aa1a8ff2SEmmanuel Vadot			qcom,remote-pid = <6>;
189aa1a8ff2SEmmanuel Vadot
190aa1a8ff2SEmmanuel Vadot			rpm_requests: rpm-requests {
191aa1a8ff2SEmmanuel Vadot				compatible = "qcom,rpm-msm8994";
192aa1a8ff2SEmmanuel Vadot				qcom,smd-channels = "rpm_requests";
193aa1a8ff2SEmmanuel Vadot
194aa1a8ff2SEmmanuel Vadot				rpmcc: clock-controller {
195aa1a8ff2SEmmanuel Vadot					compatible = "qcom,rpmcc-msm8994", "qcom,rpmcc";
196aa1a8ff2SEmmanuel Vadot					#clock-cells = <1>;
197aa1a8ff2SEmmanuel Vadot				};
198aa1a8ff2SEmmanuel Vadot
199aa1a8ff2SEmmanuel Vadot				rpmpd: power-controller {
200aa1a8ff2SEmmanuel Vadot					compatible = "qcom,msm8994-rpmpd";
201aa1a8ff2SEmmanuel Vadot					#power-domain-cells = <1>;
202aa1a8ff2SEmmanuel Vadot					operating-points-v2 = <&rpmpd_opp_table>;
203aa1a8ff2SEmmanuel Vadot
204aa1a8ff2SEmmanuel Vadot					rpmpd_opp_table: opp-table {
205aa1a8ff2SEmmanuel Vadot						compatible = "operating-points-v2";
206aa1a8ff2SEmmanuel Vadot
207aa1a8ff2SEmmanuel Vadot						rpmpd_opp_ret: opp1 {
208aa1a8ff2SEmmanuel Vadot							opp-level = <1>;
209aa1a8ff2SEmmanuel Vadot						};
210aa1a8ff2SEmmanuel Vadot						rpmpd_opp_svs_krait: opp2 {
211aa1a8ff2SEmmanuel Vadot							opp-level = <2>;
212aa1a8ff2SEmmanuel Vadot						};
213aa1a8ff2SEmmanuel Vadot						rpmpd_opp_svs_soc: opp3 {
214aa1a8ff2SEmmanuel Vadot							opp-level = <3>;
215aa1a8ff2SEmmanuel Vadot						};
216aa1a8ff2SEmmanuel Vadot						rpmpd_opp_nom: opp4 {
217aa1a8ff2SEmmanuel Vadot							opp-level = <4>;
218aa1a8ff2SEmmanuel Vadot						};
219aa1a8ff2SEmmanuel Vadot						rpmpd_opp_turbo: opp5 {
220aa1a8ff2SEmmanuel Vadot							opp-level = <5>;
221aa1a8ff2SEmmanuel Vadot						};
222aa1a8ff2SEmmanuel Vadot						rpmpd_opp_super_turbo: opp6 {
223aa1a8ff2SEmmanuel Vadot							opp-level = <6>;
224aa1a8ff2SEmmanuel Vadot						};
225aa1a8ff2SEmmanuel Vadot					};
226aa1a8ff2SEmmanuel Vadot				};
227aa1a8ff2SEmmanuel Vadot			};
228aa1a8ff2SEmmanuel Vadot		};
229aa1a8ff2SEmmanuel Vadot	};
230aa1a8ff2SEmmanuel Vadot
231c66ec88fSEmmanuel Vadot	reserved-memory {
232c66ec88fSEmmanuel Vadot		#address-cells = <2>;
233c66ec88fSEmmanuel Vadot		#size-cells = <2>;
234c66ec88fSEmmanuel Vadot		ranges;
235c66ec88fSEmmanuel Vadot
2365def4c47SEmmanuel Vadot		dfps_data_mem: dfps_data_mem@3400000 {
2375def4c47SEmmanuel Vadot			reg = <0 0x03400000 0 0x1000>;
2385def4c47SEmmanuel Vadot			no-map;
2395def4c47SEmmanuel Vadot		};
2405def4c47SEmmanuel Vadot
241d5b0e70fSEmmanuel Vadot		cont_splash_mem: memory@3401000 {
242d5b0e70fSEmmanuel Vadot			reg = <0 0x03401000 0 0x2200000>;
2435def4c47SEmmanuel Vadot			no-map;
2445def4c47SEmmanuel Vadot		};
2455def4c47SEmmanuel Vadot
246c66ec88fSEmmanuel Vadot		smem_mem: smem_region@6a00000 {
2475def4c47SEmmanuel Vadot			reg = <0 0x06a00000 0 0x200000>;
2485def4c47SEmmanuel Vadot			no-map;
2495def4c47SEmmanuel Vadot		};
2505def4c47SEmmanuel Vadot
2515def4c47SEmmanuel Vadot		mpss_mem: memory@7000000 {
2525def4c47SEmmanuel Vadot			reg = <0 0x07000000 0 0x5a00000>;
2535def4c47SEmmanuel Vadot			no-map;
2545def4c47SEmmanuel Vadot		};
2555def4c47SEmmanuel Vadot
2565def4c47SEmmanuel Vadot		peripheral_region: memory@ca00000 {
2575def4c47SEmmanuel Vadot			reg = <0 0x0ca00000 0 0x1f00000>;
2585def4c47SEmmanuel Vadot			no-map;
2595def4c47SEmmanuel Vadot		};
2605def4c47SEmmanuel Vadot
2615def4c47SEmmanuel Vadot		rmtfs_mem: memory@c6400000 {
2625def4c47SEmmanuel Vadot			compatible = "qcom,rmtfs-mem";
2635def4c47SEmmanuel Vadot			reg = <0 0xc6400000 0 0x180000>;
2645def4c47SEmmanuel Vadot			no-map;
2655def4c47SEmmanuel Vadot
2665def4c47SEmmanuel Vadot			qcom,client-id = <1>;
2675def4c47SEmmanuel Vadot		};
2685def4c47SEmmanuel Vadot
2695def4c47SEmmanuel Vadot		mba_mem: memory@c6700000 {
2705def4c47SEmmanuel Vadot			reg = <0 0xc6700000 0 0x100000>;
2715def4c47SEmmanuel Vadot			no-map;
2725def4c47SEmmanuel Vadot		};
2735def4c47SEmmanuel Vadot
2745def4c47SEmmanuel Vadot		audio_mem: memory@c7000000 {
2755def4c47SEmmanuel Vadot			reg = <0 0xc7000000 0 0x800000>;
2765def4c47SEmmanuel Vadot			no-map;
2775def4c47SEmmanuel Vadot		};
2785def4c47SEmmanuel Vadot
2795def4c47SEmmanuel Vadot		adsp_mem: memory@c9400000 {
2805def4c47SEmmanuel Vadot			reg = <0 0xc9400000 0 0x3f00000>;
281c66ec88fSEmmanuel Vadot			no-map;
282c66ec88fSEmmanuel Vadot		};
283fac71e4eSEmmanuel Vadot
284*84943d6fSEmmanuel Vadot		res_hyp_mem: reserved@6c00000 {
285fac71e4eSEmmanuel Vadot			reg = <0 0x06c00000 0 0x400000>;
286fac71e4eSEmmanuel Vadot			no-map;
287fac71e4eSEmmanuel Vadot		};
288c66ec88fSEmmanuel Vadot	};
289c66ec88fSEmmanuel Vadot
290c66ec88fSEmmanuel Vadot	smem {
291c66ec88fSEmmanuel Vadot		compatible = "qcom,smem";
292c66ec88fSEmmanuel Vadot		memory-region = <&smem_mem>;
293c66ec88fSEmmanuel Vadot		qcom,rpm-msg-ram = <&rpm_msg_ram>;
294c66ec88fSEmmanuel Vadot		hwlocks = <&tcsr_mutex 3>;
295c66ec88fSEmmanuel Vadot	};
296c66ec88fSEmmanuel Vadot
2975def4c47SEmmanuel Vadot	smp2p-lpass {
2985def4c47SEmmanuel Vadot		compatible = "qcom,smp2p";
2995def4c47SEmmanuel Vadot		qcom,smem = <443>, <429>;
3005def4c47SEmmanuel Vadot
3015def4c47SEmmanuel Vadot		interrupts = <GIC_SPI 158 IRQ_TYPE_EDGE_RISING>;
3025def4c47SEmmanuel Vadot
3035def4c47SEmmanuel Vadot		qcom,ipc = <&apcs 8 10>;
3045def4c47SEmmanuel Vadot
3055def4c47SEmmanuel Vadot		qcom,local-pid = <0>;
3065def4c47SEmmanuel Vadot		qcom,remote-pid = <2>;
3075def4c47SEmmanuel Vadot
3085def4c47SEmmanuel Vadot		adsp_smp2p_out: master-kernel {
3095def4c47SEmmanuel Vadot			qcom,entry-name = "master-kernel";
3105def4c47SEmmanuel Vadot			#qcom,smem-state-cells = <1>;
3115def4c47SEmmanuel Vadot		};
3125def4c47SEmmanuel Vadot
3135def4c47SEmmanuel Vadot		adsp_smp2p_in: slave-kernel {
3145def4c47SEmmanuel Vadot			qcom,entry-name = "slave-kernel";
3155def4c47SEmmanuel Vadot
3165def4c47SEmmanuel Vadot			interrupt-controller;
3175def4c47SEmmanuel Vadot			#interrupt-cells = <2>;
3185def4c47SEmmanuel Vadot		};
3195def4c47SEmmanuel Vadot	};
3205def4c47SEmmanuel Vadot
3215def4c47SEmmanuel Vadot	smp2p-modem {
3225def4c47SEmmanuel Vadot		compatible = "qcom,smp2p";
3235def4c47SEmmanuel Vadot		qcom,smem = <435>, <428>;
3245def4c47SEmmanuel Vadot
3255def4c47SEmmanuel Vadot		interrupt-parent = <&intc>;
3265def4c47SEmmanuel Vadot		interrupts = <GIC_SPI 27 IRQ_TYPE_EDGE_RISING>;
3275def4c47SEmmanuel Vadot
3285def4c47SEmmanuel Vadot		qcom,ipc = <&apcs 8 14>;
3295def4c47SEmmanuel Vadot
3305def4c47SEmmanuel Vadot		qcom,local-pid = <0>;
3315def4c47SEmmanuel Vadot		qcom,remote-pid = <1>;
3325def4c47SEmmanuel Vadot
3335def4c47SEmmanuel Vadot		modem_smp2p_out: master-kernel {
3345def4c47SEmmanuel Vadot			qcom,entry-name = "master-kernel";
3355def4c47SEmmanuel Vadot			#qcom,smem-state-cells = <1>;
3365def4c47SEmmanuel Vadot		};
3375def4c47SEmmanuel Vadot
3385def4c47SEmmanuel Vadot		modem_smp2p_in: slave-kernel {
3395def4c47SEmmanuel Vadot			qcom,entry-name = "slave-kernel";
3405def4c47SEmmanuel Vadot
3415def4c47SEmmanuel Vadot			interrupt-controller;
3425def4c47SEmmanuel Vadot			#interrupt-cells = <2>;
3435def4c47SEmmanuel Vadot		};
3445def4c47SEmmanuel Vadot	};
3455def4c47SEmmanuel Vadot
346f126890aSEmmanuel Vadot	soc: soc@0 {
347c66ec88fSEmmanuel Vadot		#address-cells = <1>;
348c66ec88fSEmmanuel Vadot		#size-cells = <1>;
349c66ec88fSEmmanuel Vadot		ranges = <0 0 0 0xffffffff>;
350c66ec88fSEmmanuel Vadot		compatible = "simple-bus";
351c66ec88fSEmmanuel Vadot
352c66ec88fSEmmanuel Vadot		intc: interrupt-controller@f9000000 {
353c66ec88fSEmmanuel Vadot			compatible = "qcom,msm-qgic2";
354c66ec88fSEmmanuel Vadot			interrupt-controller;
355c66ec88fSEmmanuel Vadot			#interrupt-cells = <3>;
356c66ec88fSEmmanuel Vadot			reg = <0xf9000000 0x1000>,
357c66ec88fSEmmanuel Vadot			      <0xf9002000 0x1000>;
358c66ec88fSEmmanuel Vadot		};
359c66ec88fSEmmanuel Vadot
360c66ec88fSEmmanuel Vadot		apcs: mailbox@f900d000 {
361c66ec88fSEmmanuel Vadot			compatible = "qcom,msm8994-apcs-kpss-global", "syscon";
362c66ec88fSEmmanuel Vadot			reg = <0xf900d000 0x2000>;
363c66ec88fSEmmanuel Vadot			#mbox-cells = <1>;
364c66ec88fSEmmanuel Vadot		};
365c66ec88fSEmmanuel Vadot
366d5b0e70fSEmmanuel Vadot		watchdog@f9017000 {
367d5b0e70fSEmmanuel Vadot			compatible = "qcom,apss-wdt-msm8994", "qcom,kpss-wdt";
368d5b0e70fSEmmanuel Vadot			reg = <0xf9017000 0x1000>;
369d5b0e70fSEmmanuel Vadot			interrupts = <GIC_SPI 3 IRQ_TYPE_EDGE_RISING>,
370d5b0e70fSEmmanuel Vadot				     <GIC_SPI 4 IRQ_TYPE_EDGE_RISING>;
371d5b0e70fSEmmanuel Vadot			clocks = <&sleep_clk>;
372d5b0e70fSEmmanuel Vadot			timeout-sec = <10>;
373d5b0e70fSEmmanuel Vadot		};
374d5b0e70fSEmmanuel Vadot
375c66ec88fSEmmanuel Vadot		timer@f9020000 {
376c66ec88fSEmmanuel Vadot			#address-cells = <1>;
377c66ec88fSEmmanuel Vadot			#size-cells = <1>;
378c66ec88fSEmmanuel Vadot			ranges;
379c66ec88fSEmmanuel Vadot			compatible = "arm,armv7-timer-mem";
380c66ec88fSEmmanuel Vadot			reg = <0xf9020000 0x1000>;
381c66ec88fSEmmanuel Vadot
382c66ec88fSEmmanuel Vadot			frame@f9021000 {
383c66ec88fSEmmanuel Vadot				frame-number = <0>;
384c66ec88fSEmmanuel Vadot				interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>,
385c66ec88fSEmmanuel Vadot					     <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>;
386c66ec88fSEmmanuel Vadot				reg = <0xf9021000 0x1000>,
387c66ec88fSEmmanuel Vadot				      <0xf9022000 0x1000>;
388c66ec88fSEmmanuel Vadot			};
389c66ec88fSEmmanuel Vadot
390c66ec88fSEmmanuel Vadot			frame@f9023000 {
391c66ec88fSEmmanuel Vadot				frame-number = <1>;
392c66ec88fSEmmanuel Vadot				interrupts = <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>;
393c66ec88fSEmmanuel Vadot				reg = <0xf9023000 0x1000>;
394c66ec88fSEmmanuel Vadot				status = "disabled";
395c66ec88fSEmmanuel Vadot			};
396c66ec88fSEmmanuel Vadot
397c66ec88fSEmmanuel Vadot			frame@f9024000 {
398c66ec88fSEmmanuel Vadot				frame-number = <2>;
399c66ec88fSEmmanuel Vadot				interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>;
400c66ec88fSEmmanuel Vadot				reg = <0xf9024000 0x1000>;
401c66ec88fSEmmanuel Vadot				status = "disabled";
402c66ec88fSEmmanuel Vadot			};
403c66ec88fSEmmanuel Vadot
404c66ec88fSEmmanuel Vadot			frame@f9025000 {
405c66ec88fSEmmanuel Vadot				frame-number = <3>;
406c66ec88fSEmmanuel Vadot				interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>;
407c66ec88fSEmmanuel Vadot				reg = <0xf9025000 0x1000>;
408c66ec88fSEmmanuel Vadot				status = "disabled";
409c66ec88fSEmmanuel Vadot			};
410c66ec88fSEmmanuel Vadot
411c66ec88fSEmmanuel Vadot			frame@f9026000 {
412c66ec88fSEmmanuel Vadot				frame-number = <4>;
413c66ec88fSEmmanuel Vadot				interrupts = <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>;
414c66ec88fSEmmanuel Vadot				reg = <0xf9026000 0x1000>;
415c66ec88fSEmmanuel Vadot				status = "disabled";
416c66ec88fSEmmanuel Vadot			};
417c66ec88fSEmmanuel Vadot
418c66ec88fSEmmanuel Vadot			frame@f9027000 {
419c66ec88fSEmmanuel Vadot				frame-number = <5>;
420c66ec88fSEmmanuel Vadot				interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>;
421c66ec88fSEmmanuel Vadot				reg = <0xf9027000 0x1000>;
422c66ec88fSEmmanuel Vadot				status = "disabled";
423c66ec88fSEmmanuel Vadot			};
424c66ec88fSEmmanuel Vadot
425c66ec88fSEmmanuel Vadot			frame@f9028000 {
426c66ec88fSEmmanuel Vadot				frame-number = <6>;
427c66ec88fSEmmanuel Vadot				interrupts = <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>;
428c66ec88fSEmmanuel Vadot				reg = <0xf9028000 0x1000>;
429c66ec88fSEmmanuel Vadot				status = "disabled";
430c66ec88fSEmmanuel Vadot			};
431c66ec88fSEmmanuel Vadot		};
432c66ec88fSEmmanuel Vadot
4335def4c47SEmmanuel Vadot		usb3: usb@f92f8800 {
434d5b0e70fSEmmanuel Vadot			compatible = "qcom,msm8994-dwc3", "qcom,dwc3";
4355def4c47SEmmanuel Vadot			reg = <0xf92f8800 0x400>;
4365def4c47SEmmanuel Vadot			#address-cells = <1>;
4375def4c47SEmmanuel Vadot			#size-cells = <1>;
4385def4c47SEmmanuel Vadot			ranges;
4395def4c47SEmmanuel Vadot
4405def4c47SEmmanuel Vadot			clocks = <&gcc GCC_USB30_MASTER_CLK>,
4415def4c47SEmmanuel Vadot				 <&gcc GCC_SYS_NOC_USB3_AXI_CLK>,
4425def4c47SEmmanuel Vadot				 <&gcc GCC_USB30_SLEEP_CLK>,
4435def4c47SEmmanuel Vadot				 <&gcc GCC_USB30_MOCK_UTMI_CLK>;
444d5b0e70fSEmmanuel Vadot			clock-names = "core",
445d5b0e70fSEmmanuel Vadot				      "iface",
446d5b0e70fSEmmanuel Vadot				      "sleep",
447d5b0e70fSEmmanuel Vadot				      "mock_utmi";
4485def4c47SEmmanuel Vadot
4495def4c47SEmmanuel Vadot			assigned-clocks = <&gcc GCC_USB30_MOCK_UTMI_CLK>,
4505def4c47SEmmanuel Vadot					  <&gcc GCC_USB30_MASTER_CLK>;
4515def4c47SEmmanuel Vadot			assigned-clock-rates = <19200000>, <120000000>;
4525def4c47SEmmanuel Vadot
4535def4c47SEmmanuel Vadot			power-domains = <&gcc USB30_GDSC>;
4545def4c47SEmmanuel Vadot			qcom,select-utmi-as-pipe-clk;
4555def4c47SEmmanuel Vadot
456354d7675SEmmanuel Vadot			usb@f9200000 {
4575def4c47SEmmanuel Vadot				compatible = "snps,dwc3";
4585def4c47SEmmanuel Vadot				reg = <0xf9200000 0xcc00>;
459aa1a8ff2SEmmanuel Vadot				interrupts = <GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH>;
4605def4c47SEmmanuel Vadot				snps,dis_u2_susphy_quirk;
4615def4c47SEmmanuel Vadot				snps,dis_enblslpm_quirk;
4625def4c47SEmmanuel Vadot				maximum-speed = "high-speed";
4635def4c47SEmmanuel Vadot				dr_mode = "peripheral";
4645def4c47SEmmanuel Vadot			};
4655def4c47SEmmanuel Vadot		};
4665def4c47SEmmanuel Vadot
467b97ee269SEmmanuel Vadot		sdhc1: mmc@f9824900 {
468c9ccf3a3SEmmanuel Vadot			compatible = "qcom,msm8994-sdhci", "qcom,sdhci-msm-v4";
469c66ec88fSEmmanuel Vadot			reg = <0xf9824900 0x1a0>, <0xf9824000 0x800>;
4707ef62cebSEmmanuel Vadot			reg-names = "hc", "core";
471c66ec88fSEmmanuel Vadot
472c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>,
473c66ec88fSEmmanuel Vadot				     <GIC_SPI 138 IRQ_TYPE_LEVEL_HIGH>;
474c66ec88fSEmmanuel Vadot			interrupt-names = "hc_irq", "pwr_irq";
475c66ec88fSEmmanuel Vadot
476b97ee269SEmmanuel Vadot			clocks = <&gcc GCC_SDCC1_AHB_CLK>,
477b97ee269SEmmanuel Vadot				 <&gcc GCC_SDCC1_APPS_CLK>,
478c66ec88fSEmmanuel Vadot				 <&xo_board>;
479b97ee269SEmmanuel Vadot			clock-names = "iface", "core", "xo";
480c66ec88fSEmmanuel Vadot
481c66ec88fSEmmanuel Vadot			pinctrl-names = "default", "sleep";
482c66ec88fSEmmanuel Vadot			pinctrl-0 = <&sdc1_clk_on &sdc1_cmd_on &sdc1_data_on &sdc1_rclk_on>;
483c66ec88fSEmmanuel Vadot			pinctrl-1 = <&sdc1_clk_off &sdc1_cmd_off &sdc1_data_off &sdc1_rclk_off>;
484c66ec88fSEmmanuel Vadot
485c66ec88fSEmmanuel Vadot			bus-width = <8>;
486c66ec88fSEmmanuel Vadot			non-removable;
487c66ec88fSEmmanuel Vadot			status = "disabled";
488c66ec88fSEmmanuel Vadot		};
489c66ec88fSEmmanuel Vadot
490b97ee269SEmmanuel Vadot		sdhc2: mmc@f98a4900 {
491c9ccf3a3SEmmanuel Vadot			compatible = "qcom,msm8994-sdhci", "qcom,sdhci-msm-v4";
4925def4c47SEmmanuel Vadot			reg = <0xf98a4900 0x11c>, <0xf98a4000 0x800>;
4937ef62cebSEmmanuel Vadot			reg-names = "hc", "core";
4945def4c47SEmmanuel Vadot
4955def4c47SEmmanuel Vadot			interrupts = <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>,
4965def4c47SEmmanuel Vadot				<GIC_SPI 221 IRQ_TYPE_LEVEL_HIGH>;
4975def4c47SEmmanuel Vadot			interrupt-names = "hc_irq", "pwr_irq";
4985def4c47SEmmanuel Vadot
499b97ee269SEmmanuel Vadot			clocks = <&gcc GCC_SDCC2_AHB_CLK>,
500b97ee269SEmmanuel Vadot				 <&gcc GCC_SDCC2_APPS_CLK>,
5015def4c47SEmmanuel Vadot				 <&xo_board>;
502b97ee269SEmmanuel Vadot			clock-names = "iface", "core", "xo";
5035def4c47SEmmanuel Vadot
5045def4c47SEmmanuel Vadot			pinctrl-names = "default", "sleep";
5055def4c47SEmmanuel Vadot			pinctrl-0 = <&sdc2_clk_on &sdc2_cmd_on &sdc2_data_on>;
5065def4c47SEmmanuel Vadot			pinctrl-1 = <&sdc2_clk_off &sdc2_cmd_off &sdc2_data_off>;
5075def4c47SEmmanuel Vadot
5087ef62cebSEmmanuel Vadot			cd-gpios = <&tlmm 100 GPIO_ACTIVE_HIGH>;
5095def4c47SEmmanuel Vadot			bus-width = <4>;
5105def4c47SEmmanuel Vadot			status = "disabled";
5115def4c47SEmmanuel Vadot		};
5125def4c47SEmmanuel Vadot
5135def4c47SEmmanuel Vadot		blsp1_dma: dma-controller@f9904000 {
514c66ec88fSEmmanuel Vadot			compatible = "qcom,bam-v1.7.0";
515c66ec88fSEmmanuel Vadot			reg = <0xf9904000 0x19000>;
516c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 238 IRQ_TYPE_LEVEL_HIGH>;
517c66ec88fSEmmanuel Vadot			clocks = <&gcc GCC_BLSP1_AHB_CLK>;
518c66ec88fSEmmanuel Vadot			clock-names = "bam_clk";
519c66ec88fSEmmanuel Vadot			#dma-cells = <1>;
520c66ec88fSEmmanuel Vadot			qcom,ee = <0>;
521c66ec88fSEmmanuel Vadot			qcom,controlled-remotely;
522d5b0e70fSEmmanuel Vadot			num-channels = <24>;
523c66ec88fSEmmanuel Vadot			qcom,num-ees = <4>;
524c66ec88fSEmmanuel Vadot		};
525c66ec88fSEmmanuel Vadot
526c66ec88fSEmmanuel Vadot		blsp1_uart2: serial@f991e000 {
527c66ec88fSEmmanuel Vadot			compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm";
528c66ec88fSEmmanuel Vadot			reg = <0xf991e000 0x1000>;
529c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>;
530c66ec88fSEmmanuel Vadot			clock-names = "core", "iface";
531c66ec88fSEmmanuel Vadot			clocks = <&gcc GCC_BLSP1_UART2_APPS_CLK>,
532c66ec88fSEmmanuel Vadot				 <&gcc GCC_BLSP1_AHB_CLK>;
533c66ec88fSEmmanuel Vadot			pinctrl-names = "default", "sleep";
534c66ec88fSEmmanuel Vadot			pinctrl-0 = <&blsp1_uart2_default>;
535c66ec88fSEmmanuel Vadot			pinctrl-1 = <&blsp1_uart2_sleep>;
536c66ec88fSEmmanuel Vadot			status = "disabled";
537c66ec88fSEmmanuel Vadot		};
538c66ec88fSEmmanuel Vadot
5395def4c47SEmmanuel Vadot		blsp1_i2c1: i2c@f9923000 {
540c66ec88fSEmmanuel Vadot			compatible = "qcom,i2c-qup-v2.2.1";
541c66ec88fSEmmanuel Vadot			reg = <0xf9923000 0x500>;
542c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>;
543d5b0e70fSEmmanuel Vadot			clocks = <&gcc GCC_BLSP1_QUP1_I2C_APPS_CLK>,
544d5b0e70fSEmmanuel Vadot				 <&gcc GCC_BLSP1_AHB_CLK>;
545d5b0e70fSEmmanuel Vadot			clock-names = "core", "iface";
546c66ec88fSEmmanuel Vadot			clock-frequency = <400000>;
5475def4c47SEmmanuel Vadot			dmas = <&blsp1_dma 12>, <&blsp1_dma 13>;
5485def4c47SEmmanuel Vadot			dma-names = "tx", "rx";
549c66ec88fSEmmanuel Vadot			pinctrl-names = "default", "sleep";
550c66ec88fSEmmanuel Vadot			pinctrl-0 = <&i2c1_default>;
551c66ec88fSEmmanuel Vadot			pinctrl-1 = <&i2c1_sleep>;
552c66ec88fSEmmanuel Vadot			#address-cells = <1>;
553c66ec88fSEmmanuel Vadot			#size-cells = <0>;
554c66ec88fSEmmanuel Vadot			status = "disabled";
555c66ec88fSEmmanuel Vadot		};
556c66ec88fSEmmanuel Vadot
5575def4c47SEmmanuel Vadot		blsp1_spi1: spi@f9923000 {
558c66ec88fSEmmanuel Vadot			compatible = "qcom,spi-qup-v2.2.1";
559c66ec88fSEmmanuel Vadot			reg = <0xf9923000 0x500>;
560c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>;
561c66ec88fSEmmanuel Vadot			clocks = <&gcc GCC_BLSP1_QUP1_SPI_APPS_CLK>,
562c66ec88fSEmmanuel Vadot				 <&gcc GCC_BLSP1_AHB_CLK>;
563c66ec88fSEmmanuel Vadot			clock-names = "core", "iface";
564c66ec88fSEmmanuel Vadot			dmas = <&blsp1_dma 12>, <&blsp1_dma 13>;
565c66ec88fSEmmanuel Vadot			dma-names = "tx", "rx";
566c66ec88fSEmmanuel Vadot			pinctrl-names = "default", "sleep";
5675def4c47SEmmanuel Vadot			pinctrl-0 = <&blsp1_spi1_default>;
5685def4c47SEmmanuel Vadot			pinctrl-1 = <&blsp1_spi1_sleep>;
569c66ec88fSEmmanuel Vadot			#address-cells = <1>;
570c66ec88fSEmmanuel Vadot			#size-cells = <0>;
571c66ec88fSEmmanuel Vadot			status = "disabled";
572c66ec88fSEmmanuel Vadot		};
573c66ec88fSEmmanuel Vadot
5745def4c47SEmmanuel Vadot		blsp1_i2c2: i2c@f9924000 {
575c66ec88fSEmmanuel Vadot			compatible = "qcom,i2c-qup-v2.2.1";
576c66ec88fSEmmanuel Vadot			reg = <0xf9924000 0x500>;
577c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>;
578d5b0e70fSEmmanuel Vadot			clocks = <&gcc GCC_BLSP1_QUP2_I2C_APPS_CLK>,
579d5b0e70fSEmmanuel Vadot				 <&gcc GCC_BLSP1_AHB_CLK>;
580d5b0e70fSEmmanuel Vadot			clock-names = "core", "iface";
5815def4c47SEmmanuel Vadot			clock-frequency = <400000>;
582c66ec88fSEmmanuel Vadot			dmas = <&blsp1_dma 14>, <&blsp1_dma 15>;
583c66ec88fSEmmanuel Vadot			dma-names = "tx", "rx";
584c66ec88fSEmmanuel Vadot			pinctrl-names = "default", "sleep";
585c66ec88fSEmmanuel Vadot			pinctrl-0 = <&i2c2_default>;
586c66ec88fSEmmanuel Vadot			pinctrl-1 = <&i2c2_sleep>;
587c66ec88fSEmmanuel Vadot			#address-cells = <1>;
588c66ec88fSEmmanuel Vadot			#size-cells = <0>;
589c66ec88fSEmmanuel Vadot			status = "disabled";
590c66ec88fSEmmanuel Vadot		};
591c66ec88fSEmmanuel Vadot
592c66ec88fSEmmanuel Vadot		/* I2C3 doesn't exist */
593c66ec88fSEmmanuel Vadot
5945def4c47SEmmanuel Vadot		blsp1_i2c4: i2c@f9926000 {
595c66ec88fSEmmanuel Vadot			compatible = "qcom,i2c-qup-v2.2.1";
596c66ec88fSEmmanuel Vadot			reg = <0xf9926000 0x500>;
597c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>;
598d5b0e70fSEmmanuel Vadot			clocks = <&gcc GCC_BLSP1_QUP4_I2C_APPS_CLK>,
599d5b0e70fSEmmanuel Vadot				 <&gcc GCC_BLSP1_AHB_CLK>;
600d5b0e70fSEmmanuel Vadot			clock-names = "core", "iface";
6015def4c47SEmmanuel Vadot			clock-frequency = <400000>;
6025def4c47SEmmanuel Vadot			dmas = <&blsp1_dma 18>, <&blsp1_dma 19>;
6035def4c47SEmmanuel Vadot			dma-names = "tx", "rx";
604c66ec88fSEmmanuel Vadot			pinctrl-names = "default", "sleep";
605c66ec88fSEmmanuel Vadot			pinctrl-0 = <&i2c4_default>;
606c66ec88fSEmmanuel Vadot			pinctrl-1 = <&i2c4_sleep>;
607c66ec88fSEmmanuel Vadot			#address-cells = <1>;
608c66ec88fSEmmanuel Vadot			#size-cells = <0>;
609c66ec88fSEmmanuel Vadot			status = "disabled";
610c66ec88fSEmmanuel Vadot		};
611c66ec88fSEmmanuel Vadot
6125def4c47SEmmanuel Vadot		blsp1_i2c5: i2c@f9927000 {
6135def4c47SEmmanuel Vadot			compatible = "qcom,i2c-qup-v2.2.1";
6145def4c47SEmmanuel Vadot			reg = <0xf9927000 0x500>;
6155def4c47SEmmanuel Vadot			interrupts = <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>;
616d5b0e70fSEmmanuel Vadot			clocks = <&gcc GCC_BLSP1_QUP5_I2C_APPS_CLK>,
617d5b0e70fSEmmanuel Vadot				 <&gcc GCC_BLSP1_AHB_CLK>;
618d5b0e70fSEmmanuel Vadot			clock-names = "core", "iface";
6195def4c47SEmmanuel Vadot			clock-frequency = <400000>;
6205def4c47SEmmanuel Vadot			dmas = <&blsp2_dma 20>, <&blsp2_dma 21>;
6215def4c47SEmmanuel Vadot			dma-names = "tx", "rx";
6225def4c47SEmmanuel Vadot			pinctrl-names = "default", "sleep";
6235def4c47SEmmanuel Vadot			pinctrl-0 = <&i2c5_default>;
6245def4c47SEmmanuel Vadot			pinctrl-1 = <&i2c5_sleep>;
6255def4c47SEmmanuel Vadot			#address-cells = <1>;
6265def4c47SEmmanuel Vadot			#size-cells = <0>;
6275def4c47SEmmanuel Vadot			status = "disabled";
6285def4c47SEmmanuel Vadot		};
6295def4c47SEmmanuel Vadot
6305def4c47SEmmanuel Vadot		blsp1_i2c6: i2c@f9928000 {
6315def4c47SEmmanuel Vadot			compatible = "qcom,i2c-qup-v2.2.1";
6325def4c47SEmmanuel Vadot			reg = <0xf9928000 0x500>;
6335def4c47SEmmanuel Vadot			interrupts = <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>;
634d5b0e70fSEmmanuel Vadot			clocks = <&gcc GCC_BLSP1_QUP6_I2C_APPS_CLK>,
635d5b0e70fSEmmanuel Vadot				 <&gcc GCC_BLSP1_AHB_CLK>;
636d5b0e70fSEmmanuel Vadot			clock-names = "core", "iface";
6375def4c47SEmmanuel Vadot			clock-frequency = <400000>;
6385def4c47SEmmanuel Vadot			dmas = <&blsp1_dma 22>, <&blsp1_dma 23>;
6395def4c47SEmmanuel Vadot			dma-names = "tx", "rx";
6405def4c47SEmmanuel Vadot			pinctrl-names = "default", "sleep";
6415def4c47SEmmanuel Vadot			pinctrl-0 = <&i2c6_default>;
6425def4c47SEmmanuel Vadot			pinctrl-1 = <&i2c6_sleep>;
6435def4c47SEmmanuel Vadot			#address-cells = <1>;
6445def4c47SEmmanuel Vadot			#size-cells = <0>;
6455def4c47SEmmanuel Vadot			status = "disabled";
6465def4c47SEmmanuel Vadot		};
6475def4c47SEmmanuel Vadot
6485def4c47SEmmanuel Vadot		blsp2_dma: dma-controller@f9944000 {
649c66ec88fSEmmanuel Vadot			compatible = "qcom,bam-v1.7.0";
650c66ec88fSEmmanuel Vadot			reg = <0xf9944000 0x19000>;
651c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 239 IRQ_TYPE_LEVEL_HIGH>;
652c66ec88fSEmmanuel Vadot			clocks = <&gcc GCC_BLSP2_AHB_CLK>;
653c66ec88fSEmmanuel Vadot			clock-names = "bam_clk";
654c66ec88fSEmmanuel Vadot			#dma-cells = <1>;
655c66ec88fSEmmanuel Vadot			qcom,ee = <0>;
656c66ec88fSEmmanuel Vadot			qcom,controlled-remotely;
657d5b0e70fSEmmanuel Vadot			num-channels = <24>;
658c66ec88fSEmmanuel Vadot			qcom,num-ees = <4>;
659c66ec88fSEmmanuel Vadot		};
660c66ec88fSEmmanuel Vadot
661c66ec88fSEmmanuel Vadot		blsp2_uart2: serial@f995e000 {
662c66ec88fSEmmanuel Vadot			compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm";
663c66ec88fSEmmanuel Vadot			reg = <0xf995e000 0x1000>;
6645def4c47SEmmanuel Vadot			interrupts = <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>;
665c66ec88fSEmmanuel Vadot			clock-names = "core", "iface";
666c66ec88fSEmmanuel Vadot			clocks = <&gcc GCC_BLSP2_UART2_APPS_CLK>,
667c66ec88fSEmmanuel Vadot					<&gcc GCC_BLSP2_AHB_CLK>;
668c66ec88fSEmmanuel Vadot			dmas = <&blsp2_dma 2>, <&blsp2_dma 3>;
669c66ec88fSEmmanuel Vadot			dma-names = "tx", "rx";
670c66ec88fSEmmanuel Vadot			pinctrl-names = "default", "sleep";
671c66ec88fSEmmanuel Vadot			pinctrl-0 = <&blsp2_uart2_default>;
672c66ec88fSEmmanuel Vadot			pinctrl-1 = <&blsp2_uart2_sleep>;
673c66ec88fSEmmanuel Vadot			status = "disabled";
674c66ec88fSEmmanuel Vadot		};
675c66ec88fSEmmanuel Vadot
6765def4c47SEmmanuel Vadot		blsp2_i2c1: i2c@f9963000 {
6775def4c47SEmmanuel Vadot			compatible = "qcom,i2c-qup-v2.2.1";
6785def4c47SEmmanuel Vadot			reg = <0xf9963000 0x500>;
6795def4c47SEmmanuel Vadot			interrupts = <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>;
680d5b0e70fSEmmanuel Vadot			clocks = <&gcc GCC_BLSP2_QUP1_I2C_APPS_CLK>,
681d5b0e70fSEmmanuel Vadot				 <&gcc GCC_BLSP2_AHB_CLK>;
682d5b0e70fSEmmanuel Vadot			clock-names = "core", "iface";
6835def4c47SEmmanuel Vadot			clock-frequency = <400000>;
6845def4c47SEmmanuel Vadot			dmas = <&blsp2_dma 12>, <&blsp2_dma 13>;
6855def4c47SEmmanuel Vadot			dma-names = "tx", "rx";
6865def4c47SEmmanuel Vadot			pinctrl-names = "default", "sleep";
6875def4c47SEmmanuel Vadot			pinctrl-0 = <&i2c7_default>;
6885def4c47SEmmanuel Vadot			pinctrl-1 = <&i2c7_sleep>;
6895def4c47SEmmanuel Vadot			#address-cells = <1>;
6905def4c47SEmmanuel Vadot			#size-cells = <0>;
6915def4c47SEmmanuel Vadot			status = "disabled";
6925def4c47SEmmanuel Vadot		};
6935def4c47SEmmanuel Vadot
6945def4c47SEmmanuel Vadot		blsp2_spi4: spi@f9966000 {
6955def4c47SEmmanuel Vadot			compatible = "qcom,spi-qup-v2.2.1";
6965def4c47SEmmanuel Vadot			reg = <0xf9966000 0x500>;
6975def4c47SEmmanuel Vadot			interrupts = <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>;
6985def4c47SEmmanuel Vadot			clocks = <&gcc GCC_BLSP2_QUP4_SPI_APPS_CLK>,
6995def4c47SEmmanuel Vadot				 <&gcc GCC_BLSP2_AHB_CLK>;
7005def4c47SEmmanuel Vadot			clock-names = "core", "iface";
7015def4c47SEmmanuel Vadot			dmas = <&blsp2_dma 18>, <&blsp2_dma 19>;
7025def4c47SEmmanuel Vadot			dma-names = "tx", "rx";
7035def4c47SEmmanuel Vadot			pinctrl-names = "default", "sleep";
7045def4c47SEmmanuel Vadot			pinctrl-0 = <&blsp2_spi10_default>;
7055def4c47SEmmanuel Vadot			pinctrl-1 = <&blsp2_spi10_sleep>;
7065def4c47SEmmanuel Vadot			#address-cells = <1>;
7075def4c47SEmmanuel Vadot			#size-cells = <0>;
7085def4c47SEmmanuel Vadot			status = "disabled";
7095def4c47SEmmanuel Vadot		};
7105def4c47SEmmanuel Vadot
7115def4c47SEmmanuel Vadot		blsp2_i2c5: i2c@f9967000 {
712c66ec88fSEmmanuel Vadot			compatible = "qcom,i2c-qup-v2.2.1";
713c66ec88fSEmmanuel Vadot			reg = <0xf9967000 0x500>;
714c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>;
715d5b0e70fSEmmanuel Vadot			clocks = <&gcc GCC_BLSP2_QUP5_I2C_APPS_CLK>,
716d5b0e70fSEmmanuel Vadot				 <&gcc GCC_BLSP2_AHB_CLK>;
717d5b0e70fSEmmanuel Vadot			clock-names = "core", "iface";
718c66ec88fSEmmanuel Vadot			clock-frequency = <355000>;
719c66ec88fSEmmanuel Vadot			dmas = <&blsp2_dma 20>, <&blsp2_dma 21>;
720c66ec88fSEmmanuel Vadot			dma-names = "tx", "rx";
721c66ec88fSEmmanuel Vadot			pinctrl-names = "default", "sleep";
7225def4c47SEmmanuel Vadot			pinctrl-0 = <&i2c11_default>;
7235def4c47SEmmanuel Vadot			pinctrl-1 = <&i2c11_sleep>;
724c66ec88fSEmmanuel Vadot			#address-cells = <1>;
725c66ec88fSEmmanuel Vadot			#size-cells = <0>;
726c66ec88fSEmmanuel Vadot			status = "disabled";
727c66ec88fSEmmanuel Vadot		};
728c66ec88fSEmmanuel Vadot
729c66ec88fSEmmanuel Vadot		gcc: clock-controller@fc400000 {
730c66ec88fSEmmanuel Vadot			compatible = "qcom,gcc-msm8994";
731c66ec88fSEmmanuel Vadot			#clock-cells = <1>;
732c66ec88fSEmmanuel Vadot			#reset-cells = <1>;
733c66ec88fSEmmanuel Vadot			#power-domain-cells = <1>;
734c66ec88fSEmmanuel Vadot			reg = <0xfc400000 0x2000>;
735c9ccf3a3SEmmanuel Vadot
736d5b0e70fSEmmanuel Vadot			clock-names = "xo", "sleep";
737c9ccf3a3SEmmanuel Vadot			clocks = <&xo_board>, <&sleep_clk>;
738c66ec88fSEmmanuel Vadot		};
739c66ec88fSEmmanuel Vadot
7408cc087a1SEmmanuel Vadot		rpm_msg_ram: sram@fc428000 {
741c66ec88fSEmmanuel Vadot			compatible = "qcom,rpm-msg-ram";
742c66ec88fSEmmanuel Vadot			reg = <0xfc428000 0x4000>;
743c66ec88fSEmmanuel Vadot		};
744c66ec88fSEmmanuel Vadot
745c66ec88fSEmmanuel Vadot		restart@fc4ab000 {
746c66ec88fSEmmanuel Vadot			compatible = "qcom,pshold";
747c66ec88fSEmmanuel Vadot			reg = <0xfc4ab000 0x4>;
748c66ec88fSEmmanuel Vadot		};
749c66ec88fSEmmanuel Vadot
750f126890aSEmmanuel Vadot		spmi_bus: spmi@fc4cf000 {
751c66ec88fSEmmanuel Vadot			compatible = "qcom,spmi-pmic-arb";
752c66ec88fSEmmanuel Vadot			reg = <0xfc4cf000 0x1000>,
753c66ec88fSEmmanuel Vadot			      <0xfc4cb000 0x1000>,
754c66ec88fSEmmanuel Vadot			      <0xfc4ca000 0x1000>;
755c66ec88fSEmmanuel Vadot			reg-names = "core", "intr", "cnfg";
756c66ec88fSEmmanuel Vadot			interrupt-names = "periph_irq";
757c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 190 IRQ_TYPE_LEVEL_HIGH>;
758c66ec88fSEmmanuel Vadot			qcom,ee = <0>;
759c66ec88fSEmmanuel Vadot			qcom,channel = <0>;
760c66ec88fSEmmanuel Vadot			#address-cells = <2>;
761c66ec88fSEmmanuel Vadot			#size-cells = <0>;
762c66ec88fSEmmanuel Vadot			interrupt-controller;
763c66ec88fSEmmanuel Vadot			#interrupt-cells = <4>;
764c66ec88fSEmmanuel Vadot		};
765c66ec88fSEmmanuel Vadot
7667ef62cebSEmmanuel Vadot		tcsr_mutex: hwlock@fd484000 {
7677ef62cebSEmmanuel Vadot			compatible = "qcom,msm8994-tcsr-mutex", "qcom,tcsr-mutex";
7687ef62cebSEmmanuel Vadot			reg = <0xfd484000 0x1000>;
7697ef62cebSEmmanuel Vadot			#hwlock-cells = <1>;
770c66ec88fSEmmanuel Vadot		};
771c66ec88fSEmmanuel Vadot
772c66ec88fSEmmanuel Vadot		tlmm: pinctrl@fd510000 {
773c66ec88fSEmmanuel Vadot			compatible = "qcom,msm8994-pinctrl";
774c66ec88fSEmmanuel Vadot			reg = <0xfd510000 0x4000>;
775c66ec88fSEmmanuel Vadot			interrupts = <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>;
776c66ec88fSEmmanuel Vadot			gpio-controller;
777c66ec88fSEmmanuel Vadot			gpio-ranges = <&tlmm 0 0 146>;
778c66ec88fSEmmanuel Vadot			#gpio-cells = <2>;
779c66ec88fSEmmanuel Vadot			interrupt-controller;
780c66ec88fSEmmanuel Vadot			#interrupt-cells = <2>;
781c66ec88fSEmmanuel Vadot
7828bab661aSEmmanuel Vadot			blsp1_uart2_default: blsp1-uart2-default-state {
783c66ec88fSEmmanuel Vadot				pins = "gpio4", "gpio5";
7848bab661aSEmmanuel Vadot				function = "blsp_uart2";
785c66ec88fSEmmanuel Vadot				drive-strength = <16>;
786c66ec88fSEmmanuel Vadot				bias-disable;
787c66ec88fSEmmanuel Vadot			};
788c66ec88fSEmmanuel Vadot
7898bab661aSEmmanuel Vadot			blsp1_uart2_sleep: blsp1-uart2-sleep-state {
790c66ec88fSEmmanuel Vadot				pins = "gpio4", "gpio5";
7918bab661aSEmmanuel Vadot				function = "gpio";
792c66ec88fSEmmanuel Vadot				drive-strength = <2>;
793c66ec88fSEmmanuel Vadot				bias-pull-down;
794c66ec88fSEmmanuel Vadot			};
795c66ec88fSEmmanuel Vadot
7968bab661aSEmmanuel Vadot			blsp2_uart2_default: blsp2-uart2-default-state {
7978bab661aSEmmanuel Vadot				pins = "gpio45", "gpio46", "gpio47", "gpio48";
798c66ec88fSEmmanuel Vadot				function = "blsp_uart8";
7995def4c47SEmmanuel Vadot				drive-strength = <16>;
800c66ec88fSEmmanuel Vadot				bias-disable;
801c66ec88fSEmmanuel Vadot			};
802c66ec88fSEmmanuel Vadot
8038bab661aSEmmanuel Vadot			blsp2_uart2_sleep: blsp2-uart2-sleep-state {
8048bab661aSEmmanuel Vadot				pins = "gpio45", "gpio46", "gpio47", "gpio48";
805c66ec88fSEmmanuel Vadot				function = "gpio";
806c66ec88fSEmmanuel Vadot				drive-strength = <2>;
8075def4c47SEmmanuel Vadot				bias-disable;
808c66ec88fSEmmanuel Vadot			};
809c66ec88fSEmmanuel Vadot
8108bab661aSEmmanuel Vadot			i2c1_default: i2c1-default-state {
8118bab661aSEmmanuel Vadot				pins = "gpio2", "gpio3";
812c66ec88fSEmmanuel Vadot				function = "blsp_i2c1";
813c66ec88fSEmmanuel Vadot				drive-strength = <2>;
814c66ec88fSEmmanuel Vadot				bias-disable;
815c66ec88fSEmmanuel Vadot			};
816c66ec88fSEmmanuel Vadot
8178bab661aSEmmanuel Vadot			i2c1_sleep: i2c1-sleep-state {
8188bab661aSEmmanuel Vadot				pins = "gpio2", "gpio3";
819c66ec88fSEmmanuel Vadot				function = "gpio";
820c66ec88fSEmmanuel Vadot				drive-strength = <2>;
821c66ec88fSEmmanuel Vadot				bias-disable;
822c66ec88fSEmmanuel Vadot			};
823c66ec88fSEmmanuel Vadot
8248bab661aSEmmanuel Vadot			i2c2_default: i2c2-default-state {
8258bab661aSEmmanuel Vadot				pins = "gpio6", "gpio7";
826c66ec88fSEmmanuel Vadot				function = "blsp_i2c2";
827c66ec88fSEmmanuel Vadot				drive-strength = <2>;
828c66ec88fSEmmanuel Vadot				bias-disable;
829c66ec88fSEmmanuel Vadot			};
830c66ec88fSEmmanuel Vadot
8318bab661aSEmmanuel Vadot			i2c2_sleep: i2c2-sleep-state {
8328bab661aSEmmanuel Vadot				pins = "gpio6", "gpio7";
833c66ec88fSEmmanuel Vadot				function = "gpio";
834c66ec88fSEmmanuel Vadot				drive-strength = <2>;
835c66ec88fSEmmanuel Vadot				bias-disable;
836c66ec88fSEmmanuel Vadot			};
837c66ec88fSEmmanuel Vadot
8388bab661aSEmmanuel Vadot			i2c4_default: i2c4-default-state {
8398bab661aSEmmanuel Vadot				pins = "gpio19", "gpio20";
840c66ec88fSEmmanuel Vadot				function = "blsp_i2c4";
841c66ec88fSEmmanuel Vadot				drive-strength = <2>;
842c66ec88fSEmmanuel Vadot				bias-disable;
843c66ec88fSEmmanuel Vadot			};
844c66ec88fSEmmanuel Vadot
8458bab661aSEmmanuel Vadot			i2c4_sleep: i2c4-sleep-state {
846c66ec88fSEmmanuel Vadot				pins = "gpio19", "gpio20";
8478bab661aSEmmanuel Vadot				function = "gpio";
848c66ec88fSEmmanuel Vadot				drive-strength = <2>;
849c66ec88fSEmmanuel Vadot				bias-pull-down;
850c66ec88fSEmmanuel Vadot			};
851c66ec88fSEmmanuel Vadot
8528bab661aSEmmanuel Vadot			i2c5_default: i2c5-default-state {
8538bab661aSEmmanuel Vadot				pins = "gpio23", "gpio24";
854c66ec88fSEmmanuel Vadot				function = "blsp_i2c5";
855c66ec88fSEmmanuel Vadot				drive-strength = <2>;
856c66ec88fSEmmanuel Vadot				bias-disable;
857c66ec88fSEmmanuel Vadot			};
858c66ec88fSEmmanuel Vadot
8598bab661aSEmmanuel Vadot			i2c5_sleep: i2c5-sleep-state {
8608bab661aSEmmanuel Vadot				pins = "gpio23", "gpio24";
861c66ec88fSEmmanuel Vadot				function = "gpio";
862c66ec88fSEmmanuel Vadot				drive-strength = <2>;
863c66ec88fSEmmanuel Vadot				bias-disable;
864c66ec88fSEmmanuel Vadot			};
865c66ec88fSEmmanuel Vadot
8668bab661aSEmmanuel Vadot			i2c6_default: i2c6-default-state {
8678bab661aSEmmanuel Vadot				pins = "gpio28", "gpio27";
868c66ec88fSEmmanuel Vadot				function = "blsp_i2c6";
869c66ec88fSEmmanuel Vadot				drive-strength = <2>;
870c66ec88fSEmmanuel Vadot				bias-disable;
871c66ec88fSEmmanuel Vadot			};
872c66ec88fSEmmanuel Vadot
8738bab661aSEmmanuel Vadot			i2c6_sleep: i2c6-sleep-state {
8748bab661aSEmmanuel Vadot				pins = "gpio28", "gpio27";
875c66ec88fSEmmanuel Vadot				function = "gpio";
876c66ec88fSEmmanuel Vadot				drive-strength = <2>;
877c66ec88fSEmmanuel Vadot				bias-disable;
878c66ec88fSEmmanuel Vadot			};
879c66ec88fSEmmanuel Vadot
8808bab661aSEmmanuel Vadot			i2c7_default: i2c7-default-state {
8818bab661aSEmmanuel Vadot				pins = "gpio44", "gpio43";
8825def4c47SEmmanuel Vadot				function = "blsp_i2c7";
8835def4c47SEmmanuel Vadot				drive-strength = <2>;
8845def4c47SEmmanuel Vadot				bias-disable;
8855def4c47SEmmanuel Vadot			};
8865def4c47SEmmanuel Vadot
8878bab661aSEmmanuel Vadot			i2c7_sleep: i2c7-sleep-state {
8888bab661aSEmmanuel Vadot				pins = "gpio44", "gpio43";
8895def4c47SEmmanuel Vadot				function = "gpio";
8905def4c47SEmmanuel Vadot				drive-strength = <2>;
8915def4c47SEmmanuel Vadot				bias-disable;
8925def4c47SEmmanuel Vadot			};
8935def4c47SEmmanuel Vadot
8948bab661aSEmmanuel Vadot			blsp2_spi10_default: blsp2-spi10-default-state {
8958bab661aSEmmanuel Vadot				default-pins {
8968bab661aSEmmanuel Vadot					pins = "gpio53", "gpio54", "gpio55";
8975def4c47SEmmanuel Vadot					function = "blsp_spi10";
8985def4c47SEmmanuel Vadot					drive-strength = <10>;
8995def4c47SEmmanuel Vadot					bias-pull-down;
9005def4c47SEmmanuel Vadot				};
9018bab661aSEmmanuel Vadot
9028bab661aSEmmanuel Vadot				cs-pins {
9038bab661aSEmmanuel Vadot					pins = "gpio67";
9045def4c47SEmmanuel Vadot					function = "gpio";
9055def4c47SEmmanuel Vadot					drive-strength = <2>;
9065def4c47SEmmanuel Vadot					bias-disable;
9075def4c47SEmmanuel Vadot				};
9085def4c47SEmmanuel Vadot			};
9095def4c47SEmmanuel Vadot
9108bab661aSEmmanuel Vadot			blsp2_spi10_sleep: blsp2-spi10-sleep-state {
9115def4c47SEmmanuel Vadot				pins = "gpio53", "gpio54", "gpio55";
9128bab661aSEmmanuel Vadot				function = "gpio";
9135def4c47SEmmanuel Vadot				drive-strength = <2>;
9145def4c47SEmmanuel Vadot				bias-disable;
9155def4c47SEmmanuel Vadot			};
9165def4c47SEmmanuel Vadot
9178bab661aSEmmanuel Vadot			i2c11_default: i2c11-default-state {
9188bab661aSEmmanuel Vadot				pins = "gpio83", "gpio84";
9195def4c47SEmmanuel Vadot				function = "blsp_i2c11";
9205def4c47SEmmanuel Vadot				drive-strength = <2>;
9215def4c47SEmmanuel Vadot				bias-disable;
9225def4c47SEmmanuel Vadot			};
9235def4c47SEmmanuel Vadot
9248bab661aSEmmanuel Vadot			i2c11_sleep: i2c11-sleep-state {
9258bab661aSEmmanuel Vadot				pins = "gpio83", "gpio84";
9265def4c47SEmmanuel Vadot				function = "gpio";
9275def4c47SEmmanuel Vadot				drive-strength = <2>;
9285def4c47SEmmanuel Vadot				bias-disable;
9295def4c47SEmmanuel Vadot			};
9305def4c47SEmmanuel Vadot
9318bab661aSEmmanuel Vadot			blsp1_spi1_default: blsp1-spi1-default-state {
9328bab661aSEmmanuel Vadot				default-pins {
933c66ec88fSEmmanuel Vadot					pins = "gpio0", "gpio1", "gpio3";
9348bab661aSEmmanuel Vadot					function = "blsp_spi1";
935c66ec88fSEmmanuel Vadot					drive-strength = <10>;
936c66ec88fSEmmanuel Vadot					bias-pull-down;
937c66ec88fSEmmanuel Vadot				};
9388bab661aSEmmanuel Vadot
9398bab661aSEmmanuel Vadot				cs-pins {
940c66ec88fSEmmanuel Vadot					pins = "gpio8";
9418bab661aSEmmanuel Vadot					function = "gpio";
942c66ec88fSEmmanuel Vadot					drive-strength = <2>;
943c66ec88fSEmmanuel Vadot					bias-disable;
944c66ec88fSEmmanuel Vadot				};
945c66ec88fSEmmanuel Vadot			};
946c66ec88fSEmmanuel Vadot
9478bab661aSEmmanuel Vadot			blsp1_spi1_sleep: blsp1-spi1-sleep-state {
948c66ec88fSEmmanuel Vadot				pins = "gpio0", "gpio1", "gpio3";
9498bab661aSEmmanuel Vadot				function = "gpio";
950c66ec88fSEmmanuel Vadot				drive-strength = <2>;
951c66ec88fSEmmanuel Vadot				bias-disable;
952c66ec88fSEmmanuel Vadot			};
953c66ec88fSEmmanuel Vadot
9548bab661aSEmmanuel Vadot			sdc1_clk_on: clk-on-state {
955c66ec88fSEmmanuel Vadot				pins = "sdc1_clk";
956c66ec88fSEmmanuel Vadot				bias-disable;
957c66ec88fSEmmanuel Vadot				drive-strength = <16>;
958c66ec88fSEmmanuel Vadot			};
959c66ec88fSEmmanuel Vadot
9608bab661aSEmmanuel Vadot			sdc1_clk_off: clk-off-state {
961c66ec88fSEmmanuel Vadot				pins = "sdc1_clk";
962c66ec88fSEmmanuel Vadot				bias-disable;
963c66ec88fSEmmanuel Vadot				drive-strength = <2>;
964c66ec88fSEmmanuel Vadot			};
965c66ec88fSEmmanuel Vadot
9668bab661aSEmmanuel Vadot			sdc1_cmd_on: cmd-on-state {
967c66ec88fSEmmanuel Vadot				pins = "sdc1_cmd";
968c66ec88fSEmmanuel Vadot				bias-pull-up;
969c66ec88fSEmmanuel Vadot				drive-strength = <8>;
970c66ec88fSEmmanuel Vadot			};
971c66ec88fSEmmanuel Vadot
9728bab661aSEmmanuel Vadot			sdc1_cmd_off: cmd-off-state {
973c66ec88fSEmmanuel Vadot				pins = "sdc1_cmd";
974c66ec88fSEmmanuel Vadot				bias-pull-up;
975c66ec88fSEmmanuel Vadot				drive-strength = <2>;
976c66ec88fSEmmanuel Vadot			};
977c66ec88fSEmmanuel Vadot
9788bab661aSEmmanuel Vadot			sdc1_data_on: data-on-state {
979c66ec88fSEmmanuel Vadot				pins = "sdc1_data";
980c66ec88fSEmmanuel Vadot				bias-pull-up;
981c66ec88fSEmmanuel Vadot				drive-strength = <8>;
982c66ec88fSEmmanuel Vadot			};
983c66ec88fSEmmanuel Vadot
9848bab661aSEmmanuel Vadot			sdc1_data_off: data-off-state {
985c66ec88fSEmmanuel Vadot				pins = "sdc1_data";
986c66ec88fSEmmanuel Vadot				bias-pull-up;
987c66ec88fSEmmanuel Vadot				drive-strength = <2>;
988c66ec88fSEmmanuel Vadot			};
989c66ec88fSEmmanuel Vadot
9908bab661aSEmmanuel Vadot			sdc1_rclk_on: rclk-on-state {
991c66ec88fSEmmanuel Vadot				pins = "sdc1_rclk";
992c66ec88fSEmmanuel Vadot				bias-pull-down;
993c66ec88fSEmmanuel Vadot			};
994c66ec88fSEmmanuel Vadot
9958bab661aSEmmanuel Vadot			sdc1_rclk_off: rclk-off-state {
996c66ec88fSEmmanuel Vadot				pins = "sdc1_rclk";
997c66ec88fSEmmanuel Vadot				bias-pull-down;
998c66ec88fSEmmanuel Vadot			};
9995def4c47SEmmanuel Vadot
10008bab661aSEmmanuel Vadot			sdc2_clk_on: sdc2-clk-on-state {
10015def4c47SEmmanuel Vadot				pins = "sdc2_clk";
10025def4c47SEmmanuel Vadot				bias-disable;
10035def4c47SEmmanuel Vadot				drive-strength = <10>;
10045def4c47SEmmanuel Vadot			};
10055def4c47SEmmanuel Vadot
10068bab661aSEmmanuel Vadot			sdc2_clk_off: sdc2-clk-off-state {
10075def4c47SEmmanuel Vadot				pins = "sdc2_clk";
10085def4c47SEmmanuel Vadot				bias-disable;
10095def4c47SEmmanuel Vadot				drive-strength = <2>;
10105def4c47SEmmanuel Vadot			};
10115def4c47SEmmanuel Vadot
10128bab661aSEmmanuel Vadot			sdc2_cmd_on: sdc2-cmd-on-state {
10135def4c47SEmmanuel Vadot				pins = "sdc2_cmd";
10145def4c47SEmmanuel Vadot				bias-pull-up;
10155def4c47SEmmanuel Vadot				drive-strength = <10>;
10165def4c47SEmmanuel Vadot			};
10175def4c47SEmmanuel Vadot
10188bab661aSEmmanuel Vadot			sdc2_cmd_off: sdc2-cmd-off-state {
10195def4c47SEmmanuel Vadot				pins = "sdc2_cmd";
10205def4c47SEmmanuel Vadot				bias-pull-up;
10215def4c47SEmmanuel Vadot				drive-strength = <2>;
10225def4c47SEmmanuel Vadot			};
10235def4c47SEmmanuel Vadot
10248bab661aSEmmanuel Vadot			sdc2_data_on: sdc2-data-on-state {
10255def4c47SEmmanuel Vadot				pins = "sdc2_data";
10265def4c47SEmmanuel Vadot				bias-pull-up;
10275def4c47SEmmanuel Vadot				drive-strength = <10>;
10285def4c47SEmmanuel Vadot			};
10295def4c47SEmmanuel Vadot
10308bab661aSEmmanuel Vadot			sdc2_data_off: sdc2-data-off-state {
10315def4c47SEmmanuel Vadot				pins = "sdc2_data";
10325def4c47SEmmanuel Vadot				bias-pull-up;
10335def4c47SEmmanuel Vadot				drive-strength = <2>;
10345def4c47SEmmanuel Vadot			};
1035c66ec88fSEmmanuel Vadot		};
1036d5b0e70fSEmmanuel Vadot
1037d5b0e70fSEmmanuel Vadot		mmcc: clock-controller@fd8c0000 {
1038d5b0e70fSEmmanuel Vadot			compatible = "qcom,mmcc-msm8994";
1039d5b0e70fSEmmanuel Vadot			reg = <0xfd8c0000 0x5200>;
1040d5b0e70fSEmmanuel Vadot			#clock-cells = <1>;
1041d5b0e70fSEmmanuel Vadot			#reset-cells = <1>;
1042d5b0e70fSEmmanuel Vadot			#power-domain-cells = <1>;
1043d5b0e70fSEmmanuel Vadot
1044d5b0e70fSEmmanuel Vadot			clock-names = "xo",
1045d5b0e70fSEmmanuel Vadot				      "gpll0",
1046d5b0e70fSEmmanuel Vadot				      "mmssnoc_ahb",
1047d5b0e70fSEmmanuel Vadot				      "oxili_gfx3d_clk_src",
1048d5b0e70fSEmmanuel Vadot				      "dsi0pll",
1049d5b0e70fSEmmanuel Vadot				      "dsi0pllbyte",
1050d5b0e70fSEmmanuel Vadot				      "dsi1pll",
1051d5b0e70fSEmmanuel Vadot				      "dsi1pllbyte",
1052d5b0e70fSEmmanuel Vadot				      "hdmipll";
1053d5b0e70fSEmmanuel Vadot			clocks = <&xo_board>,
1054d5b0e70fSEmmanuel Vadot				 <&gcc GPLL0_OUT_MMSSCC>,
1055d5b0e70fSEmmanuel Vadot				 <&rpmcc RPM_SMD_MMSSNOC_AHB_CLK>,
1056d5b0e70fSEmmanuel Vadot				 <&rpmcc RPM_SMD_GFX3D_CLK_SRC>,
1057d5b0e70fSEmmanuel Vadot				 <0>,
1058d5b0e70fSEmmanuel Vadot				 <0>,
1059d5b0e70fSEmmanuel Vadot				 <0>,
1060d5b0e70fSEmmanuel Vadot				 <0>,
1061d5b0e70fSEmmanuel Vadot				 <0>;
1062d5b0e70fSEmmanuel Vadot
1063d5b0e70fSEmmanuel Vadot			assigned-clocks = <&mmcc MMPLL0_PLL>,
1064d5b0e70fSEmmanuel Vadot					  <&mmcc MMPLL1_PLL>,
1065d5b0e70fSEmmanuel Vadot					  <&mmcc MMPLL3_PLL>,
1066d5b0e70fSEmmanuel Vadot					  <&mmcc MMPLL4_PLL>,
1067d5b0e70fSEmmanuel Vadot					  <&mmcc MMPLL5_PLL>;
1068d5b0e70fSEmmanuel Vadot			assigned-clock-rates = <800000000>,
1069d5b0e70fSEmmanuel Vadot					       <1167000000>,
1070d5b0e70fSEmmanuel Vadot					       <1020000000>,
1071d5b0e70fSEmmanuel Vadot					       <960000000>,
1072d5b0e70fSEmmanuel Vadot					       <600000000>;
1073d5b0e70fSEmmanuel Vadot		};
1074d5b0e70fSEmmanuel Vadot
1075b97ee269SEmmanuel Vadot		ocmem: sram@fdd00000 {
1076d5b0e70fSEmmanuel Vadot			compatible = "qcom,msm8974-ocmem";
1077d5b0e70fSEmmanuel Vadot			reg = <0xfdd00000 0x2000>,
1078d5b0e70fSEmmanuel Vadot			      <0xfec00000 0x200000>;
1079d5b0e70fSEmmanuel Vadot			reg-names = "ctrl", "mem";
1080b97ee269SEmmanuel Vadot			ranges = <0 0xfec00000 0x200000>;
1081d5b0e70fSEmmanuel Vadot			clocks = <&rpmcc RPM_SMD_OCMEMGX_CLK>,
1082d5b0e70fSEmmanuel Vadot				 <&mmcc OCMEMCX_OCMEMNOC_CLK>;
1083d5b0e70fSEmmanuel Vadot			clock-names = "core", "iface";
1084d5b0e70fSEmmanuel Vadot
1085d5b0e70fSEmmanuel Vadot			#address-cells = <1>;
1086d5b0e70fSEmmanuel Vadot			#size-cells = <1>;
1087d5b0e70fSEmmanuel Vadot
1088d5b0e70fSEmmanuel Vadot			gmu_sram: gmu-sram@0 {
1089d5b0e70fSEmmanuel Vadot				reg = <0x0 0x180000>;
1090d5b0e70fSEmmanuel Vadot			};
1091d5b0e70fSEmmanuel Vadot		};
1092c66ec88fSEmmanuel Vadot	};
1093c66ec88fSEmmanuel Vadot
10945def4c47SEmmanuel Vadot	timer: timer {
1095c66ec88fSEmmanuel Vadot		compatible = "arm,armv8-timer";
1096c66ec88fSEmmanuel Vadot		interrupts = <GIC_PPI 2 0xff08>,
1097c66ec88fSEmmanuel Vadot			     <GIC_PPI 3 0xff08>,
1098c66ec88fSEmmanuel Vadot			     <GIC_PPI 4 0xff08>,
1099c66ec88fSEmmanuel Vadot			     <GIC_PPI 1 0xff08>;
1100c66ec88fSEmmanuel Vadot	};
1101c66ec88fSEmmanuel Vadot
11025def4c47SEmmanuel Vadot	vph_pwr: vph-pwr-regulator {
1103c66ec88fSEmmanuel Vadot		compatible = "regulator-fixed";
11045def4c47SEmmanuel Vadot		regulator-name = "vph_pwr";
1105c66ec88fSEmmanuel Vadot
1106c66ec88fSEmmanuel Vadot		regulator-min-microvolt = <3600000>;
1107c66ec88fSEmmanuel Vadot		regulator-max-microvolt = <3600000>;
1108c66ec88fSEmmanuel Vadot
1109c66ec88fSEmmanuel Vadot		regulator-always-on;
1110c66ec88fSEmmanuel Vadot	};
1111c66ec88fSEmmanuel Vadot};
1112c66ec88fSEmmanuel Vadot
1113