]> pilppa.org Git - linux-2.6-omap-h63xx.git/blob - arch/powerpc/boot/dts/mpc8568mds.dts
[POWERPC] 85xx: Added 8568 PCIe support
[linux-2.6-omap-h63xx.git] / arch / powerpc / boot / dts / mpc8568mds.dts
1 /*
2  * MPC8568E MDS Device Tree Source
3  *
4  * Copyright 2007 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 /*
14 /memreserve/    00000000 1000000;
15 */
16
17 / {
18         model = "MPC8568EMDS";
19         compatible = "MPC8568EMDS", "MPC85xxMDS";
20         #address-cells = <1>;
21         #size-cells = <1>;
22
23         cpus {
24                 #address-cells = <1>;
25                 #size-cells = <0>;
26
27                 PowerPC,8568@0 {
28                         device_type = "cpu";
29                         reg = <0>;
30                         d-cache-line-size = <20>;       // 32 bytes
31                         i-cache-line-size = <20>;       // 32 bytes
32                         d-cache-size = <8000>;          // L1, 32K
33                         i-cache-size = <8000>;          // L1, 32K
34                         timebase-frequency = <0>;
35                         bus-frequency = <0>;
36                         clock-frequency = <0>;
37                         32-bit;
38                 };
39         };
40
41         memory {
42                 device_type = "memory";
43                 reg = <00000000 10000000>;
44         };
45
46         bcsr@f8000000 {
47                 device_type = "board-control";
48                 reg = <f8000000 8000>;
49         };
50
51         soc8568@e0000000 {
52                 #address-cells = <1>;
53                 #size-cells = <1>;
54                 #interrupt-cells = <2>;
55                 device_type = "soc";
56                 ranges = <0 e0000000 00100000>;
57                 reg = <e0000000 00100000>;
58                 bus-frequency = <0>;
59
60                 memory-controller@2000 {
61                         compatible = "fsl,8568-memory-controller";
62                         reg = <2000 1000>;
63                         interrupt-parent = <&mpic>;
64                         interrupts = <12 2>;
65                 };
66
67                 l2-cache-controller@20000 {
68                         compatible = "fsl,8568-l2-cache-controller";
69                         reg = <20000 1000>;
70                         cache-line-size = <20>; // 32 bytes
71                         cache-size = <80000>;   // L2, 512K
72                         interrupt-parent = <&mpic>;
73                         interrupts = <10 2>;
74                 };
75
76                 i2c@3000 {
77                         device_type = "i2c";
78                         compatible = "fsl-i2c";
79                         reg = <3000 100>;
80                         interrupts = <2b 2>;
81                         interrupt-parent = <&mpic>;
82                         dfsrr;
83                 };
84
85                 i2c@3100 {
86                         device_type = "i2c";
87                         compatible = "fsl-i2c";
88                         reg = <3100 100>;
89                         interrupts = <2b 2>;
90                         interrupt-parent = <&mpic>;
91                         dfsrr;
92                 };
93
94                 mdio@24520 {
95                         #address-cells = <1>;
96                         #size-cells = <0>;
97                         device_type = "mdio";
98                         compatible = "gianfar";
99                         reg = <24520 20>;
100                         phy0: ethernet-phy@0 {
101                                 interrupt-parent = <&mpic>;
102                                 interrupts = <1 1>;
103                                 reg = <0>;
104                                 device_type = "ethernet-phy";
105                         };
106                         phy1: ethernet-phy@1 {
107                                 interrupt-parent = <&mpic>;
108                                 interrupts = <2 1>;
109                                 reg = <1>;
110                                 device_type = "ethernet-phy";
111                         };
112                         phy2: ethernet-phy@2 {
113                                 interrupt-parent = <&mpic>;
114                                 interrupts = <1 1>;
115                                 reg = <2>;
116                                 device_type = "ethernet-phy";
117                         };
118                         phy3: ethernet-phy@3 {
119                                 interrupt-parent = <&mpic>;
120                                 interrupts = <2 1>;
121                                 reg = <3>;
122                                 device_type = "ethernet-phy";
123                         };
124                 };
125
126                 ethernet@24000 {
127                         #address-cells = <1>;
128                         #size-cells = <0>;
129                         device_type = "network";
130                         model = "eTSEC";
131                         compatible = "gianfar";
132                         reg = <24000 1000>;
133                         /*
134                          * mac-address is deprecated and will be removed
135                          * in 2.6.25.  Only recent versions of
136                          * U-Boot support local-mac-address, however.
137                          */
138                         mac-address = [ 00 00 00 00 00 00 ];
139                         local-mac-address = [ 00 00 00 00 00 00 ];
140                         interrupts = <1d 2 1e 2 22 2>;
141                         interrupt-parent = <&mpic>;
142                         phy-handle = <&phy2>;
143                 };
144
145                 ethernet@25000 {
146                         #address-cells = <1>;
147                         #size-cells = <0>;
148                         device_type = "network";
149                         model = "eTSEC";
150                         compatible = "gianfar";
151                         reg = <25000 1000>;
152                         /*
153                          * mac-address is deprecated and will be removed
154                          * in 2.6.25.  Only recent versions of
155                          * U-Boot support local-mac-address, however.
156                          */
157                         mac-address = [ 00 00 00 00 00 00 ];
158                         local-mac-address = [ 00 00 00 00 00 00 ];
159                         interrupts = <23 2 24 2 28 2>;
160                         interrupt-parent = <&mpic>;
161                         phy-handle = <&phy3>;
162                 };
163
164                 serial@4500 {
165                         device_type = "serial";
166                         compatible = "ns16550";
167                         reg = <4500 100>;
168                         clock-frequency = <0>;
169                         interrupts = <2a 2>;
170                         interrupt-parent = <&mpic>;
171                 };
172
173                 pci@8000 {
174                         interrupt-map-mask = <f800 0 0 7>;
175                         interrupt-map = <
176                                 /* IDSEL 0x12 AD18 */
177                                 9000 0 0 1 &mpic 5 1
178                                 9000 0 0 2 &mpic 6 1
179                                 9000 0 0 3 &mpic 7 1
180                                 9000 0 0 4 &mpic 4 1
181
182                                 /* IDSEL 0x13 AD19 */
183                                 9800 0 0 1 &mpic 6 1
184                                 9800 0 0 2 &mpic 7 1
185                                 9800 0 0 3 &mpic 4 1
186                                 9800 0 0 4 &mpic 5 1>;
187
188                         interrupt-parent = <&mpic>;
189                         interrupts = <18 2>;
190                         bus-range = <0 ff>;
191                         ranges = <02000000 0 80000000 80000000 0 20000000
192                                   01000000 0 00000000 e2000000 0 00800000>;
193                         clock-frequency = <3f940aa>;
194                         #interrupt-cells = <1>;
195                         #size-cells = <2>;
196                         #address-cells = <3>;
197                         reg = <8000 1000>;
198                         compatible = "fsl,mpc8540-pci";
199                         device_type = "pci";
200                 };
201
202                 /* PCI Express */
203                 pcie@a000 {
204                         interrupt-map-mask = <f800 0 0 7>;
205                         interrupt-map = <
206
207                                 /* IDSEL 0x0 (PEX) */
208                                 00000 0 0 1 &mpic 0 1
209                                 00000 0 0 2 &mpic 1 1
210                                 00000 0 0 3 &mpic 2 1
211                                 00000 0 0 4 &mpic 3 1>;
212
213                         interrupt-parent = <&mpic>;
214                         interrupts = <1a 2>;
215                         bus-range = <0 ff>;
216                         ranges = <02000000 0 a0000000 a0000000 0 20000000
217                                   01000000 0 00000000 e3000000 0 08000000>;
218                         clock-frequency = <1fca055>;
219                         #interrupt-cells = <1>;
220                         #size-cells = <2>;
221                         #address-cells = <3>;
222                         reg = <a000 1000>;
223                         compatible = "fsl,mpc8548-pcie";
224                         device_type = "pci";
225                 };
226
227                 serial@4600 {
228                         device_type = "serial";
229                         compatible = "ns16550";
230                         reg = <4600 100>;
231                         clock-frequency = <0>;
232                         interrupts = <2a 2>;
233                         interrupt-parent = <&mpic>;
234                 };
235
236                 crypto@30000 {
237                         device_type = "crypto";
238                         model = "SEC2";
239                         compatible = "talitos";
240                         reg = <30000 f000>;
241                         interrupts = <2d 2>;
242                         interrupt-parent = <&mpic>;
243                         num-channels = <4>;
244                         channel-fifo-len = <18>;
245                         exec-units-mask = <000000fe>;
246                         descriptor-types-mask = <012b0ebf>;
247                 };
248
249                 mpic: pic@40000 {
250                         clock-frequency = <0>;
251                         interrupt-controller;
252                         #address-cells = <0>;
253                         #interrupt-cells = <2>;
254                         reg = <40000 40000>;
255                         built-in;
256                         compatible = "chrp,open-pic";
257                         device_type = "open-pic";
258                         big-endian;
259                 };
260                 par_io@e0100 {
261                         reg = <e0100 100>;
262                         device_type = "par_io";
263                         num-ports = <7>;
264
265                         pio1: ucc_pin@01 {
266                                 pio-map = <
267                         /* port  pin  dir  open_drain  assignment  has_irq */
268                                         4  0a  1  0  2  0       /* TxD0 */
269                                         4  09  1  0  2  0       /* TxD1 */
270                                         4  08  1  0  2  0       /* TxD2 */
271                                         4  07  1  0  2  0       /* TxD3 */
272                                         4  17  1  0  2  0       /* TxD4 */
273                                         4  16  1  0  2  0       /* TxD5 */
274                                         4  15  1  0  2  0       /* TxD6 */
275                                         4  14  1  0  2  0       /* TxD7 */
276                                         4  0f  2  0  2  0       /* RxD0 */
277                                         4  0e  2  0  2  0       /* RxD1 */
278                                         4  0d  2  0  2  0       /* RxD2 */
279                                         4  0c  2  0  2  0       /* RxD3 */
280                                         4  1d  2  0  2  0       /* RxD4 */
281                                         4  1c  2  0  2  0       /* RxD5 */
282                                         4  1b  2  0  2  0       /* RxD6 */
283                                         4  1a  2  0  2  0       /* RxD7 */
284                                         4  0b  1  0  2  0       /* TX_EN */
285                                         4  18  1  0  2  0       /* TX_ER */
286                                         4  0f  2  0  2  0       /* RX_DV */
287                                         4  1e  2  0  2  0       /* RX_ER */
288                                         4  11  2  0  2  0       /* RX_CLK */
289                                         4  13  1  0  2  0       /* GTX_CLK */
290                                         1  1f  2  0  3  0>;     /* GTX125 */
291                         };
292                         pio2: ucc_pin@02 {
293                                 pio-map = <
294                         /* port  pin  dir  open_drain  assignment  has_irq */
295                                         5  0a 1  0  2  0   /* TxD0 */
296                                         5  09 1  0  2  0   /* TxD1 */
297                                         5  08 1  0  2  0   /* TxD2 */
298                                         5  07 1  0  2  0   /* TxD3 */
299                                         5  17 1  0  2  0   /* TxD4 */
300                                         5  16 1  0  2  0   /* TxD5 */
301                                         5  15 1  0  2  0   /* TxD6 */
302                                         5  14 1  0  2  0   /* TxD7 */
303                                         5  0f 2  0  2  0   /* RxD0 */
304                                         5  0e 2  0  2  0   /* RxD1 */
305                                         5  0d 2  0  2  0   /* RxD2 */
306                                         5  0c 2  0  2  0   /* RxD3 */
307                                         5  1d 2  0  2  0   /* RxD4 */
308                                         5  1c 2  0  2  0   /* RxD5 */
309                                         5  1b 2  0  2  0   /* RxD6 */
310                                         5  1a 2  0  2  0   /* RxD7 */
311                                         5  0b 1  0  2  0   /* TX_EN */
312                                         5  18 1  0  2  0   /* TX_ER */
313                                         5  10 2  0  2  0   /* RX_DV */
314                                         5  1e 2  0  2  0   /* RX_ER */
315                                         5  11 2  0  2  0   /* RX_CLK */
316                                         5  13 1  0  2  0   /* GTX_CLK */
317                                         1  1f 2  0  3  0   /* GTX125 */
318                                         4  06 3  0  2  0   /* MDIO */
319                                         4  05 1  0  2  0>; /* MDC */
320                         };
321                 };
322         };
323
324         qe@e0080000 {
325                 #address-cells = <1>;
326                 #size-cells = <1>;
327                 device_type = "qe";
328                 model = "QE";
329                 ranges = <0 e0080000 00040000>;
330                 reg = <e0080000 480>;
331                 brg-frequency = <0>;
332                 bus-frequency = <179A7B00>;
333
334                 muram@10000 {
335                         device_type = "muram";
336                         ranges = <0 00010000 0000c000>;
337
338                         data-only@0{
339                                 reg = <0 c000>;
340                         };
341                 };
342
343                 spi@4c0 {
344                         device_type = "spi";
345                         compatible = "fsl_spi";
346                         reg = <4c0 40>;
347                         interrupts = <2>;
348                         interrupt-parent = <&qeic>;
349                         mode = "cpu";
350                 };
351
352                 spi@500 {
353                         device_type = "spi";
354                         compatible = "fsl_spi";
355                         reg = <500 40>;
356                         interrupts = <1>;
357                         interrupt-parent = <&qeic>;
358                         mode = "cpu";
359                 };
360
361                 ucc@2000 {
362                         device_type = "network";
363                         compatible = "ucc_geth";
364                         model = "UCC";
365                         device-id = <1>;
366                         reg = <2000 200>;
367                         interrupts = <20>;
368                         interrupt-parent = <&qeic>;
369                         /*
370                          * mac-address is deprecated and will be removed
371                          * in 2.6.25.  Only recent versions of
372                          * U-Boot support local-mac-address, however.
373                          */
374                         mac-address = [ 00 00 00 00 00 00 ];
375                         local-mac-address = [ 00 00 00 00 00 00 ];
376                         rx-clock = <0>;
377                         tx-clock = <19>;
378                         phy-handle = <&qe_phy0>;
379                         phy-connection-type = "gmii";
380                         pio-handle = <&pio1>;
381                 };
382
383                 ucc@3000 {
384                         device_type = "network";
385                         compatible = "ucc_geth";
386                         model = "UCC";
387                         device-id = <2>;
388                         reg = <3000 200>;
389                         interrupts = <21>;
390                         interrupt-parent = <&qeic>;
391                         /*
392                          * mac-address is deprecated and will be removed
393                          * in 2.6.25.  Only recent versions of
394                          * U-Boot support local-mac-address, however.
395                          */
396                         mac-address = [ 00 00 00 00 00 00 ];
397                         local-mac-address = [ 00 00 00 00 00 00 ];
398                         rx-clock = <0>;
399                         tx-clock = <14>;
400                         phy-handle = <&qe_phy1>;
401                         phy-connection-type = "gmii";
402                         pio-handle = <&pio2>;
403                 };
404
405                 mdio@2120 {
406                         #address-cells = <1>;
407                         #size-cells = <0>;
408                         reg = <2120 18>;
409                         device_type = "mdio";
410                         compatible = "ucc_geth_phy";
411
412                         /* These are the same PHYs as on
413                          * gianfar's MDIO bus */
414                         qe_phy0: ethernet-phy@00 {
415                                 interrupt-parent = <&mpic>;
416                                 interrupts = <1 1>;
417                                 reg = <0>;
418                                 device_type = "ethernet-phy";
419                         };
420                         qe_phy1: ethernet-phy@01 {
421                                 interrupt-parent = <&mpic>;
422                                 interrupts = <2 1>;
423                                 reg = <1>;
424                                 device_type = "ethernet-phy";
425                         };
426                         qe_phy2: ethernet-phy@02 {
427                                 interrupt-parent = <&mpic>;
428                                 interrupts = <1 1>;
429                                 reg = <2>;
430                                 device_type = "ethernet-phy";
431                         };
432                         qe_phy3: ethernet-phy@03 {
433                                 interrupt-parent = <&mpic>;
434                                 interrupts = <2 1>;
435                                 reg = <3>;
436                                 device_type = "ethernet-phy";
437                         };
438                 };
439
440                 qeic: qeic@80 {
441                         interrupt-controller;
442                         device_type = "qeic";
443                         #address-cells = <0>;
444                         #interrupt-cells = <1>;
445                         reg = <80 80>;
446                         built-in;
447                         big-endian;
448                         interrupts = <2e 2 2e 2>; //high:30 low:30
449                         interrupt-parent = <&mpic>;
450                 };
451
452         };
453 };