xref: /linux/scripts/dtc/include-prefixes/arm/qcom/qcom-msm8660.dtsi (revision 6c1561fb900524c5bceb924071b3e9b8a67ff3da)
1724ba675SRob Herring// SPDX-License-Identifier: GPL-2.0
2724ba675SRob Herring/dts-v1/;
3724ba675SRob Herring
4724ba675SRob Herring#include <dt-bindings/interrupt-controller/irq.h>
5724ba675SRob Herring#include <dt-bindings/interrupt-controller/arm-gic.h>
6724ba675SRob Herring#include <dt-bindings/clock/qcom,gcc-msm8660.h>
7724ba675SRob Herring#include <dt-bindings/soc/qcom,gsbi.h>
8724ba675SRob Herring
9724ba675SRob Herring/ {
10724ba675SRob Herring	#address-cells = <1>;
11724ba675SRob Herring	#size-cells = <1>;
12724ba675SRob Herring	model = "Qualcomm MSM8660";
13724ba675SRob Herring	compatible = "qcom,msm8660";
14724ba675SRob Herring	interrupt-parent = <&intc>;
15724ba675SRob Herring
16724ba675SRob Herring	cpus {
17724ba675SRob Herring		#address-cells = <1>;
18724ba675SRob Herring		#size-cells = <0>;
19724ba675SRob Herring
20724ba675SRob Herring		cpu@0 {
21724ba675SRob Herring			compatible = "qcom,scorpion";
22724ba675SRob Herring			enable-method = "qcom,gcc-msm8660";
23724ba675SRob Herring			device_type = "cpu";
24724ba675SRob Herring			reg = <0>;
25724ba675SRob Herring			next-level-cache = <&L2>;
26724ba675SRob Herring		};
27724ba675SRob Herring
28724ba675SRob Herring		cpu@1 {
29724ba675SRob Herring			compatible = "qcom,scorpion";
30724ba675SRob Herring			enable-method = "qcom,gcc-msm8660";
31724ba675SRob Herring			device_type = "cpu";
32724ba675SRob Herring			reg = <1>;
33724ba675SRob Herring			next-level-cache = <&L2>;
34724ba675SRob Herring		};
35724ba675SRob Herring
36724ba675SRob Herring		L2: l2-cache {
37724ba675SRob Herring			compatible = "cache";
38724ba675SRob Herring			cache-level = <2>;
39*6c1561fbSLinus Torvalds			cache-unified;
40724ba675SRob Herring		};
41724ba675SRob Herring	};
42724ba675SRob Herring
43724ba675SRob Herring	memory {
44724ba675SRob Herring		device_type = "memory";
45724ba675SRob Herring		reg = <0x0 0x0>;
46724ba675SRob Herring	};
47724ba675SRob Herring
48724ba675SRob Herring	cpu-pmu {
49724ba675SRob Herring		compatible = "qcom,scorpion-mp-pmu";
50724ba675SRob Herring		interrupts = <1 9 0x304>;
51724ba675SRob Herring	};
52724ba675SRob Herring
53724ba675SRob Herring	clocks {
54724ba675SRob Herring		cxo_board: cxo-board-clk {
55724ba675SRob Herring			compatible = "fixed-clock";
56724ba675SRob Herring			#clock-cells = <0>;
57724ba675SRob Herring			clock-frequency = <19200000>;
58724ba675SRob Herring			clock-output-names = "cxo_board";
59724ba675SRob Herring		};
60724ba675SRob Herring
61724ba675SRob Herring		pxo_board: pxo-board-clk {
62724ba675SRob Herring			compatible = "fixed-clock";
63724ba675SRob Herring			#clock-cells = <0>;
64724ba675SRob Herring			clock-frequency = <27000000>;
65724ba675SRob Herring			clock-output-names = "pxo_board";
66724ba675SRob Herring		};
67724ba675SRob Herring
68724ba675SRob Herring		sleep-clk {
69724ba675SRob Herring			compatible = "fixed-clock";
70724ba675SRob Herring			#clock-cells = <0>;
71724ba675SRob Herring			clock-frequency = <32768>;
72724ba675SRob Herring			clock-output-names = "sleep_clk";
73724ba675SRob Herring		};
74724ba675SRob Herring	};
75724ba675SRob Herring
76724ba675SRob Herring	/*
77724ba675SRob Herring	 * These channels from the ADC are simply hardware monitors.
78724ba675SRob Herring	 * That is why the ADC is referred to as "HKADC" - HouseKeeping
79724ba675SRob Herring	 * ADC.
80724ba675SRob Herring	 */
81724ba675SRob Herring	iio-hwmon {
82724ba675SRob Herring		compatible = "iio-hwmon";
83724ba675SRob Herring		io-channels = <&xoadc 0x00 0x01>, /* Battery */
84724ba675SRob Herring			    <&xoadc 0x00 0x02>, /* DC in (charger) */
85724ba675SRob Herring			    <&xoadc 0x00 0x04>, /* VPH the main system voltage */
86724ba675SRob Herring			    <&xoadc 0x00 0x0b>, /* Die temperature */
87724ba675SRob Herring			    <&xoadc 0x00 0x0c>, /* Reference voltage 1.25V */
88724ba675SRob Herring			    <&xoadc 0x00 0x0d>, /* Reference voltage 0.625V */
89724ba675SRob Herring			    <&xoadc 0x00 0x0e>; /* Reference voltage 0.325V */
90724ba675SRob Herring	};
91724ba675SRob Herring
92724ba675SRob Herring	soc: soc {
93724ba675SRob Herring		#address-cells = <1>;
94724ba675SRob Herring		#size-cells = <1>;
95724ba675SRob Herring		ranges;
96724ba675SRob Herring		compatible = "simple-bus";
97724ba675SRob Herring
98724ba675SRob Herring		intc: interrupt-controller@2080000 {
99724ba675SRob Herring			compatible = "qcom,msm-8660-qgic";
100724ba675SRob Herring			interrupt-controller;
101724ba675SRob Herring			#interrupt-cells = <3>;
102724ba675SRob Herring			reg = < 0x02080000 0x1000 >,
103724ba675SRob Herring			      < 0x02081000 0x1000 >;
104724ba675SRob Herring		};
105724ba675SRob Herring
106724ba675SRob Herring		timer@2000000 {
107724ba675SRob Herring			compatible = "qcom,scss-timer", "qcom,msm-timer";
108724ba675SRob Herring			interrupts = <1 0 0x301>,
109724ba675SRob Herring				     <1 1 0x301>,
110724ba675SRob Herring				     <1 2 0x301>;
111724ba675SRob Herring			reg = <0x02000000 0x100>;
112724ba675SRob Herring			clock-frequency = <27000000>,
113724ba675SRob Herring					  <32768>;
114724ba675SRob Herring			cpu-offset = <0x40000>;
115724ba675SRob Herring		};
116724ba675SRob Herring
117724ba675SRob Herring		tlmm: pinctrl@800000 {
118724ba675SRob Herring			compatible = "qcom,msm8660-pinctrl";
119724ba675SRob Herring			reg = <0x800000 0x4000>;
120724ba675SRob Herring
121724ba675SRob Herring			gpio-controller;
122724ba675SRob Herring			gpio-ranges = <&tlmm 0 0 173>;
123724ba675SRob Herring			#gpio-cells = <2>;
124724ba675SRob Herring			interrupts = <0 16 0x4>;
125724ba675SRob Herring			interrupt-controller;
126724ba675SRob Herring			#interrupt-cells = <2>;
127724ba675SRob Herring
128724ba675SRob Herring		};
129724ba675SRob Herring
130724ba675SRob Herring		gcc: clock-controller@900000 {
131724ba675SRob Herring			compatible = "qcom,gcc-msm8660";
132724ba675SRob Herring			#clock-cells = <1>;
133724ba675SRob Herring			#power-domain-cells = <1>;
134724ba675SRob Herring			#reset-cells = <1>;
135724ba675SRob Herring			reg = <0x900000 0x4000>;
136724ba675SRob Herring			clocks = <&pxo_board>, <&cxo_board>;
137724ba675SRob Herring			clock-names = "pxo", "cxo";
138724ba675SRob Herring		};
139724ba675SRob Herring
140724ba675SRob Herring		gsbi1: gsbi@16000000 {
141724ba675SRob Herring			compatible = "qcom,gsbi-v1.0.0";
142724ba675SRob Herring			cell-index = <12>;
143724ba675SRob Herring			reg = <0x16000000 0x100>;
144724ba675SRob Herring			clocks = <&gcc GSBI1_H_CLK>;
145724ba675SRob Herring			clock-names = "iface";
146724ba675SRob Herring			#address-cells = <1>;
147724ba675SRob Herring			#size-cells = <1>;
148724ba675SRob Herring			ranges;
149724ba675SRob Herring
150724ba675SRob Herring			syscon-tcsr = <&tcsr>;
151724ba675SRob Herring
152724ba675SRob Herring			status = "disabled";
153724ba675SRob Herring
154724ba675SRob Herring			gsbi1_spi: spi@16080000 {
155724ba675SRob Herring				compatible = "qcom,spi-qup-v1.1.1";
156724ba675SRob Herring				reg = <0x16080000 0x1000>;
157724ba675SRob Herring				interrupts = <GIC_SPI 147 IRQ_TYPE_LEVEL_HIGH>;
158724ba675SRob Herring				clocks = <&gcc GSBI1_QUP_CLK>, <&gcc GSBI1_H_CLK>;
159724ba675SRob Herring				clock-names = "core", "iface";
160724ba675SRob Herring				#address-cells = <1>;
161724ba675SRob Herring				#size-cells = <0>;
162724ba675SRob Herring				status = "disabled";
163724ba675SRob Herring			};
164724ba675SRob Herring		};
165724ba675SRob Herring
166724ba675SRob Herring		gsbi3: gsbi@16200000 {
167724ba675SRob Herring			compatible = "qcom,gsbi-v1.0.0";
168724ba675SRob Herring			cell-index = <12>;
169724ba675SRob Herring			reg = <0x16200000 0x100>;
170724ba675SRob Herring			clocks = <&gcc GSBI3_H_CLK>;
171724ba675SRob Herring			clock-names = "iface";
172724ba675SRob Herring			#address-cells = <1>;
173724ba675SRob Herring			#size-cells = <1>;
174724ba675SRob Herring			ranges;
175724ba675SRob Herring
176724ba675SRob Herring			syscon-tcsr = <&tcsr>;
177724ba675SRob Herring			status = "disabled";
178724ba675SRob Herring
179724ba675SRob Herring			gsbi3_i2c: i2c@16280000 {
180724ba675SRob Herring				compatible = "qcom,i2c-qup-v1.1.1";
181724ba675SRob Herring				reg = <0x16280000 0x1000>;
182724ba675SRob Herring				interrupts = <GIC_SPI 151 IRQ_TYPE_LEVEL_HIGH>;
183724ba675SRob Herring				clocks = <&gcc GSBI3_QUP_CLK>, <&gcc GSBI3_H_CLK>;
184724ba675SRob Herring				clock-names = "core", "iface";
185724ba675SRob Herring				#address-cells = <1>;
186724ba675SRob Herring				#size-cells = <0>;
187724ba675SRob Herring				status = "disabled";
188724ba675SRob Herring			};
189724ba675SRob Herring		};
190724ba675SRob Herring
191724ba675SRob Herring		gsbi6: gsbi@16500000 {
192724ba675SRob Herring			compatible = "qcom,gsbi-v1.0.0";
193724ba675SRob Herring			cell-index = <12>;
194724ba675SRob Herring			reg = <0x16500000 0x100>;
195724ba675SRob Herring			clocks = <&gcc GSBI6_H_CLK>;
196724ba675SRob Herring			clock-names = "iface";
197724ba675SRob Herring			#address-cells = <1>;
198724ba675SRob Herring			#size-cells = <1>;
199724ba675SRob Herring			ranges;
200724ba675SRob Herring			status = "disabled";
201724ba675SRob Herring
202724ba675SRob Herring			syscon-tcsr = <&tcsr>;
203724ba675SRob Herring
204724ba675SRob Herring			gsbi6_serial: serial@16540000 {
205724ba675SRob Herring				compatible = "qcom,msm-uartdm-v1.3", "qcom,msm-uartdm";
206724ba675SRob Herring				reg = <0x16540000 0x1000>,
207724ba675SRob Herring				      <0x16500000 0x1000>;
208724ba675SRob Herring				interrupts = <GIC_SPI 156 IRQ_TYPE_LEVEL_HIGH>;
209724ba675SRob Herring				clocks = <&gcc GSBI6_UART_CLK>, <&gcc GSBI6_H_CLK>;
210724ba675SRob Herring				clock-names = "core", "iface";
211724ba675SRob Herring				status = "disabled";
212724ba675SRob Herring			};
213724ba675SRob Herring
214724ba675SRob Herring			gsbi6_i2c: i2c@16580000 {
215724ba675SRob Herring				compatible = "qcom,i2c-qup-v1.1.1";
216724ba675SRob Herring				reg = <0x16580000 0x1000>;
217724ba675SRob Herring				interrupts = <GIC_SPI 157 IRQ_TYPE_LEVEL_HIGH>;
218724ba675SRob Herring				clocks = <&gcc GSBI6_QUP_CLK>, <&gcc GSBI6_H_CLK>;
219724ba675SRob Herring				clock-names = "core", "iface";
220724ba675SRob Herring				#address-cells = <1>;
221724ba675SRob Herring				#size-cells = <0>;
222724ba675SRob Herring				status = "disabled";
223724ba675SRob Herring			};
224724ba675SRob Herring		};
225724ba675SRob Herring
226724ba675SRob Herring		gsbi7: gsbi@16600000 {
227724ba675SRob Herring			compatible = "qcom,gsbi-v1.0.0";
228724ba675SRob Herring			cell-index = <12>;
229724ba675SRob Herring			reg = <0x16600000 0x100>;
230724ba675SRob Herring			clocks = <&gcc GSBI7_H_CLK>;
231724ba675SRob Herring			clock-names = "iface";
232724ba675SRob Herring			#address-cells = <1>;
233724ba675SRob Herring			#size-cells = <1>;
234724ba675SRob Herring			ranges;
235724ba675SRob Herring			status = "disabled";
236724ba675SRob Herring
237724ba675SRob Herring			syscon-tcsr = <&tcsr>;
238724ba675SRob Herring
239724ba675SRob Herring			gsbi7_serial: serial@16640000 {
240724ba675SRob Herring				compatible = "qcom,msm-uartdm-v1.3", "qcom,msm-uartdm";
241724ba675SRob Herring				reg = <0x16640000 0x1000>,
242724ba675SRob Herring				      <0x16600000 0x1000>;
243724ba675SRob Herring				interrupts = <GIC_SPI 158 IRQ_TYPE_LEVEL_HIGH>;
244724ba675SRob Herring				clocks = <&gcc GSBI7_UART_CLK>, <&gcc GSBI7_H_CLK>;
245724ba675SRob Herring				clock-names = "core", "iface";
246724ba675SRob Herring				status = "disabled";
247724ba675SRob Herring			};
248724ba675SRob Herring
249724ba675SRob Herring			gsbi7_i2c: i2c@16680000 {
250724ba675SRob Herring				compatible = "qcom,i2c-qup-v1.1.1";
251724ba675SRob Herring				reg = <0x16680000 0x1000>;
252724ba675SRob Herring				interrupts = <GIC_SPI 159 IRQ_TYPE_LEVEL_HIGH>;
253724ba675SRob Herring				clocks = <&gcc GSBI7_QUP_CLK>, <&gcc GSBI7_H_CLK>;
254724ba675SRob Herring				clock-names = "core", "iface";
255724ba675SRob Herring				#address-cells = <1>;
256724ba675SRob Herring				#size-cells = <0>;
257724ba675SRob Herring				status = "disabled";
258724ba675SRob Herring			};
259724ba675SRob Herring		};
260724ba675SRob Herring
261724ba675SRob Herring		gsbi8: gsbi@19800000 {
262724ba675SRob Herring			compatible = "qcom,gsbi-v1.0.0";
263724ba675SRob Herring			cell-index = <12>;
264724ba675SRob Herring			reg = <0x19800000 0x100>;
265724ba675SRob Herring			clocks = <&gcc GSBI8_H_CLK>;
266724ba675SRob Herring			clock-names = "iface";
267724ba675SRob Herring			#address-cells = <1>;
268724ba675SRob Herring			#size-cells = <1>;
269724ba675SRob Herring			ranges;
270724ba675SRob Herring
271724ba675SRob Herring			syscon-tcsr = <&tcsr>;
272724ba675SRob Herring			status = "disabled";
273724ba675SRob Herring
274724ba675SRob Herring			gsbi8_i2c: i2c@19880000 {
275724ba675SRob Herring				compatible = "qcom,i2c-qup-v1.1.1";
276724ba675SRob Herring				reg = <0x19880000 0x1000>;
277724ba675SRob Herring				interrupts = <GIC_SPI 161 IRQ_TYPE_LEVEL_HIGH>;
278724ba675SRob Herring				clocks = <&gcc GSBI8_QUP_CLK>, <&gcc GSBI8_H_CLK>;
279724ba675SRob Herring				clock-names = "core", "iface";
280724ba675SRob Herring				#address-cells = <1>;
281724ba675SRob Herring				#size-cells = <0>;
282724ba675SRob Herring				status = "disabled";
283724ba675SRob Herring			};
284724ba675SRob Herring		};
285724ba675SRob Herring
286724ba675SRob Herring		gsbi12: gsbi@19c00000 {
287724ba675SRob Herring			compatible = "qcom,gsbi-v1.0.0";
288724ba675SRob Herring			cell-index = <12>;
289724ba675SRob Herring			reg = <0x19c00000 0x100>;
290724ba675SRob Herring			clocks = <&gcc GSBI12_H_CLK>;
291724ba675SRob Herring			clock-names = "iface";
292724ba675SRob Herring			#address-cells = <1>;
293724ba675SRob Herring			#size-cells = <1>;
294724ba675SRob Herring			ranges;
295724ba675SRob Herring
296724ba675SRob Herring			syscon-tcsr = <&tcsr>;
297724ba675SRob Herring
298724ba675SRob Herring			gsbi12_serial: serial@19c40000 {
299724ba675SRob Herring				compatible = "qcom,msm-uartdm-v1.3", "qcom,msm-uartdm";
300724ba675SRob Herring				reg = <0x19c40000 0x1000>,
301724ba675SRob Herring				      <0x19c00000 0x1000>;
302724ba675SRob Herring				interrupts = <0 195 IRQ_TYPE_LEVEL_HIGH>;
303724ba675SRob Herring				clocks = <&gcc GSBI12_UART_CLK>, <&gcc GSBI12_H_CLK>;
304724ba675SRob Herring				clock-names = "core", "iface";
305724ba675SRob Herring				status = "disabled";
306724ba675SRob Herring			};
307724ba675SRob Herring
308724ba675SRob Herring			gsbi12_i2c: i2c@19c80000 {
309724ba675SRob Herring				compatible = "qcom,i2c-qup-v1.1.1";
310724ba675SRob Herring				reg = <0x19c80000 0x1000>;
311724ba675SRob Herring				interrupts = <0 196 IRQ_TYPE_LEVEL_HIGH>;
312724ba675SRob Herring				clocks = <&gcc GSBI12_QUP_CLK>, <&gcc GSBI12_H_CLK>;
313724ba675SRob Herring				clock-names = "core", "iface";
314724ba675SRob Herring				#address-cells = <1>;
315724ba675SRob Herring				#size-cells = <0>;
316724ba675SRob Herring				status = "disabled";
317724ba675SRob Herring			};
318724ba675SRob Herring		};
319724ba675SRob Herring
320724ba675SRob Herring		ebi2: external-bus@1a100000 {
321724ba675SRob Herring			compatible = "qcom,msm8660-ebi2";
322724ba675SRob Herring			#address-cells = <2>;
323724ba675SRob Herring			#size-cells = <1>;
324724ba675SRob Herring			ranges = <0 0x0 0x1a800000 0x00800000>,
325724ba675SRob Herring				 <1 0x0 0x1b000000 0x00800000>,
326724ba675SRob Herring				 <2 0x0 0x1b800000 0x00800000>,
327724ba675SRob Herring				 <3 0x0 0x1d000000 0x08000000>,
328724ba675SRob Herring				 <4 0x0 0x1c800000 0x00800000>,
329724ba675SRob Herring				 <5 0x0 0x1c000000 0x00800000>;
330724ba675SRob Herring			reg = <0x1a100000 0x1000>, <0x1a110000 0x1000>;
331724ba675SRob Herring			reg-names = "ebi2", "xmem";
332724ba675SRob Herring			clocks = <&gcc EBI2_2X_CLK>, <&gcc EBI2_CLK>;
333724ba675SRob Herring			clock-names = "ebi2x", "ebi2";
334724ba675SRob Herring			status = "disabled";
335724ba675SRob Herring		};
336724ba675SRob Herring
337724ba675SRob Herring		ssbi@500000 {
338724ba675SRob Herring			compatible = "qcom,ssbi";
339724ba675SRob Herring			reg = <0x500000 0x1000>;
340724ba675SRob Herring			qcom,controller-type = "pmic-arbiter";
341724ba675SRob Herring
342724ba675SRob Herring			pm8058: pmic {
343724ba675SRob Herring				compatible = "qcom,pm8058";
344724ba675SRob Herring				interrupt-parent = <&tlmm>;
345724ba675SRob Herring				interrupts = <88 8>;
346724ba675SRob Herring				#interrupt-cells = <2>;
347724ba675SRob Herring				interrupt-controller;
348724ba675SRob Herring				#address-cells = <1>;
349724ba675SRob Herring				#size-cells = <0>;
350724ba675SRob Herring
351724ba675SRob Herring				pm8058_gpio: gpio@150 {
352724ba675SRob Herring					compatible = "qcom,pm8058-gpio",
353724ba675SRob Herring						     "qcom,ssbi-gpio";
354724ba675SRob Herring					reg = <0x150>;
355724ba675SRob Herring					interrupt-controller;
356724ba675SRob Herring					#interrupt-cells = <2>;
357724ba675SRob Herring					gpio-controller;
358724ba675SRob Herring					gpio-ranges = <&pm8058_gpio 0 0 44>;
359724ba675SRob Herring					#gpio-cells = <2>;
360724ba675SRob Herring
361724ba675SRob Herring				};
362724ba675SRob Herring
363724ba675SRob Herring				pm8058_mpps: mpps@50 {
364724ba675SRob Herring					compatible = "qcom,pm8058-mpp",
365724ba675SRob Herring						     "qcom,ssbi-mpp";
366724ba675SRob Herring					reg = <0x50>;
367724ba675SRob Herring					gpio-controller;
368724ba675SRob Herring					#gpio-cells = <2>;
369724ba675SRob Herring					gpio-ranges = <&pm8058_mpps 0 0 12>;
370724ba675SRob Herring					interrupt-controller;
371724ba675SRob Herring					#interrupt-cells = <2>;
372724ba675SRob Herring				};
373724ba675SRob Herring
374724ba675SRob Herring				pwrkey@1c {
375724ba675SRob Herring					compatible = "qcom,pm8058-pwrkey";
376724ba675SRob Herring					reg = <0x1c>;
377724ba675SRob Herring					interrupt-parent = <&pm8058>;
378724ba675SRob Herring					interrupts = <50 1>, <51 1>;
379724ba675SRob Herring					debounce = <15625>;
380724ba675SRob Herring					pull-up;
381724ba675SRob Herring				};
382724ba675SRob Herring
383724ba675SRob Herring				pm8058_keypad: keypad@148 {
384724ba675SRob Herring					compatible = "qcom,pm8058-keypad";
385724ba675SRob Herring					reg = <0x148>;
386724ba675SRob Herring					interrupt-parent = <&pm8058>;
387724ba675SRob Herring					interrupts = <74 1>, <75 1>;
388724ba675SRob Herring					debounce = <15>;
389724ba675SRob Herring					scan-delay = <32>;
390724ba675SRob Herring					row-hold = <91500>;
391724ba675SRob Herring				};
392724ba675SRob Herring
393724ba675SRob Herring				xoadc: xoadc@197 {
394724ba675SRob Herring					compatible = "qcom,pm8058-adc";
395724ba675SRob Herring					reg = <0x197>;
396724ba675SRob Herring					interrupts-extended = <&pm8058 76 IRQ_TYPE_EDGE_RISING>;
397724ba675SRob Herring					#address-cells = <2>;
398724ba675SRob Herring					#size-cells = <0>;
399724ba675SRob Herring					#io-channel-cells = <2>;
400724ba675SRob Herring
401724ba675SRob Herring					vcoin: adc-channel@0 {
402724ba675SRob Herring						reg = <0x00 0x00>;
403724ba675SRob Herring					};
404724ba675SRob Herring					vbat: adc-channel@1 {
405724ba675SRob Herring						reg = <0x00 0x01>;
406724ba675SRob Herring					};
407724ba675SRob Herring					dcin: adc-channel@2 {
408724ba675SRob Herring						reg = <0x00 0x02>;
409724ba675SRob Herring					};
410724ba675SRob Herring					ichg: adc-channel@3 {
411724ba675SRob Herring						reg = <0x00 0x03>;
412724ba675SRob Herring					};
413724ba675SRob Herring					vph_pwr: adc-channel@4 {
414724ba675SRob Herring						reg = <0x00 0x04>;
415724ba675SRob Herring					};
416724ba675SRob Herring					usb_vbus: adc-channel@a {
417724ba675SRob Herring						reg = <0x00 0x0a>;
418724ba675SRob Herring					};
419724ba675SRob Herring					die_temp: adc-channel@b {
420724ba675SRob Herring						reg = <0x00 0x0b>;
421724ba675SRob Herring					};
422724ba675SRob Herring					ref_625mv: adc-channel@c {
423724ba675SRob Herring						reg = <0x00 0x0c>;
424724ba675SRob Herring					};
425724ba675SRob Herring					ref_1250mv: adc-channel@d {
426724ba675SRob Herring						reg = <0x00 0x0d>;
427724ba675SRob Herring					};
428724ba675SRob Herring					ref_325mv: adc-channel@e {
429724ba675SRob Herring						reg = <0x00 0x0e>;
430724ba675SRob Herring					};
431724ba675SRob Herring					ref_muxoff: adc-channel@f {
432724ba675SRob Herring						reg = <0x00 0x0f>;
433724ba675SRob Herring					};
434724ba675SRob Herring				};
435724ba675SRob Herring
436724ba675SRob Herring				rtc@1e8 {
437724ba675SRob Herring					compatible = "qcom,pm8058-rtc";
438724ba675SRob Herring					reg = <0x1e8>;
439724ba675SRob Herring					interrupt-parent = <&pm8058>;
440724ba675SRob Herring					interrupts = <39 1>;
441724ba675SRob Herring					allow-set-time;
442724ba675SRob Herring				};
443724ba675SRob Herring
444724ba675SRob Herring				vibrator@4a {
445724ba675SRob Herring					compatible = "qcom,pm8058-vib";
446724ba675SRob Herring					reg = <0x4a>;
447724ba675SRob Herring				};
448724ba675SRob Herring
449724ba675SRob Herring				pm8058_led48: led@48 {
450724ba675SRob Herring					compatible = "qcom,pm8058-keypad-led";
451724ba675SRob Herring					reg = <0x48>;
452724ba675SRob Herring					status = "disabled";
453724ba675SRob Herring				};
454724ba675SRob Herring
455724ba675SRob Herring				pm8058_led131: led@131 {
456724ba675SRob Herring					compatible = "qcom,pm8058-led";
457724ba675SRob Herring					reg = <0x131>;
458724ba675SRob Herring					status = "disabled";
459724ba675SRob Herring				};
460724ba675SRob Herring
461724ba675SRob Herring				pm8058_led132: led@132 {
462724ba675SRob Herring					compatible = "qcom,pm8058-led";
463724ba675SRob Herring					reg = <0x132>;
464724ba675SRob Herring					status = "disabled";
465724ba675SRob Herring				};
466724ba675SRob Herring
467724ba675SRob Herring				pm8058_led133: led@133 {
468724ba675SRob Herring					compatible = "qcom,pm8058-led";
469724ba675SRob Herring					reg = <0x133>;
470724ba675SRob Herring					status = "disabled";
471724ba675SRob Herring				};
472724ba675SRob Herring
473724ba675SRob Herring			};
474724ba675SRob Herring		};
475724ba675SRob Herring
476724ba675SRob Herring		l2cc: clock-controller@2082000 {
477724ba675SRob Herring			compatible = "qcom,kpss-gcc-msm8660", "qcom,kpss-gcc", "syscon";
478724ba675SRob Herring			reg = <0x02082000 0x1000>;
479724ba675SRob Herring		};
480724ba675SRob Herring
481724ba675SRob Herring		rpm: rpm@104000 {
482724ba675SRob Herring			compatible = "qcom,rpm-msm8660";
483724ba675SRob Herring			reg = <0x00104000 0x1000>;
484724ba675SRob Herring			qcom,ipc = <&l2cc 0x8 2>;
485724ba675SRob Herring
486724ba675SRob Herring			interrupts = <GIC_SPI 19 IRQ_TYPE_EDGE_RISING>,
487724ba675SRob Herring				     <GIC_SPI 21 IRQ_TYPE_EDGE_RISING>,
488724ba675SRob Herring				     <GIC_SPI 22 IRQ_TYPE_EDGE_RISING>;
489724ba675SRob Herring			interrupt-names = "ack", "err", "wakeup";
490724ba675SRob Herring			clocks = <&gcc RPM_MSG_RAM_H_CLK>;
491724ba675SRob Herring			clock-names = "ram";
492724ba675SRob Herring
493724ba675SRob Herring			rpmcc: clock-controller {
494724ba675SRob Herring				compatible = "qcom,rpmcc-msm8660", "qcom,rpmcc";
495724ba675SRob Herring				#clock-cells = <1>;
496724ba675SRob Herring				clocks = <&pxo_board>;
497724ba675SRob Herring				clock-names = "pxo";
498724ba675SRob Herring			};
499724ba675SRob Herring
500724ba675SRob Herring			regulators-0 {
501724ba675SRob Herring				compatible = "qcom,rpm-pm8901-regulators";
502724ba675SRob Herring
503724ba675SRob Herring				pm8901_l0: l0 {};
504724ba675SRob Herring				pm8901_l1: l1 {};
505724ba675SRob Herring				pm8901_l2: l2 {};
506724ba675SRob Herring				pm8901_l3: l3 {};
507724ba675SRob Herring				pm8901_l4: l4 {};
508724ba675SRob Herring				pm8901_l5: l5 {};
509724ba675SRob Herring				pm8901_l6: l6 {};
510724ba675SRob Herring
511724ba675SRob Herring				/* S0 and S1 Handled as SAW regulators by SPM */
512724ba675SRob Herring				pm8901_s2: s2 {};
513724ba675SRob Herring				pm8901_s3: s3 {};
514724ba675SRob Herring				pm8901_s4: s4 {};
515724ba675SRob Herring
516724ba675SRob Herring				pm8901_lvs0: lvs0 {};
517724ba675SRob Herring				pm8901_lvs1: lvs1 {};
518724ba675SRob Herring				pm8901_lvs2: lvs2 {};
519724ba675SRob Herring				pm8901_lvs3: lvs3 {};
520724ba675SRob Herring
521724ba675SRob Herring				pm8901_mvs: mvs {};
522724ba675SRob Herring			};
523724ba675SRob Herring
524724ba675SRob Herring			regulators-1 {
525724ba675SRob Herring				compatible = "qcom,rpm-pm8058-regulators";
526724ba675SRob Herring
527724ba675SRob Herring				pm8058_l0: l0 {};
528724ba675SRob Herring				pm8058_l1: l1 {};
529724ba675SRob Herring				pm8058_l2: l2 {};
530724ba675SRob Herring				pm8058_l3: l3 {};
531724ba675SRob Herring				pm8058_l4: l4 {};
532724ba675SRob Herring				pm8058_l5: l5 {};
533724ba675SRob Herring				pm8058_l6: l6 {};
534724ba675SRob Herring				pm8058_l7: l7 {};
535724ba675SRob Herring				pm8058_l8: l8 {};
536724ba675SRob Herring				pm8058_l9: l9 {};
537724ba675SRob Herring				pm8058_l10: l10 {};
538724ba675SRob Herring				pm8058_l11: l11 {};
539724ba675SRob Herring				pm8058_l12: l12 {};
540724ba675SRob Herring				pm8058_l13: l13 {};
541724ba675SRob Herring				pm8058_l14: l14 {};
542724ba675SRob Herring				pm8058_l15: l15 {};
543724ba675SRob Herring				pm8058_l16: l16 {};
544724ba675SRob Herring				pm8058_l17: l17 {};
545724ba675SRob Herring				pm8058_l18: l18 {};
546724ba675SRob Herring				pm8058_l19: l19 {};
547724ba675SRob Herring				pm8058_l20: l20 {};
548724ba675SRob Herring				pm8058_l21: l21 {};
549724ba675SRob Herring				pm8058_l22: l22 {};
550724ba675SRob Herring				pm8058_l23: l23 {};
551724ba675SRob Herring				pm8058_l24: l24 {};
552724ba675SRob Herring				pm8058_l25: l25 {};
553724ba675SRob Herring
554724ba675SRob Herring				pm8058_s0: s0 {};
555724ba675SRob Herring				pm8058_s1: s1 {};
556724ba675SRob Herring				pm8058_s2: s2 {};
557724ba675SRob Herring				pm8058_s3: s3 {};
558724ba675SRob Herring				pm8058_s4: s4 {};
559724ba675SRob Herring
560724ba675SRob Herring				pm8058_lvs0: lvs0 {};
561724ba675SRob Herring				pm8058_lvs1: lvs1 {};
562724ba675SRob Herring
563724ba675SRob Herring				pm8058_ncp: ncp {};
564724ba675SRob Herring			};
565724ba675SRob Herring		};
566724ba675SRob Herring
567724ba675SRob Herring		amba {
568724ba675SRob Herring			compatible = "simple-bus";
569724ba675SRob Herring			#address-cells = <1>;
570724ba675SRob Herring			#size-cells = <1>;
571724ba675SRob Herring			ranges;
572724ba675SRob Herring			sdcc1: mmc@12400000 {
573724ba675SRob Herring				status = "disabled";
574724ba675SRob Herring				compatible = "arm,pl18x", "arm,primecell";
575724ba675SRob Herring				arm,primecell-periphid = <0x00051180>;
576724ba675SRob Herring				reg = <0x12400000 0x8000>;
577724ba675SRob Herring				interrupts = <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>;
578724ba675SRob Herring				clocks = <&gcc SDC1_CLK>, <&gcc SDC1_H_CLK>;
579724ba675SRob Herring				clock-names = "mclk", "apb_pclk";
580724ba675SRob Herring				bus-width = <8>;
581724ba675SRob Herring				max-frequency = <48000000>;
582724ba675SRob Herring				non-removable;
583724ba675SRob Herring				cap-sd-highspeed;
584724ba675SRob Herring				cap-mmc-highspeed;
585724ba675SRob Herring			};
586724ba675SRob Herring
587724ba675SRob Herring			sdcc2: mmc@12140000 {
588724ba675SRob Herring				status = "disabled";
589724ba675SRob Herring				compatible = "arm,pl18x", "arm,primecell";
590724ba675SRob Herring				arm,primecell-periphid = <0x00051180>;
591724ba675SRob Herring				reg = <0x12140000 0x8000>;
592724ba675SRob Herring				interrupts = <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>;
593724ba675SRob Herring				clocks = <&gcc SDC2_CLK>, <&gcc SDC2_H_CLK>;
594724ba675SRob Herring				clock-names = "mclk", "apb_pclk";
595724ba675SRob Herring				bus-width = <8>;
596724ba675SRob Herring				max-frequency = <48000000>;
597724ba675SRob Herring				cap-sd-highspeed;
598724ba675SRob Herring				cap-mmc-highspeed;
599724ba675SRob Herring			};
600724ba675SRob Herring
601724ba675SRob Herring			sdcc3: mmc@12180000 {
602724ba675SRob Herring				compatible = "arm,pl18x", "arm,primecell";
603724ba675SRob Herring				arm,primecell-periphid = <0x00051180>;
604724ba675SRob Herring				status = "disabled";
605724ba675SRob Herring				reg = <0x12180000 0x8000>;
606724ba675SRob Herring				interrupts = <GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH>;
607724ba675SRob Herring				clocks = <&gcc SDC3_CLK>, <&gcc SDC3_H_CLK>;
608724ba675SRob Herring				clock-names = "mclk", "apb_pclk";
609724ba675SRob Herring				bus-width = <4>;
610724ba675SRob Herring				cap-sd-highspeed;
611724ba675SRob Herring				cap-mmc-highspeed;
612724ba675SRob Herring				max-frequency = <48000000>;
613724ba675SRob Herring				no-1-8-v;
614724ba675SRob Herring			};
615724ba675SRob Herring
616724ba675SRob Herring			sdcc4: mmc@121c0000 {
617724ba675SRob Herring				compatible = "arm,pl18x", "arm,primecell";
618724ba675SRob Herring				arm,primecell-periphid = <0x00051180>;
619724ba675SRob Herring				status = "disabled";
620724ba675SRob Herring				reg = <0x121c0000 0x8000>;
621724ba675SRob Herring				interrupts = <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>;
622724ba675SRob Herring				clocks = <&gcc SDC4_CLK>, <&gcc SDC4_H_CLK>;
623724ba675SRob Herring				clock-names = "mclk", "apb_pclk";
624724ba675SRob Herring				bus-width = <4>;
625724ba675SRob Herring				max-frequency = <48000000>;
626724ba675SRob Herring				cap-sd-highspeed;
627724ba675SRob Herring				cap-mmc-highspeed;
628724ba675SRob Herring			};
629724ba675SRob Herring
630724ba675SRob Herring			sdcc5: mmc@12200000 {
631724ba675SRob Herring				compatible = "arm,pl18x", "arm,primecell";
632724ba675SRob Herring				arm,primecell-periphid = <0x00051180>;
633724ba675SRob Herring				status = "disabled";
634724ba675SRob Herring				reg = <0x12200000 0x8000>;
635724ba675SRob Herring				interrupts = <GIC_SPI 188 IRQ_TYPE_LEVEL_HIGH>;
636724ba675SRob Herring				clocks = <&gcc SDC5_CLK>, <&gcc SDC5_H_CLK>;
637724ba675SRob Herring				clock-names = "mclk", "apb_pclk";
638724ba675SRob Herring				bus-width = <4>;
639724ba675SRob Herring				cap-sd-highspeed;
640724ba675SRob Herring				cap-mmc-highspeed;
641724ba675SRob Herring				max-frequency = <48000000>;
642724ba675SRob Herring			};
643724ba675SRob Herring		};
644724ba675SRob Herring
645724ba675SRob Herring		tcsr: syscon@1a400000 {
646724ba675SRob Herring			compatible = "qcom,tcsr-msm8660", "syscon";
647724ba675SRob Herring			reg = <0x1a400000 0x100>;
648724ba675SRob Herring		};
649724ba675SRob Herring	};
650724ba675SRob Herring
651724ba675SRob Herring};
652