blob: c27e2fff5d58372056dd6d20314e4c2baea2f84c [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 {
60 device_type = "i2c";
61 compatible = "fsl-i2c";
62 reg = <3000 100>;
63 interrupts = <e 8>;
Kumar Galad71a1dc2007-02-16 09:57:22 -060064 interrupt-parent = < &ipic >;
Kim Phillips1b9a93e2006-08-29 18:13:31 -050065 dfsrr;
66 };
67
68 i2c@3100 {
69 device_type = "i2c";
70 compatible = "fsl-i2c";
71 reg = <3100 100>;
72 interrupts = <f 8>;
Kumar Galad71a1dc2007-02-16 09:57:22 -060073 interrupt-parent = < &ipic >;
Kim Phillips1b9a93e2006-08-29 18:13:31 -050074 dfsrr;
75 };
76
77 spi@7000 {
78 device_type = "spi";
79 compatible = "mpc83xx_spi";
80 reg = <7000 1000>;
81 interrupts = <10 8>;
Kumar Galad71a1dc2007-02-16 09:57:22 -060082 interrupt-parent = < &ipic >;
Kim Phillips1b9a93e2006-08-29 18:13:31 -050083 mode = <0>;
84 };
85
86 /* phy type (ULPI or SERIAL) are only types supportted for MPH */
87 /* port = 0 or 1 */
88 usb@22000 {
89 device_type = "usb";
90 compatible = "fsl-usb2-mph";
91 reg = <22000 1000>;
92 #address-cells = <1>;
93 #size-cells = <0>;
Kumar Galad71a1dc2007-02-16 09:57:22 -060094 interrupt-parent = < &ipic >;
95 interrupts = <27 8>;
Kim Phillips1b9a93e2006-08-29 18:13:31 -050096 phy_type = "ulpi";
97 port1;
98 };
99 /* phy type (ULPI, UTMI, UTMI_WIDE, SERIAL) */
100 usb@23000 {
101 device_type = "usb";
102 compatible = "fsl-usb2-dr";
103 reg = <23000 1000>;
104 #address-cells = <1>;
105 #size-cells = <0>;
Kumar Galad71a1dc2007-02-16 09:57:22 -0600106 interrupt-parent = < &ipic >;
107 interrupts = <26 8>;
Li Yangea5b7a62007-02-07 13:51:09 +0800108 dr_mode = "otg";
Kim Phillips1b9a93e2006-08-29 18:13:31 -0500109 phy_type = "ulpi";
110 };
111
112 mdio@24520 {
113 device_type = "mdio";
114 compatible = "gianfar";
115 reg = <24520 20>;
116 #address-cells = <1>;
117 #size-cells = <0>;
Kumar Galad71a1dc2007-02-16 09:57:22 -0600118 phy0: ethernet-phy@0 {
119 interrupt-parent = < &ipic >;
120 interrupts = <11 8>;
Kim Phillips1b9a93e2006-08-29 18:13:31 -0500121 reg = <0>;
122 device_type = "ethernet-phy";
123 };
Kumar Galad71a1dc2007-02-16 09:57:22 -0600124 phy1: ethernet-phy@1 {
125 interrupt-parent = < &ipic >;
126 interrupts = <12 8>;
Kim Phillips1b9a93e2006-08-29 18:13:31 -0500127 reg = <1>;
128 device_type = "ethernet-phy";
129 };
130 };
131
132 ethernet@24000 {
133 device_type = "network";
134 model = "TSEC";
135 compatible = "gianfar";
136 reg = <24000 1000>;
Timur Tabieae98262007-06-22 14:33:15 -0500137 /*
138 * 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 */
Kim Phillips1b9a93e2006-08-29 18:13:31 -0500142 address = [ 00 00 00 00 00 00 ];
143 local-mac-address = [ 00 00 00 00 00 00 ];
144 interrupts = <20 8 21 8 22 8>;
Kumar Galad71a1dc2007-02-16 09:57:22 -0600145 interrupt-parent = < &ipic >;
146 phy-handle = < &phy0 >;
Grant Likelyad25a4c2007-08-31 06:26:24 +1000147 linux,network-index = <0>;
Kim Phillips1b9a93e2006-08-29 18:13:31 -0500148 };
149
150 ethernet@25000 {
151 #address-cells = <1>;
152 #size-cells = <0>;
153 device_type = "network";
154 model = "TSEC";
155 compatible = "gianfar";
156 reg = <25000 1000>;
Timur Tabieae98262007-06-22 14:33:15 -0500157 /*
158 * 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 */
Kim Phillips1b9a93e2006-08-29 18:13:31 -0500162 address = [ 00 00 00 00 00 00 ];
163 local-mac-address = [ 00 00 00 00 00 00 ];
164 interrupts = <23 8 24 8 25 8>;
Kumar Galad71a1dc2007-02-16 09:57:22 -0600165 interrupt-parent = < &ipic >;
166 phy-handle = < &phy1 >;
Grant Likelyad25a4c2007-08-31 06:26:24 +1000167 linux,network-index = <1>;
Kim Phillips1b9a93e2006-08-29 18:13:31 -0500168 };
169
170 serial@4500 {
171 device_type = "serial";
172 compatible = "ns16550";
173 reg = <4500 100>;
174 clock-frequency = <0>;
175 interrupts = <9 8>;
Kumar Galad71a1dc2007-02-16 09:57:22 -0600176 interrupt-parent = < &ipic >;
Kim Phillips1b9a93e2006-08-29 18:13:31 -0500177 };
178
179 serial@4600 {
180 device_type = "serial";
181 compatible = "ns16550";
182 reg = <4600 100>;
183 clock-frequency = <0>;
184 interrupts = <a 8>;
Kumar Galad71a1dc2007-02-16 09:57:22 -0600185 interrupt-parent = < &ipic >;
Kim Phillips1b9a93e2006-08-29 18:13:31 -0500186 };
187
Kim Phillips1b9a93e2006-08-29 18:13:31 -0500188 /* May need to remove if on a part without crypto engine */
189 crypto@30000 {
190 device_type = "crypto";
191 model = "SEC2";
192 compatible = "talitos";
193 reg = <30000 10000>;
194 interrupts = <b 8>;
Kumar Galad71a1dc2007-02-16 09:57:22 -0600195 interrupt-parent = < &ipic >;
Kim Phillips1b9a93e2006-08-29 18:13:31 -0500196 num-channels = <4>;
197 channel-fifo-len = <18>;
198 exec-units-mask = <0000007e>;
199 /* desc mask is for rev2.0,
200 * we need runtime fixup for >2.0 */
201 descriptor-types-mask = <01010ebf>;
202 };
203
204 /* IPIC
205 * interrupts cell = <intr #, sense>
206 * sense values match linux IORESOURCE_IRQ_* defines:
207 * sense == 8: Level, low assertion
208 * sense == 2: Edge, high-to-low change
209 */
Kumar Galad71a1dc2007-02-16 09:57:22 -0600210 ipic: pic@700 {
Kim Phillips1b9a93e2006-08-29 18:13:31 -0500211 interrupt-controller;
212 #address-cells = <0>;
213 #interrupt-cells = <2>;
214 reg = <700 100>;
Kim Phillips1b9a93e2006-08-29 18:13:31 -0500215 device_type = "ipic";
216 };
217 };
Kumar Gala1b3c5cda2007-09-12 18:23:46 -0500218
219 pci@e0008500 {
220 interrupt-map-mask = <f800 0 0 7>;
221 interrupt-map = <
222
223 /* IDSEL 0x11 */
224 8800 0 0 1 &ipic 14 8
225 8800 0 0 2 &ipic 15 8
226 8800 0 0 3 &ipic 16 8
227 8800 0 0 4 &ipic 17 8
228
229 /* IDSEL 0x12 */
230 9000 0 0 1 &ipic 16 8
231 9000 0 0 2 &ipic 17 8
232 9000 0 0 3 &ipic 14 8
233 9000 0 0 4 &ipic 15 8
234
235 /* IDSEL 0x13 */
236 9800 0 0 1 &ipic 17 8
237 9800 0 0 2 &ipic 14 8
238 9800 0 0 3 &ipic 15 8
239 9800 0 0 4 &ipic 16 8
240
241 /* IDSEL 0x15 */
242 a800 0 0 1 &ipic 14 8
243 a800 0 0 2 &ipic 15 8
244 a800 0 0 3 &ipic 16 8
245 a800 0 0 4 &ipic 17 8
246
247 /* IDSEL 0x16 */
248 b000 0 0 1 &ipic 17 8
249 b000 0 0 2 &ipic 14 8
250 b000 0 0 3 &ipic 15 8
251 b000 0 0 4 &ipic 16 8
252
253 /* IDSEL 0x17 */
254 b800 0 0 1 &ipic 16 8
255 b800 0 0 2 &ipic 17 8
256 b800 0 0 3 &ipic 14 8
257 b800 0 0 4 &ipic 15 8
258
259 /* IDSEL 0x18 */
260 c000 0 0 1 &ipic 15 8
261 c000 0 0 2 &ipic 16 8
262 c000 0 0 3 &ipic 17 8
263 c000 0 0 4 &ipic 14 8>;
264 interrupt-parent = < &ipic >;
265 interrupts = <42 8>;
266 bus-range = <0 0>;
267 ranges = <02000000 0 90000000 90000000 0 10000000
268 42000000 0 80000000 80000000 0 10000000
269 01000000 0 00000000 e2000000 0 00100000>;
270 clock-frequency = <3f940aa>;
271 #interrupt-cells = <1>;
272 #size-cells = <2>;
273 #address-cells = <3>;
274 reg = <e0008500 100>;
275 compatible = "fsl,mpc8349-pci";
276 device_type = "pci";
277 };
278
279 pci@e0008600 {
280 interrupt-map-mask = <f800 0 0 7>;
281 interrupt-map = <
282
283 /* IDSEL 0x11 */
284 8800 0 0 1 &ipic 14 8
285 8800 0 0 2 &ipic 15 8
286 8800 0 0 3 &ipic 16 8
287 8800 0 0 4 &ipic 17 8
288
289 /* IDSEL 0x12 */
290 9000 0 0 1 &ipic 16 8
291 9000 0 0 2 &ipic 17 8
292 9000 0 0 3 &ipic 14 8
293 9000 0 0 4 &ipic 15 8
294
295 /* IDSEL 0x13 */
296 9800 0 0 1 &ipic 17 8
297 9800 0 0 2 &ipic 14 8
298 9800 0 0 3 &ipic 15 8
299 9800 0 0 4 &ipic 16 8
300
301 /* IDSEL 0x15 */
302 a800 0 0 1 &ipic 14 8
303 a800 0 0 2 &ipic 15 8
304 a800 0 0 3 &ipic 16 8
305 a800 0 0 4 &ipic 17 8
306
307 /* IDSEL 0x16 */
308 b000 0 0 1 &ipic 17 8
309 b000 0 0 2 &ipic 14 8
310 b000 0 0 3 &ipic 15 8
311 b000 0 0 4 &ipic 16 8
312
313 /* IDSEL 0x17 */
314 b800 0 0 1 &ipic 16 8
315 b800 0 0 2 &ipic 17 8
316 b800 0 0 3 &ipic 14 8
317 b800 0 0 4 &ipic 15 8
318
319 /* IDSEL 0x18 */
320 c000 0 0 1 &ipic 15 8
321 c000 0 0 2 &ipic 16 8
322 c000 0 0 3 &ipic 17 8
323 c000 0 0 4 &ipic 14 8>;
324 interrupt-parent = < &ipic >;
325 interrupts = <42 8>;
326 bus-range = <0 0>;
327 ranges = <02000000 0 b0000000 b0000000 0 10000000
328 42000000 0 a0000000 a0000000 0 10000000
329 01000000 0 00000000 e2100000 0 00100000>;
330 clock-frequency = <3f940aa>;
331 #interrupt-cells = <1>;
332 #size-cells = <2>;
333 #address-cells = <3>;
334 reg = <e0008600 100>;
335 compatible = "fsl,mpc8349-pci";
336 device_type = "pci";
337 };
Kim Phillips1b9a93e2006-08-29 18:13:31 -0500338};