blob: db56a02b748fdc2f5e907fdfad629ea05018b24e [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
33 32-bit;
Jon Loeliger707ba162006-08-03 16:27:57 -050034 };
35 PowerPC,8641@1 {
36 device_type = "cpu";
37 reg = <1>;
38 d-cache-line-size = <20>; // 32 bytes
39 i-cache-line-size = <20>; // 32 bytes
40 d-cache-size = <8000>; // L1, 32K
41 i-cache-size = <8000>; // L1, 32K
42 timebase-frequency = <0>; // 33 MHz, from uboot
43 bus-frequency = <0>; // From uboot
44 clock-frequency = <0>; // From uboot
45 32-bit;
46 };
47 };
48
49 memory {
50 device_type = "memory";
51 reg = <00000000 40000000>; // 1G at 0x0
52 };
53
54 soc8641@f8000000 {
55 #address-cells = <1>;
56 #size-cells = <1>;
57 #interrupt-cells = <2>;
58 device_type = "soc";
Wade Farnsworthdfac6fa2007-06-04 13:24:47 -070059 ranges = <00001000 f8001000 000ff000
60 80000000 80000000 20000000
61 e2000000 e2000000 00100000
62 a0000000 a0000000 20000000
63 e3000000 e3000000 00100000>;
64 reg = <f8000000 00001000>; // CCSRBAR
Jon Loeliger707ba162006-08-03 16:27:57 -050065 bus-frequency = <0>;
66
67 i2c@3000 {
68 device_type = "i2c";
69 compatible = "fsl-i2c";
70 reg = <3000 100>;
71 interrupts = <2b 2>;
Kumar Gala6d9065d2007-02-17 16:09:56 -060072 interrupt-parent = <&mpic>;
Jon Loeliger707ba162006-08-03 16:27:57 -050073 dfsrr;
74 };
75
76 i2c@3100 {
77 device_type = "i2c";
78 compatible = "fsl-i2c";
79 reg = <3100 100>;
80 interrupts = <2b 2>;
Kumar Gala6d9065d2007-02-17 16:09:56 -060081 interrupt-parent = <&mpic>;
Jon Loeliger707ba162006-08-03 16:27:57 -050082 dfsrr;
83 };
84
85 mdio@24520 {
86 #address-cells = <1>;
87 #size-cells = <0>;
88 device_type = "mdio";
89 compatible = "gianfar";
90 reg = <24520 20>;
Kumar Gala6d9065d2007-02-17 16:09:56 -060091 phy0: ethernet-phy@0 {
92 interrupt-parent = <&mpic>;
Kumar Galab533f8a2007-07-03 02:35:35 -050093 interrupts = <a 1>;
Jon Loeliger707ba162006-08-03 16:27:57 -050094 reg = <0>;
95 device_type = "ethernet-phy";
96 };
Kumar Gala6d9065d2007-02-17 16:09:56 -060097 phy1: ethernet-phy@1 {
98 interrupt-parent = <&mpic>;
Kumar Galab533f8a2007-07-03 02:35:35 -050099 interrupts = <a 1>;
Jon Loeliger707ba162006-08-03 16:27:57 -0500100 reg = <1>;
101 device_type = "ethernet-phy";
102 };
Kumar Gala6d9065d2007-02-17 16:09:56 -0600103 phy2: ethernet-phy@2 {
104 interrupt-parent = <&mpic>;
Kumar Galab533f8a2007-07-03 02:35:35 -0500105 interrupts = <a 1>;
Jon Loeliger707ba162006-08-03 16:27:57 -0500106 reg = <2>;
107 device_type = "ethernet-phy";
108 };
Kumar Gala6d9065d2007-02-17 16:09:56 -0600109 phy3: ethernet-phy@3 {
110 interrupt-parent = <&mpic>;
Kumar Galab533f8a2007-07-03 02:35:35 -0500111 interrupts = <a 1>;
Jon Loeliger707ba162006-08-03 16:27:57 -0500112 reg = <3>;
113 device_type = "ethernet-phy";
114 };
115 };
116
117 ethernet@24000 {
118 #address-cells = <1>;
119 #size-cells = <0>;
120 device_type = "network";
121 model = "TSEC";
122 compatible = "gianfar";
123 reg = <24000 1000>;
Timur Tabieae98262007-06-22 14:33:15 -0500124 /*
125 * mac-address is deprecated and will be removed
126 * in 2.6.25. Only recent versions of
127 * U-Boot support local-mac-address, however.
128 */
129 mac-address = [ 00 00 00 00 00 00 ];
130 local-mac-address = [ 00 00 00 00 00 00 ];
Jon Loeliger707ba162006-08-03 16:27:57 -0500131 interrupts = <1d 2 1e 2 22 2>;
Kumar Gala6d9065d2007-02-17 16:09:56 -0600132 interrupt-parent = <&mpic>;
133 phy-handle = <&phy0>;
Jon Loeliger707ba162006-08-03 16:27:57 -0500134 };
135
136 ethernet@25000 {
137 #address-cells = <1>;
138 #size-cells = <0>;
139 device_type = "network";
140 model = "TSEC";
141 compatible = "gianfar";
142 reg = <25000 1000>;
Timur Tabieae98262007-06-22 14:33:15 -0500143 /*
144 * mac-address is deprecated and will be removed
145 * in 2.6.25. Only recent versions of
146 * U-Boot support local-mac-address, however.
147 */
148 mac-address = [ 00 00 00 00 00 00 ];
149 local-mac-address = [ 00 00 00 00 00 00 ];
Jon Loeliger707ba162006-08-03 16:27:57 -0500150 interrupts = <23 2 24 2 28 2>;
Kumar Gala6d9065d2007-02-17 16:09:56 -0600151 interrupt-parent = <&mpic>;
152 phy-handle = <&phy1>;
Jon Loeliger707ba162006-08-03 16:27:57 -0500153 };
154
155 ethernet@26000 {
156 #address-cells = <1>;
157 #size-cells = <0>;
158 device_type = "network";
159 model = "TSEC";
160 compatible = "gianfar";
161 reg = <26000 1000>;
Timur Tabieae98262007-06-22 14:33:15 -0500162 /*
163 * mac-address is deprecated and will be removed
164 * in 2.6.25. Only recent versions of
165 * U-Boot support local-mac-address, however.
166 */
167 mac-address = [ 00 00 00 00 00 00 ];
168 local-mac-address = [ 00 00 00 00 00 00 ];
Jon Loeliger707ba162006-08-03 16:27:57 -0500169 interrupts = <1F 2 20 2 21 2>;
Kumar Gala6d9065d2007-02-17 16:09:56 -0600170 interrupt-parent = <&mpic>;
171 phy-handle = <&phy2>;
Jon Loeliger707ba162006-08-03 16:27:57 -0500172 };
173
174 ethernet@27000 {
175 #address-cells = <1>;
176 #size-cells = <0>;
177 device_type = "network";
178 model = "TSEC";
179 compatible = "gianfar";
180 reg = <27000 1000>;
Timur Tabieae98262007-06-22 14:33:15 -0500181 /*
182 * mac-address is deprecated and will be removed
183 * in 2.6.25. Only recent versions of
184 * U-Boot support local-mac-address, however.
185 */
186 mac-address = [ 00 00 00 00 00 00 ];
187 local-mac-address = [ 00 00 00 00 00 00 ];
Jon Loeliger707ba162006-08-03 16:27:57 -0500188 interrupts = <25 2 26 2 27 2>;
Kumar Gala6d9065d2007-02-17 16:09:56 -0600189 interrupt-parent = <&mpic>;
190 phy-handle = <&phy3>;
Jon Loeliger707ba162006-08-03 16:27:57 -0500191 };
192 serial@4500 {
193 device_type = "serial";
194 compatible = "ns16550";
195 reg = <4500 100>;
196 clock-frequency = <0>;
197 interrupts = <2a 2>;
Kumar Gala6d9065d2007-02-17 16:09:56 -0600198 interrupt-parent = <&mpic>;
Jon Loeliger707ba162006-08-03 16:27:57 -0500199 };
200
201 serial@4600 {
202 device_type = "serial";
203 compatible = "ns16550";
204 reg = <4600 100>;
205 clock-frequency = <0>;
206 interrupts = <1c 2>;
Kumar Gala6d9065d2007-02-17 16:09:56 -0600207 interrupt-parent = <&mpic>;
Jon Loeliger707ba162006-08-03 16:27:57 -0500208 };
209
210 pci@8000 {
211 compatible = "86xx";
212 device_type = "pci";
213 #interrupt-cells = <1>;
214 #size-cells = <2>;
215 #address-cells = <3>;
216 reg = <8000 1000>;
Zhang Weibf7c0362007-05-22 11:38:26 +0800217 bus-range = <0 ff>;
Jon Loeliger707ba162006-08-03 16:27:57 -0500218 ranges = <02000000 0 80000000 80000000 0 20000000
219 01000000 0 00000000 e2000000 0 00100000>;
220 clock-frequency = <1fca055>;
Kumar Gala6d9065d2007-02-17 16:09:56 -0600221 interrupt-parent = <&mpic>;
Jon Loeliger707ba162006-08-03 16:27:57 -0500222 interrupts = <18 2>;
223 interrupt-map-mask = <f800 0 0 7>;
224 interrupt-map = <
225 /* IDSEL 0x11 */
Kumar Gala6d9065d2007-02-17 16:09:56 -0600226 8800 0 0 1 &i8259 3 2
227 8800 0 0 2 &i8259 4 2
228 8800 0 0 3 &i8259 5 2
229 8800 0 0 4 &i8259 6 2
Jon Loeliger707ba162006-08-03 16:27:57 -0500230
231 /* IDSEL 0x12 */
Kumar Gala6d9065d2007-02-17 16:09:56 -0600232 9000 0 0 1 &i8259 4 2
233 9000 0 0 2 &i8259 5 2
234 9000 0 0 3 &i8259 6 2
235 9000 0 0 4 &i8259 3 2
Jon Loeliger707ba162006-08-03 16:27:57 -0500236
237 /* IDSEL 0x13 */
Kumar Gala6d9065d2007-02-17 16:09:56 -0600238 9800 0 0 1 &i8259 0 0
239 9800 0 0 2 &i8259 0 0
240 9800 0 0 3 &i8259 0 0
241 9800 0 0 4 &i8259 0 0
Jon Loeliger707ba162006-08-03 16:27:57 -0500242
243 /* IDSEL 0x14 */
Kumar Gala6d9065d2007-02-17 16:09:56 -0600244 a000 0 0 1 &i8259 0 0
245 a000 0 0 2 &i8259 0 0
246 a000 0 0 3 &i8259 0 0
247 a000 0 0 4 &i8259 0 0
Jon Loeliger707ba162006-08-03 16:27:57 -0500248
249 /* IDSEL 0x15 */
Kumar Gala6d9065d2007-02-17 16:09:56 -0600250 a800 0 0 1 &i8259 0 0
251 a800 0 0 2 &i8259 0 0
252 a800 0 0 3 &i8259 0 0
253 a800 0 0 4 &i8259 0 0
Jon Loeliger707ba162006-08-03 16:27:57 -0500254
255 /* IDSEL 0x16 */
Kumar Gala6d9065d2007-02-17 16:09:56 -0600256 b000 0 0 1 &i8259 0 0
257 b000 0 0 2 &i8259 0 0
258 b000 0 0 3 &i8259 0 0
259 b000 0 0 4 &i8259 0 0
Jon Loeliger707ba162006-08-03 16:27:57 -0500260
261 /* IDSEL 0x17 */
Kumar Gala6d9065d2007-02-17 16:09:56 -0600262 b800 0 0 1 &i8259 0 0
263 b800 0 0 2 &i8259 0 0
264 b800 0 0 3 &i8259 0 0
265 b800 0 0 4 &i8259 0 0
Jon Loeliger707ba162006-08-03 16:27:57 -0500266
267 /* IDSEL 0x18 */
Kumar Gala6d9065d2007-02-17 16:09:56 -0600268 c000 0 0 1 &i8259 0 0
269 c000 0 0 2 &i8259 0 0
270 c000 0 0 3 &i8259 0 0
271 c000 0 0 4 &i8259 0 0
Jon Loeliger707ba162006-08-03 16:27:57 -0500272
273 /* IDSEL 0x19 */
Kumar Gala6d9065d2007-02-17 16:09:56 -0600274 c800 0 0 1 &i8259 0 0
275 c800 0 0 2 &i8259 0 0
276 c800 0 0 3 &i8259 0 0
277 c800 0 0 4 &i8259 0 0
Jon Loeliger707ba162006-08-03 16:27:57 -0500278
279 /* IDSEL 0x1a */
Kumar Gala6d9065d2007-02-17 16:09:56 -0600280 d000 0 0 1 &i8259 6 2
281 d000 0 0 2 &i8259 3 2
282 d000 0 0 3 &i8259 4 2
283 d000 0 0 4 &i8259 5 2
Jon Loeliger707ba162006-08-03 16:27:57 -0500284
285
286 /* IDSEL 0x1b */
Kumar Gala6d9065d2007-02-17 16:09:56 -0600287 d800 0 0 1 &i8259 5 2
288 d800 0 0 2 &i8259 0 0
289 d800 0 0 3 &i8259 0 0
290 d800 0 0 4 &i8259 0 0
Jon Loeliger707ba162006-08-03 16:27:57 -0500291
292 /* IDSEL 0x1c */
Kumar Gala6d9065d2007-02-17 16:09:56 -0600293 e000 0 0 1 &i8259 9 2
294 e000 0 0 2 &i8259 a 2
295 e000 0 0 3 &i8259 c 2
296 e000 0 0 4 &i8259 7 2
Jon Loeliger707ba162006-08-03 16:27:57 -0500297
298 /* IDSEL 0x1d */
Kumar Gala6d9065d2007-02-17 16:09:56 -0600299 e800 0 0 1 &i8259 9 2
300 e800 0 0 2 &i8259 a 2
301 e800 0 0 3 &i8259 b 2
302 e800 0 0 4 &i8259 0 0
Jon Loeliger707ba162006-08-03 16:27:57 -0500303
304 /* IDSEL 0x1e */
Kumar Gala6d9065d2007-02-17 16:09:56 -0600305 f000 0 0 1 &i8259 c 2
306 f000 0 0 2 &i8259 0 0
307 f000 0 0 3 &i8259 0 0
308 f000 0 0 4 &i8259 0 0
Jon Loeliger707ba162006-08-03 16:27:57 -0500309
310 /* IDSEL 0x1f */
Kumar Gala6d9065d2007-02-17 16:09:56 -0600311 f800 0 0 1 &i8259 6 2
312 f800 0 0 2 &i8259 0 0
313 f800 0 0 3 &i8259 0 0
314 f800 0 0 4 &i8259 0 0
Jon Loeliger707ba162006-08-03 16:27:57 -0500315 >;
Wade Farnsworthdfac6fa2007-06-04 13:24:47 -0700316 uli1575@0 {
317 reg = <0 0 0 0 0>;
318 #size-cells = <2>;
319 #address-cells = <3>;
320 ranges = <02000000 0 80000000
321 02000000 0 80000000
322 0 20000000
323 01000000 0 00000000
324 01000000 0 00000000
325 0 00100000>;
326
327 pci_bridge@0 {
328 reg = <0 0 0 0 0>;
329 #size-cells = <2>;
330 #address-cells = <3>;
331 ranges = <02000000 0 80000000
332 02000000 0 80000000
333 0 20000000
334 01000000 0 00000000
335 01000000 0 00000000
336 0 00100000>;
337
338 isa@1e {
339 device_type = "isa";
340 #interrupt-cells = <2>;
341 #size-cells = <1>;
342 #address-cells = <2>;
343 reg = <f000 0 0 0 0>;
344 ranges = <1 0 01000000 0 0
345 00001000>;
346 interrupt-parent = <&i8259>;
347
348 i8259: interrupt-controller@20 {
349 reg = <1 20 2
350 1 a0 2
351 1 4d0 2>;
352 clock-frequency = <0>;
353 interrupt-controller;
354 device_type = "interrupt-controller";
355 #address-cells = <0>;
356 #interrupt-cells = <2>;
357 built-in;
358 compatible = "chrp,iic";
Kumar Galab533f8a2007-07-03 02:35:35 -0500359 interrupts = <9 2>;
Wade Farnsworthdfac6fa2007-06-04 13:24:47 -0700360 interrupt-parent =
361 <&mpic>;
362 };
363
364 i8042@60 {
365 #size-cells = <0>;
366 #address-cells = <1>;
367 reg = <1 60 1 1 64 1>;
368 interrupts = <1 3 c 3>;
369 interrupt-parent =
370 <&i8259>;
371
372 keyboard@0 {
373 reg = <0>;
374 compatible = "pnpPNP,303";
375 };
376
377 mouse@1 {
378 reg = <1>;
379 compatible = "pnpPNP,f03";
380 };
381 };
382
383 rtc@70 {
384 compatible =
385 "pnpPNP,b00";
386 reg = <1 70 2>;
387 };
388
389 gpio@400 {
390 reg = <1 400 80>;
391 };
392 };
393 };
Jon Loeliger707ba162006-08-03 16:27:57 -0500394 };
395
396 };
Zhang Weie0e3c8d2007-03-07 11:47:41 -0600397
398 pci@9000 {
399 compatible = "86xx";
400 device_type = "pci";
401 #interrupt-cells = <1>;
402 #size-cells = <2>;
403 #address-cells = <3>;
404 reg = <9000 1000>;
405 bus-range = <0 ff>;
406 ranges = <02000000 0 a0000000 a0000000 0 20000000
407 01000000 0 00000000 e3000000 0 00100000>;
408 clock-frequency = <1fca055>;
409 interrupt-parent = <&mpic>;
410 interrupts = <19 2>;
411 interrupt-map-mask = <f800 0 0 7>;
412 interrupt-map = <
413 /* IDSEL 0x0 */
Kumar Galab533f8a2007-07-03 02:35:35 -0500414 0000 0 0 1 &mpic 4 1
415 0000 0 0 2 &mpic 5 1
416 0000 0 0 3 &mpic 6 1
417 0000 0 0 4 &mpic 7 1
Zhang Weie0e3c8d2007-03-07 11:47:41 -0600418 >;
419 };
420
Kumar Gala6d9065d2007-02-17 16:09:56 -0600421 mpic: pic@40000 {
Jon Loeliger707ba162006-08-03 16:27:57 -0500422 clock-frequency = <0>;
423 interrupt-controller;
424 #address-cells = <0>;
425 #interrupt-cells = <2>;
426 reg = <40000 40000>;
427 built-in;
428 compatible = "chrp,open-pic";
429 device_type = "open-pic";
Kumar Gala6d9065d2007-02-17 16:09:56 -0600430 big-endian;
Jon Loeliger707ba162006-08-03 16:27:57 -0500431 };
432 };
433};