1*724ba675SRob Herring// SPDX-License-Identifier: GPL-2.0
2*724ba675SRob Herring/*
3*724ba675SRob Herring * Device Tree for the ST-Ericsson Nomadik 8815 STn8815 SoC
4*724ba675SRob Herring */
5*724ba675SRob Herring
6*724ba675SRob Herring#include <dt-bindings/gpio/gpio.h>
7*724ba675SRob Herring
8*724ba675SRob Herring/ {
9*724ba675SRob Herring	#address-cells = <1>;
10*724ba675SRob Herring	#size-cells = <1>;
11*724ba675SRob Herring
12*724ba675SRob Herring	memory {
13*724ba675SRob Herring		device_type = "memory";
14*724ba675SRob Herring		reg = <0x00000000 0x04000000>,
15*724ba675SRob Herring		    <0x08000000 0x04000000>;
16*724ba675SRob Herring	};
17*724ba675SRob Herring
18*724ba675SRob Herring	L2: cache-controller {
19*724ba675SRob Herring		compatible = "arm,l210-cache";
20*724ba675SRob Herring		reg = <0x10210000 0x1000>;
21*724ba675SRob Herring		interrupt-parent = <&vica>;
22*724ba675SRob Herring		interrupts = <30>;
23*724ba675SRob Herring		cache-unified;
24*724ba675SRob Herring		cache-level = <2>;
25*724ba675SRob Herring		cache-size = <131072>;
26*724ba675SRob Herring		cache-sets = <512>;
27*724ba675SRob Herring		cache-line-size = <32>;
28*724ba675SRob Herring		/* At full speed latency must be >=2 */
29*724ba675SRob Herring		arm,tag-latency = <8>;
30*724ba675SRob Herring		arm,data-latency = <8 8>;
31*724ba675SRob Herring		arm,dirty-latency = <8>;
32*724ba675SRob Herring	};
33*724ba675SRob Herring
34*724ba675SRob Herring	mtu0: mtu@101e2000 {
35*724ba675SRob Herring		/* Nomadik system timer */
36*724ba675SRob Herring		compatible = "st,nomadik-mtu";
37*724ba675SRob Herring		reg = <0x101e2000 0x1000>;
38*724ba675SRob Herring		interrupt-parent = <&vica>;
39*724ba675SRob Herring		interrupts = <4>;
40*724ba675SRob Herring		clocks = <&timclk>, <&pclk>;
41*724ba675SRob Herring		clock-names = "timclk", "apb_pclk";
42*724ba675SRob Herring	};
43*724ba675SRob Herring
44*724ba675SRob Herring	mtu1: mtu@101e3000 {
45*724ba675SRob Herring		/* Secondary timer */
46*724ba675SRob Herring		reg = <0x101e3000 0x1000>;
47*724ba675SRob Herring		interrupt-parent = <&vica>;
48*724ba675SRob Herring		interrupts = <5>;
49*724ba675SRob Herring		clocks = <&timclk>, <&pclk>;
50*724ba675SRob Herring		clock-names = "timclk", "apb_pclk";
51*724ba675SRob Herring	};
52*724ba675SRob Herring
53*724ba675SRob Herring	gpio0: gpio@101e4000 {
54*724ba675SRob Herring		compatible = "st,nomadik-gpio";
55*724ba675SRob Herring		reg =  <0x101e4000 0x80>;
56*724ba675SRob Herring		interrupt-parent = <&vica>;
57*724ba675SRob Herring		interrupts = <6>;
58*724ba675SRob Herring		interrupt-controller;
59*724ba675SRob Herring		#interrupt-cells = <2>;
60*724ba675SRob Herring		gpio-controller;
61*724ba675SRob Herring		#gpio-cells = <2>;
62*724ba675SRob Herring		gpio-bank = <0>;
63*724ba675SRob Herring		gpio-ranges = <&pinctrl 0 0 32>;
64*724ba675SRob Herring		clocks = <&pclk>;
65*724ba675SRob Herring	};
66*724ba675SRob Herring
67*724ba675SRob Herring	gpio1: gpio@101e5000 {
68*724ba675SRob Herring		compatible = "st,nomadik-gpio";
69*724ba675SRob Herring		reg =  <0x101e5000 0x80>;
70*724ba675SRob Herring		interrupt-parent = <&vica>;
71*724ba675SRob Herring		interrupts = <7>;
72*724ba675SRob Herring		interrupt-controller;
73*724ba675SRob Herring		#interrupt-cells = <2>;
74*724ba675SRob Herring		gpio-controller;
75*724ba675SRob Herring		#gpio-cells = <2>;
76*724ba675SRob Herring		gpio-bank = <1>;
77*724ba675SRob Herring		gpio-ranges = <&pinctrl 0 32 32>;
78*724ba675SRob Herring		clocks = <&pclk>;
79*724ba675SRob Herring	};
80*724ba675SRob Herring
81*724ba675SRob Herring	gpio2: gpio@101e6000 {
82*724ba675SRob Herring		compatible = "st,nomadik-gpio";
83*724ba675SRob Herring		reg =  <0x101e6000 0x80>;
84*724ba675SRob Herring		interrupt-parent = <&vica>;
85*724ba675SRob Herring		interrupts = <8>;
86*724ba675SRob Herring		interrupt-controller;
87*724ba675SRob Herring		#interrupt-cells = <2>;
88*724ba675SRob Herring		gpio-controller;
89*724ba675SRob Herring		#gpio-cells = <2>;
90*724ba675SRob Herring		gpio-bank = <2>;
91*724ba675SRob Herring		gpio-ranges = <&pinctrl 0 64 32>;
92*724ba675SRob Herring		clocks = <&pclk>;
93*724ba675SRob Herring	};
94*724ba675SRob Herring
95*724ba675SRob Herring	gpio3: gpio@101e7000 {
96*724ba675SRob Herring		compatible = "st,nomadik-gpio";
97*724ba675SRob Herring		reg =  <0x101e7000 0x80>;
98*724ba675SRob Herring		ngpio = <28>;
99*724ba675SRob Herring		interrupt-parent = <&vica>;
100*724ba675SRob Herring		interrupts = <9>;
101*724ba675SRob Herring		interrupt-controller;
102*724ba675SRob Herring		#interrupt-cells = <2>;
103*724ba675SRob Herring		gpio-controller;
104*724ba675SRob Herring		#gpio-cells = <2>;
105*724ba675SRob Herring		gpio-bank = <3>;
106*724ba675SRob Herring		gpio-ranges = <&pinctrl 0 96 28>;
107*724ba675SRob Herring		clocks = <&pclk>;
108*724ba675SRob Herring	};
109*724ba675SRob Herring
110*724ba675SRob Herring	pinctrl: pinctrl {
111*724ba675SRob Herring		compatible = "stericsson,stn8815-pinctrl";
112*724ba675SRob Herring		nomadik-gpio-chips = <&gpio0>, <&gpio1>, <&gpio2>, <&gpio3>;
113*724ba675SRob Herring		/* Pin configurations */
114*724ba675SRob Herring		uart1 {
115*724ba675SRob Herring			uart1_default_mux: uart1_mux {
116*724ba675SRob Herring				u1_default_mux {
117*724ba675SRob Herring					function = "u1";
118*724ba675SRob Herring					groups = "u1_a_1";
119*724ba675SRob Herring				};
120*724ba675SRob Herring			};
121*724ba675SRob Herring		};
122*724ba675SRob Herring		mmcsd {
123*724ba675SRob Herring			mmcsd_default_mux: mmcsd_mux {
124*724ba675SRob Herring				mmcsd_default_mux {
125*724ba675SRob Herring					function = "mmcsd";
126*724ba675SRob Herring					groups = "mmcsd_a_1", "mmcsd_b_1";
127*724ba675SRob Herring				};
128*724ba675SRob Herring			};
129*724ba675SRob Herring			mmcsd_default_mode: mmcsd_default {
130*724ba675SRob Herring				mmcsd_default_cfg1 {
131*724ba675SRob Herring					/*
132*724ba675SRob Herring					 * MCCLK, MCCMDDIR, MCDAT0DIR, MCDAT31DIR, MCDATDIR2
133*724ba675SRob Herring					 * MCCMD, MCDAT3-0, MCMSFBCLK
134*724ba675SRob Herring					 */
135*724ba675SRob Herring					pins = "GPIO8_B10", "GPIO9_A10", "GPIO10_C11", "GPIO11_B11",
136*724ba675SRob Herring					       "GPIO12_A11", "GPIO13_C12", "GPIO14_B12", "GPIO15_A12",
137*724ba675SRob Herring					       "GPIO16_C13", "GPIO23_D15", "GPIO24_C15";
138*724ba675SRob Herring					ste,output = <2>;
139*724ba675SRob Herring				};
140*724ba675SRob Herring			};
141*724ba675SRob Herring		};
142*724ba675SRob Herring		i2c0 {
143*724ba675SRob Herring			i2c0_default_mux: i2c0_mux {
144*724ba675SRob Herring				i2c0_default_mux {
145*724ba675SRob Herring					function = "i2c0";
146*724ba675SRob Herring					groups = "i2c0_a_1";
147*724ba675SRob Herring				};
148*724ba675SRob Herring			};
149*724ba675SRob Herring			i2c0_default_mode: i2c0_default {
150*724ba675SRob Herring				i2c0_default_cfg {
151*724ba675SRob Herring					pins = "GPIO62_D3", "GPIO63_D2";
152*724ba675SRob Herring					ste,input = <0>;
153*724ba675SRob Herring				};
154*724ba675SRob Herring			};
155*724ba675SRob Herring		};
156*724ba675SRob Herring		i2c1 {
157*724ba675SRob Herring			i2c1_default_mux: i2c1_mux {
158*724ba675SRob Herring				i2c1_default_mux {
159*724ba675SRob Herring					function = "i2c1";
160*724ba675SRob Herring					groups = "i2c1_a_1";
161*724ba675SRob Herring				};
162*724ba675SRob Herring			};
163*724ba675SRob Herring			i2c1_default_mode: i2c1_default {
164*724ba675SRob Herring				i2c1_default_cfg {
165*724ba675SRob Herring					pins = "GPIO53_L4", "GPIO54_L3";
166*724ba675SRob Herring					ste,input = <0>;
167*724ba675SRob Herring				};
168*724ba675SRob Herring			};
169*724ba675SRob Herring		};
170*724ba675SRob Herring		clcd {
171*724ba675SRob Herring			/*
172*724ba675SRob Herring			 * This should be activated to use the additional
173*724ba675SRob Herring			 * 8 lines for bits 16 thru 23 from the CLCD block.
174*724ba675SRob Herring			 */
175*724ba675SRob Herring			clcd_24bit_mux: clcd_mux {
176*724ba675SRob Herring				clcd_24bit_mux {
177*724ba675SRob Herring					function = "clcd";
178*724ba675SRob Herring					groups = "clcd_16_23_b_1";
179*724ba675SRob Herring				};
180*724ba675SRob Herring			};
181*724ba675SRob Herring		};
182*724ba675SRob Herring	};
183*724ba675SRob Herring
184*724ba675SRob Herring	/* Power Management Unit */
185*724ba675SRob Herring	pmu: pmu@101e9000 {
186*724ba675SRob Herring		compatible = "stericsson,nomadik-pmu", "syscon";
187*724ba675SRob Herring		reg = <0x101e0000 0x1000>;
188*724ba675SRob Herring	};
189*724ba675SRob Herring
190*724ba675SRob Herring	src: src@101e0000 {
191*724ba675SRob Herring		compatible = "stericsson,nomadik-src";
192*724ba675SRob Herring		reg = <0x101e0000 0x1000>;
193*724ba675SRob Herring
194*724ba675SRob Herring		/*
195*724ba675SRob Herring		 * MXTAL "Main Chrystal" is a chrystal oscillator @19.2 MHz
196*724ba675SRob Herring		 * that is parent of TIMCLK, PLL1 and PLL2
197*724ba675SRob Herring		 */
198*724ba675SRob Herring		mxtal: mxtal@19.2M {
199*724ba675SRob Herring			#clock-cells = <0>;
200*724ba675SRob Herring			compatible = "fixed-clock";
201*724ba675SRob Herring			clock-frequency = <19200000>;
202*724ba675SRob Herring		};
203*724ba675SRob Herring
204*724ba675SRob Herring		/*
205*724ba675SRob Herring		 * The 2.4 MHz TIMCLK reference clock is active at
206*724ba675SRob Herring		 * boot time, this is actually the MXTALCLK @19.2 MHz
207*724ba675SRob Herring		 * divided by 8. This clock is used by the timers and
208*724ba675SRob Herring		 * watchdog. See page 105 ff.
209*724ba675SRob Herring		 */
210*724ba675SRob Herring		timclk: timclk@2.4M {
211*724ba675SRob Herring			#clock-cells = <0>;
212*724ba675SRob Herring			compatible = "fixed-factor-clock";
213*724ba675SRob Herring			clock-div = <8>;
214*724ba675SRob Herring			clock-mult = <1>;
215*724ba675SRob Herring			clocks = <&mxtal>;
216*724ba675SRob Herring		};
217*724ba675SRob Herring
218*724ba675SRob Herring		/* PLL1 is locked to MXTALI and variable from 20.4 to 334 MHz */
219*724ba675SRob Herring		pll1: pll1@0 {
220*724ba675SRob Herring			#clock-cells = <0>;
221*724ba675SRob Herring			compatible = "st,nomadik-pll-clock";
222*724ba675SRob Herring			pll-id = <1>;
223*724ba675SRob Herring			clocks = <&mxtal>;
224*724ba675SRob Herring		};
225*724ba675SRob Herring
226*724ba675SRob Herring		/* HCLK divides the PLL1 with 1,2,3 or 4 */
227*724ba675SRob Herring		hclk: hclk@0 {
228*724ba675SRob Herring			#clock-cells = <0>;
229*724ba675SRob Herring			compatible = "st,nomadik-hclk-clock";
230*724ba675SRob Herring			clocks = <&pll1>;
231*724ba675SRob Herring		};
232*724ba675SRob Herring		/* The PCLK domain uses HCLK right off */
233*724ba675SRob Herring		pclk: pclk@0 {
234*724ba675SRob Herring			#clock-cells = <0>;
235*724ba675SRob Herring			compatible = "fixed-factor-clock";
236*724ba675SRob Herring			clock-div = <1>;
237*724ba675SRob Herring			clock-mult = <1>;
238*724ba675SRob Herring			clocks = <&hclk>;
239*724ba675SRob Herring		};
240*724ba675SRob Herring
241*724ba675SRob Herring		/* PLL2 is usually 864 MHz and divided into a few fixed rates */
242*724ba675SRob Herring		pll2: pll2@0 {
243*724ba675SRob Herring			#clock-cells = <0>;
244*724ba675SRob Herring			compatible = "st,nomadik-pll-clock";
245*724ba675SRob Herring			pll-id = <2>;
246*724ba675SRob Herring			clocks = <&mxtal>;
247*724ba675SRob Herring		};
248*724ba675SRob Herring		clk216: clk216@216M {
249*724ba675SRob Herring			#clock-cells = <0>;
250*724ba675SRob Herring			compatible = "fixed-factor-clock";
251*724ba675SRob Herring			clock-div = <4>;
252*724ba675SRob Herring			clock-mult = <1>;
253*724ba675SRob Herring			clocks = <&pll2>;
254*724ba675SRob Herring		};
255*724ba675SRob Herring		clk108: clk108@108M {
256*724ba675SRob Herring			#clock-cells = <0>;
257*724ba675SRob Herring			compatible = "fixed-factor-clock";
258*724ba675SRob Herring			clock-div = <2>;
259*724ba675SRob Herring			clock-mult = <1>;
260*724ba675SRob Herring			clocks = <&clk216>;
261*724ba675SRob Herring		};
262*724ba675SRob Herring		clk72: clk72@72M {
263*724ba675SRob Herring			#clock-cells = <0>;
264*724ba675SRob Herring			compatible = "fixed-factor-clock";
265*724ba675SRob Herring			/* The data sheet does not say how this is derived */
266*724ba675SRob Herring			clock-div = <12>;
267*724ba675SRob Herring			clock-mult = <1>;
268*724ba675SRob Herring			clocks = <&pll2>;
269*724ba675SRob Herring		};
270*724ba675SRob Herring		clk48: clk48@48M {
271*724ba675SRob Herring			#clock-cells = <0>;
272*724ba675SRob Herring			compatible = "fixed-factor-clock";
273*724ba675SRob Herring			/* The data sheet does not say how this is derived */
274*724ba675SRob Herring			clock-div = <18>;
275*724ba675SRob Herring			clock-mult = <1>;
276*724ba675SRob Herring			clocks = <&pll2>;
277*724ba675SRob Herring		};
278*724ba675SRob Herring		clk27: clk27@27M {
279*724ba675SRob Herring			#clock-cells = <0>;
280*724ba675SRob Herring			compatible = "fixed-factor-clock";
281*724ba675SRob Herring			clock-div = <4>;
282*724ba675SRob Herring			clock-mult = <1>;
283*724ba675SRob Herring			clocks = <&clk108>;
284*724ba675SRob Herring		};
285*724ba675SRob Herring
286*724ba675SRob Herring		/* This apparently exists as well */
287*724ba675SRob Herring		ulpiclk: ulpiclk@60M {
288*724ba675SRob Herring			#clock-cells = <0>;
289*724ba675SRob Herring			compatible = "fixed-clock";
290*724ba675SRob Herring			clock-frequency = <60000000>;
291*724ba675SRob Herring		};
292*724ba675SRob Herring
293*724ba675SRob Herring		/*
294*724ba675SRob Herring		 * IP AMBA bus clocks, driving the bus side of the
295*724ba675SRob Herring		 * peripheral clocking, clock gates.
296*724ba675SRob Herring		 */
297*724ba675SRob Herring
298*724ba675SRob Herring		hclkdma0: hclkdma0@48M {
299*724ba675SRob Herring			#clock-cells = <0>;
300*724ba675SRob Herring			compatible = "st,nomadik-src-clock";
301*724ba675SRob Herring			clock-id = <0>;
302*724ba675SRob Herring			clocks = <&hclk>;
303*724ba675SRob Herring		};
304*724ba675SRob Herring		hclksmc: hclksmc@48M {
305*724ba675SRob Herring			#clock-cells = <0>;
306*724ba675SRob Herring			compatible = "st,nomadik-src-clock";
307*724ba675SRob Herring			clock-id = <1>;
308*724ba675SRob Herring			clocks = <&hclk>;
309*724ba675SRob Herring		};
310*724ba675SRob Herring		hclksdram: hclksdram@48M {
311*724ba675SRob Herring			#clock-cells = <0>;
312*724ba675SRob Herring			compatible = "st,nomadik-src-clock";
313*724ba675SRob Herring			clock-id = <2>;
314*724ba675SRob Herring			clocks = <&hclk>;
315*724ba675SRob Herring		};
316*724ba675SRob Herring		hclkdma1: hclkdma1@48M {
317*724ba675SRob Herring			#clock-cells = <0>;
318*724ba675SRob Herring			compatible = "st,nomadik-src-clock";
319*724ba675SRob Herring			clock-id = <3>;
320*724ba675SRob Herring			clocks = <&hclk>;
321*724ba675SRob Herring		};
322*724ba675SRob Herring		hclkclcd: hclkclcd@48M {
323*724ba675SRob Herring			#clock-cells = <0>;
324*724ba675SRob Herring			compatible = "st,nomadik-src-clock";
325*724ba675SRob Herring			clock-id = <4>;
326*724ba675SRob Herring			clocks = <&hclk>;
327*724ba675SRob Herring		};
328*724ba675SRob Herring		pclkirda: pclkirda@48M {
329*724ba675SRob Herring			#clock-cells = <0>;
330*724ba675SRob Herring			compatible = "st,nomadik-src-clock";
331*724ba675SRob Herring			clock-id = <5>;
332*724ba675SRob Herring			clocks = <&pclk>;
333*724ba675SRob Herring		};
334*724ba675SRob Herring		pclkssp: pclkssp@48M {
335*724ba675SRob Herring			#clock-cells = <0>;
336*724ba675SRob Herring			compatible = "st,nomadik-src-clock";
337*724ba675SRob Herring			clock-id = <6>;
338*724ba675SRob Herring			clocks = <&pclk>;
339*724ba675SRob Herring		};
340*724ba675SRob Herring		pclkuart0: pclkuart0@48M {
341*724ba675SRob Herring			#clock-cells = <0>;
342*724ba675SRob Herring			compatible = "st,nomadik-src-clock";
343*724ba675SRob Herring			clock-id = <7>;
344*724ba675SRob Herring			clocks = <&pclk>;
345*724ba675SRob Herring		};
346*724ba675SRob Herring		pclksdi: pclksdi@48M {
347*724ba675SRob Herring			#clock-cells = <0>;
348*724ba675SRob Herring			compatible = "st,nomadik-src-clock";
349*724ba675SRob Herring			clock-id = <8>;
350*724ba675SRob Herring			clocks = <&pclk>;
351*724ba675SRob Herring		};
352*724ba675SRob Herring		pclki2c0: pclki2c0@48M {
353*724ba675SRob Herring			#clock-cells = <0>;
354*724ba675SRob Herring			compatible = "st,nomadik-src-clock";
355*724ba675SRob Herring			clock-id = <9>;
356*724ba675SRob Herring			clocks = <&pclk>;
357*724ba675SRob Herring		};
358*724ba675SRob Herring		pclki2c1: pclki2c1@48M {
359*724ba675SRob Herring			#clock-cells = <0>;
360*724ba675SRob Herring			compatible = "st,nomadik-src-clock";
361*724ba675SRob Herring			clock-id = <10>;
362*724ba675SRob Herring			clocks = <&pclk>;
363*724ba675SRob Herring		};
364*724ba675SRob Herring		pclkuart1: pclkuart1@48M {
365*724ba675SRob Herring			#clock-cells = <0>;
366*724ba675SRob Herring			compatible = "st,nomadik-src-clock";
367*724ba675SRob Herring			clock-id = <11>;
368*724ba675SRob Herring			clocks = <&pclk>;
369*724ba675SRob Herring		};
370*724ba675SRob Herring		pclkmsp0: pclkmsp0@48M {
371*724ba675SRob Herring			#clock-cells = <0>;
372*724ba675SRob Herring			compatible = "st,nomadik-src-clock";
373*724ba675SRob Herring			clock-id = <12>;
374*724ba675SRob Herring			clocks = <&pclk>;
375*724ba675SRob Herring		};
376*724ba675SRob Herring		hclkusb: hclkusb@48M {
377*724ba675SRob Herring			#clock-cells = <0>;
378*724ba675SRob Herring			compatible = "st,nomadik-src-clock";
379*724ba675SRob Herring			clock-id = <13>;
380*724ba675SRob Herring			clocks = <&hclk>;
381*724ba675SRob Herring		};
382*724ba675SRob Herring		hclkdif: hclkdif@48M {
383*724ba675SRob Herring			#clock-cells = <0>;
384*724ba675SRob Herring			compatible = "st,nomadik-src-clock";
385*724ba675SRob Herring			clock-id = <14>;
386*724ba675SRob Herring			clocks = <&hclk>;
387*724ba675SRob Herring		};
388*724ba675SRob Herring		hclksaa: hclksaa@48M {
389*724ba675SRob Herring			#clock-cells = <0>;
390*724ba675SRob Herring			compatible = "st,nomadik-src-clock";
391*724ba675SRob Herring			clock-id = <15>;
392*724ba675SRob Herring			clocks = <&hclk>;
393*724ba675SRob Herring		};
394*724ba675SRob Herring		hclksva: hclksva@48M {
395*724ba675SRob Herring			#clock-cells = <0>;
396*724ba675SRob Herring			compatible = "st,nomadik-src-clock";
397*724ba675SRob Herring			clock-id = <16>;
398*724ba675SRob Herring			clocks = <&hclk>;
399*724ba675SRob Herring		};
400*724ba675SRob Herring		pclkhsi: pclkhsi@48M {
401*724ba675SRob Herring			#clock-cells = <0>;
402*724ba675SRob Herring			compatible = "st,nomadik-src-clock";
403*724ba675SRob Herring			clock-id = <17>;
404*724ba675SRob Herring			clocks = <&pclk>;
405*724ba675SRob Herring		};
406*724ba675SRob Herring		pclkxti: pclkxti@48M {
407*724ba675SRob Herring			#clock-cells = <0>;
408*724ba675SRob Herring			compatible = "st,nomadik-src-clock";
409*724ba675SRob Herring			clock-id = <18>;
410*724ba675SRob Herring			clocks = <&pclk>;
411*724ba675SRob Herring		};
412*724ba675SRob Herring		pclkuart2: pclkuart2@48M {
413*724ba675SRob Herring			#clock-cells = <0>;
414*724ba675SRob Herring			compatible = "st,nomadik-src-clock";
415*724ba675SRob Herring			clock-id = <19>;
416*724ba675SRob Herring			clocks = <&pclk>;
417*724ba675SRob Herring		};
418*724ba675SRob Herring		pclkmsp1: pclkmsp1@48M {
419*724ba675SRob Herring			#clock-cells = <0>;
420*724ba675SRob Herring			compatible = "st,nomadik-src-clock";
421*724ba675SRob Herring			clock-id = <20>;
422*724ba675SRob Herring			clocks = <&pclk>;
423*724ba675SRob Herring		};
424*724ba675SRob Herring		pclkmsp2: pclkmsp2@48M {
425*724ba675SRob Herring			#clock-cells = <0>;
426*724ba675SRob Herring			compatible = "st,nomadik-src-clock";
427*724ba675SRob Herring			clock-id = <21>;
428*724ba675SRob Herring			clocks = <&pclk>;
429*724ba675SRob Herring		};
430*724ba675SRob Herring		pclkowm: pclkowm@48M {
431*724ba675SRob Herring			#clock-cells = <0>;
432*724ba675SRob Herring			compatible = "st,nomadik-src-clock";
433*724ba675SRob Herring			clock-id = <22>;
434*724ba675SRob Herring			clocks = <&pclk>;
435*724ba675SRob Herring		};
436*724ba675SRob Herring		hclkhpi: hclkhpi@48M {
437*724ba675SRob Herring			#clock-cells = <0>;
438*724ba675SRob Herring			compatible = "st,nomadik-src-clock";
439*724ba675SRob Herring			clock-id = <23>;
440*724ba675SRob Herring			clocks = <&hclk>;
441*724ba675SRob Herring		};
442*724ba675SRob Herring		pclkske: pclkske@48M {
443*724ba675SRob Herring			#clock-cells = <0>;
444*724ba675SRob Herring			compatible = "st,nomadik-src-clock";
445*724ba675SRob Herring			clock-id = <24>;
446*724ba675SRob Herring			clocks = <&pclk>;
447*724ba675SRob Herring		};
448*724ba675SRob Herring		pclkhsem: pclkhsem@48M {
449*724ba675SRob Herring			#clock-cells = <0>;
450*724ba675SRob Herring			compatible = "st,nomadik-src-clock";
451*724ba675SRob Herring			clock-id = <25>;
452*724ba675SRob Herring			clocks = <&pclk>;
453*724ba675SRob Herring		};
454*724ba675SRob Herring		hclk3d: hclk3d@48M {
455*724ba675SRob Herring			#clock-cells = <0>;
456*724ba675SRob Herring			compatible = "st,nomadik-src-clock";
457*724ba675SRob Herring			clock-id = <26>;
458*724ba675SRob Herring			clocks = <&hclk>;
459*724ba675SRob Herring		};
460*724ba675SRob Herring		hclkhash: hclkhash@48M {
461*724ba675SRob Herring			#clock-cells = <0>;
462*724ba675SRob Herring			compatible = "st,nomadik-src-clock";
463*724ba675SRob Herring			clock-id = <27>;
464*724ba675SRob Herring			clocks = <&hclk>;
465*724ba675SRob Herring		};
466*724ba675SRob Herring		hclkcryp: hclkcryp@48M {
467*724ba675SRob Herring			#clock-cells = <0>;
468*724ba675SRob Herring			compatible = "st,nomadik-src-clock";
469*724ba675SRob Herring			clock-id = <28>;
470*724ba675SRob Herring			clocks = <&hclk>;
471*724ba675SRob Herring		};
472*724ba675SRob Herring		pclkmshc: pclkmshc@48M {
473*724ba675SRob Herring			#clock-cells = <0>;
474*724ba675SRob Herring			compatible = "st,nomadik-src-clock";
475*724ba675SRob Herring			clock-id = <29>;
476*724ba675SRob Herring			clocks = <&pclk>;
477*724ba675SRob Herring		};
478*724ba675SRob Herring		hclkusbm: hclkusbm@48M {
479*724ba675SRob Herring			#clock-cells = <0>;
480*724ba675SRob Herring			compatible = "st,nomadik-src-clock";
481*724ba675SRob Herring			clock-id = <30>;
482*724ba675SRob Herring			clocks = <&hclk>;
483*724ba675SRob Herring		};
484*724ba675SRob Herring		hclkrng: hclkrng@48M {
485*724ba675SRob Herring			#clock-cells = <0>;
486*724ba675SRob Herring			compatible = "st,nomadik-src-clock";
487*724ba675SRob Herring			clock-id = <31>;
488*724ba675SRob Herring			clocks = <&hclk>;
489*724ba675SRob Herring		};
490*724ba675SRob Herring
491*724ba675SRob Herring		/* IP kernel clocks */
492*724ba675SRob Herring		clcdclk: clcdclk@0 {
493*724ba675SRob Herring			#clock-cells = <0>;
494*724ba675SRob Herring			compatible = "st,nomadik-src-clock";
495*724ba675SRob Herring			clock-id = <36>;
496*724ba675SRob Herring			clocks = <&clk72 &clk48>;
497*724ba675SRob Herring		};
498*724ba675SRob Herring		irdaclk: irdaclk@48M {
499*724ba675SRob Herring			#clock-cells = <0>;
500*724ba675SRob Herring			compatible = "st,nomadik-src-clock";
501*724ba675SRob Herring			clock-id = <37>;
502*724ba675SRob Herring			clocks = <&clk48>;
503*724ba675SRob Herring		};
504*724ba675SRob Herring		sspiclk: sspiclk@48M {
505*724ba675SRob Herring			#clock-cells = <0>;
506*724ba675SRob Herring			compatible = "st,nomadik-src-clock";
507*724ba675SRob Herring			clock-id = <38>;
508*724ba675SRob Herring			clocks = <&clk48>;
509*724ba675SRob Herring		};
510*724ba675SRob Herring		uart0clk: uart0clk@48M {
511*724ba675SRob Herring			#clock-cells = <0>;
512*724ba675SRob Herring			compatible = "st,nomadik-src-clock";
513*724ba675SRob Herring			clock-id = <39>;
514*724ba675SRob Herring			clocks = <&clk48>;
515*724ba675SRob Herring		};
516*724ba675SRob Herring		sdiclk: sdiclk@48M {
517*724ba675SRob Herring			/* Also called MCCLK in some documents */
518*724ba675SRob Herring			#clock-cells = <0>;
519*724ba675SRob Herring			compatible = "st,nomadik-src-clock";
520*724ba675SRob Herring			clock-id = <40>;
521*724ba675SRob Herring			clocks = <&clk48>;
522*724ba675SRob Herring		};
523*724ba675SRob Herring		i2c0clk: i2c0clk@48M {
524*724ba675SRob Herring			#clock-cells = <0>;
525*724ba675SRob Herring			compatible = "st,nomadik-src-clock";
526*724ba675SRob Herring			clock-id = <41>;
527*724ba675SRob Herring			clocks = <&clk48>;
528*724ba675SRob Herring		};
529*724ba675SRob Herring		i2c1clk: i2c1clk@48M {
530*724ba675SRob Herring			#clock-cells = <0>;
531*724ba675SRob Herring			compatible = "st,nomadik-src-clock";
532*724ba675SRob Herring			clock-id = <42>;
533*724ba675SRob Herring			clocks = <&clk48>;
534*724ba675SRob Herring		};
535*724ba675SRob Herring		uart1clk: uart1clk@48M {
536*724ba675SRob Herring			#clock-cells = <0>;
537*724ba675SRob Herring			compatible = "st,nomadik-src-clock";
538*724ba675SRob Herring			clock-id = <43>;
539*724ba675SRob Herring			clocks = <&clk48>;
540*724ba675SRob Herring		};
541*724ba675SRob Herring		mspclk0: mspclk0@48M {
542*724ba675SRob Herring			#clock-cells = <0>;
543*724ba675SRob Herring			compatible = "st,nomadik-src-clock";
544*724ba675SRob Herring			clock-id = <44>;
545*724ba675SRob Herring			clocks = <&clk48>;
546*724ba675SRob Herring		};
547*724ba675SRob Herring		usbclk: usbclk@48M {
548*724ba675SRob Herring			#clock-cells = <0>;
549*724ba675SRob Herring			compatible = "st,nomadik-src-clock";
550*724ba675SRob Herring			clock-id = <45>;
551*724ba675SRob Herring			clocks = <&clk48>; /* 48 MHz not ULPI */
552*724ba675SRob Herring		};
553*724ba675SRob Herring		difclk: difclk@72M {
554*724ba675SRob Herring			#clock-cells = <0>;
555*724ba675SRob Herring			compatible = "st,nomadik-src-clock";
556*724ba675SRob Herring			clock-id = <46>;
557*724ba675SRob Herring			clocks = <&clk72>;
558*724ba675SRob Herring		};
559*724ba675SRob Herring		ipi2cclk: ipi2cclk@48M {
560*724ba675SRob Herring			#clock-cells = <0>;
561*724ba675SRob Herring			compatible = "st,nomadik-src-clock";
562*724ba675SRob Herring			clock-id = <47>;
563*724ba675SRob Herring			clocks = <&clk48>; /* Guess */
564*724ba675SRob Herring		};
565*724ba675SRob Herring		ipbmcclk: ipbmcclk@48M {
566*724ba675SRob Herring			#clock-cells = <0>;
567*724ba675SRob Herring			compatible = "st,nomadik-src-clock";
568*724ba675SRob Herring			clock-id = <48>;
569*724ba675SRob Herring			clocks = <&clk48>; /* Guess */
570*724ba675SRob Herring		};
571*724ba675SRob Herring		hsiclkrx: hsiclkrx@216M {
572*724ba675SRob Herring			#clock-cells = <0>;
573*724ba675SRob Herring			compatible = "st,nomadik-src-clock";
574*724ba675SRob Herring			clock-id = <49>;
575*724ba675SRob Herring			clocks = <&clk216>;
576*724ba675SRob Herring		};
577*724ba675SRob Herring		hsiclktx: hsiclktx@108M {
578*724ba675SRob Herring			#clock-cells = <0>;
579*724ba675SRob Herring			compatible = "st,nomadik-src-clock";
580*724ba675SRob Herring			clock-id = <50>;
581*724ba675SRob Herring			clocks = <&clk108>;
582*724ba675SRob Herring		};
583*724ba675SRob Herring		uart2clk: uart2clk@48M {
584*724ba675SRob Herring			#clock-cells = <0>;
585*724ba675SRob Herring			compatible = "st,nomadik-src-clock";
586*724ba675SRob Herring			clock-id = <51>;
587*724ba675SRob Herring			clocks = <&clk48>;
588*724ba675SRob Herring		};
589*724ba675SRob Herring		mspclk1: mspclk1@48M {
590*724ba675SRob Herring			#clock-cells = <0>;
591*724ba675SRob Herring			compatible = "st,nomadik-src-clock";
592*724ba675SRob Herring			clock-id = <52>;
593*724ba675SRob Herring			clocks = <&clk48>;
594*724ba675SRob Herring		};
595*724ba675SRob Herring		mspclk2: mspclk2@48M {
596*724ba675SRob Herring			#clock-cells = <0>;
597*724ba675SRob Herring			compatible = "st,nomadik-src-clock";
598*724ba675SRob Herring			clock-id = <53>;
599*724ba675SRob Herring			clocks = <&clk48>;
600*724ba675SRob Herring		};
601*724ba675SRob Herring		owmclk: owmclk@48M {
602*724ba675SRob Herring			#clock-cells = <0>;
603*724ba675SRob Herring			compatible = "st,nomadik-src-clock";
604*724ba675SRob Herring			clock-id = <54>;
605*724ba675SRob Herring			clocks = <&clk48>; /* Guess */
606*724ba675SRob Herring		};
607*724ba675SRob Herring		skeclk: skeclk@48M {
608*724ba675SRob Herring			#clock-cells = <0>;
609*724ba675SRob Herring			compatible = "st,nomadik-src-clock";
610*724ba675SRob Herring			clock-id = <56>;
611*724ba675SRob Herring			clocks = <&clk48>; /* Guess */
612*724ba675SRob Herring		};
613*724ba675SRob Herring		x3dclk: x3dclk@48M {
614*724ba675SRob Herring			#clock-cells = <0>;
615*724ba675SRob Herring			compatible = "st,nomadik-src-clock";
616*724ba675SRob Herring			clock-id = <58>;
617*724ba675SRob Herring			clocks = <&clk48>; /* Guess */
618*724ba675SRob Herring		};
619*724ba675SRob Herring		pclkmsp3: pclkmsp3@48M {
620*724ba675SRob Herring			#clock-cells = <0>;
621*724ba675SRob Herring			compatible = "st,nomadik-src-clock";
622*724ba675SRob Herring			clock-id = <59>;
623*724ba675SRob Herring			clocks = <&pclk>;
624*724ba675SRob Herring		};
625*724ba675SRob Herring		mspclk3: mspclk3@48M {
626*724ba675SRob Herring			#clock-cells = <0>;
627*724ba675SRob Herring			compatible = "st,nomadik-src-clock";
628*724ba675SRob Herring			clock-id = <60>;
629*724ba675SRob Herring			clocks = <&clk48>;
630*724ba675SRob Herring		};
631*724ba675SRob Herring		mshcclk: mshcclk@48M {
632*724ba675SRob Herring			#clock-cells = <0>;
633*724ba675SRob Herring			compatible = "st,nomadik-src-clock";
634*724ba675SRob Herring			clock-id = <61>;
635*724ba675SRob Herring			clocks = <&clk48>; /* Guess */
636*724ba675SRob Herring		};
637*724ba675SRob Herring		usbmclk: usbmclk@48M {
638*724ba675SRob Herring			#clock-cells = <0>;
639*724ba675SRob Herring			compatible = "st,nomadik-src-clock";
640*724ba675SRob Herring			clock-id = <62>;
641*724ba675SRob Herring			/* Stated as "48 MHz not ULPI clock" */
642*724ba675SRob Herring			clocks = <&clk48>;
643*724ba675SRob Herring		};
644*724ba675SRob Herring		rngcclk: rngcclk@48M {
645*724ba675SRob Herring			#clock-cells = <0>;
646*724ba675SRob Herring			compatible = "st,nomadik-src-clock";
647*724ba675SRob Herring			clock-id = <63>;
648*724ba675SRob Herring			clocks = <&clk48>; /* Guess */
649*724ba675SRob Herring		};
650*724ba675SRob Herring	};
651*724ba675SRob Herring
652*724ba675SRob Herring	/* A NAND flash of 128 MiB */
653*724ba675SRob Herring	fsmc: flash@40000000 {
654*724ba675SRob Herring		compatible = "stericsson,fsmc-nand";
655*724ba675SRob Herring		#address-cells = <1>;
656*724ba675SRob Herring		#size-cells = <1>;
657*724ba675SRob Herring		reg = <0x10100000 0x1000>,	/* FSMC Register*/
658*724ba675SRob Herring			<0x40000000 0x2000>,	/* NAND Base DATA */
659*724ba675SRob Herring			<0x41000000 0x2000>,	/* NAND Base ADDR */
660*724ba675SRob Herring			<0x40800000 0x2000>;	/* NAND Base CMD */
661*724ba675SRob Herring		reg-names = "fsmc_regs", "nand_data", "nand_addr", "nand_cmd";
662*724ba675SRob Herring		clocks = <&hclksmc>;
663*724ba675SRob Herring		status = "okay";
664*724ba675SRob Herring
665*724ba675SRob Herring		partition@0 {
666*724ba675SRob Herring		label = "X-Loader(NAND)";
667*724ba675SRob Herring			reg = <0x0 0x40000>;
668*724ba675SRob Herring		};
669*724ba675SRob Herring		partition@40000 {
670*724ba675SRob Herring			label = "MemInit(NAND)";
671*724ba675SRob Herring			reg = <0x40000 0x40000>;
672*724ba675SRob Herring		};
673*724ba675SRob Herring		partition@80000 {
674*724ba675SRob Herring			label = "BootLoader(NAND)";
675*724ba675SRob Herring			reg = <0x80000 0x200000>;
676*724ba675SRob Herring		};
677*724ba675SRob Herring		partition@280000 {
678*724ba675SRob Herring			label = "Kernel zImage(NAND)";
679*724ba675SRob Herring			reg = <0x280000 0x300000>;
680*724ba675SRob Herring		};
681*724ba675SRob Herring		partition@580000 {
682*724ba675SRob Herring			label = "Root Filesystem(NAND)";
683*724ba675SRob Herring			reg = <0x580000 0x1600000>;
684*724ba675SRob Herring		};
685*724ba675SRob Herring		partition@1b80000 {
686*724ba675SRob Herring			label = "User Filesystem(NAND)";
687*724ba675SRob Herring			reg = <0x1b80000 0x6480000>;
688*724ba675SRob Herring		};
689*724ba675SRob Herring	};
690*724ba675SRob Herring
691*724ba675SRob Herring	/* I2C0 connected to the STw4811 power management chip */
692*724ba675SRob Herring	i2c0 {
693*724ba675SRob Herring		compatible = "st,nomadik-i2c", "arm,primecell";
694*724ba675SRob Herring		reg = <0x101f8000 0x1000>;
695*724ba675SRob Herring		interrupt-parent = <&vica>;
696*724ba675SRob Herring		interrupts = <20>;
697*724ba675SRob Herring		clock-frequency = <100000>;
698*724ba675SRob Herring		#address-cells = <1>;
699*724ba675SRob Herring		#size-cells = <0>;
700*724ba675SRob Herring		clocks = <&i2c0clk>, <&pclki2c0>;
701*724ba675SRob Herring		clock-names = "mclk", "apb_pclk";
702*724ba675SRob Herring		pinctrl-names = "default";
703*724ba675SRob Herring		pinctrl-0 = <&i2c0_default_mux>, <&i2c0_default_mode>;
704*724ba675SRob Herring
705*724ba675SRob Herring		stw4811@2d {
706*724ba675SRob Herring			compatible = "st,stw4811";
707*724ba675SRob Herring			reg = <0x2d>;
708*724ba675SRob Herring			vmmc_regulator: vmmc {
709*724ba675SRob Herring				compatible = "st,stw481x-vmmc";
710*724ba675SRob Herring				regulator-name = "VMMC";
711*724ba675SRob Herring				regulator-min-microvolt = <1800000>;
712*724ba675SRob Herring				regulator-max-microvolt = <3300000>;
713*724ba675SRob Herring			};
714*724ba675SRob Herring		};
715*724ba675SRob Herring	};
716*724ba675SRob Herring
717*724ba675SRob Herring	/* I2C1 connected to various sensors */
718*724ba675SRob Herring	i2c1 {
719*724ba675SRob Herring		compatible = "st,nomadik-i2c", "arm,primecell";
720*724ba675SRob Herring		reg = <0x101f7000 0x1000>;
721*724ba675SRob Herring		interrupt-parent = <&vica>;
722*724ba675SRob Herring		interrupts = <21>;
723*724ba675SRob Herring		clock-frequency = <100000>;
724*724ba675SRob Herring		#address-cells = <1>;
725*724ba675SRob Herring		#size-cells = <0>;
726*724ba675SRob Herring		clocks = <&i2c1clk>, <&pclki2c1>;
727*724ba675SRob Herring		clock-names = "mclk", "apb_pclk";
728*724ba675SRob Herring		pinctrl-names = "default";
729*724ba675SRob Herring		pinctrl-0 = <&i2c1_default_mux>, <&i2c1_default_mode>;
730*724ba675SRob Herring
731*724ba675SRob Herring		camera@2d {
732*724ba675SRob Herring			   compatible = "st,camera";
733*724ba675SRob Herring			   reg = <0x10>;
734*724ba675SRob Herring		};
735*724ba675SRob Herring		stw5095@1a {
736*724ba675SRob Herring			   compatible = "st,stw5095";
737*724ba675SRob Herring			   reg = <0x1a>;
738*724ba675SRob Herring		};
739*724ba675SRob Herring	};
740*724ba675SRob Herring
741*724ba675SRob Herring	amba {
742*724ba675SRob Herring		compatible = "simple-bus";
743*724ba675SRob Herring		#address-cells = <1>;
744*724ba675SRob Herring		#size-cells = <1>;
745*724ba675SRob Herring		ranges;
746*724ba675SRob Herring
747*724ba675SRob Herring		clcd@10120000 {
748*724ba675SRob Herring			compatible = "arm,pl110", "arm,primecell";
749*724ba675SRob Herring			reg = <0x10120000 0x1000>;
750*724ba675SRob Herring			interrupt-names = "combined";
751*724ba675SRob Herring			interrupts = <14>;
752*724ba675SRob Herring			interrupt-parent = <&vica>;
753*724ba675SRob Herring			clocks = <&clcdclk>, <&hclkclcd>;
754*724ba675SRob Herring			clock-names = "clcdclk", "apb_pclk";
755*724ba675SRob Herring			status = "disabled";
756*724ba675SRob Herring		};
757*724ba675SRob Herring
758*724ba675SRob Herring		vica: interrupt-controller@10140000 {
759*724ba675SRob Herring			compatible = "arm,versatile-vic";
760*724ba675SRob Herring			interrupt-controller;
761*724ba675SRob Herring			#interrupt-cells = <1>;
762*724ba675SRob Herring			reg = <0x10140000 0x20>;
763*724ba675SRob Herring		};
764*724ba675SRob Herring
765*724ba675SRob Herring		vicb: interrupt-controller@10140020 {
766*724ba675SRob Herring			compatible = "arm,versatile-vic";
767*724ba675SRob Herring			interrupt-controller;
768*724ba675SRob Herring			#interrupt-cells = <1>;
769*724ba675SRob Herring			reg = <0x10140020 0x20>;
770*724ba675SRob Herring		};
771*724ba675SRob Herring
772*724ba675SRob Herring		uart0: serial@101fd000 {
773*724ba675SRob Herring			compatible = "arm,pl011", "arm,primecell";
774*724ba675SRob Herring			reg = <0x101fd000 0x1000>;
775*724ba675SRob Herring			interrupt-parent = <&vica>;
776*724ba675SRob Herring			interrupts = <12>;
777*724ba675SRob Herring			clocks = <&uart0clk>, <&pclkuart0>;
778*724ba675SRob Herring			clock-names = "uartclk", "apb_pclk";
779*724ba675SRob Herring			status = "disabled";
780*724ba675SRob Herring			dmas = <&dmac0 14 1>,
781*724ba675SRob Herring			       <&dmac0 15 1>;
782*724ba675SRob Herring			dma-names = "rx", "tx";
783*724ba675SRob Herring		};
784*724ba675SRob Herring
785*724ba675SRob Herring		uart1: serial@101fb000 {
786*724ba675SRob Herring			compatible = "arm,pl011", "arm,primecell";
787*724ba675SRob Herring			reg = <0x101fb000 0x1000>;
788*724ba675SRob Herring			interrupt-parent = <&vica>;
789*724ba675SRob Herring			interrupts = <17>;
790*724ba675SRob Herring			clocks = <&uart1clk>, <&pclkuart1>;
791*724ba675SRob Herring			clock-names = "uartclk", "apb_pclk";
792*724ba675SRob Herring			pinctrl-names = "default";
793*724ba675SRob Herring			pinctrl-0 = <&uart1_default_mux>;
794*724ba675SRob Herring			dmas = <&dmac1 22 1>,
795*724ba675SRob Herring			       <&dmac1 23 1>;
796*724ba675SRob Herring			dma-names = "rx", "tx";
797*724ba675SRob Herring		};
798*724ba675SRob Herring
799*724ba675SRob Herring		uart2: serial@101f2000 {
800*724ba675SRob Herring			compatible = "arm,pl011", "arm,primecell";
801*724ba675SRob Herring			reg = <0x101f2000 0x1000>;
802*724ba675SRob Herring			interrupt-parent = <&vica>;
803*724ba675SRob Herring			interrupts = <28>;
804*724ba675SRob Herring			clocks = <&uart2clk>, <&pclkuart2>;
805*724ba675SRob Herring			clock-names = "uartclk", "apb_pclk";
806*724ba675SRob Herring			status = "disabled";
807*724ba675SRob Herring			dmas = <&dmac1 30 1>,
808*724ba675SRob Herring			       <&dmac1 31 1>;
809*724ba675SRob Herring			dma-names = "rx", "tx";
810*724ba675SRob Herring		};
811*724ba675SRob Herring
812*724ba675SRob Herring		rng: rng@101b0000 {
813*724ba675SRob Herring			compatible = "arm,primecell";
814*724ba675SRob Herring			reg = <0x101b0000 0x1000>;
815*724ba675SRob Herring			clocks = <&rngcclk>, <&hclkrng>;
816*724ba675SRob Herring			clock-names = "rng", "apb_pclk";
817*724ba675SRob Herring		};
818*724ba675SRob Herring
819*724ba675SRob Herring		rtc: rtc@101e8000 {
820*724ba675SRob Herring			compatible = "arm,pl031", "arm,primecell";
821*724ba675SRob Herring			reg = <0x101e8000 0x1000>;
822*724ba675SRob Herring			clocks = <&pclk>;
823*724ba675SRob Herring			clock-names = "apb_pclk";
824*724ba675SRob Herring			interrupt-parent = <&vica>;
825*724ba675SRob Herring			interrupts = <10>;
826*724ba675SRob Herring		};
827*724ba675SRob Herring
828*724ba675SRob Herring		mmcsd: mmc@101f6000 {
829*724ba675SRob Herring			compatible = "arm,pl18x", "arm,primecell";
830*724ba675SRob Herring			reg = <0x101f6000 0x1000>;
831*724ba675SRob Herring			clocks = <&sdiclk>, <&pclksdi>;
832*724ba675SRob Herring			clock-names = "mclk", "apb_pclk";
833*724ba675SRob Herring			interrupt-parent = <&vica>;
834*724ba675SRob Herring			interrupts = <22>;
835*724ba675SRob Herring			max-frequency = <400000>;
836*724ba675SRob Herring			bus-width = <4>;
837*724ba675SRob Herring			cap-mmc-highspeed;
838*724ba675SRob Herring			cap-sd-highspeed;
839*724ba675SRob Herring			full-pwr-cycle;
840*724ba675SRob Herring			/*
841*724ba675SRob Herring			 * The STw4811 circuit used with the Nomadik strictly
842*724ba675SRob Herring			 * requires that all of these signal direction pins be
843*724ba675SRob Herring			 * routed and used for its 4-bit levelshifter.
844*724ba675SRob Herring			 */
845*724ba675SRob Herring			st,sig-dir-dat0;
846*724ba675SRob Herring			st,sig-dir-dat2;
847*724ba675SRob Herring			st,sig-dir-dat31;
848*724ba675SRob Herring			st,sig-dir-cmd;
849*724ba675SRob Herring			st,sig-pin-fbclk;
850*724ba675SRob Herring			pinctrl-names = "default";
851*724ba675SRob Herring			pinctrl-0 = <&mmcsd_default_mux>, <&mmcsd_default_mode>;
852*724ba675SRob Herring			vmmc-supply = <&vmmc_regulator>;
853*724ba675SRob Herring		};
854*724ba675SRob Herring
855*724ba675SRob Herring		dmac0: dma-controller@10130000 {
856*724ba675SRob Herring			compatible = "arm,pl080", "arm,primecell";
857*724ba675SRob Herring			reg = <0x10130000 0x1000>;
858*724ba675SRob Herring			interrupt-parent = <&vica>;
859*724ba675SRob Herring			interrupts = <15>;
860*724ba675SRob Herring			clocks = <&hclkdma0>;
861*724ba675SRob Herring			clock-names = "apb_pclk";
862*724ba675SRob Herring			lli-bus-interface-ahb1;
863*724ba675SRob Herring			lli-bus-interface-ahb2;
864*724ba675SRob Herring			mem-bus-interface-ahb2;
865*724ba675SRob Herring			memcpy-burst-size = <256>;
866*724ba675SRob Herring			memcpy-bus-width = <32>;
867*724ba675SRob Herring			#dma-cells = <2>;
868*724ba675SRob Herring		};
869*724ba675SRob Herring		dmac1: dma-controller@10150000 {
870*724ba675SRob Herring			compatible = "arm,pl080", "arm,primecell";
871*724ba675SRob Herring			reg = <0x10150000 0x1000>;
872*724ba675SRob Herring			interrupt-parent = <&vica>;
873*724ba675SRob Herring			interrupts = <13>;
874*724ba675SRob Herring			clocks = <&hclkdma1>;
875*724ba675SRob Herring			clock-names = "apb_pclk";
876*724ba675SRob Herring			lli-bus-interface-ahb1;
877*724ba675SRob Herring			lli-bus-interface-ahb2;
878*724ba675SRob Herring			mem-bus-interface-ahb2;
879*724ba675SRob Herring			memcpy-burst-size = <256>;
880*724ba675SRob Herring			memcpy-bus-width = <32>;
881*724ba675SRob Herring			#dma-cells = <2>;
882*724ba675SRob Herring		};
883*724ba675SRob Herring	};
884*724ba675SRob Herring};
885