blob: a98c46e00f80fbcff13b13cc70b181b1779cb1fd [file] [log] [blame]
Jon Loeligerd93daf82007-03-20 11:19:10 -05001/*
2 * MPC8544 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 = "MPC8544DS";
14 compatible = "MPC8544DS", "MPC85xxDS";
15 #address-cells = <1>;
16 #size-cells = <1>;
17
18 cpus {
19 #cpus = <1>;
20 #address-cells = <1>;
21 #size-cells = <0>;
22
23 PowerPC,8544@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>;
31 bus-frequency = <0>;
32 clock-frequency = <0>;
Jon Loeligerd93daf82007-03-20 11:19:10 -050033 };
34 };
35
36 memory {
37 device_type = "memory";
38 reg = <00000000 00000000>; // Filled by U-Boot
39 };
40
41 soc8544@e0000000 {
42 #address-cells = <1>;
43 #size-cells = <1>;
Jon Loeligerd93daf82007-03-20 11:19:10 -050044 device_type = "soc";
Kumar Galab66510c2007-08-16 23:55:55 -050045
Kumar Gala1b3c5cda2007-09-12 18:23:46 -050046 ranges = <00000000 e0000000 00100000>;
Kumar Galab66510c2007-08-16 23:55:55 -050047 reg = <e0000000 00001000>; // CCSRBAR 1M
Jon Loeligerd93daf82007-03-20 11:19:10 -050048 bus-frequency = <0>; // Filled out by uboot.
49
Kumar Gala4da421d2007-05-15 13:20:05 -050050 memory-controller@2000 {
51 compatible = "fsl,8544-memory-controller";
52 reg = <2000 1000>;
53 interrupt-parent = <&mpic>;
Kumar Galab533f8a2007-07-03 02:35:35 -050054 interrupts = <12 2>;
Kumar Gala4da421d2007-05-15 13:20:05 -050055 };
56
57 l2-cache-controller@20000 {
58 compatible = "fsl,8544-l2-cache-controller";
59 reg = <20000 1000>;
60 cache-line-size = <20>; // 32 bytes
61 cache-size = <40000>; // L2, 256K
62 interrupt-parent = <&mpic>;
Kumar Galab533f8a2007-07-03 02:35:35 -050063 interrupts = <10 2>;
Kumar Gala4da421d2007-05-15 13:20:05 -050064 };
65
Jon Loeligerd93daf82007-03-20 11:19:10 -050066 i2c@3000 {
Kumar Galaec9686c2007-12-11 23:17:24 -060067 #address-cells = <1>;
68 #size-cells = <0>;
69 cell-index = <0>;
Jon Loeligerd93daf82007-03-20 11:19:10 -050070 compatible = "fsl-i2c";
71 reg = <3000 100>;
Kumar Galab533f8a2007-07-03 02:35:35 -050072 interrupts = <2b 2>;
Jon Loeligerd93daf82007-03-20 11:19:10 -050073 interrupt-parent = <&mpic>;
74 dfsrr;
75 };
76
Kumar Galaec9686c2007-12-11 23:17:24 -060077 i2c@3100 {
78 #address-cells = <1>;
79 #size-cells = <0>;
80 cell-index = <1>;
81 compatible = "fsl-i2c";
82 reg = <3100 100>;
83 interrupts = <2b 2>;
84 interrupt-parent = <&mpic>;
85 dfsrr;
86 };
87
Jon Loeligerd93daf82007-03-20 11:19:10 -050088 mdio@24520 {
89 #address-cells = <1>;
90 #size-cells = <0>;
Kumar Galae77b28e2007-12-12 00:28:35 -060091 compatible = "fsl,gianfar-mdio";
Jon Loeligerd93daf82007-03-20 11:19:10 -050092 reg = <24520 20>;
Kumar Galae77b28e2007-12-12 00:28:35 -060093
Jon Loeligerd93daf82007-03-20 11:19:10 -050094 phy0: ethernet-phy@0 {
95 interrupt-parent = <&mpic>;
Kumar Galab533f8a2007-07-03 02:35:35 -050096 interrupts = <a 1>;
Jon Loeligerd93daf82007-03-20 11:19:10 -050097 reg = <0>;
98 device_type = "ethernet-phy";
99 };
100 phy1: ethernet-phy@1 {
101 interrupt-parent = <&mpic>;
Kumar Galab533f8a2007-07-03 02:35:35 -0500102 interrupts = <a 1>;
Jon Loeligerd93daf82007-03-20 11:19:10 -0500103 reg = <1>;
104 device_type = "ethernet-phy";
105 };
106 };
107
Kumar Galae77b28e2007-12-12 00:28:35 -0600108 enet0: ethernet@24000 {
109 cell-index = <0>;
Jon Loeligerd93daf82007-03-20 11:19:10 -0500110 device_type = "network";
111 model = "TSEC";
112 compatible = "gianfar";
113 reg = <24000 1000>;
114 local-mac-address = [ 00 00 00 00 00 00 ];
Kumar Galab533f8a2007-07-03 02:35:35 -0500115 interrupts = <1d 2 1e 2 22 2>;
Jon Loeligerd93daf82007-03-20 11:19:10 -0500116 interrupt-parent = <&mpic>;
117 phy-handle = <&phy0>;
Kumar Gala9a9bcf42007-07-26 00:07:36 -0500118 phy-connection-type = "rgmii-id";
Jon Loeligerd93daf82007-03-20 11:19:10 -0500119 };
120
Kumar Galae77b28e2007-12-12 00:28:35 -0600121 enet1: ethernet@26000 {
122 cell-index = <1>;
Jon Loeligerd93daf82007-03-20 11:19:10 -0500123 device_type = "network";
124 model = "TSEC";
125 compatible = "gianfar";
126 reg = <26000 1000>;
127 local-mac-address = [ 00 00 00 00 00 00 ];
Kumar Galab533f8a2007-07-03 02:35:35 -0500128 interrupts = <1f 2 20 2 21 2>;
Jon Loeligerd93daf82007-03-20 11:19:10 -0500129 interrupt-parent = <&mpic>;
130 phy-handle = <&phy1>;
Kumar Gala9a9bcf42007-07-26 00:07:36 -0500131 phy-connection-type = "rgmii-id";
Jon Loeligerd93daf82007-03-20 11:19:10 -0500132 };
133
134 serial@4500 {
135 device_type = "serial";
136 compatible = "ns16550";
137 reg = <4500 100>;
138 clock-frequency = <0>;
Kumar Galab533f8a2007-07-03 02:35:35 -0500139 interrupts = <2a 2>;
Jon Loeligerd93daf82007-03-20 11:19:10 -0500140 interrupt-parent = <&mpic>;
141 };
142
143 serial@4600 {
144 device_type = "serial";
145 compatible = "ns16550";
146 reg = <4600 100>;
147 clock-frequency = <0>;
Kumar Galab533f8a2007-07-03 02:35:35 -0500148 interrupts = <2a 2>;
Jon Loeligerd93daf82007-03-20 11:19:10 -0500149 interrupt-parent = <&mpic>;
150 };
151
Roy Zang10ce8c62007-07-13 17:35:33 +0800152 global-utilities@e0000 { //global utilities block
153 compatible = "fsl,mpc8548-guts";
154 reg = <e0000 1000>;
155 fsl,has-rstcr;
156 };
157
Jon Loeligerd93daf82007-03-20 11:19:10 -0500158 mpic: pic@40000 {
159 clock-frequency = <0>;
160 interrupt-controller;
161 #address-cells = <0>;
162 #interrupt-cells = <2>;
163 reg = <40000 40000>;
Jon Loeligerd93daf82007-03-20 11:19:10 -0500164 compatible = "chrp,open-pic";
165 device_type = "open-pic";
166 big-endian;
167 };
168 };
Kumar Gala1b3c5cda2007-09-12 18:23:46 -0500169
170 pci@e0008000 {
171 compatible = "fsl,mpc8540-pci";
172 device_type = "pci";
173 interrupt-map-mask = <f800 0 0 7>;
174 interrupt-map = <
175
176 /* IDSEL 0x11 J17 Slot 1 */
177 8800 0 0 1 &mpic 2 1
178 8800 0 0 2 &mpic 3 1
179 8800 0 0 3 &mpic 4 1
180 8800 0 0 4 &mpic 1 1
181
182 /* IDSEL 0x12 J16 Slot 2 */
183
184 9000 0 0 1 &mpic 3 1
185 9000 0 0 2 &mpic 4 1
186 9000 0 0 3 &mpic 2 1
187 9000 0 0 4 &mpic 1 1>;
188
189 interrupt-parent = <&mpic>;
190 interrupts = <18 2>;
191 bus-range = <0 ff>;
192 ranges = <02000000 0 c0000000 c0000000 0 20000000
193 01000000 0 00000000 e1000000 0 00010000>;
194 clock-frequency = <3f940aa>;
195 #interrupt-cells = <1>;
196 #size-cells = <2>;
197 #address-cells = <3>;
198 reg = <e0008000 1000>;
199 };
200
201 pcie@e0009000 {
202 compatible = "fsl,mpc8548-pcie";
203 device_type = "pci";
204 #interrupt-cells = <1>;
205 #size-cells = <2>;
206 #address-cells = <3>;
207 reg = <e0009000 1000>;
208 bus-range = <0 ff>;
209 ranges = <02000000 0 80000000 80000000 0 20000000
210 01000000 0 00000000 e1010000 0 00010000>;
211 clock-frequency = <1fca055>;
212 interrupt-parent = <&mpic>;
213 interrupts = <1a 2>;
214 interrupt-map-mask = <f800 0 0 7>;
215 interrupt-map = <
216 /* IDSEL 0x0 */
217 0000 0 0 1 &mpic 4 1
218 0000 0 0 2 &mpic 5 1
219 0000 0 0 3 &mpic 6 1
220 0000 0 0 4 &mpic 7 1
221 >;
222 pcie@0 {
223 reg = <0 0 0 0 0>;
224 #size-cells = <2>;
225 #address-cells = <3>;
226 device_type = "pci";
227 ranges = <02000000 0 80000000
228 02000000 0 80000000
229 0 20000000
230
231 01000000 0 00000000
232 01000000 0 00000000
233 0 00010000>;
234 };
235 };
236
237 pcie@e000a000 {
238 compatible = "fsl,mpc8548-pcie";
239 device_type = "pci";
240 #interrupt-cells = <1>;
241 #size-cells = <2>;
242 #address-cells = <3>;
243 reg = <e000a000 1000>;
244 bus-range = <0 ff>;
245 ranges = <02000000 0 a0000000 a0000000 0 10000000
246 01000000 0 00000000 e1020000 0 00010000>;
247 clock-frequency = <1fca055>;
248 interrupt-parent = <&mpic>;
249 interrupts = <19 2>;
250 interrupt-map-mask = <f800 0 0 7>;
251 interrupt-map = <
252 /* IDSEL 0x0 */
253 0000 0 0 1 &mpic 0 1
254 0000 0 0 2 &mpic 1 1
255 0000 0 0 3 &mpic 2 1
256 0000 0 0 4 &mpic 3 1
257 >;
258 pcie@0 {
259 reg = <0 0 0 0 0>;
260 #size-cells = <2>;
261 #address-cells = <3>;
262 device_type = "pci";
263 ranges = <02000000 0 a0000000
264 02000000 0 a0000000
265 0 10000000
266
267 01000000 0 00000000
268 01000000 0 00000000
269 0 00010000>;
270 };
271 };
272
273 pcie@e000b000 {
274 compatible = "fsl,mpc8548-pcie";
275 device_type = "pci";
276 #interrupt-cells = <1>;
277 #size-cells = <2>;
278 #address-cells = <3>;
279 reg = <e000b000 1000>;
280 bus-range = <0 ff>;
281 ranges = <02000000 0 b0000000 b0000000 0 00100000
282 01000000 0 00000000 b0100000 0 00100000>;
283 clock-frequency = <1fca055>;
284 interrupt-parent = <&mpic>;
285 interrupts = <1b 2>;
Kumar Galabebfa062007-11-19 23:36:23 -0600286 interrupt-map-mask = <ff00 0 0 1>;
Kumar Gala1b3c5cda2007-09-12 18:23:46 -0500287 interrupt-map = <
288 // IDSEL 0x1c USB
Kumar Galabebfa062007-11-19 23:36:23 -0600289 e000 0 0 1 &i8259 c 2
290 e100 0 0 1 &i8259 9 2
291 e200 0 0 1 &i8259 a 2
292 e300 0 0 1 &i8259 b 2
Kumar Gala1b3c5cda2007-09-12 18:23:46 -0500293
294 // IDSEL 0x1d Audio
Kumar Galabebfa062007-11-19 23:36:23 -0600295 e800 0 0 1 &i8259 6 2
Kumar Gala1b3c5cda2007-09-12 18:23:46 -0500296
297 // IDSEL 0x1e Legacy
Kumar Galabebfa062007-11-19 23:36:23 -0600298 f000 0 0 1 &i8259 7 2
299 f100 0 0 1 &i8259 7 2
Kumar Gala1b3c5cda2007-09-12 18:23:46 -0500300
301 // IDSEL 0x1f IDE/SATA
Kumar Galabebfa062007-11-19 23:36:23 -0600302 f800 0 0 1 &i8259 e 2
303 f900 0 0 1 &i8259 5 2
Kumar Gala1b3c5cda2007-09-12 18:23:46 -0500304 >;
305
306 pcie@0 {
307 reg = <0 0 0 0 0>;
308 #size-cells = <2>;
309 #address-cells = <3>;
310 device_type = "pci";
311 ranges = <02000000 0 b0000000
312 02000000 0 b0000000
313 0 00100000
314
315 01000000 0 00000000
316 01000000 0 00000000
317 0 00100000>;
318
319 uli1575@0 {
320 reg = <0 0 0 0 0>;
321 #size-cells = <2>;
322 #address-cells = <3>;
323 ranges = <02000000 0 b0000000
324 02000000 0 b0000000
325 0 00100000
326
327 01000000 0 00000000
328 01000000 0 00000000
329 0 00100000>;
330 isa@1e {
331 device_type = "isa";
332 #interrupt-cells = <2>;
333 #size-cells = <1>;
334 #address-cells = <2>;
335 reg = <f000 0 0 0 0>;
336 ranges = <1 0
337 01000000 0 0
338 00001000>;
339 interrupt-parent = <&i8259>;
340
341 i8259: interrupt-controller@20 {
342 reg = <1 20 2
343 1 a0 2
344 1 4d0 2>;
345 interrupt-controller;
346 device_type = "interrupt-controller";
347 #address-cells = <0>;
348 #interrupt-cells = <2>;
349 compatible = "chrp,iic";
350 interrupts = <9 2>;
351 interrupt-parent = <&mpic>;
352 };
353
354 i8042@60 {
355 #size-cells = <0>;
356 #address-cells = <1>;
357 reg = <1 60 1 1 64 1>;
358 interrupts = <1 3 c 3>;
359 interrupt-parent = <&i8259>;
360
361 keyboard@0 {
362 reg = <0>;
363 compatible = "pnpPNP,303";
364 };
365
366 mouse@1 {
367 reg = <1>;
368 compatible = "pnpPNP,f03";
369 };
370 };
371
372 rtc@70 {
373 compatible = "pnpPNP,b00";
374 reg = <1 70 2>;
375 };
376
377 gpio@400 {
378 reg = <1 400 80>;
379 };
380 };
381 };
382 };
383
384 };
Jon Loeligerd93daf82007-03-20 11:19:10 -0500385};