2 * Lite5200B board Device Tree Source
4 * Copyright 2006 Secret Lab Technologies Ltd.
5 * Grant Likely <grant.likely@secretlab.ca>
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.
14 * WARNING: Do not depend on this tree layout remaining static just yet.
15 * The MPC5200 device tree conventions are still in flux
16 * Keep an eye on the linuxppc-dev mailing list for more details
21 compatible = "lite5200b\0lite52xx\0mpc5200b\0mpc52xx";
33 d-cache-line-size = <20>;
34 i-cache-line-size = <20>;
35 d-cache-size = <4000>; // L1, 16K
36 i-cache-size = <4000>; // L1, 16K
37 timebase-frequency = <0>; // from bootloader
38 bus-frequency = <0>; // from bootloader
39 clock-frequency = <0>; // from bootloader
45 device_type = "memory";
46 reg = <00000000 10000000>; // 256MB
50 #interrupt-cells = <3>;
52 ranges = <0 f0000000 f0010000>;
53 reg = <f0000000 00010000>;
54 bus-frequency = <0>; // from bootloader
57 compatible = "mpc5200b-cdm\0mpc52xx-cdm";
62 // 5200 interrupts are encoded into two levels;
63 linux,phandle = <500>;
65 #interrupt-cells = <3>;
66 device_type = "interrupt-controller";
67 compatible = "mpc5200b-pic\0mpc52xx-pic";
72 gpt@600 { // General Purpose Timer
73 compatible = "mpc5200b-gpt\0mpc52xx-gpt";
77 interrupt-parent = <500>;
80 gpt@610 { // General Purpose Timer
81 compatible = "mpc5200b-gpt\0mpc52xx-gpt";
85 interrupt-parent = <500>;
88 gpt@620 { // General Purpose Timer
89 compatible = "mpc5200b-gpt\0mpc52xx-gpt";
93 interrupt-parent = <500>;
96 gpt@630 { // General Purpose Timer
97 compatible = "mpc5200b-gpt\0mpc52xx-gpt";
100 interrupts = <1 c 0>;
101 interrupt-parent = <500>;
104 gpt@640 { // General Purpose Timer
105 compatible = "mpc5200b-gpt\0mpc52xx-gpt";
108 interrupts = <1 d 0>;
109 interrupt-parent = <500>;
112 gpt@650 { // General Purpose Timer
113 compatible = "mpc5200b-gpt\0mpc52xx-gpt";
116 interrupts = <1 e 0>;
117 interrupt-parent = <500>;
120 gpt@660 { // General Purpose Timer
121 compatible = "mpc5200b-gpt\0mpc52xx-gpt";
124 interrupts = <1 f 0>;
125 interrupt-parent = <500>;
128 gpt@670 { // General Purpose Timer
129 compatible = "mpc5200b-gpt\0mpc52xx-gpt";
132 interrupts = <1 10 0>;
133 interrupt-parent = <500>;
136 rtc@800 { // Real time clock
137 compatible = "mpc5200b-rtc\0mpc52xx-rtc";
140 interrupts = <1 5 0 1 6 0>;
141 interrupt-parent = <500>;
145 device_type = "mscan";
146 compatible = "mpc5200b-mscan\0mpc52xx-mscan";
147 interrupts = <2 11 0>;
148 interrupt-parent = <500>;
153 device_type = "mscan";
154 compatible = "mpc5200b-mscan\0mpc52xx-mscan";
155 interrupts = <1 12 0>;
156 interrupt-parent = <500>;
161 compatible = "mpc5200b-gpio\0mpc52xx-gpio";
163 interrupts = <1 7 0>;
164 interrupt-parent = <500>;
168 compatible = "mpc5200b-gpio-wkup\0mpc52xx-gpio-wkup";
170 interrupts = <1 8 0 0 3 0>;
171 interrupt-parent = <500>;
175 #interrupt-cells = <1>;
177 #address-cells = <3>;
179 compatible = "mpc5200b-pci\0mpc52xx-pci";
181 interrupt-map-mask = <f800 0 0 7>;
182 interrupt-map = <c000 0 0 1 500 0 0 3 // 1st slot
187 c800 0 0 1 500 1 1 3 // 2nd slot
190 c800 0 0 4 500 0 0 3>;
191 clock-frequency = <0>; // From boot loader
192 interrupts = <2 8 0 2 9 0 2 a 0>;
193 interrupt-parent = <500>;
195 ranges = <42000000 0 80000000 80000000 0 20000000
196 02000000 0 a0000000 a0000000 0 10000000
197 01000000 0 00000000 b0000000 0 01000000>;
202 compatible = "mpc5200b-spi\0mpc52xx-spi";
204 interrupts = <2 d 0 2 e 0>;
205 interrupt-parent = <500>;
209 device_type = "usb-ohci-be";
210 compatible = "mpc5200b-ohci\0mpc52xx-ohci\0ohci-be";
212 interrupts = <2 6 0>;
213 interrupt-parent = <500>;
217 device_type = "dma-controller";
218 compatible = "mpc5200b-bestcomm\0mpc52xx-bestcomm";
220 interrupts = <3 0 0 3 1 0 3 2 0 3 3 0
221 3 4 0 3 5 0 3 6 0 3 7 0
222 3 8 0 3 9 0 3 a 0 3 b 0
223 3 c 0 3 d 0 3 e 0 3 f 0>;
224 interrupt-parent = <500>;
228 compatible = "mpc5200b-xlb\0mpc52xx-xlb";
232 serial@2000 { // PSC1
233 device_type = "serial";
234 compatible = "mpc5200b-psc-uart\0mpc52xx-psc-uart";
235 port-number = <0>; // Logical port assignment
237 interrupts = <2 1 0>;
238 interrupt-parent = <500>;
241 // PSC2 in spi mode example
244 compatible = "mpc5200b-psc-spi\0mpc52xx-psc-spi";
246 interrupts = <2 2 0>;
247 interrupt-parent = <500>;
250 // PSC3 in CODEC mode example
252 device_type = "sound";
253 compatible = "mpc5200b-psc-i2s\0mpc52xx-psc-i2s";
255 interrupts = <2 3 0>;
256 interrupt-parent = <500>;
260 //serial@2600 { // PSC4
261 // device_type = "serial";
262 // compatible = "mpc5200b-psc-uart\0mpc52xx-psc-uart";
264 // interrupts = <2 b 0>;
265 // interrupt-parent = <500>;
269 //serial@2800 { // PSC5
270 // device_type = "serial";
271 // compatible = "mpc5200b-psc-uart\0mpc52xx-psc-uart";
273 // interrupts = <2 c 0>;
274 // interrupt-parent = <500>;
277 // PSC6 in AC97 mode example
279 device_type = "sound";
280 compatible = "mpc5200b-psc-ac97\0mpc52xx-psc-ac97";
282 interrupts = <2 4 0>;
283 interrupt-parent = <500>;
287 device_type = "network";
288 compatible = "mpc5200b-fec\0mpc52xx-fec";
290 mac-address = [ 02 03 04 05 06 07 ]; // Bad!
291 interrupts = <2 5 0>;
292 interrupt-parent = <500>;
297 compatible = "mpc5200b-ata\0mpc52xx-ata";
299 interrupts = <2 7 0>;
300 interrupt-parent = <500>;
305 compatible = "mpc5200b-i2c\0mpc52xx-i2c";
307 interrupts = <2 f 0>;
308 interrupt-parent = <500>;
313 compatible = "mpc5200b-i2c\0mpc52xx-i2c";
315 interrupts = <2 10 0>;
316 interrupt-parent = <500>;
319 device_type = "sram";
320 compatible = "mpc5200b-sram\0mpc52xx-sram\0sram";