2 * MPC8610 HPCD Device Tree Source
4 * Copyright 2007-2008 Freescale Semiconductor Inc.
6 * This program is free software; you can redistribute it and/or modify it
7 * under the terms of the GNU General Public License Version 2 as published
8 * by the Free Software Foundation.
14 model = "MPC8610HPCD";
15 compatible = "fsl,MPC8610HPCD";
34 d-cache-line-size = <32>;
35 i-cache-line-size = <32>;
36 d-cache-size = <32768>; // L1
37 i-cache-size = <32768>; // L1
38 timebase-frequency = <0>; // From uboot
39 bus-frequency = <0>; // From uboot
40 clock-frequency = <0>; // From uboot
45 device_type = "memory";
46 reg = <0x00000000 0x20000000>; // 512M at 0x0
52 compatible = "fsl,mpc8610-elbc", "fsl,elbc", "simple-bus";
53 reg = <0xe0005000 0x1000>;
55 interrupt-parent = <&mpic>;
56 ranges = <0 0 0xf8000000 0x08000000
57 1 0 0xf0000000 0x08000000
58 2 0 0xe8400000 0x00008000
59 4 0 0xe8440000 0x00008000
60 5 0 0xe8480000 0x00008000
61 6 0 0xe84c0000 0x00008000
62 3 0 0xe8000000 0x00000020>;
65 compatible = "cfi-flash";
66 reg = <0 0 0x8000000>;
72 compatible = "cfi-flash";
73 reg = <1 0 0x8000000>;
79 compatible = "fsl,mpc8610-fcm-nand",
85 compatible = "fsl,mpc8610-fcm-nand",
91 compatible = "fsl,mpc8610-fcm-nand",
97 compatible = "fsl,mpc8610-fcm-nand",
103 compatible = "fsl,fpga-pixis";
109 #address-cells = <1>;
111 #interrupt-cells = <2>;
113 compatible = "fsl,mpc8610-immr", "simple-bus";
114 ranges = <0x0 0xe0000000 0x00100000>;
118 compatible = "fsl,mcm-law";
124 compatible = "fsl,mpc8610-mcm", "fsl,mcm";
125 reg = <0x1000 0x1000>;
127 interrupt-parent = <&mpic>;
131 #address-cells = <1>;
134 compatible = "fsl-i2c";
135 reg = <0x3000 0x100>;
137 interrupt-parent = <&mpic>;
141 compatible = "cirrus,cs4270";
143 /* MCLK source is a stand-alone oscillator */
144 clock-frequency = <12288000>;
149 #address-cells = <1>;
152 compatible = "fsl-i2c";
153 reg = <0x3100 0x100>;
155 interrupt-parent = <&mpic>;
159 serial0: serial@4500 {
161 device_type = "serial";
162 compatible = "ns16550";
163 reg = <0x4500 0x100>;
164 clock-frequency = <0>;
166 interrupt-parent = <&mpic>;
169 serial1: serial@4600 {
171 device_type = "serial";
172 compatible = "ns16550";
173 reg = <0x4600 0x100>;
174 clock-frequency = <0>;
176 interrupt-parent = <&mpic>;
180 compatible = "fsl,diu";
183 interrupt-parent = <&mpic>;
186 mpic: interrupt-controller@40000 {
187 interrupt-controller;
188 #address-cells = <0>;
189 #interrupt-cells = <2>;
190 reg = <0x40000 0x40000>;
191 compatible = "chrp,open-pic";
192 device_type = "open-pic";
196 compatible = "fsl,mpc8610-msi", "fsl,mpic-msi";
197 reg = <0x41600 0x80>;
198 msi-available-ranges = <0 0x100>;
208 interrupt-parent = <&mpic>;
211 global-utilities@e0000 {
212 compatible = "fsl,mpc8610-guts";
213 reg = <0xe0000 0x1000>;
218 compatible = "fsl,mpc8610-wdt";
219 reg = <0xe4000 0x100>;
223 compatible = "fsl,mpc8610-ssi";
225 reg = <0x16000 0x100>;
226 interrupt-parent = <&mpic>;
228 fsl,mode = "i2s-slave";
229 codec-handle = <&cs4270>;
230 fsl,playback-dma = <&dma00>;
231 fsl,capture-dma = <&dma01>;
232 fsl,fifo-depth = <8>;
236 compatible = "fsl,mpc8610-ssi";
238 reg = <0x16100 0x100>;
239 interrupt-parent = <&mpic>;
241 fsl,fifo-depth = <8>;
245 #address-cells = <1>;
247 compatible = "fsl,mpc8610-dma", "fsl,eloplus-dma";
249 reg = <0x21300 0x4>; /* DMA general status register */
250 ranges = <0x0 0x21100 0x200>;
252 dma00: dma-channel@0 {
253 compatible = "fsl,mpc8610-dma-channel",
254 "fsl,ssi-dma-channel";
257 interrupt-parent = <&mpic>;
260 dma01: dma-channel@1 {
261 compatible = "fsl,mpc8610-dma-channel",
262 "fsl,ssi-dma-channel";
265 interrupt-parent = <&mpic>;
269 compatible = "fsl,mpc8610-dma-channel",
270 "fsl,eloplus-dma-channel";
273 interrupt-parent = <&mpic>;
277 compatible = "fsl,mpc8610-dma-channel",
278 "fsl,eloplus-dma-channel";
281 interrupt-parent = <&mpic>;
287 #address-cells = <1>;
289 compatible = "fsl,mpc8610-dma", "fsl,eloplus-dma";
291 reg = <0xc300 0x4>; /* DMA general status register */
292 ranges = <0x0 0xc100 0x200>;
295 compatible = "fsl,mpc8610-dma-channel",
296 "fsl,eloplus-dma-channel";
299 interrupt-parent = <&mpic>;
303 compatible = "fsl,mpc8610-dma-channel",
304 "fsl,eloplus-dma-channel";
307 interrupt-parent = <&mpic>;
311 compatible = "fsl,mpc8610-dma-channel",
312 "fsl,eloplus-dma-channel";
315 interrupt-parent = <&mpic>;
319 compatible = "fsl,mpc8610-dma-channel",
320 "fsl,eloplus-dma-channel";
323 interrupt-parent = <&mpic>;
331 compatible = "fsl,mpc8610-pci";
333 #interrupt-cells = <1>;
335 #address-cells = <3>;
336 reg = <0xe0008000 0x1000>;
338 ranges = <0x02000000 0x0 0x80000000 0x80000000 0x0 0x10000000
339 0x01000000 0x0 0x00000000 0xe1000000 0x0 0x00100000>;
340 clock-frequency = <33333333>;
341 interrupt-parent = <&mpic>;
343 interrupt-map-mask = <0xf800 0 0 7>;
346 0x8800 0 0 1 &mpic 4 1
347 0x8800 0 0 2 &mpic 5 1
348 0x8800 0 0 3 &mpic 6 1
349 0x8800 0 0 4 &mpic 7 1
352 0x9000 0 0 1 &mpic 5 1
353 0x9000 0 0 2 &mpic 6 1
354 0x9000 0 0 3 &mpic 7 1
355 0x9000 0 0 4 &mpic 4 1
359 pci1: pcie@e000a000 {
360 compatible = "fsl,mpc8641-pcie";
362 #interrupt-cells = <1>;
364 #address-cells = <3>;
365 reg = <0xe000a000 0x1000>;
367 ranges = <0x02000000 0x0 0xa0000000 0xa0000000 0x0 0x10000000
368 0x01000000 0x0 0x00000000 0xe3000000 0x0 0x00100000>;
369 clock-frequency = <33333333>;
370 interrupt-parent = <&mpic>;
372 interrupt-map-mask = <0xf800 0 0 7>;
376 0xd800 0 0 1 &mpic 2 1
379 0xe000 0 0 1 &mpic 1 1
380 0xe000 0 0 2 &mpic 1 1
381 0xe000 0 0 3 &mpic 1 1
382 0xe000 0 0 4 &mpic 1 1
385 0xf800 0 0 1 &mpic 3 2
386 0xf800 0 0 2 &mpic 0 1
392 #address-cells = <3>;
394 ranges = <0x02000000 0x0 0xa0000000
395 0x02000000 0x0 0xa0000000
397 0x01000000 0x0 0x00000000
398 0x01000000 0x0 0x00000000
403 #address-cells = <3>;
404 ranges = <0x02000000 0x0 0xa0000000
405 0x02000000 0x0 0xa0000000
407 0x01000000 0x0 0x00000000
408 0x01000000 0x0 0x00000000
414 #address-cells = <2>;
415 reg = <0xf000 0 0 0 0>;
416 ranges = <1 0 0x01000000 0 0
420 compatible = "pnpPNP,b00";
428 pci2: pcie@e0009000 {
429 #address-cells = <3>;
431 #interrupt-cells = <1>;
433 compatible = "fsl,mpc8641-pcie";
434 reg = <0xe0009000 0x00001000>;
435 ranges = <0x02000000 0 0x90000000 0x90000000 0 0x10000000
436 0x01000000 0 0x00000000 0xe2000000 0 0x00100000>;
438 interrupt-map-mask = <0xf800 0 0 7>;
439 interrupt-map = <0x0000 0 0 1 &mpic 4 1
440 0x0000 0 0 2 &mpic 5 1
441 0x0000 0 0 3 &mpic 6 1
442 0x0000 0 0 4 &mpic 7 1>;
443 interrupt-parent = <&mpic>;
445 clock-frequency = <33333333>;