xref: /freebsd-src/sys/contrib/device-tree/src/arm/qcom/qcom-msm8660.dtsi (revision 01950c46b8155250f64374fb72fc11faa44bf099)
1f126890aSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0
2f126890aSEmmanuel Vadot/dts-v1/;
3f126890aSEmmanuel Vadot
4f126890aSEmmanuel Vadot#include <dt-bindings/interrupt-controller/irq.h>
5f126890aSEmmanuel Vadot#include <dt-bindings/interrupt-controller/arm-gic.h>
6f126890aSEmmanuel Vadot#include <dt-bindings/clock/qcom,gcc-msm8660.h>
7f126890aSEmmanuel Vadot#include <dt-bindings/soc/qcom,gsbi.h>
8f126890aSEmmanuel Vadot
9f126890aSEmmanuel Vadot/ {
10f126890aSEmmanuel Vadot	#address-cells = <1>;
11f126890aSEmmanuel Vadot	#size-cells = <1>;
12f126890aSEmmanuel Vadot	model = "Qualcomm MSM8660";
13f126890aSEmmanuel Vadot	compatible = "qcom,msm8660";
14f126890aSEmmanuel Vadot	interrupt-parent = <&intc>;
15f126890aSEmmanuel Vadot
16f126890aSEmmanuel Vadot	cpus {
17f126890aSEmmanuel Vadot		#address-cells = <1>;
18f126890aSEmmanuel Vadot		#size-cells = <0>;
19f126890aSEmmanuel Vadot
20f126890aSEmmanuel Vadot		cpu@0 {
21f126890aSEmmanuel Vadot			compatible = "qcom,scorpion";
22f126890aSEmmanuel Vadot			enable-method = "qcom,gcc-msm8660";
23f126890aSEmmanuel Vadot			device_type = "cpu";
24f126890aSEmmanuel Vadot			reg = <0>;
25f126890aSEmmanuel Vadot			next-level-cache = <&L2>;
26f126890aSEmmanuel Vadot		};
27f126890aSEmmanuel Vadot
28f126890aSEmmanuel Vadot		cpu@1 {
29f126890aSEmmanuel Vadot			compatible = "qcom,scorpion";
30f126890aSEmmanuel Vadot			enable-method = "qcom,gcc-msm8660";
31f126890aSEmmanuel Vadot			device_type = "cpu";
32f126890aSEmmanuel Vadot			reg = <1>;
33f126890aSEmmanuel Vadot			next-level-cache = <&L2>;
34f126890aSEmmanuel Vadot		};
35f126890aSEmmanuel Vadot
36f126890aSEmmanuel Vadot		L2: l2-cache {
37f126890aSEmmanuel Vadot			compatible = "cache";
38f126890aSEmmanuel Vadot			cache-level = <2>;
39f126890aSEmmanuel Vadot			cache-unified;
40f126890aSEmmanuel Vadot		};
41f126890aSEmmanuel Vadot	};
42f126890aSEmmanuel Vadot
43f126890aSEmmanuel Vadot	memory {
44f126890aSEmmanuel Vadot		device_type = "memory";
45f126890aSEmmanuel Vadot		reg = <0x0 0x0>;
46f126890aSEmmanuel Vadot	};
47f126890aSEmmanuel Vadot
48f126890aSEmmanuel Vadot	cpu-pmu {
49f126890aSEmmanuel Vadot		compatible = "qcom,scorpion-mp-pmu";
50*01950c46SEmmanuel Vadot		interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_HIGH)>;
51f126890aSEmmanuel Vadot	};
52f126890aSEmmanuel Vadot
53f126890aSEmmanuel Vadot	clocks {
54f126890aSEmmanuel Vadot		cxo_board: cxo-board-clk {
55f126890aSEmmanuel Vadot			compatible = "fixed-clock";
56f126890aSEmmanuel Vadot			#clock-cells = <0>;
57f126890aSEmmanuel Vadot			clock-frequency = <19200000>;
58f126890aSEmmanuel Vadot			clock-output-names = "cxo_board";
59f126890aSEmmanuel Vadot		};
60f126890aSEmmanuel Vadot
61f126890aSEmmanuel Vadot		pxo_board: pxo-board-clk {
62f126890aSEmmanuel Vadot			compatible = "fixed-clock";
63f126890aSEmmanuel Vadot			#clock-cells = <0>;
64f126890aSEmmanuel Vadot			clock-frequency = <27000000>;
65f126890aSEmmanuel Vadot			clock-output-names = "pxo_board";
66f126890aSEmmanuel Vadot		};
67f126890aSEmmanuel Vadot
68f126890aSEmmanuel Vadot		sleep-clk {
69f126890aSEmmanuel Vadot			compatible = "fixed-clock";
70f126890aSEmmanuel Vadot			#clock-cells = <0>;
71f126890aSEmmanuel Vadot			clock-frequency = <32768>;
72f126890aSEmmanuel Vadot			clock-output-names = "sleep_clk";
73f126890aSEmmanuel Vadot		};
74f126890aSEmmanuel Vadot	};
75f126890aSEmmanuel Vadot
76f126890aSEmmanuel Vadot	soc: soc {
77f126890aSEmmanuel Vadot		#address-cells = <1>;
78f126890aSEmmanuel Vadot		#size-cells = <1>;
79f126890aSEmmanuel Vadot		ranges;
80f126890aSEmmanuel Vadot		compatible = "simple-bus";
81f126890aSEmmanuel Vadot
82f126890aSEmmanuel Vadot		intc: interrupt-controller@2080000 {
83f126890aSEmmanuel Vadot			compatible = "qcom,msm-8660-qgic";
84f126890aSEmmanuel Vadot			interrupt-controller;
85f126890aSEmmanuel Vadot			#interrupt-cells = <3>;
86f126890aSEmmanuel Vadot			reg = < 0x02080000 0x1000 >,
87f126890aSEmmanuel Vadot			      < 0x02081000 0x1000 >;
88f126890aSEmmanuel Vadot		};
89f126890aSEmmanuel Vadot
90f126890aSEmmanuel Vadot		timer@2000000 {
91f126890aSEmmanuel Vadot			compatible = "qcom,scss-timer", "qcom,msm-timer";
92*01950c46SEmmanuel Vadot			interrupts = <GIC_PPI 0 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_EDGE_RISING)>,
93*01950c46SEmmanuel Vadot				     <GIC_PPI 1 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_EDGE_RISING)>,
94*01950c46SEmmanuel Vadot				     <GIC_PPI 2 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_EDGE_RISING)>;
95f126890aSEmmanuel Vadot			reg = <0x02000000 0x100>;
96*01950c46SEmmanuel Vadot			clock-frequency = <27000000>;
97f126890aSEmmanuel Vadot			cpu-offset = <0x40000>;
98f126890aSEmmanuel Vadot		};
99f126890aSEmmanuel Vadot
100f126890aSEmmanuel Vadot		tlmm: pinctrl@800000 {
101f126890aSEmmanuel Vadot			compatible = "qcom,msm8660-pinctrl";
102f126890aSEmmanuel Vadot			reg = <0x800000 0x4000>;
103f126890aSEmmanuel Vadot
104f126890aSEmmanuel Vadot			gpio-controller;
105f126890aSEmmanuel Vadot			gpio-ranges = <&tlmm 0 0 173>;
106f126890aSEmmanuel Vadot			#gpio-cells = <2>;
107*01950c46SEmmanuel Vadot			interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>;
108f126890aSEmmanuel Vadot			interrupt-controller;
109f126890aSEmmanuel Vadot			#interrupt-cells = <2>;
110f126890aSEmmanuel Vadot
111f126890aSEmmanuel Vadot		};
112f126890aSEmmanuel Vadot
113f126890aSEmmanuel Vadot		gcc: clock-controller@900000 {
114f126890aSEmmanuel Vadot			compatible = "qcom,gcc-msm8660";
115f126890aSEmmanuel Vadot			#clock-cells = <1>;
116f126890aSEmmanuel Vadot			#power-domain-cells = <1>;
117f126890aSEmmanuel Vadot			#reset-cells = <1>;
118f126890aSEmmanuel Vadot			reg = <0x900000 0x4000>;
119f126890aSEmmanuel Vadot			clocks = <&pxo_board>, <&cxo_board>;
120f126890aSEmmanuel Vadot			clock-names = "pxo", "cxo";
121f126890aSEmmanuel Vadot		};
122f126890aSEmmanuel Vadot
123f126890aSEmmanuel Vadot		gsbi1: gsbi@16000000 {
124f126890aSEmmanuel Vadot			compatible = "qcom,gsbi-v1.0.0";
125f126890aSEmmanuel Vadot			cell-index = <12>;
126f126890aSEmmanuel Vadot			reg = <0x16000000 0x100>;
127f126890aSEmmanuel Vadot			clocks = <&gcc GSBI1_H_CLK>;
128f126890aSEmmanuel Vadot			clock-names = "iface";
129f126890aSEmmanuel Vadot			#address-cells = <1>;
130f126890aSEmmanuel Vadot			#size-cells = <1>;
131f126890aSEmmanuel Vadot			ranges;
132f126890aSEmmanuel Vadot
133f126890aSEmmanuel Vadot			syscon-tcsr = <&tcsr>;
134f126890aSEmmanuel Vadot
135f126890aSEmmanuel Vadot			status = "disabled";
136f126890aSEmmanuel Vadot
137f126890aSEmmanuel Vadot			gsbi1_spi: spi@16080000 {
138f126890aSEmmanuel Vadot				compatible = "qcom,spi-qup-v1.1.1";
139f126890aSEmmanuel Vadot				reg = <0x16080000 0x1000>;
140f126890aSEmmanuel Vadot				interrupts = <GIC_SPI 147 IRQ_TYPE_LEVEL_HIGH>;
141f126890aSEmmanuel Vadot				clocks = <&gcc GSBI1_QUP_CLK>, <&gcc GSBI1_H_CLK>;
142f126890aSEmmanuel Vadot				clock-names = "core", "iface";
143f126890aSEmmanuel Vadot				#address-cells = <1>;
144f126890aSEmmanuel Vadot				#size-cells = <0>;
145f126890aSEmmanuel Vadot				status = "disabled";
146f126890aSEmmanuel Vadot			};
147f126890aSEmmanuel Vadot		};
148f126890aSEmmanuel Vadot
149f126890aSEmmanuel Vadot		gsbi3: gsbi@16200000 {
150f126890aSEmmanuel Vadot			compatible = "qcom,gsbi-v1.0.0";
151f126890aSEmmanuel Vadot			cell-index = <12>;
152f126890aSEmmanuel Vadot			reg = <0x16200000 0x100>;
153f126890aSEmmanuel Vadot			clocks = <&gcc GSBI3_H_CLK>;
154f126890aSEmmanuel Vadot			clock-names = "iface";
155f126890aSEmmanuel Vadot			#address-cells = <1>;
156f126890aSEmmanuel Vadot			#size-cells = <1>;
157f126890aSEmmanuel Vadot			ranges;
158f126890aSEmmanuel Vadot
159f126890aSEmmanuel Vadot			syscon-tcsr = <&tcsr>;
160f126890aSEmmanuel Vadot			status = "disabled";
161f126890aSEmmanuel Vadot
162f126890aSEmmanuel Vadot			gsbi3_i2c: i2c@16280000 {
163f126890aSEmmanuel Vadot				compatible = "qcom,i2c-qup-v1.1.1";
164f126890aSEmmanuel Vadot				reg = <0x16280000 0x1000>;
165f126890aSEmmanuel Vadot				interrupts = <GIC_SPI 151 IRQ_TYPE_LEVEL_HIGH>;
166f126890aSEmmanuel Vadot				clocks = <&gcc GSBI3_QUP_CLK>, <&gcc GSBI3_H_CLK>;
167f126890aSEmmanuel Vadot				clock-names = "core", "iface";
168f126890aSEmmanuel Vadot				#address-cells = <1>;
169f126890aSEmmanuel Vadot				#size-cells = <0>;
170f126890aSEmmanuel Vadot				status = "disabled";
171f126890aSEmmanuel Vadot			};
172f126890aSEmmanuel Vadot		};
173f126890aSEmmanuel Vadot
174f126890aSEmmanuel Vadot		gsbi6: gsbi@16500000 {
175f126890aSEmmanuel Vadot			compatible = "qcom,gsbi-v1.0.0";
176f126890aSEmmanuel Vadot			cell-index = <12>;
177f126890aSEmmanuel Vadot			reg = <0x16500000 0x100>;
178f126890aSEmmanuel Vadot			clocks = <&gcc GSBI6_H_CLK>;
179f126890aSEmmanuel Vadot			clock-names = "iface";
180f126890aSEmmanuel Vadot			#address-cells = <1>;
181f126890aSEmmanuel Vadot			#size-cells = <1>;
182f126890aSEmmanuel Vadot			ranges;
183f126890aSEmmanuel Vadot			status = "disabled";
184f126890aSEmmanuel Vadot
185f126890aSEmmanuel Vadot			syscon-tcsr = <&tcsr>;
186f126890aSEmmanuel Vadot
187f126890aSEmmanuel Vadot			gsbi6_serial: serial@16540000 {
188f126890aSEmmanuel Vadot				compatible = "qcom,msm-uartdm-v1.3", "qcom,msm-uartdm";
189f126890aSEmmanuel Vadot				reg = <0x16540000 0x1000>,
190f126890aSEmmanuel Vadot				      <0x16500000 0x1000>;
191f126890aSEmmanuel Vadot				interrupts = <GIC_SPI 156 IRQ_TYPE_LEVEL_HIGH>;
192f126890aSEmmanuel Vadot				clocks = <&gcc GSBI6_UART_CLK>, <&gcc GSBI6_H_CLK>;
193f126890aSEmmanuel Vadot				clock-names = "core", "iface";
194f126890aSEmmanuel Vadot				status = "disabled";
195f126890aSEmmanuel Vadot			};
196f126890aSEmmanuel Vadot
197f126890aSEmmanuel Vadot			gsbi6_i2c: i2c@16580000 {
198f126890aSEmmanuel Vadot				compatible = "qcom,i2c-qup-v1.1.1";
199f126890aSEmmanuel Vadot				reg = <0x16580000 0x1000>;
200f126890aSEmmanuel Vadot				interrupts = <GIC_SPI 157 IRQ_TYPE_LEVEL_HIGH>;
201f126890aSEmmanuel Vadot				clocks = <&gcc GSBI6_QUP_CLK>, <&gcc GSBI6_H_CLK>;
202f126890aSEmmanuel Vadot				clock-names = "core", "iface";
203f126890aSEmmanuel Vadot				#address-cells = <1>;
204f126890aSEmmanuel Vadot				#size-cells = <0>;
205f126890aSEmmanuel Vadot				status = "disabled";
206f126890aSEmmanuel Vadot			};
207f126890aSEmmanuel Vadot		};
208f126890aSEmmanuel Vadot
209f126890aSEmmanuel Vadot		gsbi7: gsbi@16600000 {
210f126890aSEmmanuel Vadot			compatible = "qcom,gsbi-v1.0.0";
211f126890aSEmmanuel Vadot			cell-index = <12>;
212f126890aSEmmanuel Vadot			reg = <0x16600000 0x100>;
213f126890aSEmmanuel Vadot			clocks = <&gcc GSBI7_H_CLK>;
214f126890aSEmmanuel Vadot			clock-names = "iface";
215f126890aSEmmanuel Vadot			#address-cells = <1>;
216f126890aSEmmanuel Vadot			#size-cells = <1>;
217f126890aSEmmanuel Vadot			ranges;
218f126890aSEmmanuel Vadot			status = "disabled";
219f126890aSEmmanuel Vadot
220f126890aSEmmanuel Vadot			syscon-tcsr = <&tcsr>;
221f126890aSEmmanuel Vadot
222f126890aSEmmanuel Vadot			gsbi7_serial: serial@16640000 {
223f126890aSEmmanuel Vadot				compatible = "qcom,msm-uartdm-v1.3", "qcom,msm-uartdm";
224f126890aSEmmanuel Vadot				reg = <0x16640000 0x1000>,
225f126890aSEmmanuel Vadot				      <0x16600000 0x1000>;
226f126890aSEmmanuel Vadot				interrupts = <GIC_SPI 158 IRQ_TYPE_LEVEL_HIGH>;
227f126890aSEmmanuel Vadot				clocks = <&gcc GSBI7_UART_CLK>, <&gcc GSBI7_H_CLK>;
228f126890aSEmmanuel Vadot				clock-names = "core", "iface";
229f126890aSEmmanuel Vadot				status = "disabled";
230f126890aSEmmanuel Vadot			};
231f126890aSEmmanuel Vadot
232f126890aSEmmanuel Vadot			gsbi7_i2c: i2c@16680000 {
233f126890aSEmmanuel Vadot				compatible = "qcom,i2c-qup-v1.1.1";
234f126890aSEmmanuel Vadot				reg = <0x16680000 0x1000>;
235f126890aSEmmanuel Vadot				interrupts = <GIC_SPI 159 IRQ_TYPE_LEVEL_HIGH>;
236f126890aSEmmanuel Vadot				clocks = <&gcc GSBI7_QUP_CLK>, <&gcc GSBI7_H_CLK>;
237f126890aSEmmanuel Vadot				clock-names = "core", "iface";
238f126890aSEmmanuel Vadot				#address-cells = <1>;
239f126890aSEmmanuel Vadot				#size-cells = <0>;
240f126890aSEmmanuel Vadot				status = "disabled";
241f126890aSEmmanuel Vadot			};
242f126890aSEmmanuel Vadot		};
243f126890aSEmmanuel Vadot
244f126890aSEmmanuel Vadot		gsbi8: gsbi@19800000 {
245f126890aSEmmanuel Vadot			compatible = "qcom,gsbi-v1.0.0";
246f126890aSEmmanuel Vadot			cell-index = <12>;
247f126890aSEmmanuel Vadot			reg = <0x19800000 0x100>;
248f126890aSEmmanuel Vadot			clocks = <&gcc GSBI8_H_CLK>;
249f126890aSEmmanuel Vadot			clock-names = "iface";
250f126890aSEmmanuel Vadot			#address-cells = <1>;
251f126890aSEmmanuel Vadot			#size-cells = <1>;
252f126890aSEmmanuel Vadot			ranges;
253f126890aSEmmanuel Vadot
254f126890aSEmmanuel Vadot			syscon-tcsr = <&tcsr>;
255f126890aSEmmanuel Vadot			status = "disabled";
256f126890aSEmmanuel Vadot
257f126890aSEmmanuel Vadot			gsbi8_i2c: i2c@19880000 {
258f126890aSEmmanuel Vadot				compatible = "qcom,i2c-qup-v1.1.1";
259f126890aSEmmanuel Vadot				reg = <0x19880000 0x1000>;
260f126890aSEmmanuel Vadot				interrupts = <GIC_SPI 161 IRQ_TYPE_LEVEL_HIGH>;
261f126890aSEmmanuel Vadot				clocks = <&gcc GSBI8_QUP_CLK>, <&gcc GSBI8_H_CLK>;
262f126890aSEmmanuel Vadot				clock-names = "core", "iface";
263f126890aSEmmanuel Vadot				#address-cells = <1>;
264f126890aSEmmanuel Vadot				#size-cells = <0>;
265f126890aSEmmanuel Vadot				status = "disabled";
266f126890aSEmmanuel Vadot			};
267f126890aSEmmanuel Vadot		};
268f126890aSEmmanuel Vadot
269f126890aSEmmanuel Vadot		gsbi12: gsbi@19c00000 {
270f126890aSEmmanuel Vadot			compatible = "qcom,gsbi-v1.0.0";
271f126890aSEmmanuel Vadot			cell-index = <12>;
272f126890aSEmmanuel Vadot			reg = <0x19c00000 0x100>;
273f126890aSEmmanuel Vadot			clocks = <&gcc GSBI12_H_CLK>;
274f126890aSEmmanuel Vadot			clock-names = "iface";
275f126890aSEmmanuel Vadot			#address-cells = <1>;
276f126890aSEmmanuel Vadot			#size-cells = <1>;
277f126890aSEmmanuel Vadot			ranges;
278f126890aSEmmanuel Vadot
279f126890aSEmmanuel Vadot			syscon-tcsr = <&tcsr>;
280f126890aSEmmanuel Vadot
281f126890aSEmmanuel Vadot			gsbi12_serial: serial@19c40000 {
282f126890aSEmmanuel Vadot				compatible = "qcom,msm-uartdm-v1.3", "qcom,msm-uartdm";
283f126890aSEmmanuel Vadot				reg = <0x19c40000 0x1000>,
284f126890aSEmmanuel Vadot				      <0x19c00000 0x1000>;
285*01950c46SEmmanuel Vadot				interrupts = <GIC_SPI 195 IRQ_TYPE_LEVEL_HIGH>;
286f126890aSEmmanuel Vadot				clocks = <&gcc GSBI12_UART_CLK>, <&gcc GSBI12_H_CLK>;
287f126890aSEmmanuel Vadot				clock-names = "core", "iface";
288f126890aSEmmanuel Vadot				status = "disabled";
289f126890aSEmmanuel Vadot			};
290f126890aSEmmanuel Vadot
291f126890aSEmmanuel Vadot			gsbi12_i2c: i2c@19c80000 {
292f126890aSEmmanuel Vadot				compatible = "qcom,i2c-qup-v1.1.1";
293f126890aSEmmanuel Vadot				reg = <0x19c80000 0x1000>;
294*01950c46SEmmanuel Vadot				interrupts = <GIC_SPI 196 IRQ_TYPE_LEVEL_HIGH>;
295f126890aSEmmanuel Vadot				clocks = <&gcc GSBI12_QUP_CLK>, <&gcc GSBI12_H_CLK>;
296f126890aSEmmanuel Vadot				clock-names = "core", "iface";
297f126890aSEmmanuel Vadot				#address-cells = <1>;
298f126890aSEmmanuel Vadot				#size-cells = <0>;
299f126890aSEmmanuel Vadot				status = "disabled";
300f126890aSEmmanuel Vadot			};
301f126890aSEmmanuel Vadot		};
302f126890aSEmmanuel Vadot
303f126890aSEmmanuel Vadot		ebi2: external-bus@1a100000 {
304f126890aSEmmanuel Vadot			compatible = "qcom,msm8660-ebi2";
305f126890aSEmmanuel Vadot			#address-cells = <2>;
306f126890aSEmmanuel Vadot			#size-cells = <1>;
307f126890aSEmmanuel Vadot			ranges = <0 0x0 0x1a800000 0x00800000>,
308f126890aSEmmanuel Vadot				 <1 0x0 0x1b000000 0x00800000>,
309f126890aSEmmanuel Vadot				 <2 0x0 0x1b800000 0x00800000>,
310f126890aSEmmanuel Vadot				 <3 0x0 0x1d000000 0x08000000>,
311f126890aSEmmanuel Vadot				 <4 0x0 0x1c800000 0x00800000>,
312f126890aSEmmanuel Vadot				 <5 0x0 0x1c000000 0x00800000>;
313f126890aSEmmanuel Vadot			reg = <0x1a100000 0x1000>, <0x1a110000 0x1000>;
314f126890aSEmmanuel Vadot			reg-names = "ebi2", "xmem";
315f126890aSEmmanuel Vadot			clocks = <&gcc EBI2_2X_CLK>, <&gcc EBI2_CLK>;
316f126890aSEmmanuel Vadot			clock-names = "ebi2x", "ebi2";
317f126890aSEmmanuel Vadot			status = "disabled";
318f126890aSEmmanuel Vadot		};
319f126890aSEmmanuel Vadot
3208d13bc63SEmmanuel Vadot		ssbi: ssbi@500000 {
321f126890aSEmmanuel Vadot			compatible = "qcom,ssbi";
322f126890aSEmmanuel Vadot			reg = <0x500000 0x1000>;
323f126890aSEmmanuel Vadot			qcom,controller-type = "pmic-arbiter";
324f126890aSEmmanuel Vadot		};
325f126890aSEmmanuel Vadot
326f126890aSEmmanuel Vadot		l2cc: clock-controller@2082000 {
327f126890aSEmmanuel Vadot			compatible = "qcom,kpss-gcc-msm8660", "qcom,kpss-gcc", "syscon";
328f126890aSEmmanuel Vadot			reg = <0x02082000 0x1000>;
329f126890aSEmmanuel Vadot		};
330f126890aSEmmanuel Vadot
331f126890aSEmmanuel Vadot		rpm: rpm@104000 {
332f126890aSEmmanuel Vadot			compatible = "qcom,rpm-msm8660";
333f126890aSEmmanuel Vadot			reg = <0x00104000 0x1000>;
334f126890aSEmmanuel Vadot			qcom,ipc = <&l2cc 0x8 2>;
335f126890aSEmmanuel Vadot
336f126890aSEmmanuel Vadot			interrupts = <GIC_SPI 19 IRQ_TYPE_EDGE_RISING>,
337f126890aSEmmanuel Vadot				     <GIC_SPI 21 IRQ_TYPE_EDGE_RISING>,
338f126890aSEmmanuel Vadot				     <GIC_SPI 22 IRQ_TYPE_EDGE_RISING>;
339f126890aSEmmanuel Vadot			interrupt-names = "ack", "err", "wakeup";
340f126890aSEmmanuel Vadot			clocks = <&gcc RPM_MSG_RAM_H_CLK>;
341f126890aSEmmanuel Vadot			clock-names = "ram";
342f126890aSEmmanuel Vadot
343f126890aSEmmanuel Vadot			rpmcc: clock-controller {
344f126890aSEmmanuel Vadot				compatible = "qcom,rpmcc-msm8660", "qcom,rpmcc";
345f126890aSEmmanuel Vadot				#clock-cells = <1>;
346f126890aSEmmanuel Vadot				clocks = <&pxo_board>;
347f126890aSEmmanuel Vadot				clock-names = "pxo";
348f126890aSEmmanuel Vadot			};
349f126890aSEmmanuel Vadot		};
350f126890aSEmmanuel Vadot
351f126890aSEmmanuel Vadot		amba {
352f126890aSEmmanuel Vadot			compatible = "simple-bus";
353f126890aSEmmanuel Vadot			#address-cells = <1>;
354f126890aSEmmanuel Vadot			#size-cells = <1>;
355f126890aSEmmanuel Vadot			ranges;
356f126890aSEmmanuel Vadot			sdcc1: mmc@12400000 {
357f126890aSEmmanuel Vadot				status = "disabled";
358f126890aSEmmanuel Vadot				compatible = "arm,pl18x", "arm,primecell";
359f126890aSEmmanuel Vadot				arm,primecell-periphid = <0x00051180>;
360f126890aSEmmanuel Vadot				reg = <0x12400000 0x8000>;
361f126890aSEmmanuel Vadot				interrupts = <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>;
362f126890aSEmmanuel Vadot				clocks = <&gcc SDC1_CLK>, <&gcc SDC1_H_CLK>;
363f126890aSEmmanuel Vadot				clock-names = "mclk", "apb_pclk";
364f126890aSEmmanuel Vadot				bus-width = <8>;
365f126890aSEmmanuel Vadot				max-frequency = <48000000>;
366f126890aSEmmanuel Vadot				non-removable;
367f126890aSEmmanuel Vadot				cap-sd-highspeed;
368f126890aSEmmanuel Vadot				cap-mmc-highspeed;
369f126890aSEmmanuel Vadot			};
370f126890aSEmmanuel Vadot
371f126890aSEmmanuel Vadot			sdcc2: mmc@12140000 {
372f126890aSEmmanuel Vadot				status = "disabled";
373f126890aSEmmanuel Vadot				compatible = "arm,pl18x", "arm,primecell";
374f126890aSEmmanuel Vadot				arm,primecell-periphid = <0x00051180>;
375f126890aSEmmanuel Vadot				reg = <0x12140000 0x8000>;
376f126890aSEmmanuel Vadot				interrupts = <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>;
377f126890aSEmmanuel Vadot				clocks = <&gcc SDC2_CLK>, <&gcc SDC2_H_CLK>;
378f126890aSEmmanuel Vadot				clock-names = "mclk", "apb_pclk";
379f126890aSEmmanuel Vadot				bus-width = <8>;
380f126890aSEmmanuel Vadot				max-frequency = <48000000>;
381f126890aSEmmanuel Vadot				cap-sd-highspeed;
382f126890aSEmmanuel Vadot				cap-mmc-highspeed;
383f126890aSEmmanuel Vadot			};
384f126890aSEmmanuel Vadot
385f126890aSEmmanuel Vadot			sdcc3: mmc@12180000 {
386f126890aSEmmanuel Vadot				compatible = "arm,pl18x", "arm,primecell";
387f126890aSEmmanuel Vadot				arm,primecell-periphid = <0x00051180>;
388f126890aSEmmanuel Vadot				status = "disabled";
389f126890aSEmmanuel Vadot				reg = <0x12180000 0x8000>;
390f126890aSEmmanuel Vadot				interrupts = <GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH>;
391f126890aSEmmanuel Vadot				clocks = <&gcc SDC3_CLK>, <&gcc SDC3_H_CLK>;
392f126890aSEmmanuel Vadot				clock-names = "mclk", "apb_pclk";
393f126890aSEmmanuel Vadot				bus-width = <4>;
394f126890aSEmmanuel Vadot				cap-sd-highspeed;
395f126890aSEmmanuel Vadot				cap-mmc-highspeed;
396f126890aSEmmanuel Vadot				max-frequency = <48000000>;
397f126890aSEmmanuel Vadot				no-1-8-v;
398f126890aSEmmanuel Vadot			};
399f126890aSEmmanuel Vadot
400f126890aSEmmanuel Vadot			sdcc4: mmc@121c0000 {
401f126890aSEmmanuel Vadot				compatible = "arm,pl18x", "arm,primecell";
402f126890aSEmmanuel Vadot				arm,primecell-periphid = <0x00051180>;
403f126890aSEmmanuel Vadot				status = "disabled";
404f126890aSEmmanuel Vadot				reg = <0x121c0000 0x8000>;
405f126890aSEmmanuel Vadot				interrupts = <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>;
406f126890aSEmmanuel Vadot				clocks = <&gcc SDC4_CLK>, <&gcc SDC4_H_CLK>;
407f126890aSEmmanuel Vadot				clock-names = "mclk", "apb_pclk";
408f126890aSEmmanuel Vadot				bus-width = <4>;
409f126890aSEmmanuel Vadot				max-frequency = <48000000>;
410f126890aSEmmanuel Vadot				cap-sd-highspeed;
411f126890aSEmmanuel Vadot				cap-mmc-highspeed;
412f126890aSEmmanuel Vadot			};
413f126890aSEmmanuel Vadot
414f126890aSEmmanuel Vadot			sdcc5: mmc@12200000 {
415f126890aSEmmanuel Vadot				compatible = "arm,pl18x", "arm,primecell";
416f126890aSEmmanuel Vadot				arm,primecell-periphid = <0x00051180>;
417f126890aSEmmanuel Vadot				status = "disabled";
418f126890aSEmmanuel Vadot				reg = <0x12200000 0x8000>;
419f126890aSEmmanuel Vadot				interrupts = <GIC_SPI 188 IRQ_TYPE_LEVEL_HIGH>;
420f126890aSEmmanuel Vadot				clocks = <&gcc SDC5_CLK>, <&gcc SDC5_H_CLK>;
421f126890aSEmmanuel Vadot				clock-names = "mclk", "apb_pclk";
422f126890aSEmmanuel Vadot				bus-width = <4>;
423f126890aSEmmanuel Vadot				cap-sd-highspeed;
424f126890aSEmmanuel Vadot				cap-mmc-highspeed;
425f126890aSEmmanuel Vadot				max-frequency = <48000000>;
426f126890aSEmmanuel Vadot			};
427f126890aSEmmanuel Vadot		};
428f126890aSEmmanuel Vadot
429f126890aSEmmanuel Vadot		tcsr: syscon@1a400000 {
430f126890aSEmmanuel Vadot			compatible = "qcom,tcsr-msm8660", "syscon";
431f126890aSEmmanuel Vadot			reg = <0x1a400000 0x100>;
432f126890aSEmmanuel Vadot		};
433f126890aSEmmanuel Vadot	};
434f126890aSEmmanuel Vadot
435f126890aSEmmanuel Vadot};
436