blob: 49363f89cb712494e64db301eafb7ebbbbfac187 [file] [log] [blame]
Kim Phillips1b9a93e2006-08-29 18:13:31 -05001/*
2 * MPC8349E MDS Device Tree Source
3 *
4 * Copyright 2005, 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 model = "MPC8349EMDS";
Kumar Galad71a1dc2007-02-16 09:57:22 -060014 compatible = "MPC8349EMDS", "MPC834xMDS", "MPC83xxMDS";
Kim Phillips1b9a93e2006-08-29 18:13:31 -050015 #address-cells = <1>;
16 #size-cells = <1>;
17
18 cpus {
Kim Phillips1b9a93e2006-08-29 18:13:31 -050019 #address-cells = <1>;
20 #size-cells = <0>;
21
22 PowerPC,8349@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>; // from bootloader
30 bus-frequency = <0>; // from bootloader
31 clock-frequency = <0>; // from bootloader
Kim Phillips1b9a93e2006-08-29 18:13:31 -050032 };
33 };
34
35 memory {
36 device_type = "memory";
37 reg = <00000000 10000000>; // 256MB at 0
38 };
39
Li Yangea5b7a62007-02-07 13:51:09 +080040 bcsr@e2400000 {
41 device_type = "board-control";
42 reg = <e2400000 8000>;
43 };
44
Kim Phillips1b9a93e2006-08-29 18:13:31 -050045 soc8349@e0000000 {
46 #address-cells = <1>;
47 #size-cells = <1>;
Kim Phillips1b9a93e2006-08-29 18:13:31 -050048 device_type = "soc";
49 ranges = <0 e0000000 00100000>;
50 reg = <e0000000 00000200>;
51 bus-frequency = <0>;
52
53 wdt@200 {
54 device_type = "watchdog";
55 compatible = "mpc83xx_wdt";
56 reg = <200 100>;
57 };
58
59 i2c@3000 {
Kim Phillips27f498072007-11-08 13:37:06 -060060 #address-cells = <1>;
61 #size-cells = <0>;
Kim Phillips1b9a93e2006-08-29 18:13:31 -050062 device_type = "i2c";
63 compatible = "fsl-i2c";
64 reg = <3000 100>;
65 interrupts = <e 8>;
Kumar Galad71a1dc2007-02-16 09:57:22 -060066 interrupt-parent = < &ipic >;
Kim Phillips1b9a93e2006-08-29 18:13:31 -050067 dfsrr;
Kim Phillips27f498072007-11-08 13:37:06 -060068
69 rtc@68 {
70 compatible = "dallas,ds1374";
71 reg = <68>;
72 };
Kim Phillips1b9a93e2006-08-29 18:13:31 -050073 };
74
75 i2c@3100 {
Kim Phillips27f498072007-11-08 13:37:06 -060076 #address-cells = <1>;
77 #size-cells = <0>;
Kim Phillips1b9a93e2006-08-29 18:13:31 -050078 device_type = "i2c";
79 compatible = "fsl-i2c";
80 reg = <3100 100>;
81 interrupts = <f 8>;
Kumar Galad71a1dc2007-02-16 09:57:22 -060082 interrupt-parent = < &ipic >;
Kim Phillips1b9a93e2006-08-29 18:13:31 -050083 dfsrr;
84 };
85
86 spi@7000 {
87 device_type = "spi";
Peter Korsgaard33799e32007-10-03 17:44:58 +020088 compatible = "fsl_spi";
Kim Phillips1b9a93e2006-08-29 18:13:31 -050089 reg = <7000 1000>;
90 interrupts = <10 8>;
Kumar Galad71a1dc2007-02-16 09:57:22 -060091 interrupt-parent = < &ipic >;
Peter Korsgaard33799e32007-10-03 17:44:58 +020092 mode = "cpu";
Kim Phillips1b9a93e2006-08-29 18:13:31 -050093 };
94
95 /* phy type (ULPI or SERIAL) are only types supportted for MPH */
96 /* port = 0 or 1 */
97 usb@22000 {
98 device_type = "usb";
99 compatible = "fsl-usb2-mph";
100 reg = <22000 1000>;
101 #address-cells = <1>;
102 #size-cells = <0>;
Kumar Galad71a1dc2007-02-16 09:57:22 -0600103 interrupt-parent = < &ipic >;
104 interrupts = <27 8>;
Kim Phillips1b9a93e2006-08-29 18:13:31 -0500105 phy_type = "ulpi";
106 port1;
107 };
108 /* phy type (ULPI, UTMI, UTMI_WIDE, SERIAL) */
109 usb@23000 {
110 device_type = "usb";
111 compatible = "fsl-usb2-dr";
112 reg = <23000 1000>;
113 #address-cells = <1>;
114 #size-cells = <0>;
Kumar Galad71a1dc2007-02-16 09:57:22 -0600115 interrupt-parent = < &ipic >;
116 interrupts = <26 8>;
Li Yangea5b7a62007-02-07 13:51:09 +0800117 dr_mode = "otg";
Kim Phillips1b9a93e2006-08-29 18:13:31 -0500118 phy_type = "ulpi";
119 };
120
121 mdio@24520 {
122 device_type = "mdio";
123 compatible = "gianfar";
124 reg = <24520 20>;
125 #address-cells = <1>;
126 #size-cells = <0>;
Kumar Galad71a1dc2007-02-16 09:57:22 -0600127 phy0: ethernet-phy@0 {
128 interrupt-parent = < &ipic >;
129 interrupts = <11 8>;
Kim Phillips1b9a93e2006-08-29 18:13:31 -0500130 reg = <0>;
131 device_type = "ethernet-phy";
132 };
Kumar Galad71a1dc2007-02-16 09:57:22 -0600133 phy1: ethernet-phy@1 {
134 interrupt-parent = < &ipic >;
135 interrupts = <12 8>;
Kim Phillips1b9a93e2006-08-29 18:13:31 -0500136 reg = <1>;
137 device_type = "ethernet-phy";
138 };
139 };
140
141 ethernet@24000 {
142 device_type = "network";
143 model = "TSEC";
144 compatible = "gianfar";
145 reg = <24000 1000>;
Timur Tabieae98262007-06-22 14:33:15 -0500146 /*
147 * address is deprecated and will be removed
148 * in 2.6.25. Only recent versions of
149 * U-Boot support local-mac-address, however.
150 */
Kim Phillips1b9a93e2006-08-29 18:13:31 -0500151 address = [ 00 00 00 00 00 00 ];
152 local-mac-address = [ 00 00 00 00 00 00 ];
153 interrupts = <20 8 21 8 22 8>;
Kumar Galad71a1dc2007-02-16 09:57:22 -0600154 interrupt-parent = < &ipic >;
155 phy-handle = < &phy0 >;
Grant Likelyad25a4c2007-08-31 06:26:24 +1000156 linux,network-index = <0>;
Kim Phillips1b9a93e2006-08-29 18:13:31 -0500157 };
158
159 ethernet@25000 {
160 #address-cells = <1>;
161 #size-cells = <0>;
162 device_type = "network";
163 model = "TSEC";
164 compatible = "gianfar";
165 reg = <25000 1000>;
Timur Tabieae98262007-06-22 14:33:15 -0500166 /*
167 * address is deprecated and will be removed
168 * in 2.6.25. Only recent versions of
169 * U-Boot support local-mac-address, however.
170 */
Kim Phillips1b9a93e2006-08-29 18:13:31 -0500171 address = [ 00 00 00 00 00 00 ];
172 local-mac-address = [ 00 00 00 00 00 00 ];
173 interrupts = <23 8 24 8 25 8>;
Kumar Galad71a1dc2007-02-16 09:57:22 -0600174 interrupt-parent = < &ipic >;
175 phy-handle = < &phy1 >;
Grant Likelyad25a4c2007-08-31 06:26:24 +1000176 linux,network-index = <1>;
Kim Phillips1b9a93e2006-08-29 18:13:31 -0500177 };
178
179 serial@4500 {
180 device_type = "serial";
181 compatible = "ns16550";
182 reg = <4500 100>;
183 clock-frequency = <0>;
184 interrupts = <9 8>;
Kumar Galad71a1dc2007-02-16 09:57:22 -0600185 interrupt-parent = < &ipic >;
Kim Phillips1b9a93e2006-08-29 18:13:31 -0500186 };
187
188 serial@4600 {
189 device_type = "serial";
190 compatible = "ns16550";
191 reg = <4600 100>;
192 clock-frequency = <0>;
193 interrupts = <a 8>;
Kumar Galad71a1dc2007-02-16 09:57:22 -0600194 interrupt-parent = < &ipic >;
Kim Phillips1b9a93e2006-08-29 18:13:31 -0500195 };
196
Kim Phillips1b9a93e2006-08-29 18:13:31 -0500197 /* May need to remove if on a part without crypto engine */
198 crypto@30000 {
199 device_type = "crypto";
200 model = "SEC2";
201 compatible = "talitos";
202 reg = <30000 10000>;
203 interrupts = <b 8>;
Kumar Galad71a1dc2007-02-16 09:57:22 -0600204 interrupt-parent = < &ipic >;
Kim Phillips1b9a93e2006-08-29 18:13:31 -0500205 num-channels = <4>;
206 channel-fifo-len = <18>;
207 exec-units-mask = <0000007e>;
208 /* desc mask is for rev2.0,
209 * we need runtime fixup for >2.0 */
210 descriptor-types-mask = <01010ebf>;
211 };
212
213 /* IPIC
214 * interrupts cell = <intr #, sense>
215 * sense values match linux IORESOURCE_IRQ_* defines:
216 * sense == 8: Level, low assertion
217 * sense == 2: Edge, high-to-low change
218 */
Kumar Galad71a1dc2007-02-16 09:57:22 -0600219 ipic: pic@700 {
Kim Phillips1b9a93e2006-08-29 18:13:31 -0500220 interrupt-controller;
221 #address-cells = <0>;
222 #interrupt-cells = <2>;
223 reg = <700 100>;
Kim Phillips1b9a93e2006-08-29 18:13:31 -0500224 device_type = "ipic";
225 };
226 };
Kumar Gala1b3c5cda2007-09-12 18:23:46 -0500227
228 pci@e0008500 {
229 interrupt-map-mask = <f800 0 0 7>;
230 interrupt-map = <
231
232 /* IDSEL 0x11 */
233 8800 0 0 1 &ipic 14 8
234 8800 0 0 2 &ipic 15 8
235 8800 0 0 3 &ipic 16 8
236 8800 0 0 4 &ipic 17 8
237
238 /* IDSEL 0x12 */
239 9000 0 0 1 &ipic 16 8
240 9000 0 0 2 &ipic 17 8
241 9000 0 0 3 &ipic 14 8
242 9000 0 0 4 &ipic 15 8
243
244 /* IDSEL 0x13 */
245 9800 0 0 1 &ipic 17 8
246 9800 0 0 2 &ipic 14 8
247 9800 0 0 3 &ipic 15 8
248 9800 0 0 4 &ipic 16 8
249
250 /* IDSEL 0x15 */
251 a800 0 0 1 &ipic 14 8
252 a800 0 0 2 &ipic 15 8
253 a800 0 0 3 &ipic 16 8
254 a800 0 0 4 &ipic 17 8
255
256 /* IDSEL 0x16 */
257 b000 0 0 1 &ipic 17 8
258 b000 0 0 2 &ipic 14 8
259 b000 0 0 3 &ipic 15 8
260 b000 0 0 4 &ipic 16 8
261
262 /* IDSEL 0x17 */
263 b800 0 0 1 &ipic 16 8
264 b800 0 0 2 &ipic 17 8
265 b800 0 0 3 &ipic 14 8
266 b800 0 0 4 &ipic 15 8
267
268 /* IDSEL 0x18 */
269 c000 0 0 1 &ipic 15 8
270 c000 0 0 2 &ipic 16 8
271 c000 0 0 3 &ipic 17 8
272 c000 0 0 4 &ipic 14 8>;
273 interrupt-parent = < &ipic >;
274 interrupts = <42 8>;
275 bus-range = <0 0>;
276 ranges = <02000000 0 90000000 90000000 0 10000000
277 42000000 0 80000000 80000000 0 10000000
278 01000000 0 00000000 e2000000 0 00100000>;
279 clock-frequency = <3f940aa>;
280 #interrupt-cells = <1>;
281 #size-cells = <2>;
282 #address-cells = <3>;
283 reg = <e0008500 100>;
284 compatible = "fsl,mpc8349-pci";
285 device_type = "pci";
286 };
287
288 pci@e0008600 {
289 interrupt-map-mask = <f800 0 0 7>;
290 interrupt-map = <
291
292 /* IDSEL 0x11 */
293 8800 0 0 1 &ipic 14 8
294 8800 0 0 2 &ipic 15 8
295 8800 0 0 3 &ipic 16 8
296 8800 0 0 4 &ipic 17 8
297
298 /* IDSEL 0x12 */
299 9000 0 0 1 &ipic 16 8
300 9000 0 0 2 &ipic 17 8
301 9000 0 0 3 &ipic 14 8
302 9000 0 0 4 &ipic 15 8
303
304 /* IDSEL 0x13 */
305 9800 0 0 1 &ipic 17 8
306 9800 0 0 2 &ipic 14 8
307 9800 0 0 3 &ipic 15 8
308 9800 0 0 4 &ipic 16 8
309
310 /* IDSEL 0x15 */
311 a800 0 0 1 &ipic 14 8
312 a800 0 0 2 &ipic 15 8
313 a800 0 0 3 &ipic 16 8
314 a800 0 0 4 &ipic 17 8
315
316 /* IDSEL 0x16 */
317 b000 0 0 1 &ipic 17 8
318 b000 0 0 2 &ipic 14 8
319 b000 0 0 3 &ipic 15 8
320 b000 0 0 4 &ipic 16 8
321
322 /* IDSEL 0x17 */
323 b800 0 0 1 &ipic 16 8
324 b800 0 0 2 &ipic 17 8
325 b800 0 0 3 &ipic 14 8
326 b800 0 0 4 &ipic 15 8
327
328 /* IDSEL 0x18 */
329 c000 0 0 1 &ipic 15 8
330 c000 0 0 2 &ipic 16 8
331 c000 0 0 3 &ipic 17 8
332 c000 0 0 4 &ipic 14 8>;
333 interrupt-parent = < &ipic >;
334 interrupts = <42 8>;
335 bus-range = <0 0>;
336 ranges = <02000000 0 b0000000 b0000000 0 10000000
337 42000000 0 a0000000 a0000000 0 10000000
338 01000000 0 00000000 e2100000 0 00100000>;
339 clock-frequency = <3f940aa>;
340 #interrupt-cells = <1>;
341 #size-cells = <2>;
342 #address-cells = <3>;
343 reg = <e0008600 100>;
344 compatible = "fsl,mpc8349-pci";
345 device_type = "pci";
346 };
Kim Phillips1b9a93e2006-08-29 18:13:31 -0500347};