2 * MPC8641 HPCN Device Tree Source
4 * Copyright 2006 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 as published by the
8 * Free Software Foundation; either version 2 of the License, or (at your
9 * option) any later version.
12 /include/ "mpc8641si-pre.dtsi"
15 model = "MPC8641HPCN";
16 compatible = "fsl,mpc8641hpcn";
19 device_type = "memory";
20 reg = <0x00000000 0x40000000>; // 1G at 0x0
23 lbc: localbus@ffe05000 {
24 reg = <0xffe05000 0x1000>;
26 ranges = <0 0 0xef800000 0x00800000
27 2 0 0xffdf8000 0x00008000
28 3 0 0xffdf0000 0x00008000>;
31 compatible = "cfi-flash";
32 reg = <0 0 0x00800000>;
39 reg = <0x00000000 0x00300000>;
43 reg = <0x00300000 0x00100000>;
48 reg = <0x00400000 0x00300000>;
52 reg = <0x00700000 0x00100000>;
58 soc: soc8641@ffe00000 {
59 ranges = <0x00000000 0xffe00000 0x00100000>;
61 enet0: ethernet@24000 {
64 phy-connection-type = "rgmii-id";
68 phy0: ethernet-phy@0 {
69 interrupts = <10 1 0 0>;
72 phy1: ethernet-phy@1 {
73 interrupts = <10 1 0 0>;
76 phy2: ethernet-phy@2 {
77 interrupts = <10 1 0 0>;
80 phy3: ethernet-phy@3 {
81 interrupts = <10 1 0 0>;
86 device_type = "tbi-phy";
90 enet1: ethernet@25000 {
93 phy-connection-type = "rgmii-id";
99 device_type = "tbi-phy";
103 enet2: ethernet@26000 {
104 tbi-handle = <&tbi2>;
105 phy-handle = <&phy2>;
106 phy-connection-type = "rgmii-id";
112 device_type = "tbi-phy";
116 enet3: ethernet@27000 {
117 tbi-handle = <&tbi3>;
118 phy-handle = <&phy3>;
119 phy-connection-type = "rgmii-id";
125 device_type = "tbi-phy";
130 #address-cells = <1>;
132 compatible = "fsl,srio-rmu";
133 reg = <0xd3000 0x500>;
134 ranges = <0x0 0xd3000 0x500>;
137 compatible = "fsl,srio-msg-unit";
140 53 2 0 0 /* msg1_tx_irq */
141 54 2 0 0>;/* msg1_rx_irq */
144 compatible = "fsl,srio-msg-unit";
147 55 2 0 0 /* msg2_tx_irq */
148 56 2 0 0>;/* msg2_rx_irq */
151 compatible = "fsl,srio-dbell-unit";
154 49 2 0 0 /* bell_outb_irq */
155 50 2 0 0>;/* bell_inb_irq */
157 port-write-unit@4e0 {
158 compatible = "fsl,srio-port-write-unit";
160 interrupts = <48 2 0 0>;
165 pci0: pcie@ffe08000 {
166 reg = <0xffe08000 0x1000>;
167 ranges = <0x02000000 0x0 0x80000000 0x80000000 0x0 0x20000000
168 0x01000000 0x0 0x00000000 0xffc00000 0x0 0x00010000>;
169 interrupt-map-mask = <0xff00 0 0 7>;
171 /* IDSEL 0x11 func 0 - PCI slot 1 */
172 0x8800 0 0 1 &mpic 2 1
173 0x8800 0 0 2 &mpic 3 1
174 0x8800 0 0 3 &mpic 4 1
175 0x8800 0 0 4 &mpic 1 1
177 /* IDSEL 0x11 func 1 - PCI slot 1 */
178 0x8900 0 0 1 &mpic 2 1
179 0x8900 0 0 2 &mpic 3 1
180 0x8900 0 0 3 &mpic 4 1
181 0x8900 0 0 4 &mpic 1 1
183 /* IDSEL 0x11 func 2 - PCI slot 1 */
184 0x8a00 0 0 1 &mpic 2 1
185 0x8a00 0 0 2 &mpic 3 1
186 0x8a00 0 0 3 &mpic 4 1
187 0x8a00 0 0 4 &mpic 1 1
189 /* IDSEL 0x11 func 3 - PCI slot 1 */
190 0x8b00 0 0 1 &mpic 2 1
191 0x8b00 0 0 2 &mpic 3 1
192 0x8b00 0 0 3 &mpic 4 1
193 0x8b00 0 0 4 &mpic 1 1
195 /* IDSEL 0x11 func 4 - PCI slot 1 */
196 0x8c00 0 0 1 &mpic 2 1
197 0x8c00 0 0 2 &mpic 3 1
198 0x8c00 0 0 3 &mpic 4 1
199 0x8c00 0 0 4 &mpic 1 1
201 /* IDSEL 0x11 func 5 - PCI slot 1 */
202 0x8d00 0 0 1 &mpic 2 1
203 0x8d00 0 0 2 &mpic 3 1
204 0x8d00 0 0 3 &mpic 4 1
205 0x8d00 0 0 4 &mpic 1 1
207 /* IDSEL 0x11 func 6 - PCI slot 1 */
208 0x8e00 0 0 1 &mpic 2 1
209 0x8e00 0 0 2 &mpic 3 1
210 0x8e00 0 0 3 &mpic 4 1
211 0x8e00 0 0 4 &mpic 1 1
213 /* IDSEL 0x11 func 7 - PCI slot 1 */
214 0x8f00 0 0 1 &mpic 2 1
215 0x8f00 0 0 2 &mpic 3 1
216 0x8f00 0 0 3 &mpic 4 1
217 0x8f00 0 0 4 &mpic 1 1
219 /* IDSEL 0x12 func 0 - PCI slot 2 */
220 0x9000 0 0 1 &mpic 3 1
221 0x9000 0 0 2 &mpic 4 1
222 0x9000 0 0 3 &mpic 1 1
223 0x9000 0 0 4 &mpic 2 1
225 /* IDSEL 0x12 func 1 - PCI slot 2 */
226 0x9100 0 0 1 &mpic 3 1
227 0x9100 0 0 2 &mpic 4 1
228 0x9100 0 0 3 &mpic 1 1
229 0x9100 0 0 4 &mpic 2 1
231 /* IDSEL 0x12 func 2 - PCI slot 2 */
232 0x9200 0 0 1 &mpic 3 1
233 0x9200 0 0 2 &mpic 4 1
234 0x9200 0 0 3 &mpic 1 1
235 0x9200 0 0 4 &mpic 2 1
237 /* IDSEL 0x12 func 3 - PCI slot 2 */
238 0x9300 0 0 1 &mpic 3 1
239 0x9300 0 0 2 &mpic 4 1
240 0x9300 0 0 3 &mpic 1 1
241 0x9300 0 0 4 &mpic 2 1
243 /* IDSEL 0x12 func 4 - PCI slot 2 */
244 0x9400 0 0 1 &mpic 3 1
245 0x9400 0 0 2 &mpic 4 1
246 0x9400 0 0 3 &mpic 1 1
247 0x9400 0 0 4 &mpic 2 1
249 /* IDSEL 0x12 func 5 - PCI slot 2 */
250 0x9500 0 0 1 &mpic 3 1
251 0x9500 0 0 2 &mpic 4 1
252 0x9500 0 0 3 &mpic 1 1
253 0x9500 0 0 4 &mpic 2 1
255 /* IDSEL 0x12 func 6 - PCI slot 2 */
256 0x9600 0 0 1 &mpic 3 1
257 0x9600 0 0 2 &mpic 4 1
258 0x9600 0 0 3 &mpic 1 1
259 0x9600 0 0 4 &mpic 2 1
261 /* IDSEL 0x12 func 7 - PCI slot 2 */
262 0x9700 0 0 1 &mpic 3 1
263 0x9700 0 0 2 &mpic 4 1
264 0x9700 0 0 3 &mpic 1 1
265 0x9700 0 0 4 &mpic 2 1
268 0xe000 0 0 1 &i8259 12 2
269 0xe100 0 0 2 &i8259 9 2
270 0xe200 0 0 3 &i8259 10 2
271 0xe300 0 0 4 &i8259 11 2
274 0xe800 0 0 1 &i8259 6 2
277 0xf000 0 0 1 &i8259 7 2
278 0xf100 0 0 1 &i8259 7 2
280 // IDSEL 0x1f IDE/SATA
281 0xf800 0 0 1 &i8259 14 2
282 0xf900 0 0 1 &i8259 5 2
286 ranges = <0x02000000 0x0 0x80000000
287 0x02000000 0x0 0x80000000
290 0x01000000 0x0 0x00000000
291 0x01000000 0x0 0x00000000
296 #address-cells = <3>;
297 ranges = <0x02000000 0x0 0x80000000
298 0x02000000 0x0 0x80000000
300 0x01000000 0x0 0x00000000
301 0x01000000 0x0 0x00000000
306 #address-cells = <2>;
307 reg = <0xf000 0 0 0 0>;
308 ranges = <1 0 0x01000000 0 0
310 interrupt-parent = <&i8259>;
312 i8259: interrupt-controller@20 {
316 interrupt-controller;
317 device_type = "interrupt-controller";
318 #address-cells = <0>;
319 #interrupt-cells = <2>;
320 compatible = "chrp,iic";
321 interrupts = <9 2 0 0>;
326 #address-cells = <1>;
327 reg = <1 0x60 1 1 0x64 1>;
328 interrupts = <1 3 12 3>;
329 interrupt-parent = <&i8259>;
333 compatible = "pnpPNP,303";
338 compatible = "pnpPNP,f03";
349 reg = <1 0x400 0x80>;
357 pci1: pcie@ffe09000 {
358 reg = <0xffe09000 0x1000>;
359 ranges = <0x02000000 0x0 0xa0000000 0xa0000000 0x0 0x20000000
360 0x01000000 0x0 0x00000000 0xffc10000 0x0 0x00010000>;
363 ranges = <0x02000000 0x0 0xa0000000
364 0x02000000 0x0 0xa0000000
367 0x01000000 0x0 0x00000000
368 0x01000000 0x0 0x00000000
373 * Only one of Rapid IO or PCI can be present due to HW limitations and
374 * due to the fact that the 2 now share address space in the new memory
375 * map. The most likely case is that we have PCI, so comment out the
376 * rapidio node. Leave it here for reference.
379 reg = <0xffec0000 0x11000>;
380 compatible = "fsl,srio";
381 interrupts = <48 2 0 0>;
382 #address-cells = <2>;
384 fsl,srio-rmu-handle = <&rmu>;
388 #address-cells = <2>;
391 ranges = <0 0 0x80000000 0 0x20000000>;
398 /include/ "mpc8641si-post.dtsi"