1*c66ec88fSEmmanuel Vadot/*
2*c66ec88fSEmmanuel Vadot * Device Tree Source for FSP2
3*c66ec88fSEmmanuel Vadot *
4*c66ec88fSEmmanuel Vadot * Copyright 2010,2012 IBM Corp.
5*c66ec88fSEmmanuel Vadot *
6*c66ec88fSEmmanuel Vadot * This file is licensed under the terms of the GNU General Public
7*c66ec88fSEmmanuel Vadot * License version 2.  This program is licensed "as is" without
8*c66ec88fSEmmanuel Vadot * any warranty of any kind, whether express or implied.
9*c66ec88fSEmmanuel Vadot */
10*c66ec88fSEmmanuel Vadot
11*c66ec88fSEmmanuel Vadot
12*c66ec88fSEmmanuel Vadot/dts-v1/;
13*c66ec88fSEmmanuel Vadot
14*c66ec88fSEmmanuel Vadot/ {
15*c66ec88fSEmmanuel Vadot	#address-cells = <2>;
16*c66ec88fSEmmanuel Vadot	#size-cells = <1>;
17*c66ec88fSEmmanuel Vadot	model = "ibm,fsp2";
18*c66ec88fSEmmanuel Vadot	compatible = "ibm,fsp2";
19*c66ec88fSEmmanuel Vadot	dcr-parent = <&{/cpus/cpu@0}>;
20*c66ec88fSEmmanuel Vadot
21*c66ec88fSEmmanuel Vadot	aliases {
22*c66ec88fSEmmanuel Vadot		ethernet0 = &EMAC0;
23*c66ec88fSEmmanuel Vadot		ethernet1 = &EMAC1;
24*c66ec88fSEmmanuel Vadot		serial0 = &UART0;
25*c66ec88fSEmmanuel Vadot	};
26*c66ec88fSEmmanuel Vadot
27*c66ec88fSEmmanuel Vadot	cpus {
28*c66ec88fSEmmanuel Vadot		#address-cells = <1>;
29*c66ec88fSEmmanuel Vadot		#size-cells = <0>;
30*c66ec88fSEmmanuel Vadot
31*c66ec88fSEmmanuel Vadot		cpu@0 {
32*c66ec88fSEmmanuel Vadot			device_type = "cpu";
33*c66ec88fSEmmanuel Vadot			model = "PowerPC, 476FSP2";
34*c66ec88fSEmmanuel Vadot			reg = <0x0>;
35*c66ec88fSEmmanuel Vadot			clock-frequency = <0>;    /* Filled in by cuboot */
36*c66ec88fSEmmanuel Vadot			timebase-frequency = <0>; /* Filled in by cuboot */
37*c66ec88fSEmmanuel Vadot			i-cache-line-size = <32>;
38*c66ec88fSEmmanuel Vadot			d-cache-line-size = <32>;
39*c66ec88fSEmmanuel Vadot			d-cache-size = <32768>;
40*c66ec88fSEmmanuel Vadot			i-cache-size = <32768>;
41*c66ec88fSEmmanuel Vadot			dcr-controller;
42*c66ec88fSEmmanuel Vadot			dcr-access-method = "native";
43*c66ec88fSEmmanuel Vadot		};
44*c66ec88fSEmmanuel Vadot	};
45*c66ec88fSEmmanuel Vadot
46*c66ec88fSEmmanuel Vadot	memory {
47*c66ec88fSEmmanuel Vadot		device_type = "memory";
48*c66ec88fSEmmanuel Vadot		reg = <0x00000000 0x00000000 0x00000000>; /* Filled in by
49*c66ec88fSEmmanuel Vadot							     cuboot */
50*c66ec88fSEmmanuel Vadot	};
51*c66ec88fSEmmanuel Vadot
52*c66ec88fSEmmanuel Vadot	clocks {
53*c66ec88fSEmmanuel Vadot		mmc_clk: mmc_clk {
54*c66ec88fSEmmanuel Vadot			compatible = "fixed-clock";
55*c66ec88fSEmmanuel Vadot			#clock-cells = <0>;
56*c66ec88fSEmmanuel Vadot			clock-frequency = <50000000>;
57*c66ec88fSEmmanuel Vadot			clock-output-names = "mmc_clk";
58*c66ec88fSEmmanuel Vadot		};
59*c66ec88fSEmmanuel Vadot	};
60*c66ec88fSEmmanuel Vadot
61*c66ec88fSEmmanuel Vadot	UIC0: uic0 {
62*c66ec88fSEmmanuel Vadot		#address-cells = <0>;
63*c66ec88fSEmmanuel Vadot		#size-cells = <0>;
64*c66ec88fSEmmanuel Vadot		#interrupt-cells = <2>;
65*c66ec88fSEmmanuel Vadot		compatible = "ibm,uic";
66*c66ec88fSEmmanuel Vadot		interrupt-controller;
67*c66ec88fSEmmanuel Vadot		cell-index = <0>;
68*c66ec88fSEmmanuel Vadot		dcr-reg = <0x2c0 0x8>;
69*c66ec88fSEmmanuel Vadot	};
70*c66ec88fSEmmanuel Vadot
71*c66ec88fSEmmanuel Vadot	/* "interrupts" field is <bit level bit level>
72*c66ec88fSEmmanuel Vadot	   first pair is non-critical, second is critical */
73*c66ec88fSEmmanuel Vadot	UIC1_0: uic1_0 {
74*c66ec88fSEmmanuel Vadot		#address-cells = <0>;
75*c66ec88fSEmmanuel Vadot		#size-cells = <0>;
76*c66ec88fSEmmanuel Vadot		#interrupt-cells = <2>;
77*c66ec88fSEmmanuel Vadot
78*c66ec88fSEmmanuel Vadot		compatible = "ibm,uic";
79*c66ec88fSEmmanuel Vadot		interrupt-controller;
80*c66ec88fSEmmanuel Vadot		cell-index = <1>;
81*c66ec88fSEmmanuel Vadot		dcr-reg = <0x2c8 0x8>;
82*c66ec88fSEmmanuel Vadot		interrupt-parent = <&UIC0>;
83*c66ec88fSEmmanuel Vadot		interrupts = <21 0x4 4 0x84>;
84*c66ec88fSEmmanuel Vadot	};
85*c66ec88fSEmmanuel Vadot
86*c66ec88fSEmmanuel Vadot	/* PSI and DMA */
87*c66ec88fSEmmanuel Vadot	UIC1_1: uic1_1 {
88*c66ec88fSEmmanuel Vadot		#address-cells = <0>;
89*c66ec88fSEmmanuel Vadot		#size-cells = <0>;
90*c66ec88fSEmmanuel Vadot		#interrupt-cells = <2>;
91*c66ec88fSEmmanuel Vadot
92*c66ec88fSEmmanuel Vadot		compatible = "ibm,uic";
93*c66ec88fSEmmanuel Vadot		interrupt-controller;
94*c66ec88fSEmmanuel Vadot		cell-index = <2>;
95*c66ec88fSEmmanuel Vadot		dcr-reg = <0x350 0x8>;
96*c66ec88fSEmmanuel Vadot		interrupt-parent = <&UIC0>;
97*c66ec88fSEmmanuel Vadot		interrupts = <22 0x4 5 0x84>;
98*c66ec88fSEmmanuel Vadot	};
99*c66ec88fSEmmanuel Vadot
100*c66ec88fSEmmanuel Vadot	/* Ethernet and USB */
101*c66ec88fSEmmanuel Vadot	UIC1_2: uic1_2 {
102*c66ec88fSEmmanuel Vadot		#address-cells = <0>;
103*c66ec88fSEmmanuel Vadot		#size-cells = <0>;
104*c66ec88fSEmmanuel Vadot		#interrupt-cells = <2>;
105*c66ec88fSEmmanuel Vadot
106*c66ec88fSEmmanuel Vadot		compatible = "ibm,uic";
107*c66ec88fSEmmanuel Vadot		interrupt-controller;
108*c66ec88fSEmmanuel Vadot		cell-index = <3>;
109*c66ec88fSEmmanuel Vadot		dcr-reg = <0x358 0x8>;
110*c66ec88fSEmmanuel Vadot		interrupt-parent = <&UIC0>;
111*c66ec88fSEmmanuel Vadot		interrupts = <23 0x4 6 0x84>;
112*c66ec88fSEmmanuel Vadot	};
113*c66ec88fSEmmanuel Vadot
114*c66ec88fSEmmanuel Vadot	/* PLB Errors */
115*c66ec88fSEmmanuel Vadot	UIC1_3: uic1_3 {
116*c66ec88fSEmmanuel Vadot		#address-cells = <0>;
117*c66ec88fSEmmanuel Vadot		#size-cells = <0>;
118*c66ec88fSEmmanuel Vadot		#interrupt-cells = <2>;
119*c66ec88fSEmmanuel Vadot
120*c66ec88fSEmmanuel Vadot		compatible = "ibm,uic";
121*c66ec88fSEmmanuel Vadot		interrupt-controller;
122*c66ec88fSEmmanuel Vadot		cell-index = <4>;
123*c66ec88fSEmmanuel Vadot		dcr-reg = <0x360 0x8>;
124*c66ec88fSEmmanuel Vadot		interrupt-parent = <&UIC0>;
125*c66ec88fSEmmanuel Vadot		interrupts = <24 0x4 7 0x84>;
126*c66ec88fSEmmanuel Vadot	};
127*c66ec88fSEmmanuel Vadot
128*c66ec88fSEmmanuel Vadot	UIC1_4: uic1_4 {
129*c66ec88fSEmmanuel Vadot		#address-cells = <0>;
130*c66ec88fSEmmanuel Vadot		#size-cells = <0>;
131*c66ec88fSEmmanuel Vadot		#interrupt-cells = <2>;
132*c66ec88fSEmmanuel Vadot
133*c66ec88fSEmmanuel Vadot		compatible = "ibm,uic";
134*c66ec88fSEmmanuel Vadot		interrupt-controller;
135*c66ec88fSEmmanuel Vadot		cell-index = <5>;
136*c66ec88fSEmmanuel Vadot		dcr-reg = <0x368 0x8>;
137*c66ec88fSEmmanuel Vadot		interrupt-parent = <&UIC0>;
138*c66ec88fSEmmanuel Vadot		interrupts = <25 0x4 8 0x84>;
139*c66ec88fSEmmanuel Vadot	};
140*c66ec88fSEmmanuel Vadot
141*c66ec88fSEmmanuel Vadot	UIC1_5: uic1_5 {
142*c66ec88fSEmmanuel Vadot		#address-cells = <0>;
143*c66ec88fSEmmanuel Vadot		#size-cells = <0>;
144*c66ec88fSEmmanuel Vadot		#interrupt-cells = <2>;
145*c66ec88fSEmmanuel Vadot
146*c66ec88fSEmmanuel Vadot		compatible = "ibm,uic";
147*c66ec88fSEmmanuel Vadot		interrupt-controller;
148*c66ec88fSEmmanuel Vadot		cell-index = <6>;
149*c66ec88fSEmmanuel Vadot		dcr-reg = <0x370 0x8>;
150*c66ec88fSEmmanuel Vadot		interrupt-parent = <&UIC0>;
151*c66ec88fSEmmanuel Vadot		interrupts = <26 0x4 9 0x84>;
152*c66ec88fSEmmanuel Vadot	};
153*c66ec88fSEmmanuel Vadot
154*c66ec88fSEmmanuel Vadot	/* 2nd level UICs for FSI */
155*c66ec88fSEmmanuel Vadot	UIC2_0: uic2_0 {
156*c66ec88fSEmmanuel Vadot		#address-cells = <0>;
157*c66ec88fSEmmanuel Vadot		#size-cells = <0>;
158*c66ec88fSEmmanuel Vadot		#interrupt-cells = <2>;
159*c66ec88fSEmmanuel Vadot
160*c66ec88fSEmmanuel Vadot		compatible = "ibm,uic";
161*c66ec88fSEmmanuel Vadot		interrupt-controller;
162*c66ec88fSEmmanuel Vadot		cell-index = <7>;
163*c66ec88fSEmmanuel Vadot		dcr-reg = <0x2d0 0x8>;
164*c66ec88fSEmmanuel Vadot		interrupt-parent = <&UIC1_0>;
165*c66ec88fSEmmanuel Vadot		interrupts = <16 0x4 0 0x84>;
166*c66ec88fSEmmanuel Vadot	};
167*c66ec88fSEmmanuel Vadot
168*c66ec88fSEmmanuel Vadot	UIC2_1: uic2_1 {
169*c66ec88fSEmmanuel Vadot		#address-cells = <0>;
170*c66ec88fSEmmanuel Vadot		#size-cells = <0>;
171*c66ec88fSEmmanuel Vadot		#interrupt-cells = <2>;
172*c66ec88fSEmmanuel Vadot
173*c66ec88fSEmmanuel Vadot		compatible = "ibm,uic";
174*c66ec88fSEmmanuel Vadot		interrupt-controller;
175*c66ec88fSEmmanuel Vadot		cell-index = <8>;
176*c66ec88fSEmmanuel Vadot		dcr-reg = <0x2d8 0x8>;
177*c66ec88fSEmmanuel Vadot		interrupt-parent = <&UIC1_0>;
178*c66ec88fSEmmanuel Vadot		interrupts = <17 0x4 1 0x84>;
179*c66ec88fSEmmanuel Vadot	};
180*c66ec88fSEmmanuel Vadot
181*c66ec88fSEmmanuel Vadot	UIC2_2: uic2_2 {
182*c66ec88fSEmmanuel Vadot		#address-cells = <0>;
183*c66ec88fSEmmanuel Vadot		#size-cells = <0>;
184*c66ec88fSEmmanuel Vadot		#interrupt-cells = <2>;
185*c66ec88fSEmmanuel Vadot
186*c66ec88fSEmmanuel Vadot		compatible = "ibm,uic";
187*c66ec88fSEmmanuel Vadot		interrupt-controller;
188*c66ec88fSEmmanuel Vadot		cell-index = <9>;
189*c66ec88fSEmmanuel Vadot		dcr-reg = <0x2e0 0x8>;
190*c66ec88fSEmmanuel Vadot		interrupt-parent = <&UIC1_0>;
191*c66ec88fSEmmanuel Vadot		interrupts = <18 0x4 2 0x84>;
192*c66ec88fSEmmanuel Vadot	};
193*c66ec88fSEmmanuel Vadot
194*c66ec88fSEmmanuel Vadot	UIC2_3: uic2_3 {
195*c66ec88fSEmmanuel Vadot		#address-cells = <0>;
196*c66ec88fSEmmanuel Vadot		#size-cells = <0>;
197*c66ec88fSEmmanuel Vadot		#interrupt-cells = <2>;
198*c66ec88fSEmmanuel Vadot
199*c66ec88fSEmmanuel Vadot		compatible = "ibm,uic";
200*c66ec88fSEmmanuel Vadot		interrupt-controller;
201*c66ec88fSEmmanuel Vadot		cell-index = <10>;
202*c66ec88fSEmmanuel Vadot		dcr-reg = <0x2e8 0x8>;
203*c66ec88fSEmmanuel Vadot		interrupt-parent = <&UIC1_0>;
204*c66ec88fSEmmanuel Vadot		interrupts = <19 0x4 3 0x84>;
205*c66ec88fSEmmanuel Vadot	};
206*c66ec88fSEmmanuel Vadot
207*c66ec88fSEmmanuel Vadot	UIC2_4: uic2_4 {
208*c66ec88fSEmmanuel Vadot		#address-cells = <0>;
209*c66ec88fSEmmanuel Vadot		#size-cells = <0>;
210*c66ec88fSEmmanuel Vadot		#interrupt-cells = <2>;
211*c66ec88fSEmmanuel Vadot
212*c66ec88fSEmmanuel Vadot		compatible = "ibm,uic";
213*c66ec88fSEmmanuel Vadot		interrupt-controller;
214*c66ec88fSEmmanuel Vadot		cell-index = <11>;
215*c66ec88fSEmmanuel Vadot		dcr-reg = <0x2f0 0x8>;
216*c66ec88fSEmmanuel Vadot		interrupt-parent = <&UIC1_0>;
217*c66ec88fSEmmanuel Vadot		interrupts = <20 0x4 4 0x84>;
218*c66ec88fSEmmanuel Vadot	};
219*c66ec88fSEmmanuel Vadot
220*c66ec88fSEmmanuel Vadot	UIC2_5: uic2_5 {
221*c66ec88fSEmmanuel Vadot		#address-cells = <0>;
222*c66ec88fSEmmanuel Vadot		#size-cells = <0>;
223*c66ec88fSEmmanuel Vadot		#interrupt-cells = <2>;
224*c66ec88fSEmmanuel Vadot
225*c66ec88fSEmmanuel Vadot		compatible = "ibm,uic";
226*c66ec88fSEmmanuel Vadot		interrupt-controller;
227*c66ec88fSEmmanuel Vadot		cell-index = <12>;
228*c66ec88fSEmmanuel Vadot		dcr-reg = <0x2f8 0x8>;
229*c66ec88fSEmmanuel Vadot		interrupt-parent = <&UIC1_0>;
230*c66ec88fSEmmanuel Vadot		interrupts = <21 0x4 5 0x84>;
231*c66ec88fSEmmanuel Vadot	};
232*c66ec88fSEmmanuel Vadot
233*c66ec88fSEmmanuel Vadot	UIC2_6: uic2_6 {
234*c66ec88fSEmmanuel Vadot		#address-cells = <0>;
235*c66ec88fSEmmanuel Vadot		#size-cells = <0>;
236*c66ec88fSEmmanuel Vadot		#interrupt-cells = <2>;
237*c66ec88fSEmmanuel Vadot
238*c66ec88fSEmmanuel Vadot		compatible = "ibm,uic";
239*c66ec88fSEmmanuel Vadot		interrupt-controller;
240*c66ec88fSEmmanuel Vadot		cell-index = <13>;
241*c66ec88fSEmmanuel Vadot		dcr-reg = <0x300 0x8>;
242*c66ec88fSEmmanuel Vadot		interrupt-parent = <&UIC1_0>;
243*c66ec88fSEmmanuel Vadot		interrupts = <22 0x4 6 0x84>;
244*c66ec88fSEmmanuel Vadot	};
245*c66ec88fSEmmanuel Vadot
246*c66ec88fSEmmanuel Vadot	UIC2_7: uic2_7 {
247*c66ec88fSEmmanuel Vadot		#address-cells = <0>;
248*c66ec88fSEmmanuel Vadot		#size-cells = <0>;
249*c66ec88fSEmmanuel Vadot		#interrupt-cells = <2>;
250*c66ec88fSEmmanuel Vadot
251*c66ec88fSEmmanuel Vadot		compatible = "ibm,uic";
252*c66ec88fSEmmanuel Vadot		interrupt-controller;
253*c66ec88fSEmmanuel Vadot		cell-index = <14>;
254*c66ec88fSEmmanuel Vadot		dcr-reg = <0x308 0x8>;
255*c66ec88fSEmmanuel Vadot		interrupt-parent = <&UIC1_0>;
256*c66ec88fSEmmanuel Vadot		interrupts = <23 0x4 7 0x84>;
257*c66ec88fSEmmanuel Vadot	};
258*c66ec88fSEmmanuel Vadot
259*c66ec88fSEmmanuel Vadot	UIC2_8: uic2_8 {
260*c66ec88fSEmmanuel Vadot		#address-cells = <0>;
261*c66ec88fSEmmanuel Vadot		#size-cells = <0>;
262*c66ec88fSEmmanuel Vadot		#interrupt-cells = <2>;
263*c66ec88fSEmmanuel Vadot
264*c66ec88fSEmmanuel Vadot		compatible = "ibm,uic";
265*c66ec88fSEmmanuel Vadot		interrupt-controller;
266*c66ec88fSEmmanuel Vadot		cell-index = <15>;
267*c66ec88fSEmmanuel Vadot		dcr-reg = <0x310 0x8>;
268*c66ec88fSEmmanuel Vadot		interrupt-parent = <&UIC1_0>;
269*c66ec88fSEmmanuel Vadot		interrupts = <24 0x4 8 0x84>;
270*c66ec88fSEmmanuel Vadot	};
271*c66ec88fSEmmanuel Vadot
272*c66ec88fSEmmanuel Vadot	UIC2_9: uic2_9 {
273*c66ec88fSEmmanuel Vadot		#address-cells = <0>;
274*c66ec88fSEmmanuel Vadot		#size-cells = <0>;
275*c66ec88fSEmmanuel Vadot		#interrupt-cells = <2>;
276*c66ec88fSEmmanuel Vadot
277*c66ec88fSEmmanuel Vadot		compatible = "ibm,uic";
278*c66ec88fSEmmanuel Vadot		interrupt-controller;
279*c66ec88fSEmmanuel Vadot		cell-index = <16>;
280*c66ec88fSEmmanuel Vadot		dcr-reg = <0x318 0x8>;
281*c66ec88fSEmmanuel Vadot		interrupt-parent = <&UIC1_0>;
282*c66ec88fSEmmanuel Vadot		interrupts = <25 0x4 9 0x84>;
283*c66ec88fSEmmanuel Vadot	};
284*c66ec88fSEmmanuel Vadot
285*c66ec88fSEmmanuel Vadot	UIC2_10: uic2_10 {
286*c66ec88fSEmmanuel Vadot		#address-cells = <0>;
287*c66ec88fSEmmanuel Vadot		#size-cells = <0>;
288*c66ec88fSEmmanuel Vadot		#interrupt-cells = <2>;
289*c66ec88fSEmmanuel Vadot
290*c66ec88fSEmmanuel Vadot		compatible = "ibm,uic";
291*c66ec88fSEmmanuel Vadot		interrupt-controller;
292*c66ec88fSEmmanuel Vadot		cell-index = <17>;
293*c66ec88fSEmmanuel Vadot		dcr-reg = <0x320 0x8>;
294*c66ec88fSEmmanuel Vadot		interrupt-parent = <&UIC1_0>;
295*c66ec88fSEmmanuel Vadot		interrupts = <26 0x4 10 0x84>;
296*c66ec88fSEmmanuel Vadot	};
297*c66ec88fSEmmanuel Vadot
298*c66ec88fSEmmanuel Vadot	UIC2_11: uic2_11 {
299*c66ec88fSEmmanuel Vadot		#address-cells = <0>;
300*c66ec88fSEmmanuel Vadot		#size-cells = <0>;
301*c66ec88fSEmmanuel Vadot		#interrupt-cells = <2>;
302*c66ec88fSEmmanuel Vadot
303*c66ec88fSEmmanuel Vadot		compatible = "ibm,uic";
304*c66ec88fSEmmanuel Vadot		interrupt-controller;
305*c66ec88fSEmmanuel Vadot		cell-index = <18>;
306*c66ec88fSEmmanuel Vadot		dcr-reg = <0x328 0x8>;
307*c66ec88fSEmmanuel Vadot		interrupt-parent = <&UIC1_0>;
308*c66ec88fSEmmanuel Vadot		interrupts = <27 0x4 11 0x84>;
309*c66ec88fSEmmanuel Vadot	};
310*c66ec88fSEmmanuel Vadot
311*c66ec88fSEmmanuel Vadot	UIC2_12: uic2_12 {
312*c66ec88fSEmmanuel Vadot		#address-cells = <0>;
313*c66ec88fSEmmanuel Vadot		#size-cells = <0>;
314*c66ec88fSEmmanuel Vadot		#interrupt-cells = <2>;
315*c66ec88fSEmmanuel Vadot
316*c66ec88fSEmmanuel Vadot		compatible = "ibm,uic";
317*c66ec88fSEmmanuel Vadot		interrupt-controller;
318*c66ec88fSEmmanuel Vadot		cell-index = <19>;
319*c66ec88fSEmmanuel Vadot		dcr-reg = <0x330 0x8>;
320*c66ec88fSEmmanuel Vadot		interrupt-parent = <&UIC1_0>;
321*c66ec88fSEmmanuel Vadot		interrupts = <28 0x4 12 0x84>;
322*c66ec88fSEmmanuel Vadot	};
323*c66ec88fSEmmanuel Vadot
324*c66ec88fSEmmanuel Vadot	UIC2_13: uic2_13 {
325*c66ec88fSEmmanuel Vadot		#address-cells = <0>;
326*c66ec88fSEmmanuel Vadot		#size-cells = <0>;
327*c66ec88fSEmmanuel Vadot		#interrupt-cells = <2>;
328*c66ec88fSEmmanuel Vadot
329*c66ec88fSEmmanuel Vadot		compatible = "ibm,uic";
330*c66ec88fSEmmanuel Vadot		interrupt-controller;
331*c66ec88fSEmmanuel Vadot		cell-index = <20>;
332*c66ec88fSEmmanuel Vadot		dcr-reg = <0x338 0x8>;
333*c66ec88fSEmmanuel Vadot		interrupt-parent = <&UIC1_0>;
334*c66ec88fSEmmanuel Vadot		interrupts = <29 0x4 13 0x84>;
335*c66ec88fSEmmanuel Vadot	};
336*c66ec88fSEmmanuel Vadot
337*c66ec88fSEmmanuel Vadot	UIC2_14: uic2_14 {
338*c66ec88fSEmmanuel Vadot		#address-cells = <0>;
339*c66ec88fSEmmanuel Vadot		#size-cells = <0>;
340*c66ec88fSEmmanuel Vadot		#interrupt-cells = <2>;
341*c66ec88fSEmmanuel Vadot
342*c66ec88fSEmmanuel Vadot		compatible = "ibm,uic";
343*c66ec88fSEmmanuel Vadot		interrupt-controller;
344*c66ec88fSEmmanuel Vadot		cell-index = <21>;
345*c66ec88fSEmmanuel Vadot		dcr-reg = <0x340 0x8>;
346*c66ec88fSEmmanuel Vadot		interrupt-parent = <&UIC1_0>;
347*c66ec88fSEmmanuel Vadot		interrupts = <30 0x4 14 0x84>;
348*c66ec88fSEmmanuel Vadot	};
349*c66ec88fSEmmanuel Vadot
350*c66ec88fSEmmanuel Vadot	UIC2_15: uic2_15 {
351*c66ec88fSEmmanuel Vadot		#address-cells = <0>;
352*c66ec88fSEmmanuel Vadot		#size-cells = <0>;
353*c66ec88fSEmmanuel Vadot		#interrupt-cells = <2>;
354*c66ec88fSEmmanuel Vadot
355*c66ec88fSEmmanuel Vadot		compatible = "ibm,uic";
356*c66ec88fSEmmanuel Vadot		interrupt-controller;
357*c66ec88fSEmmanuel Vadot		cell-index = <22>;
358*c66ec88fSEmmanuel Vadot		dcr-reg = <0x348 0x8>;
359*c66ec88fSEmmanuel Vadot		interrupt-parent = <&UIC1_0>;
360*c66ec88fSEmmanuel Vadot		interrupts = <31 0x4 15 0x84>;
361*c66ec88fSEmmanuel Vadot	};
362*c66ec88fSEmmanuel Vadot
363*c66ec88fSEmmanuel Vadot	plb6 {
364*c66ec88fSEmmanuel Vadot		compatible = "ibm,plb6";
365*c66ec88fSEmmanuel Vadot		#address-cells = <2>;
366*c66ec88fSEmmanuel Vadot		#size-cells = <1>;
367*c66ec88fSEmmanuel Vadot		ranges;
368*c66ec88fSEmmanuel Vadot
369*c66ec88fSEmmanuel Vadot		MCW0: memory-controller-wrapper {
370*c66ec88fSEmmanuel Vadot			compatible = "ibm,cw-476fsp2";
371*c66ec88fSEmmanuel Vadot			dcr-reg = <0x11111800 0x40>;
372*c66ec88fSEmmanuel Vadot		};
373*c66ec88fSEmmanuel Vadot
374*c66ec88fSEmmanuel Vadot		MCIF0: memory-controller {
375*c66ec88fSEmmanuel Vadot			compatible = "ibm,sdram-476fsp2", "ibm,sdram-4xx-ddr3";
376*c66ec88fSEmmanuel Vadot			dcr-reg = <0x11120000 0x10000>;
377*c66ec88fSEmmanuel Vadot			mcer-device = <&MCW0>;
378*c66ec88fSEmmanuel Vadot			interrupt-parent = <&UIC0>;
379*c66ec88fSEmmanuel Vadot			interrupts = <10 0x84   /* ECC UE */
380*c66ec88fSEmmanuel Vadot				      11 0x84>; /* ECC CE */
381*c66ec88fSEmmanuel Vadot		};
382*c66ec88fSEmmanuel Vadot	};
383*c66ec88fSEmmanuel Vadot
384*c66ec88fSEmmanuel Vadot	plb4 {
385*c66ec88fSEmmanuel Vadot		compatible = "ibm,plb4";
386*c66ec88fSEmmanuel Vadot		#address-cells = <1>;
387*c66ec88fSEmmanuel Vadot		#size-cells = <1>;
388*c66ec88fSEmmanuel Vadot		ranges = <0x00000000 0x00000010 0x00000000 0x80000000
389*c66ec88fSEmmanuel Vadot			  0x80000000 0x00000010 0x80000000 0x80000000>;
390*c66ec88fSEmmanuel Vadot		clock-frequency = <333333334>;
391*c66ec88fSEmmanuel Vadot
392*c66ec88fSEmmanuel Vadot		plb6-system-hung-irq {
393*c66ec88fSEmmanuel Vadot			compatible = "ibm,bus-error-irq";
394*c66ec88fSEmmanuel Vadot			#interrupt-cells = <2>;
395*c66ec88fSEmmanuel Vadot			interrupt-parent = <&UIC0>;
396*c66ec88fSEmmanuel Vadot			interrupts = <0 0x84>;
397*c66ec88fSEmmanuel Vadot		};
398*c66ec88fSEmmanuel Vadot
399*c66ec88fSEmmanuel Vadot		l2-error-irq {
400*c66ec88fSEmmanuel Vadot			compatible = "ibm,bus-error-irq";
401*c66ec88fSEmmanuel Vadot			#interrupt-cells = <2>;
402*c66ec88fSEmmanuel Vadot			interrupt-parent = <&UIC0>;
403*c66ec88fSEmmanuel Vadot			interrupts = <20 0x84>;
404*c66ec88fSEmmanuel Vadot		};
405*c66ec88fSEmmanuel Vadot
406*c66ec88fSEmmanuel Vadot		plb6-plb4-irq {
407*c66ec88fSEmmanuel Vadot			compatible = "ibm,bus-error-irq";
408*c66ec88fSEmmanuel Vadot			#interrupt-cells = <2>;
409*c66ec88fSEmmanuel Vadot			interrupt-parent = <&UIC0>;
410*c66ec88fSEmmanuel Vadot			interrupts = <1 0x84>;
411*c66ec88fSEmmanuel Vadot		};
412*c66ec88fSEmmanuel Vadot
413*c66ec88fSEmmanuel Vadot		plb4-ahb-irq {
414*c66ec88fSEmmanuel Vadot			compatible = "ibm,bus-error-irq";
415*c66ec88fSEmmanuel Vadot			#interrupt-cells = <2>;
416*c66ec88fSEmmanuel Vadot			interrupt-parent = <&UIC1_3>;
417*c66ec88fSEmmanuel Vadot			interrupts = <20 0x84>;
418*c66ec88fSEmmanuel Vadot		};
419*c66ec88fSEmmanuel Vadot
420*c66ec88fSEmmanuel Vadot		opbd-error-irq {
421*c66ec88fSEmmanuel Vadot			compatible = "ibm,opbd-error-irq";
422*c66ec88fSEmmanuel Vadot			#interrupt-cells = <2>;
423*c66ec88fSEmmanuel Vadot			interrupt-parent = <&UIC1_4>;
424*c66ec88fSEmmanuel Vadot			interrupts = <5 0x84>;
425*c66ec88fSEmmanuel Vadot		};
426*c66ec88fSEmmanuel Vadot
427*c66ec88fSEmmanuel Vadot		cmu-error-irq {
428*c66ec88fSEmmanuel Vadot			compatible = "ibm,cmu-error-irq";
429*c66ec88fSEmmanuel Vadot			#interrupt-cells = <2>;
430*c66ec88fSEmmanuel Vadot			interrupt-parent = <&UIC0>;
431*c66ec88fSEmmanuel Vadot			interrupts = <28 0x84>;
432*c66ec88fSEmmanuel Vadot		};
433*c66ec88fSEmmanuel Vadot
434*c66ec88fSEmmanuel Vadot		conf-error-irq {
435*c66ec88fSEmmanuel Vadot			compatible = "ibm,conf-error-irq";
436*c66ec88fSEmmanuel Vadot			#interrupt-cells = <2>;
437*c66ec88fSEmmanuel Vadot			interrupt-parent = <&UIC1_4>;
438*c66ec88fSEmmanuel Vadot			interrupts = <11 0x84>;
439*c66ec88fSEmmanuel Vadot		};
440*c66ec88fSEmmanuel Vadot
441*c66ec88fSEmmanuel Vadot		mc-ue-irq {
442*c66ec88fSEmmanuel Vadot			compatible = "ibm,mc-ue-irq";
443*c66ec88fSEmmanuel Vadot			#interrupt-cells = <2>;
444*c66ec88fSEmmanuel Vadot			interrupt-parent = <&UIC0>;
445*c66ec88fSEmmanuel Vadot			interrupts = <10 0x84>;
446*c66ec88fSEmmanuel Vadot		};
447*c66ec88fSEmmanuel Vadot
448*c66ec88fSEmmanuel Vadot		reset-warning-irq {
449*c66ec88fSEmmanuel Vadot			compatible = "ibm,reset-warning-irq";
450*c66ec88fSEmmanuel Vadot			#interrupt-cells = <2>;
451*c66ec88fSEmmanuel Vadot			interrupt-parent = <&UIC0>;
452*c66ec88fSEmmanuel Vadot			interrupts = <17 0x84>;
453*c66ec88fSEmmanuel Vadot		};
454*c66ec88fSEmmanuel Vadot
455*c66ec88fSEmmanuel Vadot		MAL0: mcmal0 {
456*c66ec88fSEmmanuel Vadot			#interrupt-cells = <1>;
457*c66ec88fSEmmanuel Vadot			#address-cells = <0>;
458*c66ec88fSEmmanuel Vadot			#size-cells = <0>;
459*c66ec88fSEmmanuel Vadot			compatible = "ibm,mcmal";
460*c66ec88fSEmmanuel Vadot			dcr-reg = <0x80 0x80>;
461*c66ec88fSEmmanuel Vadot			num-tx-chans = <1>;
462*c66ec88fSEmmanuel Vadot			num-rx-chans = <1>;
463*c66ec88fSEmmanuel Vadot			interrupt-parent = <&MAL0>;
464*c66ec88fSEmmanuel Vadot			interrupts = <0 1 2 3 4>;
465*c66ec88fSEmmanuel Vadot			/* index interrupt-parent interrupt# type */
466*c66ec88fSEmmanuel Vadot			interrupt-map = </*TXEOB*/ 0 &UIC1_2 4 0x4
467*c66ec88fSEmmanuel Vadot					 /*RXEOB*/ 1 &UIC1_2 3 0x4
468*c66ec88fSEmmanuel Vadot					 /*SERR*/  2 &UIC1_2 7 0x4
469*c66ec88fSEmmanuel Vadot					 /*TXDE*/  3 &UIC1_2 6 0x4
470*c66ec88fSEmmanuel Vadot					 /*RXDE*/  4 &UIC1_2 5 0x4>;
471*c66ec88fSEmmanuel Vadot		};
472*c66ec88fSEmmanuel Vadot
473*c66ec88fSEmmanuel Vadot		MAL1: mcmal1 {
474*c66ec88fSEmmanuel Vadot			#interrupt-cells = <1>;
475*c66ec88fSEmmanuel Vadot			#address-cells = <0>;
476*c66ec88fSEmmanuel Vadot			#size-cells = <0>;
477*c66ec88fSEmmanuel Vadot			compatible = "ibm,mcmal";
478*c66ec88fSEmmanuel Vadot			dcr-reg = <0x100 0x80>;
479*c66ec88fSEmmanuel Vadot			num-tx-chans = <1>;
480*c66ec88fSEmmanuel Vadot			num-rx-chans = <1>;
481*c66ec88fSEmmanuel Vadot			interrupt-parent = <&MAL1>;
482*c66ec88fSEmmanuel Vadot			interrupts = <0 1 2 3 4>;
483*c66ec88fSEmmanuel Vadot			/* index interrupt-parent interrupt# type */
484*c66ec88fSEmmanuel Vadot			interrupt-map = </*TXEOB*/ 0 &UIC1_2 12 0x4
485*c66ec88fSEmmanuel Vadot					 /*RXEOB*/ 1 &UIC1_2 11 0x4
486*c66ec88fSEmmanuel Vadot					 /*SERR*/  2 &UIC1_2 15 0x4
487*c66ec88fSEmmanuel Vadot					 /*TXDE*/  3 &UIC1_2 14 0x4
488*c66ec88fSEmmanuel Vadot					 /*RXDE*/  4 &UIC1_2 13 0x4>;
489*c66ec88fSEmmanuel Vadot		};
490*c66ec88fSEmmanuel Vadot
491*c66ec88fSEmmanuel Vadot		mmc0: mmc@20c0000 {
492*c66ec88fSEmmanuel Vadot			compatible	= "st,sdhci-stih407", "st,sdhci";
493*c66ec88fSEmmanuel Vadot			reg		= <0x020c0000 0x20000>;
494*c66ec88fSEmmanuel Vadot			reg-names	= "mmc";
495*c66ec88fSEmmanuel Vadot			interrupts	= <21 0x4>;
496*c66ec88fSEmmanuel Vadot			interrupt-parent = <&UIC1_3>;
497*c66ec88fSEmmanuel Vadot			interrupt-names	= "mmcirq";
498*c66ec88fSEmmanuel Vadot			pinctrl-names	= "default";
499*c66ec88fSEmmanuel Vadot			pinctrl-0	= <>;
500*c66ec88fSEmmanuel Vadot			clock-names	= "mmc";
501*c66ec88fSEmmanuel Vadot			clocks		= <&mmc_clk>;
502*c66ec88fSEmmanuel Vadot			bus-width	= <4>;
503*c66ec88fSEmmanuel Vadot			non-removable;
504*c66ec88fSEmmanuel Vadot			sd-uhs-sdr50;
505*c66ec88fSEmmanuel Vadot			sd-uhs-sdr104;
506*c66ec88fSEmmanuel Vadot			sd-uhs-ddr50;
507*c66ec88fSEmmanuel Vadot		};
508*c66ec88fSEmmanuel Vadot
509*c66ec88fSEmmanuel Vadot		opb {
510*c66ec88fSEmmanuel Vadot			compatible = "ibm,opb";
511*c66ec88fSEmmanuel Vadot			#address-cells = <1>;
512*c66ec88fSEmmanuel Vadot			#size-cells = <1>;
513*c66ec88fSEmmanuel Vadot			ranges; // pass-thru to parent bus
514*c66ec88fSEmmanuel Vadot			clock-frequency = <83333334>;
515*c66ec88fSEmmanuel Vadot
516*c66ec88fSEmmanuel Vadot			EMAC0: ethernet@b0000000 {
517*c66ec88fSEmmanuel Vadot				linux,network-index = <0>;
518*c66ec88fSEmmanuel Vadot				device_type = "network";
519*c66ec88fSEmmanuel Vadot				compatible = "ibm,emac4sync";
520*c66ec88fSEmmanuel Vadot				has-inverted-stacr-oc;
521*c66ec88fSEmmanuel Vadot				interrupt-parent = <&UIC1_2>;
522*c66ec88fSEmmanuel Vadot				interrupts = <1 0x4 0 0x4>;
523*c66ec88fSEmmanuel Vadot				reg = <0xb0000000 0x100>;
524*c66ec88fSEmmanuel Vadot				local-mac-address = [000000000000]; /* Filled in by
525*c66ec88fSEmmanuel Vadot							       cuboot */
526*c66ec88fSEmmanuel Vadot				mal-device = <&MAL0>;
527*c66ec88fSEmmanuel Vadot				mal-tx-channel = <0>;
528*c66ec88fSEmmanuel Vadot				mal-rx-channel = <0>;
529*c66ec88fSEmmanuel Vadot				cell-index = <0>;
530*c66ec88fSEmmanuel Vadot				max-frame-size = <1500>;
531*c66ec88fSEmmanuel Vadot				rx-fifo-size = <4096>;
532*c66ec88fSEmmanuel Vadot				tx-fifo-size = <4096>;
533*c66ec88fSEmmanuel Vadot				rx-fifo-size-gige = <16384>;
534*c66ec88fSEmmanuel Vadot				tx-fifo-size-gige = <8192>;
535*c66ec88fSEmmanuel Vadot				phy-address = <1>;
536*c66ec88fSEmmanuel Vadot				phy-mode = "rgmii";
537*c66ec88fSEmmanuel Vadot				phy-map = <00000003>;
538*c66ec88fSEmmanuel Vadot				rgmii-device = <&RGMII>;
539*c66ec88fSEmmanuel Vadot				rgmii-channel = <0>;
540*c66ec88fSEmmanuel Vadot			};
541*c66ec88fSEmmanuel Vadot
542*c66ec88fSEmmanuel Vadot			EMAC1: ethernet@b0000100 {
543*c66ec88fSEmmanuel Vadot				linux,network-index = <1>;
544*c66ec88fSEmmanuel Vadot				device_type = "network";
545*c66ec88fSEmmanuel Vadot				compatible = "ibm,emac4sync";
546*c66ec88fSEmmanuel Vadot				has-inverted-stacr-oc;
547*c66ec88fSEmmanuel Vadot				interrupt-parent = <&UIC1_2>;
548*c66ec88fSEmmanuel Vadot				interrupts = <9 0x4 8 0x4>;
549*c66ec88fSEmmanuel Vadot				reg = <0xb0000100 0x100>;
550*c66ec88fSEmmanuel Vadot				local-mac-address = [000000000000]; /* Filled in by
551*c66ec88fSEmmanuel Vadot							       cuboot */
552*c66ec88fSEmmanuel Vadot				mal-device = <&MAL1>;
553*c66ec88fSEmmanuel Vadot				mal-tx-channel = <0>;
554*c66ec88fSEmmanuel Vadot				mal-rx-channel = <0>;
555*c66ec88fSEmmanuel Vadot				cell-index = <1>;
556*c66ec88fSEmmanuel Vadot				max-frame-size = <1500>;
557*c66ec88fSEmmanuel Vadot				rx-fifo-size = <4096>;
558*c66ec88fSEmmanuel Vadot				tx-fifo-size = <4096>;
559*c66ec88fSEmmanuel Vadot				rx-fifo-size-gige = <16384>;
560*c66ec88fSEmmanuel Vadot				tx-fifo-size-gige = <8192>;
561*c66ec88fSEmmanuel Vadot				phy-address = <2>;
562*c66ec88fSEmmanuel Vadot				phy-mode = "rgmii";
563*c66ec88fSEmmanuel Vadot				phy-map = <00000003>;
564*c66ec88fSEmmanuel Vadot				rgmii-device = <&RGMII>;
565*c66ec88fSEmmanuel Vadot				rgmii-channel = <1>;
566*c66ec88fSEmmanuel Vadot			};
567*c66ec88fSEmmanuel Vadot
568*c66ec88fSEmmanuel Vadot			RGMII: rgmii@b0000600 {
569*c66ec88fSEmmanuel Vadot				compatible = "ibm,rgmii";
570*c66ec88fSEmmanuel Vadot				has-mdio;
571*c66ec88fSEmmanuel Vadot				reg = <0xb0000600 0x8>;
572*c66ec88fSEmmanuel Vadot			};
573*c66ec88fSEmmanuel Vadot
574*c66ec88fSEmmanuel Vadot			UART0: serial@b0020000 {
575*c66ec88fSEmmanuel Vadot				device_type = "serial";
576*c66ec88fSEmmanuel Vadot				compatible = "ns16550";
577*c66ec88fSEmmanuel Vadot				reg = <0xb0020000 0x8>;
578*c66ec88fSEmmanuel Vadot				virtual-reg = <0xb0020000>;
579*c66ec88fSEmmanuel Vadot				clock-frequency = <20833333>;
580*c66ec88fSEmmanuel Vadot				current-speed = <115200>;
581*c66ec88fSEmmanuel Vadot				interrupt-parent = <&UIC0>;
582*c66ec88fSEmmanuel Vadot				interrupts = <31 0x4>;
583*c66ec88fSEmmanuel Vadot			};
584*c66ec88fSEmmanuel Vadot		};
585*c66ec88fSEmmanuel Vadot
586*c66ec88fSEmmanuel Vadot		OHCI1: ohci@2040000 {
587*c66ec88fSEmmanuel Vadot			compatible = "ohci-le";
588*c66ec88fSEmmanuel Vadot			reg = <0x02040000 0xa0>;
589*c66ec88fSEmmanuel Vadot			interrupt-parent = <&UIC1_3>;
590*c66ec88fSEmmanuel Vadot			interrupts = <28 0x8 29 0x8>;
591*c66ec88fSEmmanuel Vadot		};
592*c66ec88fSEmmanuel Vadot
593*c66ec88fSEmmanuel Vadot		OHCI2: ohci@2080000 {
594*c66ec88fSEmmanuel Vadot			compatible = "ohci-le";
595*c66ec88fSEmmanuel Vadot			reg = <0x02080000 0xa0>;
596*c66ec88fSEmmanuel Vadot			interrupt-parent = <&UIC1_3>;
597*c66ec88fSEmmanuel Vadot			interrupts = <30 0x8 31 0x8>;
598*c66ec88fSEmmanuel Vadot		};
599*c66ec88fSEmmanuel Vadot
600*c66ec88fSEmmanuel Vadot		EHCI: ehci@2000000 {
601*c66ec88fSEmmanuel Vadot			compatible = "usb-ehci";
602*c66ec88fSEmmanuel Vadot			reg = <0x02000000 0xa4>;
603*c66ec88fSEmmanuel Vadot			interrupt-parent = <&UIC1_3>;
604*c66ec88fSEmmanuel Vadot			interrupts = <23 0x4>;
605*c66ec88fSEmmanuel Vadot		};
606*c66ec88fSEmmanuel Vadot
607*c66ec88fSEmmanuel Vadot	};
608*c66ec88fSEmmanuel Vadot
609*c66ec88fSEmmanuel Vadot	chosen {
610*c66ec88fSEmmanuel Vadot		stdout-path = "/plb/opb/serial@b0020000";
611*c66ec88fSEmmanuel Vadot		bootargs = "console=ttyS0,115200 rw log_buf_len=32768 debug";
612*c66ec88fSEmmanuel Vadot	};
613*c66ec88fSEmmanuel Vadot};
614