blob: 22ec39b5beeb8428ca65a1a71edfbe4dca0a2cb8 [file] [log] [blame]
Kumar Gala0052bc52008-01-24 23:53:03 -06001/*
2 * TQM 8560 Device Tree Source
3 *
4 * Copyright 2008 Freescale Semiconductor Inc.
Wolfgang Grandegger5399be72008-06-06 13:50:06 +02005 * Copyright 2008 Wolfgang Grandegger <wg@grandegger.com>
Kumar Gala0052bc52008-01-24 23:53:03 -06006 *
7 * This program is free software; you can redistribute it and/or modify it
8 * under the terms of the GNU General Public License as published by the
9 * Free Software Foundation; either version 2 of the License, or (at your
10 * option) any later version.
11 */
12
13/dts-v1/;
14
15/ {
Wolfgang Grandegger4fb035f2008-06-06 13:50:03 +020016 model = "tqc,tqm8560";
17 compatible = "tqc,tqm8560";
Kumar Gala0052bc52008-01-24 23:53:03 -060018 #address-cells = <1>;
19 #size-cells = <1>;
20
21 aliases {
22 ethernet0 = &enet0;
23 ethernet1 = &enet1;
24 ethernet2 = &enet2;
25 serial0 = &serial0;
26 serial1 = &serial1;
27 pci0 = &pci0;
28 };
29
30 cpus {
31 #address-cells = <1>;
32 #size-cells = <0>;
33
34 PowerPC,8560@0 {
35 device_type = "cpu";
36 reg = <0>;
37 d-cache-line-size = <32>;
38 i-cache-line-size = <32>;
39 d-cache-size = <32768>;
40 i-cache-size = <32768>;
41 timebase-frequency = <0>;
42 bus-frequency = <0>;
43 clock-frequency = <0>;
Kumar Galac0540652008-05-30 13:43:43 -050044 next-level-cache = <&L2>;
Kumar Gala0052bc52008-01-24 23:53:03 -060045 };
46 };
47
48 memory {
49 device_type = "memory";
50 reg = <0x00000000 0x10000000>;
51 };
52
Kumar Galaf67be812008-01-25 10:23:34 -060053 soc@e0000000 {
Kumar Gala0052bc52008-01-24 23:53:03 -060054 #address-cells = <1>;
55 #size-cells = <1>;
56 device_type = "soc";
57 ranges = <0x0 0xe0000000 0x100000>;
Kumar Gala0052bc52008-01-24 23:53:03 -060058 bus-frequency = <0>;
59 compatible = "fsl,mpc8560-immr", "simple-bus";
60
Kumar Galae1a22892009-04-22 13:17:42 -050061 ecm-law@0 {
62 compatible = "fsl,ecm-law";
63 reg = <0x0 0x1000>;
64 fsl,num-laws = <8>;
65 };
66
67 ecm@1000 {
68 compatible = "fsl,mpc8560-ecm", "fsl,ecm";
69 reg = <0x1000 0x1000>;
70 interrupts = <17 2>;
71 interrupt-parent = <&mpic>;
72 };
73
Kumar Gala0052bc52008-01-24 23:53:03 -060074 memory-controller@2000 {
Kumar Galafe671772009-03-31 08:46:25 -050075 compatible = "fsl,mpc8540-memory-controller";
Kumar Gala0052bc52008-01-24 23:53:03 -060076 reg = <0x2000 0x1000>;
77 interrupt-parent = <&mpic>;
78 interrupts = <18 2>;
79 };
80
Kumar Galac0540652008-05-30 13:43:43 -050081 L2: l2-cache-controller@20000 {
Kumar Galafe671772009-03-31 08:46:25 -050082 compatible = "fsl,mpc8540-l2-cache-controller";
Kumar Gala0052bc52008-01-24 23:53:03 -060083 reg = <0x20000 0x1000>;
84 cache-line-size = <32>;
85 cache-size = <0x40000>; // L2, 256K
86 interrupt-parent = <&mpic>;
87 interrupts = <16 2>;
88 };
89
90 i2c@3000 {
91 #address-cells = <1>;
92 #size-cells = <0>;
93 cell-index = <0>;
94 compatible = "fsl-i2c";
95 reg = <0x3000 0x100>;
96 interrupts = <43 2>;
97 interrupt-parent = <&mpic>;
98 dfsrr;
99
Wolfgang Grandegger6467cae2009-03-16 09:56:26 +0100100 dtt@48 {
Wolfgang Grandegger0f73a442009-01-29 13:49:17 +0100101 compatible = "national,lm75";
Wolfgang Grandegger6467cae2009-03-16 09:56:26 +0100102 reg = <0x48>;
Wolfgang Grandegger0f73a442009-01-29 13:49:17 +0100103 };
104
Kumar Gala0052bc52008-01-24 23:53:03 -0600105 rtc@68 {
106 compatible = "dallas,ds1337";
107 reg = <0x68>;
108 };
109 };
110
Kumar Galadee80552008-06-27 13:45:19 -0500111 dma@21300 {
112 #address-cells = <1>;
113 #size-cells = <1>;
114 compatible = "fsl,mpc8560-dma", "fsl,eloplus-dma";
115 reg = <0x21300 0x4>;
116 ranges = <0x0 0x21100 0x200>;
117 cell-index = <0>;
118 dma-channel@0 {
119 compatible = "fsl,mpc8560-dma-channel",
120 "fsl,eloplus-dma-channel";
121 reg = <0x0 0x80>;
122 cell-index = <0>;
123 interrupt-parent = <&mpic>;
124 interrupts = <20 2>;
125 };
126 dma-channel@80 {
127 compatible = "fsl,mpc8560-dma-channel",
128 "fsl,eloplus-dma-channel";
129 reg = <0x80 0x80>;
130 cell-index = <1>;
131 interrupt-parent = <&mpic>;
132 interrupts = <21 2>;
133 };
134 dma-channel@100 {
135 compatible = "fsl,mpc8560-dma-channel",
136 "fsl,eloplus-dma-channel";
137 reg = <0x100 0x80>;
138 cell-index = <2>;
139 interrupt-parent = <&mpic>;
140 interrupts = <22 2>;
141 };
142 dma-channel@180 {
143 compatible = "fsl,mpc8560-dma-channel",
144 "fsl,eloplus-dma-channel";
145 reg = <0x180 0x80>;
146 cell-index = <3>;
147 interrupt-parent = <&mpic>;
148 interrupts = <23 2>;
149 };
150 };
151
Kumar Gala0052bc52008-01-24 23:53:03 -0600152 enet0: ethernet@24000 {
Anton Vorontsov84ba4a52009-03-19 21:01:48 +0300153 #address-cells = <1>;
154 #size-cells = <1>;
Kumar Gala0052bc52008-01-24 23:53:03 -0600155 cell-index = <0>;
156 device_type = "network";
157 model = "TSEC";
158 compatible = "gianfar";
159 reg = <0x24000 0x1000>;
Anton Vorontsov84ba4a52009-03-19 21:01:48 +0300160 ranges = <0x0 0x24000 0x1000>;
Kumar Gala0052bc52008-01-24 23:53:03 -0600161 local-mac-address = [ 00 00 00 00 00 00 ];
162 interrupts = <29 2 30 2 34 2>;
163 interrupt-parent = <&mpic>;
Andy Flemingb31a1d82008-12-16 15:29:15 -0800164 tbi-handle = <&tbi0>;
Kumar Gala0052bc52008-01-24 23:53:03 -0600165 phy-handle = <&phy2>;
Anton Vorontsov84ba4a52009-03-19 21:01:48 +0300166
167 mdio@520 {
168 #address-cells = <1>;
169 #size-cells = <0>;
170 compatible = "fsl,gianfar-mdio";
171 reg = <0x520 0x20>;
172
173 phy1: ethernet-phy@1 {
174 interrupt-parent = <&mpic>;
175 interrupts = <8 1>;
176 reg = <1>;
177 device_type = "ethernet-phy";
178 };
179 phy2: ethernet-phy@2 {
180 interrupt-parent = <&mpic>;
181 interrupts = <8 1>;
182 reg = <2>;
183 device_type = "ethernet-phy";
184 };
185 phy3: ethernet-phy@3 {
186 interrupt-parent = <&mpic>;
187 interrupts = <8 1>;
188 reg = <3>;
189 device_type = "ethernet-phy";
190 };
191 tbi0: tbi-phy@11 {
192 reg = <0x11>;
193 device_type = "tbi-phy";
194 };
195 };
Kumar Gala0052bc52008-01-24 23:53:03 -0600196 };
197
198 enet1: ethernet@25000 {
Anton Vorontsov84ba4a52009-03-19 21:01:48 +0300199 #address-cells = <1>;
200 #size-cells = <1>;
Kumar Gala0052bc52008-01-24 23:53:03 -0600201 cell-index = <1>;
202 device_type = "network";
203 model = "TSEC";
204 compatible = "gianfar";
205 reg = <0x25000 0x1000>;
Anton Vorontsov84ba4a52009-03-19 21:01:48 +0300206 ranges = <0x0 0x25000 0x1000>;
Kumar Gala0052bc52008-01-24 23:53:03 -0600207 local-mac-address = [ 00 00 00 00 00 00 ];
208 interrupts = <35 2 36 2 40 2>;
209 interrupt-parent = <&mpic>;
Andy Flemingb31a1d82008-12-16 15:29:15 -0800210 tbi-handle = <&tbi1>;
Kumar Gala0052bc52008-01-24 23:53:03 -0600211 phy-handle = <&phy1>;
Anton Vorontsov84ba4a52009-03-19 21:01:48 +0300212
213 mdio@520 {
214 #address-cells = <1>;
215 #size-cells = <0>;
216 compatible = "fsl,gianfar-tbi";
217 reg = <0x520 0x20>;
218
219 tbi1: tbi-phy@11 {
220 reg = <0x11>;
221 device_type = "tbi-phy";
222 };
223 };
Kumar Gala0052bc52008-01-24 23:53:03 -0600224 };
225
226 mpic: pic@40000 {
227 interrupt-controller;
228 #address-cells = <0>;
229 #interrupt-cells = <2>;
230 reg = <0x40000 0x40000>;
231 device_type = "open-pic";
Kumar Galaacd4b712008-05-30 12:12:26 -0500232 compatible = "chrp,open-pic";
Kumar Gala0052bc52008-01-24 23:53:03 -0600233 };
234
235 cpm@919c0 {
236 #address-cells = <1>;
237 #size-cells = <1>;
238 compatible = "fsl,mpc8560-cpm", "fsl,cpm2", "simple-bus";
239 reg = <0x919c0 0x30>;
240 ranges;
241
242 muram@80000 {
243 #address-cells = <1>;
244 #size-cells = <1>;
245 ranges = <0 0x80000 0x10000>;
246
247 data@0 {
248 compatible = "fsl,cpm-muram-data";
249 reg = <0 0x4000 0x9000 0x2000>;
250 };
251 };
252
253 brg@919f0 {
254 compatible = "fsl,mpc8560-brg",
255 "fsl,cpm2-brg",
256 "fsl,cpm-brg";
257 reg = <0x919f0 0x10 0x915f0 0x10>;
258 clock-frequency = <0>;
259 };
260
261 cpmpic: pic@90c00 {
262 interrupt-controller;
263 #address-cells = <0>;
264 #interrupt-cells = <2>;
265 interrupts = <46 2>;
266 interrupt-parent = <&mpic>;
267 reg = <0x90c00 0x80>;
268 compatible = "fsl,mpc8560-cpm-pic", "fsl,cpm2-pic";
269 };
270
271 serial0: serial@91a00 {
272 device_type = "serial";
273 compatible = "fsl,mpc8560-scc-uart",
274 "fsl,cpm2-scc-uart";
275 reg = <0x91a00 0x20 0x88000 0x100>;
276 fsl,cpm-brg = <1>;
277 fsl,cpm-command = <0x800000>;
278 current-speed = <115200>;
279 interrupts = <40 8>;
280 interrupt-parent = <&cpmpic>;
281 };
282
283 serial1: serial@91a20 {
284 device_type = "serial";
285 compatible = "fsl,mpc8560-scc-uart",
286 "fsl,cpm2-scc-uart";
287 reg = <0x91a20 0x20 0x88100 0x100>;
288 fsl,cpm-brg = <2>;
289 fsl,cpm-command = <0x4a00000>;
290 current-speed = <115200>;
291 interrupts = <41 8>;
292 interrupt-parent = <&cpmpic>;
293 };
294
295 enet2: ethernet@91340 {
296 device_type = "network";
297 compatible = "fsl,mpc8560-fcc-enet",
298 "fsl,cpm2-fcc-enet";
299 reg = <0x91340 0x20 0x88600 0x100 0x913d0 0x1>;
300 local-mac-address = [ 00 00 00 00 00 00 ];
301 fsl,cpm-command = <0x1a400300>;
302 interrupts = <34 8>;
303 interrupt-parent = <&cpmpic>;
304 phy-handle = <&phy3>;
305 };
306 };
307 };
308
Wolfgang Grandegger5399be72008-06-06 13:50:06 +0200309 localbus@e0005000 {
310 compatible = "fsl,mpc8560-localbus", "fsl,pq3-localbus",
311 "simple-bus";
312 #address-cells = <2>;
313 #size-cells = <1>;
314 reg = <0xe0005000 0x100>; // BRx, ORx, etc.
315
316 ranges = <
317 0 0x0 0xfc000000 0x04000000 // NOR FLASH bank 1
318 1 0x0 0xf8000000 0x08000000 // NOR FLASH bank 0
319 2 0x0 0xe3000000 0x00008000 // CAN (2 x i82527)
320 >;
321
322 flash@1,0 {
323 #address-cells = <1>;
324 #size-cells = <1>;
325 compatible = "cfi-flash";
326 reg = <1 0x0 0x8000000>;
327 bank-width = <4>;
328 device-width = <1>;
329
330 partition@0 {
331 label = "kernel";
332 reg = <0x00000000 0x00200000>;
333 };
334 partition@200000 {
335 label = "root";
336 reg = <0x00200000 0x00300000>;
337 };
338 partition@500000 {
339 label = "user";
340 reg = <0x00500000 0x07a00000>;
341 };
342 partition@7f00000 {
343 label = "env1";
344 reg = <0x07f00000 0x00040000>;
345 };
346 partition@7f40000 {
347 label = "env2";
348 reg = <0x07f40000 0x00040000>;
349 };
350 partition@7f80000 {
351 label = "u-boot";
352 reg = <0x07f80000 0x00080000>;
353 read-only;
354 };
355 };
356
357 /* Note: CAN support needs be enabled in U-Boot */
358 can0@2,0 {
359 compatible = "intel,82527"; // Bosch CC770
360 reg = <2 0x0 0x100>;
Wolfgang Grandegger7a385242009-01-29 14:23:21 +0100361 interrupts = <4 1>;
Wolfgang Grandegger5399be72008-06-06 13:50:06 +0200362 interrupt-parent = <&mpic>;
363 };
364
365 can1@2,100 {
366 compatible = "intel,82527"; // Bosch CC770
367 reg = <2 0x100 0x100>;
Wolfgang Grandegger7a385242009-01-29 14:23:21 +0100368 interrupts = <4 1>;
Wolfgang Grandegger5399be72008-06-06 13:50:06 +0200369 interrupt-parent = <&mpic>;
370 };
371 };
372
Kumar Gala0052bc52008-01-24 23:53:03 -0600373 pci0: pci@e0008000 {
Kumar Gala0052bc52008-01-24 23:53:03 -0600374 #interrupt-cells = <1>;
375 #size-cells = <2>;
376 #address-cells = <3>;
377 compatible = "fsl,mpc8540-pcix", "fsl,mpc8540-pci";
378 device_type = "pci";
379 reg = <0xe0008000 0x1000>;
380 clock-frequency = <66666666>;
381 interrupt-map-mask = <0xf800 0x0 0x0 0x7>;
382 interrupt-map = <
383 /* IDSEL 28 */
384 0xe000 0 0 1 &mpic 2 1
Dmitry Eremin-Solenikov07c63832010-07-21 10:33:23 +0000385 0xe000 0 0 2 &mpic 3 1
386 0xe000 0 0 3 &mpic 6 1
387 0xe000 0 0 4 &mpic 5 1
388
389 /* IDSEL 11 */
390 0x5800 0 0 1 &mpic 6 1
391 0x5800 0 0 2 &mpic 5 1
392 >;
Kumar Gala0052bc52008-01-24 23:53:03 -0600393
394 interrupt-parent = <&mpic>;
395 interrupts = <24 2>;
396 bus-range = <0 0>;
397 ranges = <0x02000000 0 0x80000000 0x80000000 0 0x20000000
398 0x01000000 0 0x00000000 0xe2000000 0 0x01000000>;
399 };
400};