blob: abb26dc425588aeb38782d7a1a0b459224568000 [file] [log] [blame]
Jon Loeliger707ba162006-08-03 16:27:57 -05001/*
2 * MPC8641 HPCN Device Tree Source
3 *
4 * Copyright 2006 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/ {
14 model = "MPC8641HPCN";
15 compatible = "mpc86xx";
16 #address-cells = <1>;
17 #size-cells = <1>;
18
19 cpus {
Jon Loeliger707ba162006-08-03 16:27:57 -050020 #address-cells = <1>;
21 #size-cells = <0>;
22
23 PowerPC,8641@0 {
24 device_type = "cpu";
25 reg = <0>;
26 d-cache-line-size = <20>; // 32 bytes
27 i-cache-line-size = <20>; // 32 bytes
28 d-cache-size = <8000>; // L1, 32K
29 i-cache-size = <8000>; // L1, 32K
30 timebase-frequency = <0>; // 33 MHz, from uboot
31 bus-frequency = <0>; // From uboot
32 clock-frequency = <0>; // From uboot
Jon Loeliger707ba162006-08-03 16:27:57 -050033 };
34 PowerPC,8641@1 {
35 device_type = "cpu";
36 reg = <1>;
37 d-cache-line-size = <20>; // 32 bytes
38 i-cache-line-size = <20>; // 32 bytes
39 d-cache-size = <8000>; // L1, 32K
40 i-cache-size = <8000>; // L1, 32K
41 timebase-frequency = <0>; // 33 MHz, from uboot
42 bus-frequency = <0>; // From uboot
43 clock-frequency = <0>; // From uboot
Jon Loeliger707ba162006-08-03 16:27:57 -050044 };
45 };
46
47 memory {
48 device_type = "memory";
49 reg = <00000000 40000000>; // 1G at 0x0
50 };
51
52 soc8641@f8000000 {
53 #address-cells = <1>;
54 #size-cells = <1>;
Jon Loeliger707ba162006-08-03 16:27:57 -050055 device_type = "soc";
Kumar Gala1b3c5cd2007-09-12 18:23:46 -050056 ranges = <00000000 f8000000 00100000>;
Wade Farnsworthdfac6fa2007-06-04 13:24:47 -070057 reg = <f8000000 00001000>; // CCSRBAR
Jon Loeliger707ba162006-08-03 16:27:57 -050058 bus-frequency = <0>;
59
60 i2c@3000 {
61 device_type = "i2c";
62 compatible = "fsl-i2c";
63 reg = <3000 100>;
64 interrupts = <2b 2>;
Kumar Gala6d9065d2007-02-17 16:09:56 -060065 interrupt-parent = <&mpic>;
Jon Loeliger707ba162006-08-03 16:27:57 -050066 dfsrr;
67 };
68
69 i2c@3100 {
70 device_type = "i2c";
71 compatible = "fsl-i2c";
72 reg = <3100 100>;
73 interrupts = <2b 2>;
Kumar Gala6d9065d2007-02-17 16:09:56 -060074 interrupt-parent = <&mpic>;
Jon Loeliger707ba162006-08-03 16:27:57 -050075 dfsrr;
76 };
77
78 mdio@24520 {
79 #address-cells = <1>;
80 #size-cells = <0>;
81 device_type = "mdio";
82 compatible = "gianfar";
83 reg = <24520 20>;
Kumar Gala6d9065d2007-02-17 16:09:56 -060084 phy0: ethernet-phy@0 {
85 interrupt-parent = <&mpic>;
Kumar Galab533f8a2007-07-03 02:35:35 -050086 interrupts = <a 1>;
Jon Loeliger707ba162006-08-03 16:27:57 -050087 reg = <0>;
88 device_type = "ethernet-phy";
89 };
Kumar Gala6d9065d2007-02-17 16:09:56 -060090 phy1: ethernet-phy@1 {
91 interrupt-parent = <&mpic>;
Kumar Galab533f8a2007-07-03 02:35:35 -050092 interrupts = <a 1>;
Jon Loeliger707ba162006-08-03 16:27:57 -050093 reg = <1>;
94 device_type = "ethernet-phy";
95 };
Kumar Gala6d9065d2007-02-17 16:09:56 -060096 phy2: ethernet-phy@2 {
97 interrupt-parent = <&mpic>;
Kumar Galab533f8a2007-07-03 02:35:35 -050098 interrupts = <a 1>;
Jon Loeliger707ba162006-08-03 16:27:57 -050099 reg = <2>;
100 device_type = "ethernet-phy";
101 };
Kumar Gala6d9065d2007-02-17 16:09:56 -0600102 phy3: ethernet-phy@3 {
103 interrupt-parent = <&mpic>;
Kumar Galab533f8a2007-07-03 02:35:35 -0500104 interrupts = <a 1>;
Jon Loeliger707ba162006-08-03 16:27:57 -0500105 reg = <3>;
106 device_type = "ethernet-phy";
107 };
108 };
109
110 ethernet@24000 {
111 #address-cells = <1>;
112 #size-cells = <0>;
113 device_type = "network";
114 model = "TSEC";
115 compatible = "gianfar";
116 reg = <24000 1000>;
Timur Tabieae98262007-06-22 14:33:15 -0500117 /*
118 * mac-address is deprecated and will be removed
119 * in 2.6.25. Only recent versions of
120 * U-Boot support local-mac-address, however.
121 */
122 mac-address = [ 00 00 00 00 00 00 ];
123 local-mac-address = [ 00 00 00 00 00 00 ];
Jon Loeliger707ba162006-08-03 16:27:57 -0500124 interrupts = <1d 2 1e 2 22 2>;
Kumar Gala6d9065d2007-02-17 16:09:56 -0600125 interrupt-parent = <&mpic>;
126 phy-handle = <&phy0>;
Andy Flemingcc651852007-07-10 17:28:49 -0500127 phy-connection-type = "rgmii-id";
Jon Loeliger707ba162006-08-03 16:27:57 -0500128 };
129
130 ethernet@25000 {
131 #address-cells = <1>;
132 #size-cells = <0>;
133 device_type = "network";
134 model = "TSEC";
135 compatible = "gianfar";
136 reg = <25000 1000>;
Timur Tabieae98262007-06-22 14:33:15 -0500137 /*
138 * mac-address is deprecated and will be removed
139 * in 2.6.25. Only recent versions of
140 * U-Boot support local-mac-address, however.
141 */
142 mac-address = [ 00 00 00 00 00 00 ];
143 local-mac-address = [ 00 00 00 00 00 00 ];
Jon Loeliger707ba162006-08-03 16:27:57 -0500144 interrupts = <23 2 24 2 28 2>;
Kumar Gala6d9065d2007-02-17 16:09:56 -0600145 interrupt-parent = <&mpic>;
146 phy-handle = <&phy1>;
Andy Flemingcc651852007-07-10 17:28:49 -0500147 phy-connection-type = "rgmii-id";
Jon Loeliger707ba162006-08-03 16:27:57 -0500148 };
149
150 ethernet@26000 {
151 #address-cells = <1>;
152 #size-cells = <0>;
153 device_type = "network";
154 model = "TSEC";
155 compatible = "gianfar";
156 reg = <26000 1000>;
Timur Tabieae98262007-06-22 14:33:15 -0500157 /*
158 * mac-address is deprecated and will be removed
159 * in 2.6.25. Only recent versions of
160 * U-Boot support local-mac-address, however.
161 */
162 mac-address = [ 00 00 00 00 00 00 ];
163 local-mac-address = [ 00 00 00 00 00 00 ];
Jon Loeliger707ba162006-08-03 16:27:57 -0500164 interrupts = <1F 2 20 2 21 2>;
Kumar Gala6d9065d2007-02-17 16:09:56 -0600165 interrupt-parent = <&mpic>;
166 phy-handle = <&phy2>;
Andy Flemingcc651852007-07-10 17:28:49 -0500167 phy-connection-type = "rgmii-id";
Jon Loeliger707ba162006-08-03 16:27:57 -0500168 };
169
170 ethernet@27000 {
171 #address-cells = <1>;
172 #size-cells = <0>;
173 device_type = "network";
174 model = "TSEC";
175 compatible = "gianfar";
176 reg = <27000 1000>;
Timur Tabieae98262007-06-22 14:33:15 -0500177 /*
178 * mac-address is deprecated and will be removed
179 * in 2.6.25. Only recent versions of
180 * U-Boot support local-mac-address, however.
181 */
182 mac-address = [ 00 00 00 00 00 00 ];
183 local-mac-address = [ 00 00 00 00 00 00 ];
Jon Loeliger707ba162006-08-03 16:27:57 -0500184 interrupts = <25 2 26 2 27 2>;
Kumar Gala6d9065d2007-02-17 16:09:56 -0600185 interrupt-parent = <&mpic>;
186 phy-handle = <&phy3>;
Andy Flemingcc651852007-07-10 17:28:49 -0500187 phy-connection-type = "rgmii-id";
Jon Loeliger707ba162006-08-03 16:27:57 -0500188 };
189 serial@4500 {
190 device_type = "serial";
191 compatible = "ns16550";
192 reg = <4500 100>;
193 clock-frequency = <0>;
194 interrupts = <2a 2>;
Kumar Gala6d9065d2007-02-17 16:09:56 -0600195 interrupt-parent = <&mpic>;
Jon Loeliger707ba162006-08-03 16:27:57 -0500196 };
197
198 serial@4600 {
199 device_type = "serial";
200 compatible = "ns16550";
201 reg = <4600 100>;
202 clock-frequency = <0>;
203 interrupts = <1c 2>;
Kumar Gala6d9065d2007-02-17 16:09:56 -0600204 interrupt-parent = <&mpic>;
Jon Loeliger707ba162006-08-03 16:27:57 -0500205 };
206
Kumar Gala1b3c5cd2007-09-12 18:23:46 -0500207 mpic: pic@40000 {
208 clock-frequency = <0>;
209 interrupt-controller;
210 #address-cells = <0>;
211 #interrupt-cells = <2>;
212 reg = <40000 40000>;
213 compatible = "chrp,open-pic";
214 device_type = "open-pic";
215 big-endian;
216 };
Kumar Galae1c15752007-10-04 01:04:57 -0500217
218 global-utilities@e0000 {
219 compatible = "fsl,mpc8641-guts";
220 reg = <e0000 1000>;
221 fsl,has-rstcr;
222 };
Kumar Gala1b3c5cd2007-09-12 18:23:46 -0500223 };
224
225 pcie@f8008000 {
226 compatible = "fsl,mpc8641-pcie";
227 device_type = "pci";
228 #interrupt-cells = <1>;
229 #size-cells = <2>;
230 #address-cells = <3>;
231 reg = <f8008000 1000>;
232 bus-range = <0 ff>;
233 ranges = <02000000 0 80000000 80000000 0 20000000
234 01000000 0 00000000 e2000000 0 00100000>;
235 clock-frequency = <1fca055>;
236 interrupt-parent = <&mpic>;
237 interrupts = <18 2>;
Kumar Galabebfa062007-11-19 23:36:23 -0600238 interrupt-map-mask = <ff00 0 0 7>;
Kumar Gala1b3c5cd2007-09-12 18:23:46 -0500239 interrupt-map = <
Kumar Galabebfa062007-11-19 23:36:23 -0600240 /* IDSEL 0x11 func 0 - PCI slot 1 */
241 8800 0 0 1 &mpic 2 1
242 8800 0 0 2 &mpic 3 1
243 8800 0 0 3 &mpic 4 1
244 8800 0 0 4 &mpic 1 1
Kumar Gala1b3c5cd2007-09-12 18:23:46 -0500245
Kumar Galabebfa062007-11-19 23:36:23 -0600246 /* IDSEL 0x11 func 1 - PCI slot 1 */
247 8900 0 0 1 &mpic 2 1
248 8900 0 0 2 &mpic 3 1
249 8900 0 0 3 &mpic 4 1
250 8900 0 0 4 &mpic 1 1
251
252 /* IDSEL 0x11 func 2 - PCI slot 1 */
253 8a00 0 0 1 &mpic 2 1
254 8a00 0 0 2 &mpic 3 1
255 8a00 0 0 3 &mpic 4 1
256 8a00 0 0 4 &mpic 1 1
257
258 /* IDSEL 0x11 func 3 - PCI slot 1 */
259 8b00 0 0 1 &mpic 2 1
260 8b00 0 0 2 &mpic 3 1
261 8b00 0 0 3 &mpic 4 1
262 8b00 0 0 4 &mpic 1 1
263
264 /* IDSEL 0x11 func 4 - PCI slot 1 */
265 8c00 0 0 1 &mpic 2 1
266 8c00 0 0 2 &mpic 3 1
267 8c00 0 0 3 &mpic 4 1
268 8c00 0 0 4 &mpic 1 1
269
270 /* IDSEL 0x11 func 5 - PCI slot 1 */
271 8d00 0 0 1 &mpic 2 1
272 8d00 0 0 2 &mpic 3 1
273 8d00 0 0 3 &mpic 4 1
274 8d00 0 0 4 &mpic 1 1
275
276 /* IDSEL 0x11 func 6 - PCI slot 1 */
277 8e00 0 0 1 &mpic 2 1
278 8e00 0 0 2 &mpic 3 1
279 8e00 0 0 3 &mpic 4 1
280 8e00 0 0 4 &mpic 1 1
281
282 /* IDSEL 0x11 func 7 - PCI slot 1 */
283 8f00 0 0 1 &mpic 2 1
284 8f00 0 0 2 &mpic 3 1
285 8f00 0 0 3 &mpic 4 1
286 8f00 0 0 4 &mpic 1 1
287
288 /* IDSEL 0x12 func 0 - PCI slot 2 */
289 9000 0 0 1 &mpic 3 1
290 9000 0 0 2 &mpic 4 1
291 9000 0 0 3 &mpic 1 1
292 9000 0 0 4 &mpic 2 1
293
294 /* IDSEL 0x12 func 1 - PCI slot 2 */
295 9100 0 0 1 &mpic 3 1
296 9100 0 0 2 &mpic 4 1
297 9100 0 0 3 &mpic 1 1
298 9100 0 0 4 &mpic 2 1
299
300 /* IDSEL 0x12 func 2 - PCI slot 2 */
301 9200 0 0 1 &mpic 3 1
302 9200 0 0 2 &mpic 4 1
303 9200 0 0 3 &mpic 1 1
304 9200 0 0 4 &mpic 2 1
305
306 /* IDSEL 0x12 func 3 - PCI slot 2 */
307 9300 0 0 1 &mpic 3 1
308 9300 0 0 2 &mpic 4 1
309 9300 0 0 3 &mpic 1 1
310 9300 0 0 4 &mpic 2 1
311
312 /* IDSEL 0x12 func 4 - PCI slot 2 */
313 9400 0 0 1 &mpic 3 1
314 9400 0 0 2 &mpic 4 1
315 9400 0 0 3 &mpic 1 1
316 9400 0 0 4 &mpic 2 1
317
318 /* IDSEL 0x12 func 5 - PCI slot 2 */
319 9500 0 0 1 &mpic 3 1
320 9500 0 0 2 &mpic 4 1
321 9500 0 0 3 &mpic 1 1
322 9500 0 0 4 &mpic 2 1
323
324 /* IDSEL 0x12 func 6 - PCI slot 2 */
325 9600 0 0 1 &mpic 3 1
326 9600 0 0 2 &mpic 4 1
327 9600 0 0 3 &mpic 1 1
328 9600 0 0 4 &mpic 2 1
329
330 /* IDSEL 0x12 func 7 - PCI slot 2 */
331 9700 0 0 1 &mpic 3 1
332 9700 0 0 2 &mpic 4 1
333 9700 0 0 3 &mpic 1 1
334 9700 0 0 4 &mpic 2 1
Kumar Gala1b3c5cd2007-09-12 18:23:46 -0500335
336 // IDSEL 0x1c USB
Kumar Galabebfa062007-11-19 23:36:23 -0600337 e000 0 0 1 &i8259 c 2
338 e100 0 0 1 &i8259 9 2
339 e200 0 0 1 &i8259 a 2
340 e300 0 0 1 &i8259 b 2
Kumar Gala1b3c5cd2007-09-12 18:23:46 -0500341
342 // IDSEL 0x1d Audio
Kumar Galabebfa062007-11-19 23:36:23 -0600343 e800 0 0 1 &i8259 6 2
Kumar Gala1b3c5cd2007-09-12 18:23:46 -0500344
345 // IDSEL 0x1e Legacy
Kumar Galabebfa062007-11-19 23:36:23 -0600346 f000 0 0 1 &i8259 7 2
347 f100 0 0 1 &i8259 7 2
Kumar Gala1b3c5cd2007-09-12 18:23:46 -0500348
349 // IDSEL 0x1f IDE/SATA
Kumar Galabebfa062007-11-19 23:36:23 -0600350 f800 0 0 1 &i8259 e 2
351 f900 0 0 1 &i8259 5 2
Kumar Gala1b3c5cd2007-09-12 18:23:46 -0500352 >;
353
354 pcie@0 {
355 reg = <0 0 0 0 0>;
Jon Loeliger707ba162006-08-03 16:27:57 -0500356 #size-cells = <2>;
357 #address-cells = <3>;
Kumar Gala1b3c5cd2007-09-12 18:23:46 -0500358 device_type = "pci";
359 ranges = <02000000 0 80000000
360 02000000 0 80000000
361 0 20000000
Jon Loeliger707ba162006-08-03 16:27:57 -0500362
Kumar Gala1b3c5cd2007-09-12 18:23:46 -0500363 01000000 0 00000000
364 01000000 0 00000000
365 0 00100000>;
Wade Farnsworthdfac6fa2007-06-04 13:24:47 -0700366 uli1575@0 {
367 reg = <0 0 0 0 0>;
368 #size-cells = <2>;
369 #address-cells = <3>;
370 ranges = <02000000 0 80000000
371 02000000 0 80000000
372 0 20000000
373 01000000 0 00000000
374 01000000 0 00000000
375 0 00100000>;
Kumar Gala1b3c5cd2007-09-12 18:23:46 -0500376 isa@1e {
377 device_type = "isa";
378 #interrupt-cells = <2>;
379 #size-cells = <1>;
380 #address-cells = <2>;
381 reg = <f000 0 0 0 0>;
382 ranges = <1 0 01000000 0 0
383 00001000>;
384 interrupt-parent = <&i8259>;
Wade Farnsworthdfac6fa2007-06-04 13:24:47 -0700385
Kumar Gala1b3c5cd2007-09-12 18:23:46 -0500386 i8259: interrupt-controller@20 {
387 reg = <1 20 2
388 1 a0 2
389 1 4d0 2>;
390 interrupt-controller;
391 device_type = "interrupt-controller";
392 #address-cells = <0>;
Wade Farnsworthdfac6fa2007-06-04 13:24:47 -0700393 #interrupt-cells = <2>;
Kumar Gala1b3c5cd2007-09-12 18:23:46 -0500394 compatible = "chrp,iic";
395 interrupts = <9 2>;
396 interrupt-parent = <&mpic>;
397 };
Wade Farnsworthdfac6fa2007-06-04 13:24:47 -0700398
Kumar Gala1b3c5cd2007-09-12 18:23:46 -0500399 i8042@60 {
400 #size-cells = <0>;
401 #address-cells = <1>;
402 reg = <1 60 1 1 64 1>;
403 interrupts = <1 3 c 3>;
404 interrupt-parent =
405 <&i8259>;
406
407 keyboard@0 {
408 reg = <0>;
409 compatible = "pnpPNP,303";
Wade Farnsworthdfac6fa2007-06-04 13:24:47 -0700410 };
411
Kumar Gala1b3c5cd2007-09-12 18:23:46 -0500412 mouse@1 {
413 reg = <1>;
414 compatible = "pnpPNP,f03";
Wade Farnsworthdfac6fa2007-06-04 13:24:47 -0700415 };
Kumar Gala1b3c5cd2007-09-12 18:23:46 -0500416 };
Wade Farnsworthdfac6fa2007-06-04 13:24:47 -0700417
Kumar Gala1b3c5cd2007-09-12 18:23:46 -0500418 rtc@70 {
419 compatible =
420 "pnpPNP,b00";
421 reg = <1 70 2>;
422 };
Wade Farnsworthdfac6fa2007-06-04 13:24:47 -0700423
Kumar Gala1b3c5cd2007-09-12 18:23:46 -0500424 gpio@400 {
425 reg = <1 400 80>;
Wade Farnsworthdfac6fa2007-06-04 13:24:47 -0700426 };
427 };
Jon Loeliger707ba162006-08-03 16:27:57 -0500428 };
Jon Loeliger707ba162006-08-03 16:27:57 -0500429 };
Zhang Weie0e3c8d2007-03-07 11:47:41 -0600430
Kumar Gala1b3c5cd2007-09-12 18:23:46 -0500431 };
432
433 pcie@f8009000 {
434 compatible = "fsl,mpc8641-pcie";
435 device_type = "pci";
436 #interrupt-cells = <1>;
437 #size-cells = <2>;
438 #address-cells = <3>;
439 reg = <f8009000 1000>;
440 bus-range = <0 ff>;
441 ranges = <02000000 0 a0000000 a0000000 0 20000000
442 01000000 0 00000000 e3000000 0 00100000>;
443 clock-frequency = <1fca055>;
444 interrupt-parent = <&mpic>;
445 interrupts = <19 2>;
446 interrupt-map-mask = <f800 0 0 7>;
447 interrupt-map = <
448 /* IDSEL 0x0 */
449 0000 0 0 1 &mpic 4 1
450 0000 0 0 2 &mpic 5 1
451 0000 0 0 3 &mpic 6 1
452 0000 0 0 4 &mpic 7 1
453 >;
454 pcie@0 {
455 reg = <0 0 0 0 0>;
Zhang Weie0e3c8d2007-03-07 11:47:41 -0600456 #size-cells = <2>;
457 #address-cells = <3>;
Kumar Gala1b3c5cd2007-09-12 18:23:46 -0500458 device_type = "pci";
459 ranges = <02000000 0 a0000000
460 02000000 0 a0000000
461 0 20000000
Zhang Weie0e3c8d2007-03-07 11:47:41 -0600462
Kumar Gala1b3c5cd2007-09-12 18:23:46 -0500463 01000000 0 00000000
464 01000000 0 00000000
465 0 00100000>;
Jon Loeliger707ba162006-08-03 16:27:57 -0500466 };
467 };
468};