xref: /freebsd-src/sys/contrib/device-tree/src/arm/qcom/qcom-apq8064.dtsi (revision f126890ac5386406dadf7c4cfa9566cbb56537c5)
1*f126890aSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0
2*f126890aSEmmanuel Vadot/dts-v1/;
3*f126890aSEmmanuel Vadot
4*f126890aSEmmanuel Vadot#include <dt-bindings/clock/qcom,gcc-msm8960.h>
5*f126890aSEmmanuel Vadot#include <dt-bindings/clock/qcom,lcc-msm8960.h>
6*f126890aSEmmanuel Vadot#include <dt-bindings/reset/qcom,gcc-msm8960.h>
7*f126890aSEmmanuel Vadot#include <dt-bindings/clock/qcom,mmcc-msm8960.h>
8*f126890aSEmmanuel Vadot#include <dt-bindings/clock/qcom,rpmcc.h>
9*f126890aSEmmanuel Vadot#include <dt-bindings/soc/qcom,gsbi.h>
10*f126890aSEmmanuel Vadot#include <dt-bindings/interrupt-controller/irq.h>
11*f126890aSEmmanuel Vadot#include <dt-bindings/interrupt-controller/arm-gic.h>
12*f126890aSEmmanuel Vadot/ {
13*f126890aSEmmanuel Vadot	#address-cells = <1>;
14*f126890aSEmmanuel Vadot	#size-cells = <1>;
15*f126890aSEmmanuel Vadot	model = "Qualcomm APQ8064";
16*f126890aSEmmanuel Vadot	compatible = "qcom,apq8064";
17*f126890aSEmmanuel Vadot	interrupt-parent = <&intc>;
18*f126890aSEmmanuel Vadot
19*f126890aSEmmanuel Vadot	reserved-memory {
20*f126890aSEmmanuel Vadot		#address-cells = <1>;
21*f126890aSEmmanuel Vadot		#size-cells = <1>;
22*f126890aSEmmanuel Vadot		ranges;
23*f126890aSEmmanuel Vadot
24*f126890aSEmmanuel Vadot		smem_region: smem@80000000 {
25*f126890aSEmmanuel Vadot			reg = <0x80000000 0x200000>;
26*f126890aSEmmanuel Vadot			no-map;
27*f126890aSEmmanuel Vadot		};
28*f126890aSEmmanuel Vadot
29*f126890aSEmmanuel Vadot		wcnss_mem: wcnss@8f000000 {
30*f126890aSEmmanuel Vadot			reg = <0x8f000000 0x700000>;
31*f126890aSEmmanuel Vadot			no-map;
32*f126890aSEmmanuel Vadot		};
33*f126890aSEmmanuel Vadot	};
34*f126890aSEmmanuel Vadot
35*f126890aSEmmanuel Vadot	cpus {
36*f126890aSEmmanuel Vadot		#address-cells = <1>;
37*f126890aSEmmanuel Vadot		#size-cells = <0>;
38*f126890aSEmmanuel Vadot
39*f126890aSEmmanuel Vadot		CPU0: cpu@0 {
40*f126890aSEmmanuel Vadot			compatible = "qcom,krait";
41*f126890aSEmmanuel Vadot			enable-method = "qcom,kpss-acc-v1";
42*f126890aSEmmanuel Vadot			device_type = "cpu";
43*f126890aSEmmanuel Vadot			reg = <0>;
44*f126890aSEmmanuel Vadot			next-level-cache = <&L2>;
45*f126890aSEmmanuel Vadot			qcom,acc = <&acc0>;
46*f126890aSEmmanuel Vadot			qcom,saw = <&saw0>;
47*f126890aSEmmanuel Vadot			cpu-idle-states = <&CPU_SPC>;
48*f126890aSEmmanuel Vadot		};
49*f126890aSEmmanuel Vadot
50*f126890aSEmmanuel Vadot		CPU1: cpu@1 {
51*f126890aSEmmanuel Vadot			compatible = "qcom,krait";
52*f126890aSEmmanuel Vadot			enable-method = "qcom,kpss-acc-v1";
53*f126890aSEmmanuel Vadot			device_type = "cpu";
54*f126890aSEmmanuel Vadot			reg = <1>;
55*f126890aSEmmanuel Vadot			next-level-cache = <&L2>;
56*f126890aSEmmanuel Vadot			qcom,acc = <&acc1>;
57*f126890aSEmmanuel Vadot			qcom,saw = <&saw1>;
58*f126890aSEmmanuel Vadot			cpu-idle-states = <&CPU_SPC>;
59*f126890aSEmmanuel Vadot		};
60*f126890aSEmmanuel Vadot
61*f126890aSEmmanuel Vadot		CPU2: cpu@2 {
62*f126890aSEmmanuel Vadot			compatible = "qcom,krait";
63*f126890aSEmmanuel Vadot			enable-method = "qcom,kpss-acc-v1";
64*f126890aSEmmanuel Vadot			device_type = "cpu";
65*f126890aSEmmanuel Vadot			reg = <2>;
66*f126890aSEmmanuel Vadot			next-level-cache = <&L2>;
67*f126890aSEmmanuel Vadot			qcom,acc = <&acc2>;
68*f126890aSEmmanuel Vadot			qcom,saw = <&saw2>;
69*f126890aSEmmanuel Vadot			cpu-idle-states = <&CPU_SPC>;
70*f126890aSEmmanuel Vadot		};
71*f126890aSEmmanuel Vadot
72*f126890aSEmmanuel Vadot		CPU3: cpu@3 {
73*f126890aSEmmanuel Vadot			compatible = "qcom,krait";
74*f126890aSEmmanuel Vadot			enable-method = "qcom,kpss-acc-v1";
75*f126890aSEmmanuel Vadot			device_type = "cpu";
76*f126890aSEmmanuel Vadot			reg = <3>;
77*f126890aSEmmanuel Vadot			next-level-cache = <&L2>;
78*f126890aSEmmanuel Vadot			qcom,acc = <&acc3>;
79*f126890aSEmmanuel Vadot			qcom,saw = <&saw3>;
80*f126890aSEmmanuel Vadot			cpu-idle-states = <&CPU_SPC>;
81*f126890aSEmmanuel Vadot		};
82*f126890aSEmmanuel Vadot
83*f126890aSEmmanuel Vadot		L2: l2-cache {
84*f126890aSEmmanuel Vadot			compatible = "cache";
85*f126890aSEmmanuel Vadot			cache-level = <2>;
86*f126890aSEmmanuel Vadot			cache-unified;
87*f126890aSEmmanuel Vadot		};
88*f126890aSEmmanuel Vadot
89*f126890aSEmmanuel Vadot		idle-states {
90*f126890aSEmmanuel Vadot			CPU_SPC: spc {
91*f126890aSEmmanuel Vadot				compatible = "qcom,idle-state-spc",
92*f126890aSEmmanuel Vadot						"arm,idle-state";
93*f126890aSEmmanuel Vadot				entry-latency-us = <400>;
94*f126890aSEmmanuel Vadot				exit-latency-us = <900>;
95*f126890aSEmmanuel Vadot				min-residency-us = <3000>;
96*f126890aSEmmanuel Vadot			};
97*f126890aSEmmanuel Vadot		};
98*f126890aSEmmanuel Vadot	};
99*f126890aSEmmanuel Vadot
100*f126890aSEmmanuel Vadot	memory@0 {
101*f126890aSEmmanuel Vadot		device_type = "memory";
102*f126890aSEmmanuel Vadot		reg = <0x0 0x0>;
103*f126890aSEmmanuel Vadot	};
104*f126890aSEmmanuel Vadot
105*f126890aSEmmanuel Vadot	thermal-zones {
106*f126890aSEmmanuel Vadot		cpu0-thermal {
107*f126890aSEmmanuel Vadot			polling-delay-passive = <250>;
108*f126890aSEmmanuel Vadot			polling-delay = <1000>;
109*f126890aSEmmanuel Vadot
110*f126890aSEmmanuel Vadot			thermal-sensors = <&tsens 7>;
111*f126890aSEmmanuel Vadot			coefficients = <1199 0>;
112*f126890aSEmmanuel Vadot
113*f126890aSEmmanuel Vadot			trips {
114*f126890aSEmmanuel Vadot				cpu_alert0: trip0 {
115*f126890aSEmmanuel Vadot					temperature = <75000>;
116*f126890aSEmmanuel Vadot					hysteresis = <2000>;
117*f126890aSEmmanuel Vadot					type = "passive";
118*f126890aSEmmanuel Vadot				};
119*f126890aSEmmanuel Vadot				cpu_crit0: trip1 {
120*f126890aSEmmanuel Vadot					temperature = <110000>;
121*f126890aSEmmanuel Vadot					hysteresis = <2000>;
122*f126890aSEmmanuel Vadot					type = "critical";
123*f126890aSEmmanuel Vadot				};
124*f126890aSEmmanuel Vadot			};
125*f126890aSEmmanuel Vadot		};
126*f126890aSEmmanuel Vadot
127*f126890aSEmmanuel Vadot		cpu1-thermal {
128*f126890aSEmmanuel Vadot			polling-delay-passive = <250>;
129*f126890aSEmmanuel Vadot			polling-delay = <1000>;
130*f126890aSEmmanuel Vadot
131*f126890aSEmmanuel Vadot			thermal-sensors = <&tsens 8>;
132*f126890aSEmmanuel Vadot			coefficients = <1132 0>;
133*f126890aSEmmanuel Vadot
134*f126890aSEmmanuel Vadot			trips {
135*f126890aSEmmanuel Vadot				cpu_alert1: trip0 {
136*f126890aSEmmanuel Vadot					temperature = <75000>;
137*f126890aSEmmanuel Vadot					hysteresis = <2000>;
138*f126890aSEmmanuel Vadot					type = "passive";
139*f126890aSEmmanuel Vadot				};
140*f126890aSEmmanuel Vadot				cpu_crit1: trip1 {
141*f126890aSEmmanuel Vadot					temperature = <110000>;
142*f126890aSEmmanuel Vadot					hysteresis = <2000>;
143*f126890aSEmmanuel Vadot					type = "critical";
144*f126890aSEmmanuel Vadot				};
145*f126890aSEmmanuel Vadot			};
146*f126890aSEmmanuel Vadot		};
147*f126890aSEmmanuel Vadot
148*f126890aSEmmanuel Vadot		cpu2-thermal {
149*f126890aSEmmanuel Vadot			polling-delay-passive = <250>;
150*f126890aSEmmanuel Vadot			polling-delay = <1000>;
151*f126890aSEmmanuel Vadot
152*f126890aSEmmanuel Vadot			thermal-sensors = <&tsens 9>;
153*f126890aSEmmanuel Vadot			coefficients = <1199 0>;
154*f126890aSEmmanuel Vadot
155*f126890aSEmmanuel Vadot			trips {
156*f126890aSEmmanuel Vadot				cpu_alert2: trip0 {
157*f126890aSEmmanuel Vadot					temperature = <75000>;
158*f126890aSEmmanuel Vadot					hysteresis = <2000>;
159*f126890aSEmmanuel Vadot					type = "passive";
160*f126890aSEmmanuel Vadot				};
161*f126890aSEmmanuel Vadot				cpu_crit2: trip1 {
162*f126890aSEmmanuel Vadot					temperature = <110000>;
163*f126890aSEmmanuel Vadot					hysteresis = <2000>;
164*f126890aSEmmanuel Vadot					type = "critical";
165*f126890aSEmmanuel Vadot				};
166*f126890aSEmmanuel Vadot			};
167*f126890aSEmmanuel Vadot		};
168*f126890aSEmmanuel Vadot
169*f126890aSEmmanuel Vadot		cpu3-thermal {
170*f126890aSEmmanuel Vadot			polling-delay-passive = <250>;
171*f126890aSEmmanuel Vadot			polling-delay = <1000>;
172*f126890aSEmmanuel Vadot
173*f126890aSEmmanuel Vadot			thermal-sensors = <&tsens 10>;
174*f126890aSEmmanuel Vadot			coefficients = <1132 0>;
175*f126890aSEmmanuel Vadot
176*f126890aSEmmanuel Vadot			trips {
177*f126890aSEmmanuel Vadot				cpu_alert3: trip0 {
178*f126890aSEmmanuel Vadot					temperature = <75000>;
179*f126890aSEmmanuel Vadot					hysteresis = <2000>;
180*f126890aSEmmanuel Vadot					type = "passive";
181*f126890aSEmmanuel Vadot				};
182*f126890aSEmmanuel Vadot				cpu_crit3: trip1 {
183*f126890aSEmmanuel Vadot					temperature = <110000>;
184*f126890aSEmmanuel Vadot					hysteresis = <2000>;
185*f126890aSEmmanuel Vadot					type = "critical";
186*f126890aSEmmanuel Vadot				};
187*f126890aSEmmanuel Vadot			};
188*f126890aSEmmanuel Vadot		};
189*f126890aSEmmanuel Vadot	};
190*f126890aSEmmanuel Vadot
191*f126890aSEmmanuel Vadot	cpu-pmu {
192*f126890aSEmmanuel Vadot		compatible = "qcom,krait-pmu";
193*f126890aSEmmanuel Vadot		interrupts = <1 10 0x304>;
194*f126890aSEmmanuel Vadot	};
195*f126890aSEmmanuel Vadot
196*f126890aSEmmanuel Vadot	clocks {
197*f126890aSEmmanuel Vadot		cxo_board: cxo_board {
198*f126890aSEmmanuel Vadot			compatible = "fixed-clock";
199*f126890aSEmmanuel Vadot			#clock-cells = <0>;
200*f126890aSEmmanuel Vadot			clock-frequency = <19200000>;
201*f126890aSEmmanuel Vadot		};
202*f126890aSEmmanuel Vadot
203*f126890aSEmmanuel Vadot		pxo_board: pxo_board {
204*f126890aSEmmanuel Vadot			compatible = "fixed-clock";
205*f126890aSEmmanuel Vadot			#clock-cells = <0>;
206*f126890aSEmmanuel Vadot			clock-frequency = <27000000>;
207*f126890aSEmmanuel Vadot		};
208*f126890aSEmmanuel Vadot
209*f126890aSEmmanuel Vadot		sleep_clk: sleep_clk {
210*f126890aSEmmanuel Vadot			compatible = "fixed-clock";
211*f126890aSEmmanuel Vadot			#clock-cells = <0>;
212*f126890aSEmmanuel Vadot			clock-frequency = <32768>;
213*f126890aSEmmanuel Vadot		};
214*f126890aSEmmanuel Vadot	};
215*f126890aSEmmanuel Vadot
216*f126890aSEmmanuel Vadot	sfpb_mutex: hwmutex {
217*f126890aSEmmanuel Vadot		compatible = "qcom,sfpb-mutex";
218*f126890aSEmmanuel Vadot		syscon = <&sfpb_wrapper_mutex 0x604 0x4>;
219*f126890aSEmmanuel Vadot		#hwlock-cells = <1>;
220*f126890aSEmmanuel Vadot	};
221*f126890aSEmmanuel Vadot
222*f126890aSEmmanuel Vadot	smem {
223*f126890aSEmmanuel Vadot		compatible = "qcom,smem";
224*f126890aSEmmanuel Vadot		memory-region = <&smem_region>;
225*f126890aSEmmanuel Vadot
226*f126890aSEmmanuel Vadot		hwlocks = <&sfpb_mutex 3>;
227*f126890aSEmmanuel Vadot	};
228*f126890aSEmmanuel Vadot
229*f126890aSEmmanuel Vadot	smd {
230*f126890aSEmmanuel Vadot		compatible = "qcom,smd";
231*f126890aSEmmanuel Vadot
232*f126890aSEmmanuel Vadot		modem-edge {
233*f126890aSEmmanuel Vadot			interrupts = <0 37 IRQ_TYPE_EDGE_RISING>;
234*f126890aSEmmanuel Vadot
235*f126890aSEmmanuel Vadot			qcom,ipc = <&l2cc 8 3>;
236*f126890aSEmmanuel Vadot			qcom,smd-edge = <0>;
237*f126890aSEmmanuel Vadot
238*f126890aSEmmanuel Vadot			status = "disabled";
239*f126890aSEmmanuel Vadot		};
240*f126890aSEmmanuel Vadot
241*f126890aSEmmanuel Vadot		q6-edge {
242*f126890aSEmmanuel Vadot			interrupts = <0 90 IRQ_TYPE_EDGE_RISING>;
243*f126890aSEmmanuel Vadot
244*f126890aSEmmanuel Vadot			qcom,ipc = <&l2cc 8 15>;
245*f126890aSEmmanuel Vadot			qcom,smd-edge = <1>;
246*f126890aSEmmanuel Vadot
247*f126890aSEmmanuel Vadot			status = "disabled";
248*f126890aSEmmanuel Vadot		};
249*f126890aSEmmanuel Vadot
250*f126890aSEmmanuel Vadot		dsps-edge {
251*f126890aSEmmanuel Vadot			interrupts = <0 138 IRQ_TYPE_EDGE_RISING>;
252*f126890aSEmmanuel Vadot
253*f126890aSEmmanuel Vadot			qcom,ipc = <&sps_sic_non_secure 0x4080 0>;
254*f126890aSEmmanuel Vadot			qcom,smd-edge = <3>;
255*f126890aSEmmanuel Vadot
256*f126890aSEmmanuel Vadot			status = "disabled";
257*f126890aSEmmanuel Vadot		};
258*f126890aSEmmanuel Vadot
259*f126890aSEmmanuel Vadot		riva-edge {
260*f126890aSEmmanuel Vadot			interrupts = <0 198 IRQ_TYPE_EDGE_RISING>;
261*f126890aSEmmanuel Vadot
262*f126890aSEmmanuel Vadot			qcom,ipc = <&l2cc 8 25>;
263*f126890aSEmmanuel Vadot			qcom,smd-edge = <6>;
264*f126890aSEmmanuel Vadot
265*f126890aSEmmanuel Vadot			status = "disabled";
266*f126890aSEmmanuel Vadot		};
267*f126890aSEmmanuel Vadot	};
268*f126890aSEmmanuel Vadot
269*f126890aSEmmanuel Vadot	smsm {
270*f126890aSEmmanuel Vadot		compatible = "qcom,smsm";
271*f126890aSEmmanuel Vadot
272*f126890aSEmmanuel Vadot		#address-cells = <1>;
273*f126890aSEmmanuel Vadot		#size-cells = <0>;
274*f126890aSEmmanuel Vadot
275*f126890aSEmmanuel Vadot		qcom,ipc-1 = <&l2cc 8 4>;
276*f126890aSEmmanuel Vadot		qcom,ipc-2 = <&l2cc 8 14>;
277*f126890aSEmmanuel Vadot		qcom,ipc-3 = <&l2cc 8 23>;
278*f126890aSEmmanuel Vadot		qcom,ipc-4 = <&sps_sic_non_secure 0x4094 0>;
279*f126890aSEmmanuel Vadot
280*f126890aSEmmanuel Vadot		apps_smsm: apps@0 {
281*f126890aSEmmanuel Vadot			reg = <0>;
282*f126890aSEmmanuel Vadot			#qcom,smem-state-cells = <1>;
283*f126890aSEmmanuel Vadot		};
284*f126890aSEmmanuel Vadot
285*f126890aSEmmanuel Vadot		modem_smsm: modem@1 {
286*f126890aSEmmanuel Vadot			reg = <1>;
287*f126890aSEmmanuel Vadot			interrupts = <0 38 IRQ_TYPE_EDGE_RISING>;
288*f126890aSEmmanuel Vadot
289*f126890aSEmmanuel Vadot			interrupt-controller;
290*f126890aSEmmanuel Vadot			#interrupt-cells = <2>;
291*f126890aSEmmanuel Vadot		};
292*f126890aSEmmanuel Vadot
293*f126890aSEmmanuel Vadot		q6_smsm: q6@2 {
294*f126890aSEmmanuel Vadot			reg = <2>;
295*f126890aSEmmanuel Vadot			interrupts = <0 89 IRQ_TYPE_EDGE_RISING>;
296*f126890aSEmmanuel Vadot
297*f126890aSEmmanuel Vadot			interrupt-controller;
298*f126890aSEmmanuel Vadot			#interrupt-cells = <2>;
299*f126890aSEmmanuel Vadot		};
300*f126890aSEmmanuel Vadot
301*f126890aSEmmanuel Vadot		wcnss_smsm: wcnss@3 {
302*f126890aSEmmanuel Vadot			reg = <3>;
303*f126890aSEmmanuel Vadot			interrupts = <0 204 IRQ_TYPE_EDGE_RISING>;
304*f126890aSEmmanuel Vadot
305*f126890aSEmmanuel Vadot			interrupt-controller;
306*f126890aSEmmanuel Vadot			#interrupt-cells = <2>;
307*f126890aSEmmanuel Vadot		};
308*f126890aSEmmanuel Vadot
309*f126890aSEmmanuel Vadot		dsps_smsm: dsps@4 {
310*f126890aSEmmanuel Vadot			reg = <4>;
311*f126890aSEmmanuel Vadot			interrupts = <0 137 IRQ_TYPE_EDGE_RISING>;
312*f126890aSEmmanuel Vadot
313*f126890aSEmmanuel Vadot			interrupt-controller;
314*f126890aSEmmanuel Vadot			#interrupt-cells = <2>;
315*f126890aSEmmanuel Vadot		};
316*f126890aSEmmanuel Vadot	};
317*f126890aSEmmanuel Vadot
318*f126890aSEmmanuel Vadot	firmware {
319*f126890aSEmmanuel Vadot		scm {
320*f126890aSEmmanuel Vadot			compatible = "qcom,scm-apq8064", "qcom,scm";
321*f126890aSEmmanuel Vadot
322*f126890aSEmmanuel Vadot			clocks = <&rpmcc RPM_DAYTONA_FABRIC_CLK>;
323*f126890aSEmmanuel Vadot			clock-names = "core";
324*f126890aSEmmanuel Vadot		};
325*f126890aSEmmanuel Vadot	};
326*f126890aSEmmanuel Vadot
327*f126890aSEmmanuel Vadot
328*f126890aSEmmanuel Vadot	/*
329*f126890aSEmmanuel Vadot	 * These channels from the ADC are simply hardware monitors.
330*f126890aSEmmanuel Vadot	 * That is why the ADC is referred to as "HKADC" - HouseKeeping
331*f126890aSEmmanuel Vadot	 * ADC.
332*f126890aSEmmanuel Vadot	 */
333*f126890aSEmmanuel Vadot	iio-hwmon {
334*f126890aSEmmanuel Vadot		compatible = "iio-hwmon";
335*f126890aSEmmanuel Vadot		io-channels = <&xoadc 0x00 0x01>, /* Battery */
336*f126890aSEmmanuel Vadot			    <&xoadc 0x00 0x02>, /* DC in (charger) */
337*f126890aSEmmanuel Vadot			    <&xoadc 0x00 0x04>, /* VPH the main system voltage */
338*f126890aSEmmanuel Vadot			    <&xoadc 0x00 0x0b>, /* Die temperature */
339*f126890aSEmmanuel Vadot			    <&xoadc 0x00 0x0c>, /* Reference voltage 1.25V */
340*f126890aSEmmanuel Vadot			    <&xoadc 0x00 0x0d>, /* Reference voltage 0.625V */
341*f126890aSEmmanuel Vadot			    <&xoadc 0x00 0x0e>; /* Charger temperature */
342*f126890aSEmmanuel Vadot	};
343*f126890aSEmmanuel Vadot
344*f126890aSEmmanuel Vadot	soc: soc {
345*f126890aSEmmanuel Vadot		#address-cells = <1>;
346*f126890aSEmmanuel Vadot		#size-cells = <1>;
347*f126890aSEmmanuel Vadot		ranges;
348*f126890aSEmmanuel Vadot		compatible = "simple-bus";
349*f126890aSEmmanuel Vadot
350*f126890aSEmmanuel Vadot		tlmm_pinmux: pinctrl@800000 {
351*f126890aSEmmanuel Vadot			compatible = "qcom,apq8064-pinctrl";
352*f126890aSEmmanuel Vadot			reg = <0x800000 0x4000>;
353*f126890aSEmmanuel Vadot
354*f126890aSEmmanuel Vadot			gpio-controller;
355*f126890aSEmmanuel Vadot			gpio-ranges = <&tlmm_pinmux 0 0 90>;
356*f126890aSEmmanuel Vadot			#gpio-cells = <2>;
357*f126890aSEmmanuel Vadot			interrupt-controller;
358*f126890aSEmmanuel Vadot			#interrupt-cells = <2>;
359*f126890aSEmmanuel Vadot			interrupts = <0 16 IRQ_TYPE_LEVEL_HIGH>;
360*f126890aSEmmanuel Vadot
361*f126890aSEmmanuel Vadot			pinctrl-names = "default";
362*f126890aSEmmanuel Vadot			pinctrl-0 = <&ps_hold>;
363*f126890aSEmmanuel Vadot		};
364*f126890aSEmmanuel Vadot
365*f126890aSEmmanuel Vadot		sfpb_wrapper_mutex: syscon@1200000 {
366*f126890aSEmmanuel Vadot			compatible = "syscon";
367*f126890aSEmmanuel Vadot			reg = <0x01200000 0x8000>;
368*f126890aSEmmanuel Vadot		};
369*f126890aSEmmanuel Vadot
370*f126890aSEmmanuel Vadot		intc: interrupt-controller@2000000 {
371*f126890aSEmmanuel Vadot			compatible = "qcom,msm-qgic2";
372*f126890aSEmmanuel Vadot			interrupt-controller;
373*f126890aSEmmanuel Vadot			#interrupt-cells = <3>;
374*f126890aSEmmanuel Vadot			reg = <0x02000000 0x1000>,
375*f126890aSEmmanuel Vadot			      <0x02002000 0x1000>;
376*f126890aSEmmanuel Vadot		};
377*f126890aSEmmanuel Vadot
378*f126890aSEmmanuel Vadot		timer@200a000 {
379*f126890aSEmmanuel Vadot			compatible = "qcom,kpss-wdt-apq8064", "qcom,kpss-timer",
380*f126890aSEmmanuel Vadot				     "qcom,msm-timer";
381*f126890aSEmmanuel Vadot			interrupts = <1 1 0x301>,
382*f126890aSEmmanuel Vadot				     <1 2 0x301>,
383*f126890aSEmmanuel Vadot				     <1 3 0x301>;
384*f126890aSEmmanuel Vadot			reg = <0x0200a000 0x100>;
385*f126890aSEmmanuel Vadot			clock-frequency = <27000000>;
386*f126890aSEmmanuel Vadot			cpu-offset = <0x80000>;
387*f126890aSEmmanuel Vadot		};
388*f126890aSEmmanuel Vadot
389*f126890aSEmmanuel Vadot		acc0: clock-controller@2088000 {
390*f126890aSEmmanuel Vadot			compatible = "qcom,kpss-acc-v1";
391*f126890aSEmmanuel Vadot			reg = <0x02088000 0x1000>, <0x02008000 0x1000>;
392*f126890aSEmmanuel Vadot			clocks = <&gcc PLL8_VOTE>, <&pxo_board>;
393*f126890aSEmmanuel Vadot			clock-names = "pll8_vote", "pxo";
394*f126890aSEmmanuel Vadot			clock-output-names = "acpu0_aux";
395*f126890aSEmmanuel Vadot			#clock-cells = <0>;
396*f126890aSEmmanuel Vadot		};
397*f126890aSEmmanuel Vadot
398*f126890aSEmmanuel Vadot		acc1: clock-controller@2098000 {
399*f126890aSEmmanuel Vadot			compatible = "qcom,kpss-acc-v1";
400*f126890aSEmmanuel Vadot			reg = <0x02098000 0x1000>, <0x02008000 0x1000>;
401*f126890aSEmmanuel Vadot			clocks = <&gcc PLL8_VOTE>, <&pxo_board>;
402*f126890aSEmmanuel Vadot			clock-names = "pll8_vote", "pxo";
403*f126890aSEmmanuel Vadot			clock-output-names = "acpu1_aux";
404*f126890aSEmmanuel Vadot			#clock-cells = <0>;
405*f126890aSEmmanuel Vadot		};
406*f126890aSEmmanuel Vadot
407*f126890aSEmmanuel Vadot		acc2: clock-controller@20a8000 {
408*f126890aSEmmanuel Vadot			compatible = "qcom,kpss-acc-v1";
409*f126890aSEmmanuel Vadot			reg = <0x020a8000 0x1000>, <0x02008000 0x1000>;
410*f126890aSEmmanuel Vadot			clocks = <&gcc PLL8_VOTE>, <&pxo_board>;
411*f126890aSEmmanuel Vadot			clock-names = "pll8_vote", "pxo";
412*f126890aSEmmanuel Vadot			clock-output-names = "acpu2_aux";
413*f126890aSEmmanuel Vadot			#clock-cells = <0>;
414*f126890aSEmmanuel Vadot		};
415*f126890aSEmmanuel Vadot
416*f126890aSEmmanuel Vadot		acc3: clock-controller@20b8000 {
417*f126890aSEmmanuel Vadot			compatible = "qcom,kpss-acc-v1";
418*f126890aSEmmanuel Vadot			reg = <0x020b8000 0x1000>, <0x02008000 0x1000>;
419*f126890aSEmmanuel Vadot			clocks = <&gcc PLL8_VOTE>, <&pxo_board>;
420*f126890aSEmmanuel Vadot			clock-names = "pll8_vote", "pxo";
421*f126890aSEmmanuel Vadot			clock-output-names = "acpu3_aux";
422*f126890aSEmmanuel Vadot			#clock-cells = <0>;
423*f126890aSEmmanuel Vadot		};
424*f126890aSEmmanuel Vadot
425*f126890aSEmmanuel Vadot		saw0: power-controller@2089000 {
426*f126890aSEmmanuel Vadot			compatible = "qcom,apq8064-saw2-v1.1-cpu", "qcom,saw2";
427*f126890aSEmmanuel Vadot			reg = <0x02089000 0x1000>, <0x02009000 0x1000>;
428*f126890aSEmmanuel Vadot			regulator;
429*f126890aSEmmanuel Vadot		};
430*f126890aSEmmanuel Vadot
431*f126890aSEmmanuel Vadot		saw1: power-controller@2099000 {
432*f126890aSEmmanuel Vadot			compatible = "qcom,apq8064-saw2-v1.1-cpu", "qcom,saw2";
433*f126890aSEmmanuel Vadot			reg = <0x02099000 0x1000>, <0x02009000 0x1000>;
434*f126890aSEmmanuel Vadot			regulator;
435*f126890aSEmmanuel Vadot		};
436*f126890aSEmmanuel Vadot
437*f126890aSEmmanuel Vadot		saw2: power-controller@20a9000 {
438*f126890aSEmmanuel Vadot			compatible = "qcom,apq8064-saw2-v1.1-cpu", "qcom,saw2";
439*f126890aSEmmanuel Vadot			reg = <0x020a9000 0x1000>, <0x02009000 0x1000>;
440*f126890aSEmmanuel Vadot			regulator;
441*f126890aSEmmanuel Vadot		};
442*f126890aSEmmanuel Vadot
443*f126890aSEmmanuel Vadot		saw3: power-controller@20b9000 {
444*f126890aSEmmanuel Vadot			compatible = "qcom,apq8064-saw2-v1.1-cpu", "qcom,saw2";
445*f126890aSEmmanuel Vadot			reg = <0x020b9000 0x1000>, <0x02009000 0x1000>;
446*f126890aSEmmanuel Vadot			regulator;
447*f126890aSEmmanuel Vadot		};
448*f126890aSEmmanuel Vadot
449*f126890aSEmmanuel Vadot		sps_sic_non_secure: sps-sic-non-secure@12100000 {
450*f126890aSEmmanuel Vadot			compatible = "syscon";
451*f126890aSEmmanuel Vadot			reg = <0x12100000 0x10000>;
452*f126890aSEmmanuel Vadot		};
453*f126890aSEmmanuel Vadot
454*f126890aSEmmanuel Vadot		gsbi1: gsbi@12440000 {
455*f126890aSEmmanuel Vadot			status = "disabled";
456*f126890aSEmmanuel Vadot			compatible = "qcom,gsbi-v1.0.0";
457*f126890aSEmmanuel Vadot			cell-index = <1>;
458*f126890aSEmmanuel Vadot			reg = <0x12440000 0x100>;
459*f126890aSEmmanuel Vadot			clocks = <&gcc GSBI1_H_CLK>;
460*f126890aSEmmanuel Vadot			clock-names = "iface";
461*f126890aSEmmanuel Vadot			#address-cells = <1>;
462*f126890aSEmmanuel Vadot			#size-cells = <1>;
463*f126890aSEmmanuel Vadot			ranges;
464*f126890aSEmmanuel Vadot
465*f126890aSEmmanuel Vadot			syscon-tcsr = <&tcsr>;
466*f126890aSEmmanuel Vadot
467*f126890aSEmmanuel Vadot			gsbi1_serial: serial@12450000 {
468*f126890aSEmmanuel Vadot				compatible = "qcom,msm-uartdm-v1.3", "qcom,msm-uartdm";
469*f126890aSEmmanuel Vadot				reg = <0x12450000 0x100>,
470*f126890aSEmmanuel Vadot				      <0x12400000 0x03>;
471*f126890aSEmmanuel Vadot				interrupts = <0 193 IRQ_TYPE_LEVEL_HIGH>;
472*f126890aSEmmanuel Vadot				clocks = <&gcc GSBI1_UART_CLK>, <&gcc GSBI1_H_CLK>;
473*f126890aSEmmanuel Vadot				clock-names = "core", "iface";
474*f126890aSEmmanuel Vadot				status = "disabled";
475*f126890aSEmmanuel Vadot			};
476*f126890aSEmmanuel Vadot
477*f126890aSEmmanuel Vadot			gsbi1_i2c: i2c@12460000 {
478*f126890aSEmmanuel Vadot				compatible = "qcom,i2c-qup-v1.1.1";
479*f126890aSEmmanuel Vadot				pinctrl-0 = <&i2c1_pins>;
480*f126890aSEmmanuel Vadot				pinctrl-1 = <&i2c1_pins_sleep>;
481*f126890aSEmmanuel Vadot				pinctrl-names = "default", "sleep";
482*f126890aSEmmanuel Vadot				reg = <0x12460000 0x1000>;
483*f126890aSEmmanuel Vadot				interrupts = <0 194 IRQ_TYPE_LEVEL_HIGH>;
484*f126890aSEmmanuel Vadot				clocks = <&gcc GSBI1_QUP_CLK>, <&gcc GSBI1_H_CLK>;
485*f126890aSEmmanuel Vadot				clock-names = "core", "iface";
486*f126890aSEmmanuel Vadot				#address-cells = <1>;
487*f126890aSEmmanuel Vadot				#size-cells = <0>;
488*f126890aSEmmanuel Vadot				status = "disabled";
489*f126890aSEmmanuel Vadot			};
490*f126890aSEmmanuel Vadot
491*f126890aSEmmanuel Vadot		};
492*f126890aSEmmanuel Vadot
493*f126890aSEmmanuel Vadot		gsbi2: gsbi@12480000 {
494*f126890aSEmmanuel Vadot			status = "disabled";
495*f126890aSEmmanuel Vadot			compatible = "qcom,gsbi-v1.0.0";
496*f126890aSEmmanuel Vadot			cell-index = <2>;
497*f126890aSEmmanuel Vadot			reg = <0x12480000 0x100>;
498*f126890aSEmmanuel Vadot			clocks = <&gcc GSBI2_H_CLK>;
499*f126890aSEmmanuel Vadot			clock-names = "iface";
500*f126890aSEmmanuel Vadot			#address-cells = <1>;
501*f126890aSEmmanuel Vadot			#size-cells = <1>;
502*f126890aSEmmanuel Vadot			ranges;
503*f126890aSEmmanuel Vadot
504*f126890aSEmmanuel Vadot			syscon-tcsr = <&tcsr>;
505*f126890aSEmmanuel Vadot
506*f126890aSEmmanuel Vadot			gsbi2_i2c: i2c@124a0000 {
507*f126890aSEmmanuel Vadot				compatible = "qcom,i2c-qup-v1.1.1";
508*f126890aSEmmanuel Vadot				reg = <0x124a0000 0x1000>;
509*f126890aSEmmanuel Vadot				pinctrl-0 = <&i2c2_pins>;
510*f126890aSEmmanuel Vadot				pinctrl-1 = <&i2c2_pins_sleep>;
511*f126890aSEmmanuel Vadot				pinctrl-names = "default", "sleep";
512*f126890aSEmmanuel Vadot				interrupts = <0 196 IRQ_TYPE_LEVEL_HIGH>;
513*f126890aSEmmanuel Vadot				clocks = <&gcc GSBI2_QUP_CLK>, <&gcc GSBI2_H_CLK>;
514*f126890aSEmmanuel Vadot				clock-names = "core", "iface";
515*f126890aSEmmanuel Vadot				#address-cells = <1>;
516*f126890aSEmmanuel Vadot				#size-cells = <0>;
517*f126890aSEmmanuel Vadot				status = "disabled";
518*f126890aSEmmanuel Vadot			};
519*f126890aSEmmanuel Vadot		};
520*f126890aSEmmanuel Vadot
521*f126890aSEmmanuel Vadot		gsbi3: gsbi@16200000 {
522*f126890aSEmmanuel Vadot			status = "disabled";
523*f126890aSEmmanuel Vadot			compatible = "qcom,gsbi-v1.0.0";
524*f126890aSEmmanuel Vadot			cell-index = <3>;
525*f126890aSEmmanuel Vadot			reg = <0x16200000 0x100>;
526*f126890aSEmmanuel Vadot			clocks = <&gcc GSBI3_H_CLK>;
527*f126890aSEmmanuel Vadot			clock-names = "iface";
528*f126890aSEmmanuel Vadot			#address-cells = <1>;
529*f126890aSEmmanuel Vadot			#size-cells = <1>;
530*f126890aSEmmanuel Vadot			ranges;
531*f126890aSEmmanuel Vadot			gsbi3_i2c: i2c@16280000 {
532*f126890aSEmmanuel Vadot				compatible = "qcom,i2c-qup-v1.1.1";
533*f126890aSEmmanuel Vadot				pinctrl-0 = <&i2c3_pins>;
534*f126890aSEmmanuel Vadot				pinctrl-1 = <&i2c3_pins_sleep>;
535*f126890aSEmmanuel Vadot				pinctrl-names = "default", "sleep";
536*f126890aSEmmanuel Vadot				reg = <0x16280000 0x1000>;
537*f126890aSEmmanuel Vadot				interrupts = <GIC_SPI 151 IRQ_TYPE_LEVEL_HIGH>;
538*f126890aSEmmanuel Vadot				clocks = <&gcc GSBI3_QUP_CLK>,
539*f126890aSEmmanuel Vadot					 <&gcc GSBI3_H_CLK>;
540*f126890aSEmmanuel Vadot				clock-names = "core", "iface";
541*f126890aSEmmanuel Vadot				#address-cells = <1>;
542*f126890aSEmmanuel Vadot				#size-cells = <0>;
543*f126890aSEmmanuel Vadot				status = "disabled";
544*f126890aSEmmanuel Vadot			};
545*f126890aSEmmanuel Vadot		};
546*f126890aSEmmanuel Vadot
547*f126890aSEmmanuel Vadot		gsbi4: gsbi@16300000 {
548*f126890aSEmmanuel Vadot			status = "disabled";
549*f126890aSEmmanuel Vadot			compatible = "qcom,gsbi-v1.0.0";
550*f126890aSEmmanuel Vadot			cell-index = <4>;
551*f126890aSEmmanuel Vadot			reg = <0x16300000 0x03>;
552*f126890aSEmmanuel Vadot			clocks = <&gcc GSBI4_H_CLK>;
553*f126890aSEmmanuel Vadot			clock-names = "iface";
554*f126890aSEmmanuel Vadot			#address-cells = <1>;
555*f126890aSEmmanuel Vadot			#size-cells = <1>;
556*f126890aSEmmanuel Vadot			ranges;
557*f126890aSEmmanuel Vadot
558*f126890aSEmmanuel Vadot			gsbi4_i2c: i2c@16380000 {
559*f126890aSEmmanuel Vadot				compatible = "qcom,i2c-qup-v1.1.1";
560*f126890aSEmmanuel Vadot				pinctrl-0 = <&i2c4_pins>;
561*f126890aSEmmanuel Vadot				pinctrl-1 = <&i2c4_pins_sleep>;
562*f126890aSEmmanuel Vadot				pinctrl-names = "default", "sleep";
563*f126890aSEmmanuel Vadot				reg = <0x16380000 0x1000>;
564*f126890aSEmmanuel Vadot				interrupts = <GIC_SPI 153 IRQ_TYPE_LEVEL_HIGH>;
565*f126890aSEmmanuel Vadot				clocks = <&gcc GSBI4_QUP_CLK>,
566*f126890aSEmmanuel Vadot					 <&gcc GSBI4_H_CLK>;
567*f126890aSEmmanuel Vadot				clock-names = "core", "iface";
568*f126890aSEmmanuel Vadot				status = "disabled";
569*f126890aSEmmanuel Vadot			};
570*f126890aSEmmanuel Vadot		};
571*f126890aSEmmanuel Vadot
572*f126890aSEmmanuel Vadot		gsbi5: gsbi@1a200000 {
573*f126890aSEmmanuel Vadot			status = "disabled";
574*f126890aSEmmanuel Vadot			compatible = "qcom,gsbi-v1.0.0";
575*f126890aSEmmanuel Vadot			cell-index = <5>;
576*f126890aSEmmanuel Vadot			reg = <0x1a200000 0x03>;
577*f126890aSEmmanuel Vadot			clocks = <&gcc GSBI5_H_CLK>;
578*f126890aSEmmanuel Vadot			clock-names = "iface";
579*f126890aSEmmanuel Vadot			#address-cells = <1>;
580*f126890aSEmmanuel Vadot			#size-cells = <1>;
581*f126890aSEmmanuel Vadot			ranges;
582*f126890aSEmmanuel Vadot
583*f126890aSEmmanuel Vadot			gsbi5_serial: serial@1a240000 {
584*f126890aSEmmanuel Vadot				compatible = "qcom,msm-uartdm-v1.3", "qcom,msm-uartdm";
585*f126890aSEmmanuel Vadot				reg = <0x1a240000 0x100>,
586*f126890aSEmmanuel Vadot				      <0x1a200000 0x03>;
587*f126890aSEmmanuel Vadot				interrupts = <0 154 IRQ_TYPE_LEVEL_HIGH>;
588*f126890aSEmmanuel Vadot				clocks = <&gcc GSBI5_UART_CLK>, <&gcc GSBI5_H_CLK>;
589*f126890aSEmmanuel Vadot				clock-names = "core", "iface";
590*f126890aSEmmanuel Vadot				status = "disabled";
591*f126890aSEmmanuel Vadot			};
592*f126890aSEmmanuel Vadot
593*f126890aSEmmanuel Vadot			gsbi5_spi: spi@1a280000 {
594*f126890aSEmmanuel Vadot				compatible = "qcom,spi-qup-v1.1.1";
595*f126890aSEmmanuel Vadot				reg = <0x1a280000 0x1000>;
596*f126890aSEmmanuel Vadot				interrupts = <0 155 IRQ_TYPE_LEVEL_HIGH>;
597*f126890aSEmmanuel Vadot				pinctrl-0 = <&spi5_default>;
598*f126890aSEmmanuel Vadot				pinctrl-1 = <&spi5_sleep>;
599*f126890aSEmmanuel Vadot				pinctrl-names = "default", "sleep";
600*f126890aSEmmanuel Vadot				clocks = <&gcc GSBI5_QUP_CLK>, <&gcc GSBI5_H_CLK>;
601*f126890aSEmmanuel Vadot				clock-names = "core", "iface";
602*f126890aSEmmanuel Vadot				status = "disabled";
603*f126890aSEmmanuel Vadot				#address-cells = <1>;
604*f126890aSEmmanuel Vadot				#size-cells = <0>;
605*f126890aSEmmanuel Vadot			};
606*f126890aSEmmanuel Vadot		};
607*f126890aSEmmanuel Vadot
608*f126890aSEmmanuel Vadot		gsbi6: gsbi@16500000 {
609*f126890aSEmmanuel Vadot			status = "disabled";
610*f126890aSEmmanuel Vadot			compatible = "qcom,gsbi-v1.0.0";
611*f126890aSEmmanuel Vadot			cell-index = <6>;
612*f126890aSEmmanuel Vadot			reg = <0x16500000 0x03>;
613*f126890aSEmmanuel Vadot			clocks = <&gcc GSBI6_H_CLK>;
614*f126890aSEmmanuel Vadot			clock-names = "iface";
615*f126890aSEmmanuel Vadot			#address-cells = <1>;
616*f126890aSEmmanuel Vadot			#size-cells = <1>;
617*f126890aSEmmanuel Vadot			ranges;
618*f126890aSEmmanuel Vadot
619*f126890aSEmmanuel Vadot			gsbi6_serial: serial@16540000 {
620*f126890aSEmmanuel Vadot				compatible = "qcom,msm-uartdm-v1.3", "qcom,msm-uartdm";
621*f126890aSEmmanuel Vadot				reg = <0x16540000 0x100>,
622*f126890aSEmmanuel Vadot				      <0x16500000 0x03>;
623*f126890aSEmmanuel Vadot				interrupts = <0 156 IRQ_TYPE_LEVEL_HIGH>;
624*f126890aSEmmanuel Vadot				clocks = <&gcc GSBI6_UART_CLK>, <&gcc GSBI6_H_CLK>;
625*f126890aSEmmanuel Vadot				clock-names = "core", "iface";
626*f126890aSEmmanuel Vadot				status = "disabled";
627*f126890aSEmmanuel Vadot			};
628*f126890aSEmmanuel Vadot
629*f126890aSEmmanuel Vadot			gsbi6_i2c: i2c@16580000 {
630*f126890aSEmmanuel Vadot				compatible = "qcom,i2c-qup-v1.1.1";
631*f126890aSEmmanuel Vadot				pinctrl-0 = <&i2c6_pins>;
632*f126890aSEmmanuel Vadot				pinctrl-1 = <&i2c6_pins_sleep>;
633*f126890aSEmmanuel Vadot				pinctrl-names = "default", "sleep";
634*f126890aSEmmanuel Vadot				reg = <0x16580000 0x1000>;
635*f126890aSEmmanuel Vadot				interrupts = <GIC_SPI 157 IRQ_TYPE_LEVEL_HIGH>;
636*f126890aSEmmanuel Vadot				clocks = <&gcc GSBI6_QUP_CLK>,
637*f126890aSEmmanuel Vadot					 <&gcc GSBI6_H_CLK>;
638*f126890aSEmmanuel Vadot				clock-names = "core", "iface";
639*f126890aSEmmanuel Vadot				status = "disabled";
640*f126890aSEmmanuel Vadot			};
641*f126890aSEmmanuel Vadot		};
642*f126890aSEmmanuel Vadot
643*f126890aSEmmanuel Vadot		gsbi7: gsbi@16600000 {
644*f126890aSEmmanuel Vadot			status = "disabled";
645*f126890aSEmmanuel Vadot			compatible = "qcom,gsbi-v1.0.0";
646*f126890aSEmmanuel Vadot			cell-index = <7>;
647*f126890aSEmmanuel Vadot			reg = <0x16600000 0x100>;
648*f126890aSEmmanuel Vadot			clocks = <&gcc GSBI7_H_CLK>;
649*f126890aSEmmanuel Vadot			clock-names = "iface";
650*f126890aSEmmanuel Vadot			#address-cells = <1>;
651*f126890aSEmmanuel Vadot			#size-cells = <1>;
652*f126890aSEmmanuel Vadot			ranges;
653*f126890aSEmmanuel Vadot			syscon-tcsr = <&tcsr>;
654*f126890aSEmmanuel Vadot
655*f126890aSEmmanuel Vadot			gsbi7_serial: serial@16640000 {
656*f126890aSEmmanuel Vadot				compatible = "qcom,msm-uartdm-v1.3", "qcom,msm-uartdm";
657*f126890aSEmmanuel Vadot				reg = <0x16640000 0x1000>,
658*f126890aSEmmanuel Vadot				      <0x16600000 0x1000>;
659*f126890aSEmmanuel Vadot				interrupts = <0 158 IRQ_TYPE_LEVEL_HIGH>;
660*f126890aSEmmanuel Vadot				clocks = <&gcc GSBI7_UART_CLK>, <&gcc GSBI7_H_CLK>;
661*f126890aSEmmanuel Vadot				clock-names = "core", "iface";
662*f126890aSEmmanuel Vadot				status = "disabled";
663*f126890aSEmmanuel Vadot			};
664*f126890aSEmmanuel Vadot
665*f126890aSEmmanuel Vadot			gsbi7_i2c: i2c@16680000 {
666*f126890aSEmmanuel Vadot				compatible = "qcom,i2c-qup-v1.1.1";
667*f126890aSEmmanuel Vadot				pinctrl-0 = <&i2c7_pins>;
668*f126890aSEmmanuel Vadot				pinctrl-1 = <&i2c7_pins_sleep>;
669*f126890aSEmmanuel Vadot				pinctrl-names = "default", "sleep";
670*f126890aSEmmanuel Vadot				reg = <0x16680000 0x1000>;
671*f126890aSEmmanuel Vadot				interrupts = <GIC_SPI 159 IRQ_TYPE_LEVEL_HIGH>;
672*f126890aSEmmanuel Vadot				clocks = <&gcc GSBI7_QUP_CLK>,
673*f126890aSEmmanuel Vadot					 <&gcc GSBI7_H_CLK>;
674*f126890aSEmmanuel Vadot				clock-names = "core", "iface";
675*f126890aSEmmanuel Vadot				status = "disabled";
676*f126890aSEmmanuel Vadot			};
677*f126890aSEmmanuel Vadot		};
678*f126890aSEmmanuel Vadot
679*f126890aSEmmanuel Vadot		rng@1a500000 {
680*f126890aSEmmanuel Vadot			compatible = "qcom,prng";
681*f126890aSEmmanuel Vadot			reg = <0x1a500000 0x200>;
682*f126890aSEmmanuel Vadot			clocks = <&gcc PRNG_CLK>;
683*f126890aSEmmanuel Vadot			clock-names = "core";
684*f126890aSEmmanuel Vadot		};
685*f126890aSEmmanuel Vadot
686*f126890aSEmmanuel Vadot		ssbi@c00000 {
687*f126890aSEmmanuel Vadot			compatible = "qcom,ssbi";
688*f126890aSEmmanuel Vadot			reg = <0x00c00000 0x1000>;
689*f126890aSEmmanuel Vadot			qcom,controller-type = "pmic-arbiter";
690*f126890aSEmmanuel Vadot
691*f126890aSEmmanuel Vadot			pm8821: pmic {
692*f126890aSEmmanuel Vadot				compatible = "qcom,pm8821";
693*f126890aSEmmanuel Vadot				interrupt-parent = <&tlmm_pinmux>;
694*f126890aSEmmanuel Vadot				interrupts = <76 IRQ_TYPE_LEVEL_LOW>;
695*f126890aSEmmanuel Vadot				#interrupt-cells = <2>;
696*f126890aSEmmanuel Vadot				interrupt-controller;
697*f126890aSEmmanuel Vadot				#address-cells = <1>;
698*f126890aSEmmanuel Vadot				#size-cells = <0>;
699*f126890aSEmmanuel Vadot
700*f126890aSEmmanuel Vadot				pm8821_mpps: mpps@50 {
701*f126890aSEmmanuel Vadot					compatible = "qcom,pm8821-mpp", "qcom,ssbi-mpp";
702*f126890aSEmmanuel Vadot					reg = <0x50>;
703*f126890aSEmmanuel Vadot					interrupt-controller;
704*f126890aSEmmanuel Vadot					#interrupt-cells = <2>;
705*f126890aSEmmanuel Vadot					gpio-controller;
706*f126890aSEmmanuel Vadot					#gpio-cells = <2>;
707*f126890aSEmmanuel Vadot					gpio-ranges = <&pm8821_mpps 0 0 4>;
708*f126890aSEmmanuel Vadot				};
709*f126890aSEmmanuel Vadot			};
710*f126890aSEmmanuel Vadot		};
711*f126890aSEmmanuel Vadot
712*f126890aSEmmanuel Vadot		ssbi@500000 {
713*f126890aSEmmanuel Vadot			compatible = "qcom,ssbi";
714*f126890aSEmmanuel Vadot			reg = <0x00500000 0x1000>;
715*f126890aSEmmanuel Vadot			qcom,controller-type = "pmic-arbiter";
716*f126890aSEmmanuel Vadot
717*f126890aSEmmanuel Vadot			pmicintc: pmic {
718*f126890aSEmmanuel Vadot				compatible = "qcom,pm8921";
719*f126890aSEmmanuel Vadot				interrupt-parent = <&tlmm_pinmux>;
720*f126890aSEmmanuel Vadot				interrupts = <74 8>;
721*f126890aSEmmanuel Vadot				#interrupt-cells = <2>;
722*f126890aSEmmanuel Vadot				interrupt-controller;
723*f126890aSEmmanuel Vadot				#address-cells = <1>;
724*f126890aSEmmanuel Vadot				#size-cells = <0>;
725*f126890aSEmmanuel Vadot
726*f126890aSEmmanuel Vadot				pm8921_gpio: gpio@150 {
727*f126890aSEmmanuel Vadot
728*f126890aSEmmanuel Vadot					compatible = "qcom,pm8921-gpio",
729*f126890aSEmmanuel Vadot						     "qcom,ssbi-gpio";
730*f126890aSEmmanuel Vadot					reg = <0x150>;
731*f126890aSEmmanuel Vadot					interrupt-controller;
732*f126890aSEmmanuel Vadot					#interrupt-cells = <2>;
733*f126890aSEmmanuel Vadot					gpio-controller;
734*f126890aSEmmanuel Vadot					gpio-ranges = <&pm8921_gpio 0 0 44>;
735*f126890aSEmmanuel Vadot					#gpio-cells = <2>;
736*f126890aSEmmanuel Vadot
737*f126890aSEmmanuel Vadot				};
738*f126890aSEmmanuel Vadot
739*f126890aSEmmanuel Vadot				pm8921_mpps: mpps@50 {
740*f126890aSEmmanuel Vadot					compatible = "qcom,pm8921-mpp",
741*f126890aSEmmanuel Vadot						     "qcom,ssbi-mpp";
742*f126890aSEmmanuel Vadot					reg = <0x50>;
743*f126890aSEmmanuel Vadot					gpio-controller;
744*f126890aSEmmanuel Vadot					#gpio-cells = <2>;
745*f126890aSEmmanuel Vadot					gpio-ranges = <&pm8921_mpps 0 0 12>;
746*f126890aSEmmanuel Vadot					interrupt-controller;
747*f126890aSEmmanuel Vadot					#interrupt-cells = <2>;
748*f126890aSEmmanuel Vadot				};
749*f126890aSEmmanuel Vadot
750*f126890aSEmmanuel Vadot				rtc@11d {
751*f126890aSEmmanuel Vadot					compatible = "qcom,pm8921-rtc";
752*f126890aSEmmanuel Vadot					interrupt-parent = <&pmicintc>;
753*f126890aSEmmanuel Vadot					interrupts = <39 1>;
754*f126890aSEmmanuel Vadot					reg = <0x11d>;
755*f126890aSEmmanuel Vadot					allow-set-time;
756*f126890aSEmmanuel Vadot				};
757*f126890aSEmmanuel Vadot
758*f126890aSEmmanuel Vadot				pwrkey@1c {
759*f126890aSEmmanuel Vadot					compatible = "qcom,pm8921-pwrkey";
760*f126890aSEmmanuel Vadot					reg = <0x1c>;
761*f126890aSEmmanuel Vadot					interrupt-parent = <&pmicintc>;
762*f126890aSEmmanuel Vadot					interrupts = <50 1>, <51 1>;
763*f126890aSEmmanuel Vadot					debounce = <15625>;
764*f126890aSEmmanuel Vadot					pull-up;
765*f126890aSEmmanuel Vadot				};
766*f126890aSEmmanuel Vadot
767*f126890aSEmmanuel Vadot				xoadc: xoadc@197 {
768*f126890aSEmmanuel Vadot					compatible = "qcom,pm8921-adc";
769*f126890aSEmmanuel Vadot					reg = <197>;
770*f126890aSEmmanuel Vadot					interrupts-extended = <&pmicintc 78 IRQ_TYPE_EDGE_RISING>;
771*f126890aSEmmanuel Vadot					#address-cells = <2>;
772*f126890aSEmmanuel Vadot					#size-cells = <0>;
773*f126890aSEmmanuel Vadot					#io-channel-cells = <2>;
774*f126890aSEmmanuel Vadot
775*f126890aSEmmanuel Vadot					vcoin: adc-channel@0 {
776*f126890aSEmmanuel Vadot						reg = <0x00 0x00>;
777*f126890aSEmmanuel Vadot					};
778*f126890aSEmmanuel Vadot					vbat: adc-channel@1 {
779*f126890aSEmmanuel Vadot						reg = <0x00 0x01>;
780*f126890aSEmmanuel Vadot					};
781*f126890aSEmmanuel Vadot					dcin: adc-channel@2 {
782*f126890aSEmmanuel Vadot						reg = <0x00 0x02>;
783*f126890aSEmmanuel Vadot					};
784*f126890aSEmmanuel Vadot					vph_pwr: adc-channel@4 {
785*f126890aSEmmanuel Vadot						reg = <0x00 0x04>;
786*f126890aSEmmanuel Vadot					};
787*f126890aSEmmanuel Vadot					batt_therm: adc-channel@8 {
788*f126890aSEmmanuel Vadot						reg = <0x00 0x08>;
789*f126890aSEmmanuel Vadot					};
790*f126890aSEmmanuel Vadot					batt_id: adc-channel@9 {
791*f126890aSEmmanuel Vadot						reg = <0x00 0x09>;
792*f126890aSEmmanuel Vadot					};
793*f126890aSEmmanuel Vadot					usb_vbus: adc-channel@a {
794*f126890aSEmmanuel Vadot						reg = <0x00 0x0a>;
795*f126890aSEmmanuel Vadot					};
796*f126890aSEmmanuel Vadot					die_temp: adc-channel@b {
797*f126890aSEmmanuel Vadot						reg = <0x00 0x0b>;
798*f126890aSEmmanuel Vadot					};
799*f126890aSEmmanuel Vadot					ref_625mv: adc-channel@c {
800*f126890aSEmmanuel Vadot						reg = <0x00 0x0c>;
801*f126890aSEmmanuel Vadot					};
802*f126890aSEmmanuel Vadot					ref_1250mv: adc-channel@d {
803*f126890aSEmmanuel Vadot						reg = <0x00 0x0d>;
804*f126890aSEmmanuel Vadot					};
805*f126890aSEmmanuel Vadot					chg_temp: adc-channel@e {
806*f126890aSEmmanuel Vadot						reg = <0x00 0x0e>;
807*f126890aSEmmanuel Vadot					};
808*f126890aSEmmanuel Vadot					ref_muxoff: adc-channel@f {
809*f126890aSEmmanuel Vadot						reg = <0x00 0x0f>;
810*f126890aSEmmanuel Vadot					};
811*f126890aSEmmanuel Vadot				};
812*f126890aSEmmanuel Vadot			};
813*f126890aSEmmanuel Vadot		};
814*f126890aSEmmanuel Vadot
815*f126890aSEmmanuel Vadot		qfprom: qfprom@700000 {
816*f126890aSEmmanuel Vadot			compatible = "qcom,apq8064-qfprom", "qcom,qfprom";
817*f126890aSEmmanuel Vadot			reg = <0x00700000 0x1000>;
818*f126890aSEmmanuel Vadot			#address-cells = <1>;
819*f126890aSEmmanuel Vadot			#size-cells = <1>;
820*f126890aSEmmanuel Vadot			ranges;
821*f126890aSEmmanuel Vadot			tsens_calib: calib@404 {
822*f126890aSEmmanuel Vadot				reg = <0x404 0x10>;
823*f126890aSEmmanuel Vadot			};
824*f126890aSEmmanuel Vadot			tsens_backup: backup_calib@414 {
825*f126890aSEmmanuel Vadot				reg = <0x414 0x10>;
826*f126890aSEmmanuel Vadot			};
827*f126890aSEmmanuel Vadot		};
828*f126890aSEmmanuel Vadot
829*f126890aSEmmanuel Vadot		gcc: clock-controller@900000 {
830*f126890aSEmmanuel Vadot			compatible = "qcom,gcc-apq8064", "syscon";
831*f126890aSEmmanuel Vadot			reg = <0x00900000 0x4000>;
832*f126890aSEmmanuel Vadot			#clock-cells = <1>;
833*f126890aSEmmanuel Vadot			#power-domain-cells = <1>;
834*f126890aSEmmanuel Vadot			#reset-cells = <1>;
835*f126890aSEmmanuel Vadot			clocks = <&cxo_board>,
836*f126890aSEmmanuel Vadot				 <&pxo_board>,
837*f126890aSEmmanuel Vadot				 <&lcc PLL4>;
838*f126890aSEmmanuel Vadot			clock-names = "cxo", "pxo", "pll4";
839*f126890aSEmmanuel Vadot
840*f126890aSEmmanuel Vadot			tsens: thermal-sensor {
841*f126890aSEmmanuel Vadot				compatible = "qcom,msm8960-tsens";
842*f126890aSEmmanuel Vadot
843*f126890aSEmmanuel Vadot				nvmem-cells = <&tsens_calib>, <&tsens_backup>;
844*f126890aSEmmanuel Vadot				nvmem-cell-names = "calib", "calib_backup";
845*f126890aSEmmanuel Vadot				interrupts = <GIC_SPI 178 IRQ_TYPE_LEVEL_HIGH>;
846*f126890aSEmmanuel Vadot				interrupt-names = "uplow";
847*f126890aSEmmanuel Vadot
848*f126890aSEmmanuel Vadot				#qcom,sensors = <11>;
849*f126890aSEmmanuel Vadot				#thermal-sensor-cells = <1>;
850*f126890aSEmmanuel Vadot			};
851*f126890aSEmmanuel Vadot		};
852*f126890aSEmmanuel Vadot
853*f126890aSEmmanuel Vadot		lcc: clock-controller@28000000 {
854*f126890aSEmmanuel Vadot			compatible = "qcom,lcc-apq8064";
855*f126890aSEmmanuel Vadot			reg = <0x28000000 0x1000>;
856*f126890aSEmmanuel Vadot			#clock-cells = <1>;
857*f126890aSEmmanuel Vadot			#reset-cells = <1>;
858*f126890aSEmmanuel Vadot			clocks = <&pxo_board>,
859*f126890aSEmmanuel Vadot				 <&gcc PLL4_VOTE>,
860*f126890aSEmmanuel Vadot				 <0>,
861*f126890aSEmmanuel Vadot				 <0>, <0>,
862*f126890aSEmmanuel Vadot				 <0>, <0>,
863*f126890aSEmmanuel Vadot				 <0>;
864*f126890aSEmmanuel Vadot			clock-names = "pxo",
865*f126890aSEmmanuel Vadot				      "pll4_vote",
866*f126890aSEmmanuel Vadot				      "mi2s_codec_clk",
867*f126890aSEmmanuel Vadot				      "codec_i2s_mic_codec_clk",
868*f126890aSEmmanuel Vadot				      "spare_i2s_mic_codec_clk",
869*f126890aSEmmanuel Vadot				      "codec_i2s_spkr_codec_clk",
870*f126890aSEmmanuel Vadot				      "spare_i2s_spkr_codec_clk",
871*f126890aSEmmanuel Vadot				      "pcm_codec_clk";
872*f126890aSEmmanuel Vadot		};
873*f126890aSEmmanuel Vadot
874*f126890aSEmmanuel Vadot		mmcc: clock-controller@4000000 {
875*f126890aSEmmanuel Vadot			compatible = "qcom,mmcc-apq8064";
876*f126890aSEmmanuel Vadot			reg = <0x4000000 0x1000>;
877*f126890aSEmmanuel Vadot			#clock-cells = <1>;
878*f126890aSEmmanuel Vadot			#power-domain-cells = <1>;
879*f126890aSEmmanuel Vadot			#reset-cells = <1>;
880*f126890aSEmmanuel Vadot			clocks = <&pxo_board>,
881*f126890aSEmmanuel Vadot				 <&gcc PLL3>,
882*f126890aSEmmanuel Vadot				 <&gcc PLL8_VOTE>,
883*f126890aSEmmanuel Vadot				 <&dsi0_phy 1>,
884*f126890aSEmmanuel Vadot				 <&dsi0_phy 0>,
885*f126890aSEmmanuel Vadot				 <&dsi1_phy 1>,
886*f126890aSEmmanuel Vadot				 <&dsi1_phy 0>,
887*f126890aSEmmanuel Vadot				 <&hdmi_phy>;
888*f126890aSEmmanuel Vadot			clock-names = "pxo",
889*f126890aSEmmanuel Vadot				      "pll3",
890*f126890aSEmmanuel Vadot				      "pll8_vote",
891*f126890aSEmmanuel Vadot				      "dsi1pll",
892*f126890aSEmmanuel Vadot				      "dsi1pllbyte",
893*f126890aSEmmanuel Vadot				      "dsi2pll",
894*f126890aSEmmanuel Vadot				      "dsi2pllbyte",
895*f126890aSEmmanuel Vadot				      "hdmipll";
896*f126890aSEmmanuel Vadot		};
897*f126890aSEmmanuel Vadot
898*f126890aSEmmanuel Vadot		l2cc: clock-controller@2011000 {
899*f126890aSEmmanuel Vadot			compatible = "qcom,kpss-gcc-apq8064", "qcom,kpss-gcc", "syscon";
900*f126890aSEmmanuel Vadot			reg = <0x2011000 0x1000>;
901*f126890aSEmmanuel Vadot			clocks = <&gcc PLL8_VOTE>, <&pxo_board>;
902*f126890aSEmmanuel Vadot			clock-names = "pll8_vote", "pxo";
903*f126890aSEmmanuel Vadot			#clock-cells = <0>;
904*f126890aSEmmanuel Vadot		};
905*f126890aSEmmanuel Vadot
906*f126890aSEmmanuel Vadot		rpm: rpm@108000 {
907*f126890aSEmmanuel Vadot			compatible = "qcom,rpm-apq8064";
908*f126890aSEmmanuel Vadot			reg = <0x108000 0x1000>;
909*f126890aSEmmanuel Vadot			qcom,ipc = <&l2cc 0x8 2>;
910*f126890aSEmmanuel Vadot
911*f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 19 IRQ_TYPE_EDGE_RISING>,
912*f126890aSEmmanuel Vadot				     <GIC_SPI 21 IRQ_TYPE_EDGE_RISING>,
913*f126890aSEmmanuel Vadot				     <GIC_SPI 22 IRQ_TYPE_EDGE_RISING>;
914*f126890aSEmmanuel Vadot			interrupt-names = "ack", "err", "wakeup";
915*f126890aSEmmanuel Vadot
916*f126890aSEmmanuel Vadot			rpmcc: clock-controller {
917*f126890aSEmmanuel Vadot				compatible = "qcom,rpmcc-apq8064", "qcom,rpmcc";
918*f126890aSEmmanuel Vadot				#clock-cells = <1>;
919*f126890aSEmmanuel Vadot				clocks = <&pxo_board>, <&cxo_board>;
920*f126890aSEmmanuel Vadot				clock-names = "pxo", "cxo";
921*f126890aSEmmanuel Vadot			};
922*f126890aSEmmanuel Vadot
923*f126890aSEmmanuel Vadot			regulators {
924*f126890aSEmmanuel Vadot				compatible = "qcom,rpm-pm8921-regulators";
925*f126890aSEmmanuel Vadot
926*f126890aSEmmanuel Vadot				pm8921_s1: s1 {};
927*f126890aSEmmanuel Vadot				pm8921_s2: s2 {};
928*f126890aSEmmanuel Vadot				pm8921_s3: s3 {};
929*f126890aSEmmanuel Vadot				pm8921_s4: s4 {};
930*f126890aSEmmanuel Vadot				pm8921_s7: s7 {};
931*f126890aSEmmanuel Vadot				pm8921_s8: s8 {};
932*f126890aSEmmanuel Vadot
933*f126890aSEmmanuel Vadot				pm8921_l1: l1 {};
934*f126890aSEmmanuel Vadot				pm8921_l2: l2 {};
935*f126890aSEmmanuel Vadot				pm8921_l3: l3 {};
936*f126890aSEmmanuel Vadot				pm8921_l4: l4 {};
937*f126890aSEmmanuel Vadot				pm8921_l5: l5 {};
938*f126890aSEmmanuel Vadot				pm8921_l6: l6 {};
939*f126890aSEmmanuel Vadot				pm8921_l7: l7 {};
940*f126890aSEmmanuel Vadot				pm8921_l8: l8 {};
941*f126890aSEmmanuel Vadot				pm8921_l9: l9 {};
942*f126890aSEmmanuel Vadot				pm8921_l10: l10 {};
943*f126890aSEmmanuel Vadot				pm8921_l11: l11 {};
944*f126890aSEmmanuel Vadot				pm8921_l12: l12 {};
945*f126890aSEmmanuel Vadot				pm8921_l14: l14 {};
946*f126890aSEmmanuel Vadot				pm8921_l15: l15 {};
947*f126890aSEmmanuel Vadot				pm8921_l16: l16 {};
948*f126890aSEmmanuel Vadot				pm8921_l17: l17 {};
949*f126890aSEmmanuel Vadot				pm8921_l18: l18 {};
950*f126890aSEmmanuel Vadot				pm8921_l21: l21 {};
951*f126890aSEmmanuel Vadot				pm8921_l22: l22 {};
952*f126890aSEmmanuel Vadot				pm8921_l23: l23 {};
953*f126890aSEmmanuel Vadot				pm8921_l24: l24 {};
954*f126890aSEmmanuel Vadot				pm8921_l25: l25 {};
955*f126890aSEmmanuel Vadot				pm8921_l26: l26 {};
956*f126890aSEmmanuel Vadot				pm8921_l27: l27 {};
957*f126890aSEmmanuel Vadot				pm8921_l28: l28 {};
958*f126890aSEmmanuel Vadot				pm8921_l29: l29 {};
959*f126890aSEmmanuel Vadot
960*f126890aSEmmanuel Vadot				pm8921_lvs1: lvs1 {};
961*f126890aSEmmanuel Vadot				pm8921_lvs2: lvs2 {};
962*f126890aSEmmanuel Vadot				pm8921_lvs3: lvs3 {};
963*f126890aSEmmanuel Vadot				pm8921_lvs4: lvs4 {};
964*f126890aSEmmanuel Vadot				pm8921_lvs5: lvs5 {};
965*f126890aSEmmanuel Vadot				pm8921_lvs6: lvs6 {};
966*f126890aSEmmanuel Vadot				pm8921_lvs7: lvs7 {};
967*f126890aSEmmanuel Vadot
968*f126890aSEmmanuel Vadot				pm8921_usb_switch: usb-switch {};
969*f126890aSEmmanuel Vadot
970*f126890aSEmmanuel Vadot				pm8921_hdmi_switch: hdmi-switch {
971*f126890aSEmmanuel Vadot					bias-pull-down;
972*f126890aSEmmanuel Vadot				};
973*f126890aSEmmanuel Vadot
974*f126890aSEmmanuel Vadot				pm8921_ncp: ncp {};
975*f126890aSEmmanuel Vadot			};
976*f126890aSEmmanuel Vadot		};
977*f126890aSEmmanuel Vadot
978*f126890aSEmmanuel Vadot		usb1: usb@12500000 {
979*f126890aSEmmanuel Vadot			compatible = "qcom,ci-hdrc";
980*f126890aSEmmanuel Vadot			reg = <0x12500000 0x200>,
981*f126890aSEmmanuel Vadot			      <0x12500200 0x200>;
982*f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>;
983*f126890aSEmmanuel Vadot			clocks = <&gcc USB_HS1_XCVR_CLK>, <&gcc USB_HS1_H_CLK>;
984*f126890aSEmmanuel Vadot			clock-names = "core", "iface";
985*f126890aSEmmanuel Vadot			assigned-clocks = <&gcc USB_HS1_XCVR_CLK>;
986*f126890aSEmmanuel Vadot			assigned-clock-rates = <60000000>;
987*f126890aSEmmanuel Vadot			resets = <&gcc USB_HS1_RESET>;
988*f126890aSEmmanuel Vadot			reset-names = "core";
989*f126890aSEmmanuel Vadot			phy_type = "ulpi";
990*f126890aSEmmanuel Vadot			ahb-burst-config = <0>;
991*f126890aSEmmanuel Vadot			phys = <&usb_hs1_phy>;
992*f126890aSEmmanuel Vadot			phy-names = "usb-phy";
993*f126890aSEmmanuel Vadot			status = "disabled";
994*f126890aSEmmanuel Vadot			#reset-cells = <1>;
995*f126890aSEmmanuel Vadot
996*f126890aSEmmanuel Vadot			ulpi {
997*f126890aSEmmanuel Vadot				usb_hs1_phy: phy {
998*f126890aSEmmanuel Vadot					compatible = "qcom,usb-hs-phy-apq8064",
999*f126890aSEmmanuel Vadot						     "qcom,usb-hs-phy";
1000*f126890aSEmmanuel Vadot					clocks = <&sleep_clk>, <&cxo_board>;
1001*f126890aSEmmanuel Vadot					clock-names = "sleep", "ref";
1002*f126890aSEmmanuel Vadot					resets = <&usb1 0>;
1003*f126890aSEmmanuel Vadot					reset-names = "por";
1004*f126890aSEmmanuel Vadot					#phy-cells = <0>;
1005*f126890aSEmmanuel Vadot				};
1006*f126890aSEmmanuel Vadot			};
1007*f126890aSEmmanuel Vadot		};
1008*f126890aSEmmanuel Vadot
1009*f126890aSEmmanuel Vadot		usb3: usb@12520000 {
1010*f126890aSEmmanuel Vadot			compatible = "qcom,ci-hdrc";
1011*f126890aSEmmanuel Vadot			reg = <0x12520000 0x200>,
1012*f126890aSEmmanuel Vadot			      <0x12520200 0x200>;
1013*f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 188 IRQ_TYPE_LEVEL_HIGH>;
1014*f126890aSEmmanuel Vadot			clocks = <&gcc USB_HS3_XCVR_CLK>, <&gcc USB_HS3_H_CLK>;
1015*f126890aSEmmanuel Vadot			clock-names = "core", "iface";
1016*f126890aSEmmanuel Vadot			assigned-clocks = <&gcc USB_HS3_XCVR_CLK>;
1017*f126890aSEmmanuel Vadot			assigned-clock-rates = <60000000>;
1018*f126890aSEmmanuel Vadot			resets = <&gcc USB_HS3_RESET>;
1019*f126890aSEmmanuel Vadot			reset-names = "core";
1020*f126890aSEmmanuel Vadot			phy_type = "ulpi";
1021*f126890aSEmmanuel Vadot			ahb-burst-config = <0>;
1022*f126890aSEmmanuel Vadot			phys = <&usb_hs3_phy>;
1023*f126890aSEmmanuel Vadot			phy-names = "usb-phy";
1024*f126890aSEmmanuel Vadot			status = "disabled";
1025*f126890aSEmmanuel Vadot			#reset-cells = <1>;
1026*f126890aSEmmanuel Vadot
1027*f126890aSEmmanuel Vadot			ulpi {
1028*f126890aSEmmanuel Vadot				usb_hs3_phy: phy {
1029*f126890aSEmmanuel Vadot					compatible = "qcom,usb-hs-phy-apq8064",
1030*f126890aSEmmanuel Vadot						     "qcom,usb-hs-phy";
1031*f126890aSEmmanuel Vadot					#phy-cells = <0>;
1032*f126890aSEmmanuel Vadot					clocks = <&sleep_clk>, <&cxo_board>;
1033*f126890aSEmmanuel Vadot					clock-names = "sleep", "ref";
1034*f126890aSEmmanuel Vadot					resets = <&usb3 0>;
1035*f126890aSEmmanuel Vadot					reset-names = "por";
1036*f126890aSEmmanuel Vadot				};
1037*f126890aSEmmanuel Vadot			};
1038*f126890aSEmmanuel Vadot		};
1039*f126890aSEmmanuel Vadot
1040*f126890aSEmmanuel Vadot		usb4: usb@12530000 {
1041*f126890aSEmmanuel Vadot			compatible = "qcom,ci-hdrc";
1042*f126890aSEmmanuel Vadot			reg = <0x12530000 0x200>,
1043*f126890aSEmmanuel Vadot			      <0x12530200 0x200>;
1044*f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 215 IRQ_TYPE_LEVEL_HIGH>;
1045*f126890aSEmmanuel Vadot			clocks = <&gcc USB_HS4_XCVR_CLK>, <&gcc USB_HS4_H_CLK>;
1046*f126890aSEmmanuel Vadot			clock-names = "core", "iface";
1047*f126890aSEmmanuel Vadot			assigned-clocks = <&gcc USB_HS4_XCVR_CLK>;
1048*f126890aSEmmanuel Vadot			assigned-clock-rates = <60000000>;
1049*f126890aSEmmanuel Vadot			resets = <&gcc USB_HS4_RESET>;
1050*f126890aSEmmanuel Vadot			reset-names = "core";
1051*f126890aSEmmanuel Vadot			phy_type = "ulpi";
1052*f126890aSEmmanuel Vadot			ahb-burst-config = <0>;
1053*f126890aSEmmanuel Vadot			phys = <&usb_hs4_phy>;
1054*f126890aSEmmanuel Vadot			phy-names = "usb-phy";
1055*f126890aSEmmanuel Vadot			status = "disabled";
1056*f126890aSEmmanuel Vadot			#reset-cells = <1>;
1057*f126890aSEmmanuel Vadot
1058*f126890aSEmmanuel Vadot			ulpi {
1059*f126890aSEmmanuel Vadot				usb_hs4_phy: phy {
1060*f126890aSEmmanuel Vadot					compatible = "qcom,usb-hs-phy-apq8064",
1061*f126890aSEmmanuel Vadot						     "qcom,usb-hs-phy";
1062*f126890aSEmmanuel Vadot					#phy-cells = <0>;
1063*f126890aSEmmanuel Vadot					clocks = <&sleep_clk>, <&cxo_board>;
1064*f126890aSEmmanuel Vadot					clock-names = "sleep", "ref";
1065*f126890aSEmmanuel Vadot					resets = <&usb4 0>;
1066*f126890aSEmmanuel Vadot					reset-names = "por";
1067*f126890aSEmmanuel Vadot				};
1068*f126890aSEmmanuel Vadot			};
1069*f126890aSEmmanuel Vadot		};
1070*f126890aSEmmanuel Vadot
1071*f126890aSEmmanuel Vadot		sata_phy0: phy@1b400000 {
1072*f126890aSEmmanuel Vadot			compatible = "qcom,apq8064-sata-phy";
1073*f126890aSEmmanuel Vadot			status = "disabled";
1074*f126890aSEmmanuel Vadot			reg = <0x1b400000 0x200>;
1075*f126890aSEmmanuel Vadot			reg-names = "phy_mem";
1076*f126890aSEmmanuel Vadot			clocks = <&gcc SATA_PHY_CFG_CLK>;
1077*f126890aSEmmanuel Vadot			clock-names = "cfg";
1078*f126890aSEmmanuel Vadot			#phy-cells = <0>;
1079*f126890aSEmmanuel Vadot		};
1080*f126890aSEmmanuel Vadot
1081*f126890aSEmmanuel Vadot		sata0: sata@29000000 {
1082*f126890aSEmmanuel Vadot			compatible = "qcom,apq8064-ahci", "generic-ahci";
1083*f126890aSEmmanuel Vadot			status	 = "disabled";
1084*f126890aSEmmanuel Vadot			reg	 = <0x29000000 0x180>;
1085*f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 209 IRQ_TYPE_LEVEL_HIGH>;
1086*f126890aSEmmanuel Vadot
1087*f126890aSEmmanuel Vadot			clocks = <&gcc SFAB_SATA_S_H_CLK>,
1088*f126890aSEmmanuel Vadot				 <&gcc SATA_H_CLK>,
1089*f126890aSEmmanuel Vadot				 <&gcc SATA_A_CLK>,
1090*f126890aSEmmanuel Vadot				 <&gcc SATA_RXOOB_CLK>,
1091*f126890aSEmmanuel Vadot				 <&gcc SATA_PMALIVE_CLK>;
1092*f126890aSEmmanuel Vadot			clock-names = "slave_iface",
1093*f126890aSEmmanuel Vadot				      "iface",
1094*f126890aSEmmanuel Vadot				      "bus",
1095*f126890aSEmmanuel Vadot				      "rxoob",
1096*f126890aSEmmanuel Vadot				      "core_pmalive";
1097*f126890aSEmmanuel Vadot
1098*f126890aSEmmanuel Vadot			assigned-clocks = <&gcc SATA_RXOOB_CLK>,
1099*f126890aSEmmanuel Vadot					  <&gcc SATA_PMALIVE_CLK>;
1100*f126890aSEmmanuel Vadot			assigned-clock-rates = <100000000>, <100000000>;
1101*f126890aSEmmanuel Vadot
1102*f126890aSEmmanuel Vadot			phys = <&sata_phy0>;
1103*f126890aSEmmanuel Vadot			phy-names = "sata-phy";
1104*f126890aSEmmanuel Vadot			ports-implemented = <0x1>;
1105*f126890aSEmmanuel Vadot		};
1106*f126890aSEmmanuel Vadot
1107*f126890aSEmmanuel Vadot		sdcc3: mmc@12180000 {
1108*f126890aSEmmanuel Vadot			compatible = "arm,pl18x", "arm,primecell";
1109*f126890aSEmmanuel Vadot			arm,primecell-periphid = <0x00051180>;
1110*f126890aSEmmanuel Vadot			status = "disabled";
1111*f126890aSEmmanuel Vadot			reg = <0x12180000 0x2000>;
1112*f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH>;
1113*f126890aSEmmanuel Vadot			clocks = <&gcc SDC3_CLK>, <&gcc SDC3_H_CLK>;
1114*f126890aSEmmanuel Vadot			clock-names = "mclk", "apb_pclk";
1115*f126890aSEmmanuel Vadot			bus-width = <4>;
1116*f126890aSEmmanuel Vadot			cap-sd-highspeed;
1117*f126890aSEmmanuel Vadot			cap-mmc-highspeed;
1118*f126890aSEmmanuel Vadot			max-frequency = <192000000>;
1119*f126890aSEmmanuel Vadot			no-1-8-v;
1120*f126890aSEmmanuel Vadot			dmas = <&sdcc3bam 2>, <&sdcc3bam 1>;
1121*f126890aSEmmanuel Vadot			dma-names = "tx", "rx";
1122*f126890aSEmmanuel Vadot		};
1123*f126890aSEmmanuel Vadot
1124*f126890aSEmmanuel Vadot		sdcc3bam: dma-controller@12182000 {
1125*f126890aSEmmanuel Vadot			compatible = "qcom,bam-v1.3.0";
1126*f126890aSEmmanuel Vadot			reg = <0x12182000 0x8000>;
1127*f126890aSEmmanuel Vadot			interrupts = <0 96 IRQ_TYPE_LEVEL_HIGH>;
1128*f126890aSEmmanuel Vadot			clocks = <&gcc SDC3_H_CLK>;
1129*f126890aSEmmanuel Vadot			clock-names = "bam_clk";
1130*f126890aSEmmanuel Vadot			#dma-cells = <1>;
1131*f126890aSEmmanuel Vadot			qcom,ee = <0>;
1132*f126890aSEmmanuel Vadot		};
1133*f126890aSEmmanuel Vadot
1134*f126890aSEmmanuel Vadot		sdcc4: mmc@121c0000 {
1135*f126890aSEmmanuel Vadot			compatible = "arm,pl18x", "arm,primecell";
1136*f126890aSEmmanuel Vadot			arm,primecell-periphid = <0x00051180>;
1137*f126890aSEmmanuel Vadot			status = "disabled";
1138*f126890aSEmmanuel Vadot			reg = <0x121c0000 0x2000>;
1139*f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>;
1140*f126890aSEmmanuel Vadot			clocks = <&gcc SDC4_CLK>, <&gcc SDC4_H_CLK>;
1141*f126890aSEmmanuel Vadot			clock-names = "mclk", "apb_pclk";
1142*f126890aSEmmanuel Vadot			bus-width = <4>;
1143*f126890aSEmmanuel Vadot			cap-sd-highspeed;
1144*f126890aSEmmanuel Vadot			cap-mmc-highspeed;
1145*f126890aSEmmanuel Vadot			max-frequency = <48000000>;
1146*f126890aSEmmanuel Vadot			dmas = <&sdcc4bam 2>, <&sdcc4bam 1>;
1147*f126890aSEmmanuel Vadot			dma-names = "tx", "rx";
1148*f126890aSEmmanuel Vadot			pinctrl-names = "default";
1149*f126890aSEmmanuel Vadot			pinctrl-0 = <&sdc4_gpios>;
1150*f126890aSEmmanuel Vadot		};
1151*f126890aSEmmanuel Vadot
1152*f126890aSEmmanuel Vadot		sdcc4bam: dma-controller@121c2000 {
1153*f126890aSEmmanuel Vadot			compatible = "qcom,bam-v1.3.0";
1154*f126890aSEmmanuel Vadot			reg = <0x121c2000 0x8000>;
1155*f126890aSEmmanuel Vadot			interrupts = <0 95 IRQ_TYPE_LEVEL_HIGH>;
1156*f126890aSEmmanuel Vadot			clocks = <&gcc SDC4_H_CLK>;
1157*f126890aSEmmanuel Vadot			clock-names = "bam_clk";
1158*f126890aSEmmanuel Vadot			#dma-cells = <1>;
1159*f126890aSEmmanuel Vadot			qcom,ee = <0>;
1160*f126890aSEmmanuel Vadot		};
1161*f126890aSEmmanuel Vadot
1162*f126890aSEmmanuel Vadot		sdcc1: mmc@12400000 {
1163*f126890aSEmmanuel Vadot			status = "disabled";
1164*f126890aSEmmanuel Vadot			compatible = "arm,pl18x", "arm,primecell";
1165*f126890aSEmmanuel Vadot			pinctrl-names = "default";
1166*f126890aSEmmanuel Vadot			pinctrl-0 = <&sdcc1_pins>;
1167*f126890aSEmmanuel Vadot			arm,primecell-periphid = <0x00051180>;
1168*f126890aSEmmanuel Vadot			reg = <0x12400000 0x2000>;
1169*f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>;
1170*f126890aSEmmanuel Vadot			clocks = <&gcc SDC1_CLK>, <&gcc SDC1_H_CLK>;
1171*f126890aSEmmanuel Vadot			clock-names = "mclk", "apb_pclk";
1172*f126890aSEmmanuel Vadot			bus-width = <8>;
1173*f126890aSEmmanuel Vadot			max-frequency = <96000000>;
1174*f126890aSEmmanuel Vadot			non-removable;
1175*f126890aSEmmanuel Vadot			cap-sd-highspeed;
1176*f126890aSEmmanuel Vadot			cap-mmc-highspeed;
1177*f126890aSEmmanuel Vadot			dmas = <&sdcc1bam 2>, <&sdcc1bam 1>;
1178*f126890aSEmmanuel Vadot			dma-names = "tx", "rx";
1179*f126890aSEmmanuel Vadot		};
1180*f126890aSEmmanuel Vadot
1181*f126890aSEmmanuel Vadot		sdcc1bam: dma-controller@12402000 {
1182*f126890aSEmmanuel Vadot			compatible = "qcom,bam-v1.3.0";
1183*f126890aSEmmanuel Vadot			reg = <0x12402000 0x8000>;
1184*f126890aSEmmanuel Vadot			interrupts = <0 98 IRQ_TYPE_LEVEL_HIGH>;
1185*f126890aSEmmanuel Vadot			clocks = <&gcc SDC1_H_CLK>;
1186*f126890aSEmmanuel Vadot			clock-names = "bam_clk";
1187*f126890aSEmmanuel Vadot			#dma-cells = <1>;
1188*f126890aSEmmanuel Vadot			qcom,ee = <0>;
1189*f126890aSEmmanuel Vadot		};
1190*f126890aSEmmanuel Vadot
1191*f126890aSEmmanuel Vadot		tcsr: syscon@1a400000 {
1192*f126890aSEmmanuel Vadot			compatible = "qcom,tcsr-apq8064", "syscon";
1193*f126890aSEmmanuel Vadot			reg = <0x1a400000 0x100>;
1194*f126890aSEmmanuel Vadot		};
1195*f126890aSEmmanuel Vadot
1196*f126890aSEmmanuel Vadot		gpu: adreno-3xx@4300000 {
1197*f126890aSEmmanuel Vadot			compatible = "qcom,adreno-320.2", "qcom,adreno";
1198*f126890aSEmmanuel Vadot			reg = <0x04300000 0x20000>;
1199*f126890aSEmmanuel Vadot			reg-names = "kgsl_3d0_reg_memory";
1200*f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 80 IRQ_TYPE_LEVEL_HIGH>;
1201*f126890aSEmmanuel Vadot			interrupt-names = "kgsl_3d0_irq";
1202*f126890aSEmmanuel Vadot			clock-names =
1203*f126890aSEmmanuel Vadot			    "core",
1204*f126890aSEmmanuel Vadot			    "iface",
1205*f126890aSEmmanuel Vadot			    "mem",
1206*f126890aSEmmanuel Vadot			    "mem_iface";
1207*f126890aSEmmanuel Vadot			clocks =
1208*f126890aSEmmanuel Vadot			    <&mmcc GFX3D_CLK>,
1209*f126890aSEmmanuel Vadot			    <&mmcc GFX3D_AHB_CLK>,
1210*f126890aSEmmanuel Vadot			    <&mmcc GFX3D_AXI_CLK>,
1211*f126890aSEmmanuel Vadot			    <&mmcc MMSS_IMEM_AHB_CLK>;
1212*f126890aSEmmanuel Vadot
1213*f126890aSEmmanuel Vadot			iommus = <&gfx3d 0
1214*f126890aSEmmanuel Vadot				  &gfx3d 1
1215*f126890aSEmmanuel Vadot				  &gfx3d 2
1216*f126890aSEmmanuel Vadot				  &gfx3d 3
1217*f126890aSEmmanuel Vadot				  &gfx3d 4
1218*f126890aSEmmanuel Vadot				  &gfx3d 5
1219*f126890aSEmmanuel Vadot				  &gfx3d 6
1220*f126890aSEmmanuel Vadot				  &gfx3d 7
1221*f126890aSEmmanuel Vadot				  &gfx3d 8
1222*f126890aSEmmanuel Vadot				  &gfx3d 9
1223*f126890aSEmmanuel Vadot				  &gfx3d 10
1224*f126890aSEmmanuel Vadot				  &gfx3d 11
1225*f126890aSEmmanuel Vadot				  &gfx3d 12
1226*f126890aSEmmanuel Vadot				  &gfx3d 13
1227*f126890aSEmmanuel Vadot				  &gfx3d 14
1228*f126890aSEmmanuel Vadot				  &gfx3d 15
1229*f126890aSEmmanuel Vadot				  &gfx3d 16
1230*f126890aSEmmanuel Vadot				  &gfx3d 17
1231*f126890aSEmmanuel Vadot				  &gfx3d 18
1232*f126890aSEmmanuel Vadot				  &gfx3d 19
1233*f126890aSEmmanuel Vadot				  &gfx3d 20
1234*f126890aSEmmanuel Vadot				  &gfx3d 21
1235*f126890aSEmmanuel Vadot				  &gfx3d 22
1236*f126890aSEmmanuel Vadot				  &gfx3d 23
1237*f126890aSEmmanuel Vadot				  &gfx3d 24
1238*f126890aSEmmanuel Vadot				  &gfx3d 25
1239*f126890aSEmmanuel Vadot				  &gfx3d 26
1240*f126890aSEmmanuel Vadot				  &gfx3d 27
1241*f126890aSEmmanuel Vadot				  &gfx3d 28
1242*f126890aSEmmanuel Vadot				  &gfx3d 29
1243*f126890aSEmmanuel Vadot				  &gfx3d 30
1244*f126890aSEmmanuel Vadot				  &gfx3d 31
1245*f126890aSEmmanuel Vadot				  &gfx3d1 0
1246*f126890aSEmmanuel Vadot				  &gfx3d1 1
1247*f126890aSEmmanuel Vadot				  &gfx3d1 2
1248*f126890aSEmmanuel Vadot				  &gfx3d1 3
1249*f126890aSEmmanuel Vadot				  &gfx3d1 4
1250*f126890aSEmmanuel Vadot				  &gfx3d1 5
1251*f126890aSEmmanuel Vadot				  &gfx3d1 6
1252*f126890aSEmmanuel Vadot				  &gfx3d1 7
1253*f126890aSEmmanuel Vadot				  &gfx3d1 8
1254*f126890aSEmmanuel Vadot				  &gfx3d1 9
1255*f126890aSEmmanuel Vadot				  &gfx3d1 10
1256*f126890aSEmmanuel Vadot				  &gfx3d1 11
1257*f126890aSEmmanuel Vadot				  &gfx3d1 12
1258*f126890aSEmmanuel Vadot				  &gfx3d1 13
1259*f126890aSEmmanuel Vadot				  &gfx3d1 14
1260*f126890aSEmmanuel Vadot				  &gfx3d1 15
1261*f126890aSEmmanuel Vadot				  &gfx3d1 16
1262*f126890aSEmmanuel Vadot				  &gfx3d1 17
1263*f126890aSEmmanuel Vadot				  &gfx3d1 18
1264*f126890aSEmmanuel Vadot				  &gfx3d1 19
1265*f126890aSEmmanuel Vadot				  &gfx3d1 20
1266*f126890aSEmmanuel Vadot				  &gfx3d1 21
1267*f126890aSEmmanuel Vadot				  &gfx3d1 22
1268*f126890aSEmmanuel Vadot				  &gfx3d1 23
1269*f126890aSEmmanuel Vadot				  &gfx3d1 24
1270*f126890aSEmmanuel Vadot				  &gfx3d1 25
1271*f126890aSEmmanuel Vadot				  &gfx3d1 26
1272*f126890aSEmmanuel Vadot				  &gfx3d1 27
1273*f126890aSEmmanuel Vadot				  &gfx3d1 28
1274*f126890aSEmmanuel Vadot				  &gfx3d1 29
1275*f126890aSEmmanuel Vadot				  &gfx3d1 30
1276*f126890aSEmmanuel Vadot				  &gfx3d1 31>;
1277*f126890aSEmmanuel Vadot
1278*f126890aSEmmanuel Vadot			operating-points-v2 = <&gpu_opp_table>;
1279*f126890aSEmmanuel Vadot
1280*f126890aSEmmanuel Vadot			gpu_opp_table: opp-table {
1281*f126890aSEmmanuel Vadot				compatible = "operating-points-v2";
1282*f126890aSEmmanuel Vadot
1283*f126890aSEmmanuel Vadot				opp-450000000 {
1284*f126890aSEmmanuel Vadot					opp-hz = /bits/ 64 <450000000>;
1285*f126890aSEmmanuel Vadot				};
1286*f126890aSEmmanuel Vadot
1287*f126890aSEmmanuel Vadot				opp-27000000 {
1288*f126890aSEmmanuel Vadot					opp-hz = /bits/ 64 <27000000>;
1289*f126890aSEmmanuel Vadot				};
1290*f126890aSEmmanuel Vadot			};
1291*f126890aSEmmanuel Vadot		};
1292*f126890aSEmmanuel Vadot
1293*f126890aSEmmanuel Vadot		mmss_sfpb: syscon@5700000 {
1294*f126890aSEmmanuel Vadot			compatible = "syscon";
1295*f126890aSEmmanuel Vadot			reg = <0x5700000 0x70>;
1296*f126890aSEmmanuel Vadot		};
1297*f126890aSEmmanuel Vadot
1298*f126890aSEmmanuel Vadot		dsi0: dsi@4700000 {
1299*f126890aSEmmanuel Vadot			compatible = "qcom,apq8064-dsi-ctrl",
1300*f126890aSEmmanuel Vadot				     "qcom,mdss-dsi-ctrl";
1301*f126890aSEmmanuel Vadot			label = "MDSS DSI CTRL->0";
1302*f126890aSEmmanuel Vadot			#address-cells = <1>;
1303*f126890aSEmmanuel Vadot			#size-cells = <0>;
1304*f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_HIGH>;
1305*f126890aSEmmanuel Vadot			reg = <0x04700000 0x200>;
1306*f126890aSEmmanuel Vadot			reg-names = "dsi_ctrl";
1307*f126890aSEmmanuel Vadot
1308*f126890aSEmmanuel Vadot			clocks = <&mmcc DSI_M_AHB_CLK>,
1309*f126890aSEmmanuel Vadot				<&mmcc DSI_S_AHB_CLK>,
1310*f126890aSEmmanuel Vadot				<&mmcc AMP_AHB_CLK>,
1311*f126890aSEmmanuel Vadot				<&mmcc DSI_CLK>,
1312*f126890aSEmmanuel Vadot				<&mmcc DSI1_BYTE_CLK>,
1313*f126890aSEmmanuel Vadot				<&mmcc DSI_PIXEL_CLK>,
1314*f126890aSEmmanuel Vadot				<&mmcc DSI1_ESC_CLK>;
1315*f126890aSEmmanuel Vadot			clock-names = "iface", "bus", "core_mmss",
1316*f126890aSEmmanuel Vadot					"src", "byte", "pixel",
1317*f126890aSEmmanuel Vadot					"core";
1318*f126890aSEmmanuel Vadot
1319*f126890aSEmmanuel Vadot			assigned-clocks = <&mmcc DSI1_BYTE_SRC>,
1320*f126890aSEmmanuel Vadot					<&mmcc DSI1_ESC_SRC>,
1321*f126890aSEmmanuel Vadot					<&mmcc DSI_SRC>,
1322*f126890aSEmmanuel Vadot					<&mmcc DSI_PIXEL_SRC>;
1323*f126890aSEmmanuel Vadot			assigned-clock-parents = <&dsi0_phy 0>,
1324*f126890aSEmmanuel Vadot						<&dsi0_phy 0>,
1325*f126890aSEmmanuel Vadot						<&dsi0_phy 1>,
1326*f126890aSEmmanuel Vadot						<&dsi0_phy 1>;
1327*f126890aSEmmanuel Vadot			syscon-sfpb = <&mmss_sfpb>;
1328*f126890aSEmmanuel Vadot			phys = <&dsi0_phy>;
1329*f126890aSEmmanuel Vadot			status = "disabled";
1330*f126890aSEmmanuel Vadot
1331*f126890aSEmmanuel Vadot			ports {
1332*f126890aSEmmanuel Vadot				#address-cells = <1>;
1333*f126890aSEmmanuel Vadot				#size-cells = <0>;
1334*f126890aSEmmanuel Vadot
1335*f126890aSEmmanuel Vadot				port@0 {
1336*f126890aSEmmanuel Vadot					reg = <0>;
1337*f126890aSEmmanuel Vadot					dsi0_in: endpoint {
1338*f126890aSEmmanuel Vadot					};
1339*f126890aSEmmanuel Vadot				};
1340*f126890aSEmmanuel Vadot
1341*f126890aSEmmanuel Vadot				port@1 {
1342*f126890aSEmmanuel Vadot					reg = <1>;
1343*f126890aSEmmanuel Vadot					dsi0_out: endpoint {
1344*f126890aSEmmanuel Vadot					};
1345*f126890aSEmmanuel Vadot				};
1346*f126890aSEmmanuel Vadot			};
1347*f126890aSEmmanuel Vadot		};
1348*f126890aSEmmanuel Vadot
1349*f126890aSEmmanuel Vadot
1350*f126890aSEmmanuel Vadot		dsi0_phy: phy@4700200 {
1351*f126890aSEmmanuel Vadot			compatible = "qcom,dsi-phy-28nm-8960";
1352*f126890aSEmmanuel Vadot			#clock-cells = <1>;
1353*f126890aSEmmanuel Vadot			#phy-cells = <0>;
1354*f126890aSEmmanuel Vadot
1355*f126890aSEmmanuel Vadot			reg = <0x04700200 0x100>,
1356*f126890aSEmmanuel Vadot				<0x04700300 0x200>,
1357*f126890aSEmmanuel Vadot				<0x04700500 0x5c>;
1358*f126890aSEmmanuel Vadot			reg-names = "dsi_pll", "dsi_phy", "dsi_phy_regulator";
1359*f126890aSEmmanuel Vadot			clock-names = "iface", "ref";
1360*f126890aSEmmanuel Vadot			clocks = <&mmcc DSI_M_AHB_CLK>,
1361*f126890aSEmmanuel Vadot				 <&pxo_board>;
1362*f126890aSEmmanuel Vadot			status = "disabled";
1363*f126890aSEmmanuel Vadot		};
1364*f126890aSEmmanuel Vadot
1365*f126890aSEmmanuel Vadot		dsi1: dsi@5800000 {
1366*f126890aSEmmanuel Vadot			compatible = "qcom,mdss-dsi-ctrl";
1367*f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 166 IRQ_TYPE_LEVEL_HIGH>;
1368*f126890aSEmmanuel Vadot			reg = <0x05800000 0x200>;
1369*f126890aSEmmanuel Vadot			reg-names = "dsi_ctrl";
1370*f126890aSEmmanuel Vadot
1371*f126890aSEmmanuel Vadot			clocks = <&mmcc DSI2_M_AHB_CLK>,
1372*f126890aSEmmanuel Vadot				 <&mmcc DSI2_S_AHB_CLK>,
1373*f126890aSEmmanuel Vadot				 <&mmcc AMP_AHB_CLK>,
1374*f126890aSEmmanuel Vadot				 <&mmcc DSI2_CLK>,
1375*f126890aSEmmanuel Vadot				 <&mmcc DSI2_BYTE_CLK>,
1376*f126890aSEmmanuel Vadot				 <&mmcc DSI2_PIXEL_CLK>,
1377*f126890aSEmmanuel Vadot				 <&mmcc DSI2_ESC_CLK>;
1378*f126890aSEmmanuel Vadot			clock-names = "iface",
1379*f126890aSEmmanuel Vadot				      "bus",
1380*f126890aSEmmanuel Vadot				      "core_mmss",
1381*f126890aSEmmanuel Vadot				      "src",
1382*f126890aSEmmanuel Vadot				      "byte",
1383*f126890aSEmmanuel Vadot				      "pixel",
1384*f126890aSEmmanuel Vadot				      "core";
1385*f126890aSEmmanuel Vadot
1386*f126890aSEmmanuel Vadot			assigned-clocks = <&mmcc DSI2_BYTE_SRC>,
1387*f126890aSEmmanuel Vadot					  <&mmcc DSI2_ESC_SRC>,
1388*f126890aSEmmanuel Vadot					  <&mmcc DSI2_SRC>,
1389*f126890aSEmmanuel Vadot					  <&mmcc DSI2_PIXEL_SRC>;
1390*f126890aSEmmanuel Vadot			assigned-clock-parents = <&dsi1_phy 0>,
1391*f126890aSEmmanuel Vadot						 <&dsi1_phy 0>,
1392*f126890aSEmmanuel Vadot						 <&dsi1_phy 1>,
1393*f126890aSEmmanuel Vadot						 <&dsi1_phy 1>;
1394*f126890aSEmmanuel Vadot
1395*f126890aSEmmanuel Vadot			syscon-sfpb = <&mmss_sfpb>;
1396*f126890aSEmmanuel Vadot			phys = <&dsi1_phy>;
1397*f126890aSEmmanuel Vadot
1398*f126890aSEmmanuel Vadot			#address-cells = <1>;
1399*f126890aSEmmanuel Vadot			#size-cells = <0>;
1400*f126890aSEmmanuel Vadot
1401*f126890aSEmmanuel Vadot			status = "disabled";
1402*f126890aSEmmanuel Vadot
1403*f126890aSEmmanuel Vadot			ports {
1404*f126890aSEmmanuel Vadot				#address-cells = <1>;
1405*f126890aSEmmanuel Vadot				#size-cells = <0>;
1406*f126890aSEmmanuel Vadot
1407*f126890aSEmmanuel Vadot				port@0 {
1408*f126890aSEmmanuel Vadot					reg = <0>;
1409*f126890aSEmmanuel Vadot					dsi1_in: endpoint {
1410*f126890aSEmmanuel Vadot					};
1411*f126890aSEmmanuel Vadot				};
1412*f126890aSEmmanuel Vadot
1413*f126890aSEmmanuel Vadot				port@1 {
1414*f126890aSEmmanuel Vadot					reg = <1>;
1415*f126890aSEmmanuel Vadot					dsi1_out: endpoint {
1416*f126890aSEmmanuel Vadot					};
1417*f126890aSEmmanuel Vadot				};
1418*f126890aSEmmanuel Vadot			};
1419*f126890aSEmmanuel Vadot		};
1420*f126890aSEmmanuel Vadot
1421*f126890aSEmmanuel Vadot
1422*f126890aSEmmanuel Vadot		dsi1_phy: dsi-phy@5800200 {
1423*f126890aSEmmanuel Vadot			compatible = "qcom,dsi-phy-28nm-8960";
1424*f126890aSEmmanuel Vadot			reg = <0x05800200 0x100>,
1425*f126890aSEmmanuel Vadot			      <0x05800300 0x200>,
1426*f126890aSEmmanuel Vadot			      <0x05800500 0x5c>;
1427*f126890aSEmmanuel Vadot			reg-names = "dsi_pll",
1428*f126890aSEmmanuel Vadot				    "dsi_phy",
1429*f126890aSEmmanuel Vadot				    "dsi_phy_regulator";
1430*f126890aSEmmanuel Vadot			clock-names = "iface",
1431*f126890aSEmmanuel Vadot				      "ref";
1432*f126890aSEmmanuel Vadot			clocks = <&mmcc DSI2_M_AHB_CLK>,
1433*f126890aSEmmanuel Vadot				 <&pxo_board>;
1434*f126890aSEmmanuel Vadot			#clock-cells = <1>;
1435*f126890aSEmmanuel Vadot			#phy-cells = <0>;
1436*f126890aSEmmanuel Vadot
1437*f126890aSEmmanuel Vadot			status = "disabled";
1438*f126890aSEmmanuel Vadot		};
1439*f126890aSEmmanuel Vadot
1440*f126890aSEmmanuel Vadot		mdp_port0: iommu@7500000 {
1441*f126890aSEmmanuel Vadot			compatible = "qcom,apq8064-iommu";
1442*f126890aSEmmanuel Vadot			#iommu-cells = <1>;
1443*f126890aSEmmanuel Vadot			clock-names =
1444*f126890aSEmmanuel Vadot			    "smmu_pclk",
1445*f126890aSEmmanuel Vadot			    "iommu_clk";
1446*f126890aSEmmanuel Vadot			clocks =
1447*f126890aSEmmanuel Vadot			    <&mmcc SMMU_AHB_CLK>,
1448*f126890aSEmmanuel Vadot			    <&mmcc MDP_AXI_CLK>;
1449*f126890aSEmmanuel Vadot			reg = <0x07500000 0x100000>;
1450*f126890aSEmmanuel Vadot			interrupts =
1451*f126890aSEmmanuel Vadot			    <GIC_SPI 63 IRQ_TYPE_LEVEL_HIGH>,
1452*f126890aSEmmanuel Vadot			    <GIC_SPI 64 IRQ_TYPE_LEVEL_HIGH>;
1453*f126890aSEmmanuel Vadot			qcom,ncb = <2>;
1454*f126890aSEmmanuel Vadot		};
1455*f126890aSEmmanuel Vadot
1456*f126890aSEmmanuel Vadot		mdp_port1: iommu@7600000 {
1457*f126890aSEmmanuel Vadot			compatible = "qcom,apq8064-iommu";
1458*f126890aSEmmanuel Vadot			#iommu-cells = <1>;
1459*f126890aSEmmanuel Vadot			clock-names =
1460*f126890aSEmmanuel Vadot			    "smmu_pclk",
1461*f126890aSEmmanuel Vadot			    "iommu_clk";
1462*f126890aSEmmanuel Vadot			clocks =
1463*f126890aSEmmanuel Vadot			    <&mmcc SMMU_AHB_CLK>,
1464*f126890aSEmmanuel Vadot			    <&mmcc MDP_AXI_CLK>;
1465*f126890aSEmmanuel Vadot			reg = <0x07600000 0x100000>;
1466*f126890aSEmmanuel Vadot			interrupts =
1467*f126890aSEmmanuel Vadot			    <GIC_SPI 61 IRQ_TYPE_LEVEL_HIGH>,
1468*f126890aSEmmanuel Vadot			    <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>;
1469*f126890aSEmmanuel Vadot			qcom,ncb = <2>;
1470*f126890aSEmmanuel Vadot		};
1471*f126890aSEmmanuel Vadot
1472*f126890aSEmmanuel Vadot		gfx3d: iommu@7c00000 {
1473*f126890aSEmmanuel Vadot			compatible = "qcom,apq8064-iommu";
1474*f126890aSEmmanuel Vadot			#iommu-cells = <1>;
1475*f126890aSEmmanuel Vadot			clock-names =
1476*f126890aSEmmanuel Vadot			    "smmu_pclk",
1477*f126890aSEmmanuel Vadot			    "iommu_clk";
1478*f126890aSEmmanuel Vadot			clocks =
1479*f126890aSEmmanuel Vadot			    <&mmcc SMMU_AHB_CLK>,
1480*f126890aSEmmanuel Vadot			    <&mmcc GFX3D_AXI_CLK>;
1481*f126890aSEmmanuel Vadot			reg = <0x07c00000 0x100000>;
1482*f126890aSEmmanuel Vadot			interrupts =
1483*f126890aSEmmanuel Vadot			    <GIC_SPI 69 IRQ_TYPE_LEVEL_HIGH>,
1484*f126890aSEmmanuel Vadot			    <GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH>;
1485*f126890aSEmmanuel Vadot			qcom,ncb = <3>;
1486*f126890aSEmmanuel Vadot		};
1487*f126890aSEmmanuel Vadot
1488*f126890aSEmmanuel Vadot		gfx3d1: iommu@7d00000 {
1489*f126890aSEmmanuel Vadot			compatible = "qcom,apq8064-iommu";
1490*f126890aSEmmanuel Vadot			#iommu-cells = <1>;
1491*f126890aSEmmanuel Vadot			clock-names =
1492*f126890aSEmmanuel Vadot			    "smmu_pclk",
1493*f126890aSEmmanuel Vadot			    "iommu_clk";
1494*f126890aSEmmanuel Vadot			clocks =
1495*f126890aSEmmanuel Vadot			    <&mmcc SMMU_AHB_CLK>,
1496*f126890aSEmmanuel Vadot			    <&mmcc GFX3D_AXI_CLK>;
1497*f126890aSEmmanuel Vadot			reg = <0x07d00000 0x100000>;
1498*f126890aSEmmanuel Vadot			interrupts =
1499*f126890aSEmmanuel Vadot			    <GIC_SPI 210 IRQ_TYPE_LEVEL_HIGH>,
1500*f126890aSEmmanuel Vadot			    <GIC_SPI 211 IRQ_TYPE_LEVEL_HIGH>;
1501*f126890aSEmmanuel Vadot			qcom,ncb = <3>;
1502*f126890aSEmmanuel Vadot		};
1503*f126890aSEmmanuel Vadot
1504*f126890aSEmmanuel Vadot		pcie: pci@1b500000 {
1505*f126890aSEmmanuel Vadot			compatible = "qcom,pcie-apq8064";
1506*f126890aSEmmanuel Vadot			reg = <0x1b500000 0x1000>,
1507*f126890aSEmmanuel Vadot			      <0x1b502000 0x80>,
1508*f126890aSEmmanuel Vadot			      <0x1b600000 0x100>,
1509*f126890aSEmmanuel Vadot			      <0x0ff00000 0x100000>;
1510*f126890aSEmmanuel Vadot			reg-names = "dbi", "elbi", "parf", "config";
1511*f126890aSEmmanuel Vadot			device_type = "pci";
1512*f126890aSEmmanuel Vadot			linux,pci-domain = <0>;
1513*f126890aSEmmanuel Vadot			bus-range = <0x00 0xff>;
1514*f126890aSEmmanuel Vadot			num-lanes = <1>;
1515*f126890aSEmmanuel Vadot			#address-cells = <3>;
1516*f126890aSEmmanuel Vadot			#size-cells = <2>;
1517*f126890aSEmmanuel Vadot			ranges = <0x81000000 0x0 0x00000000 0x0fe00000 0x0 0x00100000>, /* I/O */
1518*f126890aSEmmanuel Vadot				 <0x82000000 0x0 0x08000000 0x08000000 0x0 0x07e00000>; /* mem */
1519*f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 238 IRQ_TYPE_LEVEL_HIGH>;
1520*f126890aSEmmanuel Vadot			interrupt-names = "msi";
1521*f126890aSEmmanuel Vadot			#interrupt-cells = <1>;
1522*f126890aSEmmanuel Vadot			interrupt-map-mask = <0 0 0 0x7>;
1523*f126890aSEmmanuel Vadot			interrupt-map = <0 0 0 1 &intc 0 36 IRQ_TYPE_LEVEL_HIGH>, /* int_a */
1524*f126890aSEmmanuel Vadot					<0 0 0 2 &intc 0 37 IRQ_TYPE_LEVEL_HIGH>, /* int_b */
1525*f126890aSEmmanuel Vadot					<0 0 0 3 &intc 0 38 IRQ_TYPE_LEVEL_HIGH>, /* int_c */
1526*f126890aSEmmanuel Vadot					<0 0 0 4 &intc 0 39 IRQ_TYPE_LEVEL_HIGH>; /* int_d */
1527*f126890aSEmmanuel Vadot			clocks = <&gcc PCIE_A_CLK>,
1528*f126890aSEmmanuel Vadot				 <&gcc PCIE_H_CLK>,
1529*f126890aSEmmanuel Vadot				 <&gcc PCIE_PHY_REF_CLK>;
1530*f126890aSEmmanuel Vadot			clock-names = "core", "iface", "phy";
1531*f126890aSEmmanuel Vadot			resets = <&gcc PCIE_ACLK_RESET>,
1532*f126890aSEmmanuel Vadot				 <&gcc PCIE_HCLK_RESET>,
1533*f126890aSEmmanuel Vadot				 <&gcc PCIE_POR_RESET>,
1534*f126890aSEmmanuel Vadot				 <&gcc PCIE_PCI_RESET>,
1535*f126890aSEmmanuel Vadot				 <&gcc PCIE_PHY_RESET>;
1536*f126890aSEmmanuel Vadot			reset-names = "axi", "ahb", "por", "pci", "phy";
1537*f126890aSEmmanuel Vadot			status = "disabled";
1538*f126890aSEmmanuel Vadot		};
1539*f126890aSEmmanuel Vadot
1540*f126890aSEmmanuel Vadot		hdmi: hdmi-tx@4a00000 {
1541*f126890aSEmmanuel Vadot			compatible = "qcom,hdmi-tx-8960";
1542*f126890aSEmmanuel Vadot			pinctrl-names = "default";
1543*f126890aSEmmanuel Vadot			pinctrl-0 = <&hdmi_pinctrl>;
1544*f126890aSEmmanuel Vadot			reg = <0x04a00000 0x2f0>;
1545*f126890aSEmmanuel Vadot			reg-names = "core_physical";
1546*f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH>;
1547*f126890aSEmmanuel Vadot			clocks = <&mmcc HDMI_APP_CLK>,
1548*f126890aSEmmanuel Vadot				 <&mmcc HDMI_M_AHB_CLK>,
1549*f126890aSEmmanuel Vadot				 <&mmcc HDMI_S_AHB_CLK>;
1550*f126890aSEmmanuel Vadot			clock-names = "core",
1551*f126890aSEmmanuel Vadot				      "master_iface",
1552*f126890aSEmmanuel Vadot				      "slave_iface";
1553*f126890aSEmmanuel Vadot
1554*f126890aSEmmanuel Vadot			phys = <&hdmi_phy>;
1555*f126890aSEmmanuel Vadot
1556*f126890aSEmmanuel Vadot			status = "disabled";
1557*f126890aSEmmanuel Vadot
1558*f126890aSEmmanuel Vadot			ports {
1559*f126890aSEmmanuel Vadot				#address-cells = <1>;
1560*f126890aSEmmanuel Vadot				#size-cells = <0>;
1561*f126890aSEmmanuel Vadot
1562*f126890aSEmmanuel Vadot				port@0 {
1563*f126890aSEmmanuel Vadot					reg = <0>;
1564*f126890aSEmmanuel Vadot					hdmi_in: endpoint {
1565*f126890aSEmmanuel Vadot					};
1566*f126890aSEmmanuel Vadot				};
1567*f126890aSEmmanuel Vadot
1568*f126890aSEmmanuel Vadot				port@1 {
1569*f126890aSEmmanuel Vadot					reg = <1>;
1570*f126890aSEmmanuel Vadot					hdmi_out: endpoint {
1571*f126890aSEmmanuel Vadot					};
1572*f126890aSEmmanuel Vadot				};
1573*f126890aSEmmanuel Vadot			};
1574*f126890aSEmmanuel Vadot		};
1575*f126890aSEmmanuel Vadot
1576*f126890aSEmmanuel Vadot		hdmi_phy: phy@4a00400 {
1577*f126890aSEmmanuel Vadot			compatible = "qcom,hdmi-phy-8960";
1578*f126890aSEmmanuel Vadot			reg = <0x4a00400 0x60>,
1579*f126890aSEmmanuel Vadot			      <0x4a00500 0x100>;
1580*f126890aSEmmanuel Vadot			reg-names = "hdmi_phy",
1581*f126890aSEmmanuel Vadot				    "hdmi_pll";
1582*f126890aSEmmanuel Vadot
1583*f126890aSEmmanuel Vadot			clocks = <&mmcc HDMI_S_AHB_CLK>;
1584*f126890aSEmmanuel Vadot			clock-names = "slave_iface";
1585*f126890aSEmmanuel Vadot			#phy-cells = <0>;
1586*f126890aSEmmanuel Vadot			#clock-cells = <0>;
1587*f126890aSEmmanuel Vadot
1588*f126890aSEmmanuel Vadot			status = "disabled";
1589*f126890aSEmmanuel Vadot		};
1590*f126890aSEmmanuel Vadot
1591*f126890aSEmmanuel Vadot		mdp: display-controller@5100000 {
1592*f126890aSEmmanuel Vadot			compatible = "qcom,mdp4";
1593*f126890aSEmmanuel Vadot			reg = <0x05100000 0xf0000>;
1594*f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH>;
1595*f126890aSEmmanuel Vadot			clocks = <&mmcc MDP_CLK>,
1596*f126890aSEmmanuel Vadot				 <&mmcc MDP_AHB_CLK>,
1597*f126890aSEmmanuel Vadot				 <&mmcc MDP_AXI_CLK>,
1598*f126890aSEmmanuel Vadot				 <&mmcc MDP_LUT_CLK>,
1599*f126890aSEmmanuel Vadot				 <&mmcc HDMI_TV_CLK>,
1600*f126890aSEmmanuel Vadot				 <&mmcc MDP_TV_CLK>;
1601*f126890aSEmmanuel Vadot			clock-names = "core_clk",
1602*f126890aSEmmanuel Vadot				      "iface_clk",
1603*f126890aSEmmanuel Vadot				      "bus_clk",
1604*f126890aSEmmanuel Vadot				      "lut_clk",
1605*f126890aSEmmanuel Vadot				      "hdmi_clk",
1606*f126890aSEmmanuel Vadot				      "tv_clk";
1607*f126890aSEmmanuel Vadot
1608*f126890aSEmmanuel Vadot			iommus = <&mdp_port0 0
1609*f126890aSEmmanuel Vadot				  &mdp_port0 2
1610*f126890aSEmmanuel Vadot				  &mdp_port1 0
1611*f126890aSEmmanuel Vadot				  &mdp_port1 2>;
1612*f126890aSEmmanuel Vadot
1613*f126890aSEmmanuel Vadot			ports {
1614*f126890aSEmmanuel Vadot				#address-cells = <1>;
1615*f126890aSEmmanuel Vadot				#size-cells = <0>;
1616*f126890aSEmmanuel Vadot
1617*f126890aSEmmanuel Vadot				port@0 {
1618*f126890aSEmmanuel Vadot					reg = <0>;
1619*f126890aSEmmanuel Vadot					mdp_lvds_out: endpoint {
1620*f126890aSEmmanuel Vadot					};
1621*f126890aSEmmanuel Vadot				};
1622*f126890aSEmmanuel Vadot
1623*f126890aSEmmanuel Vadot				port@1 {
1624*f126890aSEmmanuel Vadot					reg = <1>;
1625*f126890aSEmmanuel Vadot					mdp_dsi1_out: endpoint {
1626*f126890aSEmmanuel Vadot					};
1627*f126890aSEmmanuel Vadot				};
1628*f126890aSEmmanuel Vadot
1629*f126890aSEmmanuel Vadot				port@2 {
1630*f126890aSEmmanuel Vadot					reg = <2>;
1631*f126890aSEmmanuel Vadot					mdp_dsi2_out: endpoint {
1632*f126890aSEmmanuel Vadot					};
1633*f126890aSEmmanuel Vadot				};
1634*f126890aSEmmanuel Vadot
1635*f126890aSEmmanuel Vadot				port@3 {
1636*f126890aSEmmanuel Vadot					reg = <3>;
1637*f126890aSEmmanuel Vadot					mdp_dtv_out: endpoint {
1638*f126890aSEmmanuel Vadot					};
1639*f126890aSEmmanuel Vadot				};
1640*f126890aSEmmanuel Vadot			};
1641*f126890aSEmmanuel Vadot		};
1642*f126890aSEmmanuel Vadot
1643*f126890aSEmmanuel Vadot		riva: riva-pil@3200800 {
1644*f126890aSEmmanuel Vadot			compatible = "qcom,riva-pil";
1645*f126890aSEmmanuel Vadot
1646*f126890aSEmmanuel Vadot			reg = <0x03200800 0x1000>, <0x03202000 0x2000>, <0x03204000 0x100>;
1647*f126890aSEmmanuel Vadot			reg-names = "ccu", "dxe", "pmu";
1648*f126890aSEmmanuel Vadot
1649*f126890aSEmmanuel Vadot			interrupts-extended = <&intc GIC_SPI 199 IRQ_TYPE_EDGE_RISING>,
1650*f126890aSEmmanuel Vadot					      <&wcnss_smsm 6 IRQ_TYPE_EDGE_RISING>;
1651*f126890aSEmmanuel Vadot			interrupt-names = "wdog", "fatal";
1652*f126890aSEmmanuel Vadot
1653*f126890aSEmmanuel Vadot			memory-region = <&wcnss_mem>;
1654*f126890aSEmmanuel Vadot
1655*f126890aSEmmanuel Vadot			vddcx-supply = <&pm8921_s3>;
1656*f126890aSEmmanuel Vadot			vddmx-supply = <&pm8921_l24>;
1657*f126890aSEmmanuel Vadot			vddpx-supply = <&pm8921_s4>;
1658*f126890aSEmmanuel Vadot
1659*f126890aSEmmanuel Vadot			status = "disabled";
1660*f126890aSEmmanuel Vadot
1661*f126890aSEmmanuel Vadot			iris {
1662*f126890aSEmmanuel Vadot				compatible = "qcom,wcn3660";
1663*f126890aSEmmanuel Vadot
1664*f126890aSEmmanuel Vadot				clocks = <&cxo_board>;
1665*f126890aSEmmanuel Vadot				clock-names = "xo";
1666*f126890aSEmmanuel Vadot
1667*f126890aSEmmanuel Vadot				vddxo-supply = <&pm8921_l4>;
1668*f126890aSEmmanuel Vadot				vddrfa-supply = <&pm8921_s2>;
1669*f126890aSEmmanuel Vadot				vddpa-supply = <&pm8921_l10>;
1670*f126890aSEmmanuel Vadot				vdddig-supply = <&pm8921_lvs2>;
1671*f126890aSEmmanuel Vadot			};
1672*f126890aSEmmanuel Vadot
1673*f126890aSEmmanuel Vadot			smd-edge {
1674*f126890aSEmmanuel Vadot				interrupts = <GIC_SPI 198 IRQ_TYPE_EDGE_RISING>;
1675*f126890aSEmmanuel Vadot
1676*f126890aSEmmanuel Vadot				qcom,ipc = <&l2cc 8 25>;
1677*f126890aSEmmanuel Vadot				qcom,smd-edge = <6>;
1678*f126890aSEmmanuel Vadot
1679*f126890aSEmmanuel Vadot				label = "riva";
1680*f126890aSEmmanuel Vadot
1681*f126890aSEmmanuel Vadot				wcnss {
1682*f126890aSEmmanuel Vadot					compatible = "qcom,wcnss";
1683*f126890aSEmmanuel Vadot					qcom,smd-channels = "WCNSS_CTRL";
1684*f126890aSEmmanuel Vadot
1685*f126890aSEmmanuel Vadot					qcom,mmio = <&riva>;
1686*f126890aSEmmanuel Vadot
1687*f126890aSEmmanuel Vadot					bluetooth {
1688*f126890aSEmmanuel Vadot						compatible = "qcom,wcnss-bt";
1689*f126890aSEmmanuel Vadot					};
1690*f126890aSEmmanuel Vadot
1691*f126890aSEmmanuel Vadot					wifi {
1692*f126890aSEmmanuel Vadot						compatible = "qcom,wcnss-wlan";
1693*f126890aSEmmanuel Vadot
1694*f126890aSEmmanuel Vadot						interrupts = <GIC_SPI 203 IRQ_TYPE_LEVEL_HIGH>,
1695*f126890aSEmmanuel Vadot							     <GIC_SPI 202 IRQ_TYPE_LEVEL_HIGH>;
1696*f126890aSEmmanuel Vadot						interrupt-names = "tx", "rx";
1697*f126890aSEmmanuel Vadot
1698*f126890aSEmmanuel Vadot						qcom,smem-states = <&apps_smsm 10>, <&apps_smsm 9>;
1699*f126890aSEmmanuel Vadot						qcom,smem-state-names = "tx-enable", "tx-rings-empty";
1700*f126890aSEmmanuel Vadot					};
1701*f126890aSEmmanuel Vadot				};
1702*f126890aSEmmanuel Vadot			};
1703*f126890aSEmmanuel Vadot		};
1704*f126890aSEmmanuel Vadot
1705*f126890aSEmmanuel Vadot		etb@1a01000 {
1706*f126890aSEmmanuel Vadot			compatible = "arm,coresight-etb10", "arm,primecell";
1707*f126890aSEmmanuel Vadot			reg = <0x1a01000 0x1000>;
1708*f126890aSEmmanuel Vadot
1709*f126890aSEmmanuel Vadot			clocks = <&rpmcc RPM_QDSS_CLK>;
1710*f126890aSEmmanuel Vadot			clock-names = "apb_pclk";
1711*f126890aSEmmanuel Vadot
1712*f126890aSEmmanuel Vadot			in-ports {
1713*f126890aSEmmanuel Vadot				port {
1714*f126890aSEmmanuel Vadot					etb_in: endpoint {
1715*f126890aSEmmanuel Vadot						remote-endpoint = <&replicator_out0>;
1716*f126890aSEmmanuel Vadot					};
1717*f126890aSEmmanuel Vadot				};
1718*f126890aSEmmanuel Vadot			};
1719*f126890aSEmmanuel Vadot		};
1720*f126890aSEmmanuel Vadot
1721*f126890aSEmmanuel Vadot		tpiu@1a03000 {
1722*f126890aSEmmanuel Vadot			compatible = "arm,coresight-tpiu", "arm,primecell";
1723*f126890aSEmmanuel Vadot			reg = <0x1a03000 0x1000>;
1724*f126890aSEmmanuel Vadot
1725*f126890aSEmmanuel Vadot			clocks = <&rpmcc RPM_QDSS_CLK>;
1726*f126890aSEmmanuel Vadot			clock-names = "apb_pclk";
1727*f126890aSEmmanuel Vadot
1728*f126890aSEmmanuel Vadot			in-ports {
1729*f126890aSEmmanuel Vadot				port {
1730*f126890aSEmmanuel Vadot					tpiu_in: endpoint {
1731*f126890aSEmmanuel Vadot						remote-endpoint = <&replicator_out1>;
1732*f126890aSEmmanuel Vadot					};
1733*f126890aSEmmanuel Vadot				};
1734*f126890aSEmmanuel Vadot			};
1735*f126890aSEmmanuel Vadot		};
1736*f126890aSEmmanuel Vadot
1737*f126890aSEmmanuel Vadot		replicator {
1738*f126890aSEmmanuel Vadot			compatible = "arm,coresight-static-replicator";
1739*f126890aSEmmanuel Vadot
1740*f126890aSEmmanuel Vadot			clocks = <&rpmcc RPM_QDSS_CLK>;
1741*f126890aSEmmanuel Vadot			clock-names = "apb_pclk";
1742*f126890aSEmmanuel Vadot
1743*f126890aSEmmanuel Vadot			out-ports {
1744*f126890aSEmmanuel Vadot				#address-cells = <1>;
1745*f126890aSEmmanuel Vadot				#size-cells = <0>;
1746*f126890aSEmmanuel Vadot
1747*f126890aSEmmanuel Vadot				port@0 {
1748*f126890aSEmmanuel Vadot					reg = <0>;
1749*f126890aSEmmanuel Vadot					replicator_out0: endpoint {
1750*f126890aSEmmanuel Vadot						remote-endpoint = <&etb_in>;
1751*f126890aSEmmanuel Vadot					};
1752*f126890aSEmmanuel Vadot				};
1753*f126890aSEmmanuel Vadot				port@1 {
1754*f126890aSEmmanuel Vadot					reg = <1>;
1755*f126890aSEmmanuel Vadot					replicator_out1: endpoint {
1756*f126890aSEmmanuel Vadot						remote-endpoint = <&tpiu_in>;
1757*f126890aSEmmanuel Vadot					};
1758*f126890aSEmmanuel Vadot				};
1759*f126890aSEmmanuel Vadot			};
1760*f126890aSEmmanuel Vadot
1761*f126890aSEmmanuel Vadot			in-ports {
1762*f126890aSEmmanuel Vadot				port {
1763*f126890aSEmmanuel Vadot					replicator_in: endpoint {
1764*f126890aSEmmanuel Vadot						remote-endpoint = <&funnel_out>;
1765*f126890aSEmmanuel Vadot					};
1766*f126890aSEmmanuel Vadot				};
1767*f126890aSEmmanuel Vadot			};
1768*f126890aSEmmanuel Vadot		};
1769*f126890aSEmmanuel Vadot
1770*f126890aSEmmanuel Vadot		funnel@1a04000 {
1771*f126890aSEmmanuel Vadot			compatible = "arm,coresight-dynamic-funnel", "arm,primecell";
1772*f126890aSEmmanuel Vadot			reg = <0x1a04000 0x1000>;
1773*f126890aSEmmanuel Vadot
1774*f126890aSEmmanuel Vadot			clocks = <&rpmcc RPM_QDSS_CLK>;
1775*f126890aSEmmanuel Vadot			clock-names = "apb_pclk";
1776*f126890aSEmmanuel Vadot
1777*f126890aSEmmanuel Vadot			in-ports {
1778*f126890aSEmmanuel Vadot				#address-cells = <1>;
1779*f126890aSEmmanuel Vadot				#size-cells = <0>;
1780*f126890aSEmmanuel Vadot
1781*f126890aSEmmanuel Vadot				/*
1782*f126890aSEmmanuel Vadot				 * Not described input ports:
1783*f126890aSEmmanuel Vadot				 * 2 - connected to STM component
1784*f126890aSEmmanuel Vadot				 * 3 - not-connected
1785*f126890aSEmmanuel Vadot				 * 6 - not-connected
1786*f126890aSEmmanuel Vadot				 * 7 - not-connected
1787*f126890aSEmmanuel Vadot				 */
1788*f126890aSEmmanuel Vadot				port@0 {
1789*f126890aSEmmanuel Vadot					reg = <0>;
1790*f126890aSEmmanuel Vadot					funnel_in0: endpoint {
1791*f126890aSEmmanuel Vadot						remote-endpoint = <&etm0_out>;
1792*f126890aSEmmanuel Vadot					};
1793*f126890aSEmmanuel Vadot				};
1794*f126890aSEmmanuel Vadot				port@1 {
1795*f126890aSEmmanuel Vadot					reg = <1>;
1796*f126890aSEmmanuel Vadot					funnel_in1: endpoint {
1797*f126890aSEmmanuel Vadot						remote-endpoint = <&etm1_out>;
1798*f126890aSEmmanuel Vadot					};
1799*f126890aSEmmanuel Vadot				};
1800*f126890aSEmmanuel Vadot				port@4 {
1801*f126890aSEmmanuel Vadot					reg = <4>;
1802*f126890aSEmmanuel Vadot					funnel_in4: endpoint {
1803*f126890aSEmmanuel Vadot						remote-endpoint = <&etm2_out>;
1804*f126890aSEmmanuel Vadot					};
1805*f126890aSEmmanuel Vadot				};
1806*f126890aSEmmanuel Vadot				port@5 {
1807*f126890aSEmmanuel Vadot					reg = <5>;
1808*f126890aSEmmanuel Vadot					funnel_in5: endpoint {
1809*f126890aSEmmanuel Vadot						remote-endpoint = <&etm3_out>;
1810*f126890aSEmmanuel Vadot					};
1811*f126890aSEmmanuel Vadot				};
1812*f126890aSEmmanuel Vadot			};
1813*f126890aSEmmanuel Vadot
1814*f126890aSEmmanuel Vadot			out-ports {
1815*f126890aSEmmanuel Vadot				port {
1816*f126890aSEmmanuel Vadot					funnel_out: endpoint {
1817*f126890aSEmmanuel Vadot						remote-endpoint = <&replicator_in>;
1818*f126890aSEmmanuel Vadot					};
1819*f126890aSEmmanuel Vadot				};
1820*f126890aSEmmanuel Vadot			};
1821*f126890aSEmmanuel Vadot		};
1822*f126890aSEmmanuel Vadot
1823*f126890aSEmmanuel Vadot		etm@1a1c000 {
1824*f126890aSEmmanuel Vadot			compatible = "arm,coresight-etm3x", "arm,primecell";
1825*f126890aSEmmanuel Vadot			reg = <0x1a1c000 0x1000>;
1826*f126890aSEmmanuel Vadot
1827*f126890aSEmmanuel Vadot			clocks = <&rpmcc RPM_QDSS_CLK>;
1828*f126890aSEmmanuel Vadot			clock-names = "apb_pclk";
1829*f126890aSEmmanuel Vadot
1830*f126890aSEmmanuel Vadot			cpu = <&CPU0>;
1831*f126890aSEmmanuel Vadot
1832*f126890aSEmmanuel Vadot			out-ports {
1833*f126890aSEmmanuel Vadot				port {
1834*f126890aSEmmanuel Vadot					etm0_out: endpoint {
1835*f126890aSEmmanuel Vadot						remote-endpoint = <&funnel_in0>;
1836*f126890aSEmmanuel Vadot					};
1837*f126890aSEmmanuel Vadot				};
1838*f126890aSEmmanuel Vadot			};
1839*f126890aSEmmanuel Vadot		};
1840*f126890aSEmmanuel Vadot
1841*f126890aSEmmanuel Vadot		etm@1a1d000 {
1842*f126890aSEmmanuel Vadot			compatible = "arm,coresight-etm3x", "arm,primecell";
1843*f126890aSEmmanuel Vadot			reg = <0x1a1d000 0x1000>;
1844*f126890aSEmmanuel Vadot
1845*f126890aSEmmanuel Vadot			clocks = <&rpmcc RPM_QDSS_CLK>;
1846*f126890aSEmmanuel Vadot			clock-names = "apb_pclk";
1847*f126890aSEmmanuel Vadot
1848*f126890aSEmmanuel Vadot			cpu = <&CPU1>;
1849*f126890aSEmmanuel Vadot
1850*f126890aSEmmanuel Vadot			out-ports {
1851*f126890aSEmmanuel Vadot				port {
1852*f126890aSEmmanuel Vadot					etm1_out: endpoint {
1853*f126890aSEmmanuel Vadot						remote-endpoint = <&funnel_in1>;
1854*f126890aSEmmanuel Vadot					};
1855*f126890aSEmmanuel Vadot				};
1856*f126890aSEmmanuel Vadot			};
1857*f126890aSEmmanuel Vadot		};
1858*f126890aSEmmanuel Vadot
1859*f126890aSEmmanuel Vadot		etm@1a1e000 {
1860*f126890aSEmmanuel Vadot			compatible = "arm,coresight-etm3x", "arm,primecell";
1861*f126890aSEmmanuel Vadot			reg = <0x1a1e000 0x1000>;
1862*f126890aSEmmanuel Vadot
1863*f126890aSEmmanuel Vadot			clocks = <&rpmcc RPM_QDSS_CLK>;
1864*f126890aSEmmanuel Vadot			clock-names = "apb_pclk";
1865*f126890aSEmmanuel Vadot
1866*f126890aSEmmanuel Vadot			cpu = <&CPU2>;
1867*f126890aSEmmanuel Vadot
1868*f126890aSEmmanuel Vadot			out-ports {
1869*f126890aSEmmanuel Vadot				port {
1870*f126890aSEmmanuel Vadot					etm2_out: endpoint {
1871*f126890aSEmmanuel Vadot						remote-endpoint = <&funnel_in4>;
1872*f126890aSEmmanuel Vadot					};
1873*f126890aSEmmanuel Vadot				};
1874*f126890aSEmmanuel Vadot			};
1875*f126890aSEmmanuel Vadot		};
1876*f126890aSEmmanuel Vadot
1877*f126890aSEmmanuel Vadot		etm@1a1f000 {
1878*f126890aSEmmanuel Vadot			compatible = "arm,coresight-etm3x", "arm,primecell";
1879*f126890aSEmmanuel Vadot			reg = <0x1a1f000 0x1000>;
1880*f126890aSEmmanuel Vadot
1881*f126890aSEmmanuel Vadot			clocks = <&rpmcc RPM_QDSS_CLK>;
1882*f126890aSEmmanuel Vadot			clock-names = "apb_pclk";
1883*f126890aSEmmanuel Vadot
1884*f126890aSEmmanuel Vadot			cpu = <&CPU3>;
1885*f126890aSEmmanuel Vadot
1886*f126890aSEmmanuel Vadot			out-ports {
1887*f126890aSEmmanuel Vadot				port {
1888*f126890aSEmmanuel Vadot					etm3_out: endpoint {
1889*f126890aSEmmanuel Vadot						remote-endpoint = <&funnel_in5>;
1890*f126890aSEmmanuel Vadot					};
1891*f126890aSEmmanuel Vadot				};
1892*f126890aSEmmanuel Vadot			};
1893*f126890aSEmmanuel Vadot		};
1894*f126890aSEmmanuel Vadot	};
1895*f126890aSEmmanuel Vadot};
1896*f126890aSEmmanuel Vadot#include "qcom-apq8064-pins.dtsi"
1897