blob: c2a8ffa61f8c3eb476cd07a3d079d34f2af7d648 [file] [log] [blame]
Kumar Gala5d54ddc2007-09-11 01:25:43 -05001/*
2 * MPC8572 DS Device Tree Source
3 *
4 * Copyright 2007 Freescale Semiconductor Inc.
5 *
6 * This program is free software; you can redistribute it and/or modify it
7 * under the terms of the GNU General Public License as published by the
8 * Free Software Foundation; either version 2 of the License, or (at your
9 * option) any later version.
10 */
11
12/ {
13 model = "fsl,MPC8572DS";
14 compatible = "fsl,MPC8572DS";
15 #address-cells = <1>;
16 #size-cells = <1>;
17
18 cpus {
19 #address-cells = <1>;
20 #size-cells = <0>;
21
22 PowerPC,8572@0 {
23 device_type = "cpu";
24 reg = <0>;
25 d-cache-line-size = <20>; // 32 bytes
26 i-cache-line-size = <20>; // 32 bytes
27 d-cache-size = <8000>; // L1, 32K
28 i-cache-size = <8000>; // L1, 32K
29 timebase-frequency = <0>;
30 bus-frequency = <0>;
31 clock-frequency = <0>;
32 };
33 };
34
35 memory {
36 device_type = "memory";
37 reg = <00000000 00000000>; // Filled by U-Boot
38 };
39
40 soc8572@ffe00000 {
41 #address-cells = <1>;
42 #size-cells = <1>;
43 device_type = "soc";
44 ranges = <00000000 ffe00000 00100000>;
45 reg = <ffe00000 00001000>; // CCSRBAR & soc regs, remove once parse code for immrbase fixed
46 bus-frequency = <0>; // Filled out by uboot.
47
48 memory-controller@2000 {
49 compatible = "fsl,mpc8572-memory-controller";
50 reg = <2000 1000>;
51 interrupt-parent = <&mpic>;
52 interrupts = <12 2>;
53 };
54
55 memory-controller@6000 {
56 compatible = "fsl,mpc8572-memory-controller";
57 reg = <6000 1000>;
58 interrupt-parent = <&mpic>;
59 interrupts = <12 2>;
60 };
61
62 l2-cache-controller@20000 {
63 compatible = "fsl,mpc8572-l2-cache-controller";
64 reg = <20000 1000>;
65 cache-line-size = <20>; // 32 bytes
66 cache-size = <80000>; // L2, 512K
67 interrupt-parent = <&mpic>;
68 interrupts = <10 2>;
69 };
70
71 i2c@3000 {
Kumar Galaec9686c2007-12-11 23:17:24 -060072 #address-cells = <1>;
73 #size-cells = <0>;
74 cell-index = <0>;
Kumar Gala5d54ddc2007-09-11 01:25:43 -050075 compatible = "fsl-i2c";
76 reg = <3000 100>;
77 interrupts = <2b 2>;
78 interrupt-parent = <&mpic>;
79 dfsrr;
80 };
81
82 i2c@3100 {
Kumar Galaec9686c2007-12-11 23:17:24 -060083 #address-cells = <1>;
84 #size-cells = <0>;
85 cell-index = <1>;
Kumar Gala5d54ddc2007-09-11 01:25:43 -050086 compatible = "fsl-i2c";
87 reg = <3100 100>;
88 interrupts = <2b 2>;
89 interrupt-parent = <&mpic>;
90 dfsrr;
91 };
92
93 mdio@24520 {
94 #address-cells = <1>;
95 #size-cells = <0>;
Kumar Galae77b28e2007-12-12 00:28:35 -060096 compatible = "fsl,gianfar-mdio";
Kumar Gala5d54ddc2007-09-11 01:25:43 -050097 reg = <24520 20>;
Kumar Galae77b28e2007-12-12 00:28:35 -060098
Kumar Gala5d54ddc2007-09-11 01:25:43 -050099 phy0: ethernet-phy@0 {
100 interrupt-parent = <&mpic>;
101 interrupts = <a 1>;
102 reg = <0>;
103 };
104 phy1: ethernet-phy@1 {
105 interrupt-parent = <&mpic>;
106 interrupts = <a 1>;
107 reg = <1>;
108 };
109 phy2: ethernet-phy@2 {
110 interrupt-parent = <&mpic>;
111 interrupts = <a 1>;
112 reg = <2>;
113 };
114 phy3: ethernet-phy@3 {
115 interrupt-parent = <&mpic>;
116 interrupts = <a 1>;
117 reg = <3>;
118 };
119 };
120
Kumar Galae77b28e2007-12-12 00:28:35 -0600121 enet0: ethernet@24000 {
122 cell-index = <0>;
Kumar Gala5d54ddc2007-09-11 01:25:43 -0500123 device_type = "network";
124 model = "eTSEC";
125 compatible = "gianfar";
126 reg = <24000 1000>;
127 local-mac-address = [ 00 00 00 00 00 00 ];
128 interrupts = <1d 2 1e 2 22 2>;
129 interrupt-parent = <&mpic>;
130 phy-handle = <&phy0>;
131 phy-connection-type = "rgmii-id";
132 };
133
Kumar Galae77b28e2007-12-12 00:28:35 -0600134 enet1: ethernet@25000 {
135 cell-index = <1>;
Kumar Gala5d54ddc2007-09-11 01:25:43 -0500136 device_type = "network";
137 model = "eTSEC";
138 compatible = "gianfar";
139 reg = <25000 1000>;
140 local-mac-address = [ 00 00 00 00 00 00 ];
141 interrupts = <23 2 24 2 28 2>;
142 interrupt-parent = <&mpic>;
143 phy-handle = <&phy1>;
144 phy-connection-type = "rgmii-id";
145 };
146
Kumar Galae77b28e2007-12-12 00:28:35 -0600147 enet2: ethernet@26000 {
148 cell-index = <2>;
Kumar Gala5d54ddc2007-09-11 01:25:43 -0500149 device_type = "network";
150 model = "eTSEC";
151 compatible = "gianfar";
152 reg = <26000 1000>;
153 local-mac-address = [ 00 00 00 00 00 00 ];
154 interrupts = <1f 2 20 2 21 2>;
155 interrupt-parent = <&mpic>;
156 phy-handle = <&phy2>;
157 phy-connection-type = "rgmii-id";
158 };
159
Kumar Galae77b28e2007-12-12 00:28:35 -0600160 enet3: ethernet@27000 {
161 cell-index = <3>;
Kumar Gala5d54ddc2007-09-11 01:25:43 -0500162 device_type = "network";
163 model = "eTSEC";
164 compatible = "gianfar";
165 reg = <27000 1000>;
166 local-mac-address = [ 00 00 00 00 00 00 ];
167 interrupts = <25 2 26 2 27 2>;
168 interrupt-parent = <&mpic>;
169 phy-handle = <&phy3>;
170 phy-connection-type = "rgmii-id";
171 };
172
173 serial@4500 {
174 device_type = "serial";
175 compatible = "ns16550";
176 reg = <4500 100>;
177 clock-frequency = <0>;
178 interrupts = <2a 2>;
179 interrupt-parent = <&mpic>;
180 };
181
182 serial@4600 {
183 device_type = "serial";
184 compatible = "ns16550";
185 reg = <4600 100>;
186 clock-frequency = <0>;
187 interrupts = <2a 2>;
188 interrupt-parent = <&mpic>;
189 };
190
191 global-utilities@e0000 { //global utilities block
192 compatible = "fsl,mpc8572-guts";
193 reg = <e0000 1000>;
194 fsl,has-rstcr;
195 };
196
197 mpic: pic@40000 {
198 clock-frequency = <0>;
199 interrupt-controller;
200 #address-cells = <0>;
201 #interrupt-cells = <2>;
202 reg = <40000 40000>;
203 compatible = "chrp,open-pic";
204 device_type = "open-pic";
205 big-endian;
206 };
207 };
208
209 pcie@ffe08000 {
210 compatible = "fsl,mpc8548-pcie";
211 device_type = "pci";
212 #interrupt-cells = <1>;
213 #size-cells = <2>;
214 #address-cells = <3>;
215 reg = <ffe08000 1000>;
216 bus-range = <0 ff>;
217 ranges = <02000000 0 80000000 80000000 0 20000000
218 01000000 0 00000000 ffc00000 0 00010000>;
219 clock-frequency = <1fca055>;
220 interrupt-parent = <&mpic>;
221 interrupts = <18 2>;
Kumar Galabebfa062007-11-19 23:36:23 -0600222 interrupt-map-mask = <ff00 0 0 7>;
Kumar Gala5d54ddc2007-09-11 01:25:43 -0500223 interrupt-map = <
Kumar Galabebfa062007-11-19 23:36:23 -0600224 /* IDSEL 0x11 func 0 - PCI slot 1 */
Kumar Gala5d54ddc2007-09-11 01:25:43 -0500225 8800 0 0 1 &mpic 2 1
226 8800 0 0 2 &mpic 3 1
227 8800 0 0 3 &mpic 4 1
228 8800 0 0 4 &mpic 1 1
229
Kumar Galabebfa062007-11-19 23:36:23 -0600230 /* IDSEL 0x11 func 1 - PCI slot 1 */
231 8900 0 0 1 &mpic 2 1
232 8900 0 0 2 &mpic 3 1
233 8900 0 0 3 &mpic 4 1
234 8900 0 0 4 &mpic 1 1
235
236 /* IDSEL 0x11 func 2 - PCI slot 1 */
237 8a00 0 0 1 &mpic 2 1
238 8a00 0 0 2 &mpic 3 1
239 8a00 0 0 3 &mpic 4 1
240 8a00 0 0 4 &mpic 1 1
241
242 /* IDSEL 0x11 func 3 - PCI slot 1 */
243 8b00 0 0 1 &mpic 2 1
244 8b00 0 0 2 &mpic 3 1
245 8b00 0 0 3 &mpic 4 1
246 8b00 0 0 4 &mpic 1 1
247
248 /* IDSEL 0x11 func 4 - PCI slot 1 */
249 8c00 0 0 1 &mpic 2 1
250 8c00 0 0 2 &mpic 3 1
251 8c00 0 0 3 &mpic 4 1
252 8c00 0 0 4 &mpic 1 1
253
254 /* IDSEL 0x11 func 5 - PCI slot 1 */
255 8d00 0 0 1 &mpic 2 1
256 8d00 0 0 2 &mpic 3 1
257 8d00 0 0 3 &mpic 4 1
258 8d00 0 0 4 &mpic 1 1
259
260 /* IDSEL 0x11 func 6 - PCI slot 1 */
261 8e00 0 0 1 &mpic 2 1
262 8e00 0 0 2 &mpic 3 1
263 8e00 0 0 3 &mpic 4 1
264 8e00 0 0 4 &mpic 1 1
265
266 /* IDSEL 0x11 func 7 - PCI slot 1 */
267 8f00 0 0 1 &mpic 2 1
268 8f00 0 0 2 &mpic 3 1
269 8f00 0 0 3 &mpic 4 1
270 8f00 0 0 4 &mpic 1 1
271
272 /* IDSEL 0x12 func 0 - PCI slot 2 */
Kumar Gala5d54ddc2007-09-11 01:25:43 -0500273 9000 0 0 1 &mpic 3 1
274 9000 0 0 2 &mpic 4 1
275 9000 0 0 3 &mpic 1 1
276 9000 0 0 4 &mpic 2 1
277
Kumar Galabebfa062007-11-19 23:36:23 -0600278 /* IDSEL 0x12 func 1 - PCI slot 2 */
279 9100 0 0 1 &mpic 3 1
280 9100 0 0 2 &mpic 4 1
281 9100 0 0 3 &mpic 1 1
282 9100 0 0 4 &mpic 2 1
283
284 /* IDSEL 0x12 func 2 - PCI slot 2 */
285 9200 0 0 1 &mpic 3 1
286 9200 0 0 2 &mpic 4 1
287 9200 0 0 3 &mpic 1 1
288 9200 0 0 4 &mpic 2 1
289
290 /* IDSEL 0x12 func 3 - PCI slot 2 */
291 9300 0 0 1 &mpic 3 1
292 9300 0 0 2 &mpic 4 1
293 9300 0 0 3 &mpic 1 1
294 9300 0 0 4 &mpic 2 1
295
296 /* IDSEL 0x12 func 4 - PCI slot 2 */
297 9400 0 0 1 &mpic 3 1
298 9400 0 0 2 &mpic 4 1
299 9400 0 0 3 &mpic 1 1
300 9400 0 0 4 &mpic 2 1
301
302 /* IDSEL 0x12 func 5 - PCI slot 2 */
303 9500 0 0 1 &mpic 3 1
304 9500 0 0 2 &mpic 4 1
305 9500 0 0 3 &mpic 1 1
306 9500 0 0 4 &mpic 2 1
307
308 /* IDSEL 0x12 func 6 - PCI slot 2 */
309 9600 0 0 1 &mpic 3 1
310 9600 0 0 2 &mpic 4 1
311 9600 0 0 3 &mpic 1 1
312 9600 0 0 4 &mpic 2 1
313
314 /* IDSEL 0x12 func 7 - PCI slot 2 */
315 9700 0 0 1 &mpic 3 1
316 9700 0 0 2 &mpic 4 1
317 9700 0 0 3 &mpic 1 1
318 9700 0 0 4 &mpic 2 1
319
Kumar Gala5d54ddc2007-09-11 01:25:43 -0500320 // IDSEL 0x1c USB
Kumar Galabebfa062007-11-19 23:36:23 -0600321 e000 0 0 1 &i8259 c 2
322 e100 0 0 1 &i8259 9 2
323 e200 0 0 1 &i8259 a 2
324 e300 0 0 1 &i8259 b 2
Kumar Gala5d54ddc2007-09-11 01:25:43 -0500325
326 // IDSEL 0x1d Audio
Kumar Galabebfa062007-11-19 23:36:23 -0600327 e800 0 0 1 &i8259 6 2
Kumar Gala5d54ddc2007-09-11 01:25:43 -0500328
329 // IDSEL 0x1e Legacy
Kumar Galabebfa062007-11-19 23:36:23 -0600330 f000 0 0 1 &i8259 7 2
331 f100 0 0 1 &i8259 7 2
Kumar Gala5d54ddc2007-09-11 01:25:43 -0500332
333 // IDSEL 0x1f IDE/SATA
Kumar Galabebfa062007-11-19 23:36:23 -0600334 f800 0 0 1 &i8259 e 2
335 f900 0 0 1 &i8259 5 2
Kumar Gala5d54ddc2007-09-11 01:25:43 -0500336
337 >;
338
339 pcie@0 {
340 reg = <0 0 0 0 0>;
341 #size-cells = <2>;
342 #address-cells = <3>;
343 device_type = "pci";
344 ranges = <02000000 0 80000000
345 02000000 0 80000000
346 0 20000000
347
348 01000000 0 00000000
349 01000000 0 00000000
350 0 00100000>;
351 uli1575@0 {
352 reg = <0 0 0 0 0>;
353 #size-cells = <2>;
354 #address-cells = <3>;
355 ranges = <02000000 0 80000000
356 02000000 0 80000000
357 0 20000000
358
359 01000000 0 00000000
360 01000000 0 00000000
361 0 00100000>;
362 isa@1e {
363 device_type = "isa";
364 #interrupt-cells = <2>;
365 #size-cells = <1>;
366 #address-cells = <2>;
367 reg = <f000 0 0 0 0>;
368 ranges = <1 0 01000000 0 0
369 00001000>;
370 interrupt-parent = <&i8259>;
371
372 i8259: interrupt-controller@20 {
373 reg = <1 20 2
374 1 a0 2
375 1 4d0 2>;
376 interrupt-controller;
377 device_type = "interrupt-controller";
378 #address-cells = <0>;
379 #interrupt-cells = <2>;
380 compatible = "chrp,iic";
381 interrupts = <9 2>;
382 interrupt-parent = <&mpic>;
383 };
384
385 i8042@60 {
386 #size-cells = <0>;
387 #address-cells = <1>;
388 reg = <1 60 1 1 64 1>;
389 interrupts = <1 3 c 3>;
390 interrupt-parent =
391 <&i8259>;
392
393 keyboard@0 {
394 reg = <0>;
395 compatible = "pnpPNP,303";
396 };
397
398 mouse@1 {
399 reg = <1>;
400 compatible = "pnpPNP,f03";
401 };
402 };
403
404 rtc@70 {
405 compatible = "pnpPNP,b00";
406 reg = <1 70 2>;
407 };
408
409 gpio@400 {
410 reg = <1 400 80>;
411 };
412 };
413 };
414 };
415
416 };
417
418 pcie@ffe09000 {
419 compatible = "fsl,mpc8548-pcie";
420 device_type = "pci";
421 #interrupt-cells = <1>;
422 #size-cells = <2>;
423 #address-cells = <3>;
424 reg = <ffe09000 1000>;
425 bus-range = <0 ff>;
426 ranges = <02000000 0 a0000000 a0000000 0 20000000
427 01000000 0 00000000 ffc10000 0 00010000>;
428 clock-frequency = <1fca055>;
429 interrupt-parent = <&mpic>;
430 interrupts = <1a 2>;
431 interrupt-map-mask = <f800 0 0 7>;
432 interrupt-map = <
433 /* IDSEL 0x0 */
434 0000 0 0 1 &mpic 4 1
435 0000 0 0 2 &mpic 5 1
436 0000 0 0 3 &mpic 6 1
437 0000 0 0 4 &mpic 7 1
438 >;
439 pcie@0 {
440 reg = <0 0 0 0 0>;
441 #size-cells = <2>;
442 #address-cells = <3>;
443 device_type = "pci";
444 ranges = <02000000 0 a0000000
445 02000000 0 a0000000
446 0 20000000
447
448 01000000 0 00000000
449 01000000 0 00000000
450 0 00100000>;
451 };
452 };
453
454 pcie@ffe0a000 {
455 compatible = "fsl,mpc8548-pcie";
456 device_type = "pci";
457 #interrupt-cells = <1>;
458 #size-cells = <2>;
459 #address-cells = <3>;
460 reg = <ffe0a000 1000>;
461 bus-range = <0 ff>;
462 ranges = <02000000 0 c0000000 c0000000 0 20000000
463 01000000 0 00000000 ffc20000 0 00010000>;
464 clock-frequency = <1fca055>;
465 interrupt-parent = <&mpic>;
466 interrupts = <1b 2>;
467 interrupt-map = <
468 /* IDSEL 0x0 */
469 0000 0 0 1 &mpic 0 1
470 0000 0 0 2 &mpic 1 1
471 0000 0 0 3 &mpic 2 1
472 0000 0 0 4 &mpic 3 1
473 >;
474 pcie@0 {
475 reg = <0 0 0 0 0>;
476 #size-cells = <2>;
477 #address-cells = <3>;
478 device_type = "pci";
479 ranges = <02000000 0 c0000000
480 02000000 0 c0000000
481 0 20000000
482
483 01000000 0 00000000
484 01000000 0 00000000
485 0 00100000>;
486 };
487 };
488};