Merge branch 'for-linus' of master.kernel.org:/pub/scm/linux/kernel/git/cooloney...
[pandora-kernel.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                 global-utilities@e0000 {        //global utilities block
174                         compatible = "fsl,mpc8548-guts";
175                         reg = <e0000 1000>;
176                         fsl,has-rstcr;
177                 };
178
179                 pci@8000 {
180                         interrupt-map-mask = <f800 0 0 7>;
181                         interrupt-map = <
182                                 /* IDSEL 0x12 AD18 */
183                                 9000 0 0 1 &mpic 5 1
184                                 9000 0 0 2 &mpic 6 1
185                                 9000 0 0 3 &mpic 7 1
186                                 9000 0 0 4 &mpic 4 1
187
188                                 /* IDSEL 0x13 AD19 */
189                                 9800 0 0 1 &mpic 6 1
190                                 9800 0 0 2 &mpic 7 1
191                                 9800 0 0 3 &mpic 4 1
192                                 9800 0 0 4 &mpic 5 1>;
193
194                         interrupt-parent = <&mpic>;
195                         interrupts = <18 2>;
196                         bus-range = <0 ff>;
197                         ranges = <02000000 0 80000000 80000000 0 20000000
198                                   01000000 0 00000000 e2000000 0 00800000>;
199                         clock-frequency = <3f940aa>;
200                         #interrupt-cells = <1>;
201                         #size-cells = <2>;
202                         #address-cells = <3>;
203                         reg = <8000 1000>;
204                         compatible = "fsl,mpc8540-pci";
205                         device_type = "pci";
206                 };
207
208                 /* PCI Express */
209                 pcie@a000 {
210                         interrupt-map-mask = <f800 0 0 7>;
211                         interrupt-map = <
212
213                                 /* IDSEL 0x0 (PEX) */
214                                 00000 0 0 1 &mpic 0 1
215                                 00000 0 0 2 &mpic 1 1
216                                 00000 0 0 3 &mpic 2 1
217                                 00000 0 0 4 &mpic 3 1>;
218
219                         interrupt-parent = <&mpic>;
220                         interrupts = <1a 2>;
221                         bus-range = <0 ff>;
222                         ranges = <02000000 0 a0000000 a0000000 0 20000000
223                                   01000000 0 00000000 e3000000 0 08000000>;
224                         clock-frequency = <1fca055>;
225                         #interrupt-cells = <1>;
226                         #size-cells = <2>;
227                         #address-cells = <3>;
228                         reg = <a000 1000>;
229                         compatible = "fsl,mpc8548-pcie";
230                         device_type = "pci";
231                 };
232
233                 serial@4600 {
234                         device_type = "serial";
235                         compatible = "ns16550";
236                         reg = <4600 100>;
237                         clock-frequency = <0>;
238                         interrupts = <2a 2>;
239                         interrupt-parent = <&mpic>;
240                 };
241
242                 crypto@30000 {
243                         device_type = "crypto";
244                         model = "SEC2";
245                         compatible = "talitos";
246                         reg = <30000 f000>;
247                         interrupts = <2d 2>;
248                         interrupt-parent = <&mpic>;
249                         num-channels = <4>;
250                         channel-fifo-len = <18>;
251                         exec-units-mask = <000000fe>;
252                         descriptor-types-mask = <012b0ebf>;
253                 };
254
255                 mpic: pic@40000 {
256                         clock-frequency = <0>;
257                         interrupt-controller;
258                         #address-cells = <0>;
259                         #interrupt-cells = <2>;
260                         reg = <40000 40000>;
261                         built-in;
262                         compatible = "chrp,open-pic";
263                         device_type = "open-pic";
264                         big-endian;
265                 };
266                 par_io@e0100 {
267                         reg = <e0100 100>;
268                         device_type = "par_io";
269                         num-ports = <7>;
270
271                         pio1: ucc_pin@01 {
272                                 pio-map = <
273                         /* port  pin  dir  open_drain  assignment  has_irq */
274                                         4  0a  1  0  2  0       /* TxD0 */
275                                         4  09  1  0  2  0       /* TxD1 */
276                                         4  08  1  0  2  0       /* TxD2 */
277                                         4  07  1  0  2  0       /* TxD3 */
278                                         4  17  1  0  2  0       /* TxD4 */
279                                         4  16  1  0  2  0       /* TxD5 */
280                                         4  15  1  0  2  0       /* TxD6 */
281                                         4  14  1  0  2  0       /* TxD7 */
282                                         4  0f  2  0  2  0       /* RxD0 */
283                                         4  0e  2  0  2  0       /* RxD1 */
284                                         4  0d  2  0  2  0       /* RxD2 */
285                                         4  0c  2  0  2  0       /* RxD3 */
286                                         4  1d  2  0  2  0       /* RxD4 */
287                                         4  1c  2  0  2  0       /* RxD5 */
288                                         4  1b  2  0  2  0       /* RxD6 */
289                                         4  1a  2  0  2  0       /* RxD7 */
290                                         4  0b  1  0  2  0       /* TX_EN */
291                                         4  18  1  0  2  0       /* TX_ER */
292                                         4  0f  2  0  2  0       /* RX_DV */
293                                         4  1e  2  0  2  0       /* RX_ER */
294                                         4  11  2  0  2  0       /* RX_CLK */
295                                         4  13  1  0  2  0       /* GTX_CLK */
296                                         1  1f  2  0  3  0>;     /* GTX125 */
297                         };
298                         pio2: ucc_pin@02 {
299                                 pio-map = <
300                         /* port  pin  dir  open_drain  assignment  has_irq */
301                                         5  0a 1  0  2  0   /* TxD0 */
302                                         5  09 1  0  2  0   /* TxD1 */
303                                         5  08 1  0  2  0   /* TxD2 */
304                                         5  07 1  0  2  0   /* TxD3 */
305                                         5  17 1  0  2  0   /* TxD4 */
306                                         5  16 1  0  2  0   /* TxD5 */
307                                         5  15 1  0  2  0   /* TxD6 */
308                                         5  14 1  0  2  0   /* TxD7 */
309                                         5  0f 2  0  2  0   /* RxD0 */
310                                         5  0e 2  0  2  0   /* RxD1 */
311                                         5  0d 2  0  2  0   /* RxD2 */
312                                         5  0c 2  0  2  0   /* RxD3 */
313                                         5  1d 2  0  2  0   /* RxD4 */
314                                         5  1c 2  0  2  0   /* RxD5 */
315                                         5  1b 2  0  2  0   /* RxD6 */
316                                         5  1a 2  0  2  0   /* RxD7 */
317                                         5  0b 1  0  2  0   /* TX_EN */
318                                         5  18 1  0  2  0   /* TX_ER */
319                                         5  10 2  0  2  0   /* RX_DV */
320                                         5  1e 2  0  2  0   /* RX_ER */
321                                         5  11 2  0  2  0   /* RX_CLK */
322                                         5  13 1  0  2  0   /* GTX_CLK */
323                                         1  1f 2  0  3  0   /* GTX125 */
324                                         4  06 3  0  2  0   /* MDIO */
325                                         4  05 1  0  2  0>; /* MDC */
326                         };
327                 };
328         };
329
330         qe@e0080000 {
331                 #address-cells = <1>;
332                 #size-cells = <1>;
333                 device_type = "qe";
334                 model = "QE";
335                 ranges = <0 e0080000 00040000>;
336                 reg = <e0080000 480>;
337                 brg-frequency = <0>;
338                 bus-frequency = <179A7B00>;
339
340                 muram@10000 {
341                         device_type = "muram";
342                         ranges = <0 00010000 0000c000>;
343
344                         data-only@0{
345                                 reg = <0 c000>;
346                         };
347                 };
348
349                 spi@4c0 {
350                         device_type = "spi";
351                         compatible = "fsl_spi";
352                         reg = <4c0 40>;
353                         interrupts = <2>;
354                         interrupt-parent = <&qeic>;
355                         mode = "cpu";
356                 };
357
358                 spi@500 {
359                         device_type = "spi";
360                         compatible = "fsl_spi";
361                         reg = <500 40>;
362                         interrupts = <1>;
363                         interrupt-parent = <&qeic>;
364                         mode = "cpu";
365                 };
366
367                 ucc@2000 {
368                         device_type = "network";
369                         compatible = "ucc_geth";
370                         model = "UCC";
371                         device-id = <1>;
372                         reg = <2000 200>;
373                         interrupts = <20>;
374                         interrupt-parent = <&qeic>;
375                         /*
376                          * mac-address is deprecated and will be removed
377                          * in 2.6.25.  Only recent versions of
378                          * U-Boot support local-mac-address, however.
379                          */
380                         mac-address = [ 00 00 00 00 00 00 ];
381                         local-mac-address = [ 00 00 00 00 00 00 ];
382                         rx-clock = <0>;
383                         tx-clock = <19>;
384                         phy-handle = <&qe_phy0>;
385                         phy-connection-type = "gmii";
386                         pio-handle = <&pio1>;
387                 };
388
389                 ucc@3000 {
390                         device_type = "network";
391                         compatible = "ucc_geth";
392                         model = "UCC";
393                         device-id = <2>;
394                         reg = <3000 200>;
395                         interrupts = <21>;
396                         interrupt-parent = <&qeic>;
397                         /*
398                          * mac-address is deprecated and will be removed
399                          * in 2.6.25.  Only recent versions of
400                          * U-Boot support local-mac-address, however.
401                          */
402                         mac-address = [ 00 00 00 00 00 00 ];
403                         local-mac-address = [ 00 00 00 00 00 00 ];
404                         rx-clock = <0>;
405                         tx-clock = <14>;
406                         phy-handle = <&qe_phy1>;
407                         phy-connection-type = "gmii";
408                         pio-handle = <&pio2>;
409                 };
410
411                 mdio@2120 {
412                         #address-cells = <1>;
413                         #size-cells = <0>;
414                         reg = <2120 18>;
415                         device_type = "mdio";
416                         compatible = "ucc_geth_phy";
417
418                         /* These are the same PHYs as on
419                          * gianfar's MDIO bus */
420                         qe_phy0: ethernet-phy@00 {
421                                 interrupt-parent = <&mpic>;
422                                 interrupts = <1 1>;
423                                 reg = <0>;
424                                 device_type = "ethernet-phy";
425                         };
426                         qe_phy1: ethernet-phy@01 {
427                                 interrupt-parent = <&mpic>;
428                                 interrupts = <2 1>;
429                                 reg = <1>;
430                                 device_type = "ethernet-phy";
431                         };
432                         qe_phy2: ethernet-phy@02 {
433                                 interrupt-parent = <&mpic>;
434                                 interrupts = <1 1>;
435                                 reg = <2>;
436                                 device_type = "ethernet-phy";
437                         };
438                         qe_phy3: ethernet-phy@03 {
439                                 interrupt-parent = <&mpic>;
440                                 interrupts = <2 1>;
441                                 reg = <3>;
442                                 device_type = "ethernet-phy";
443                         };
444                 };
445
446                 qeic: qeic@80 {
447                         interrupt-controller;
448                         device_type = "qeic";
449                         #address-cells = <0>;
450                         #interrupt-cells = <1>;
451                         reg = <80 80>;
452                         built-in;
453                         big-endian;
454                         interrupts = <2e 2 2e 2>; //high:30 low:30
455                         interrupt-parent = <&mpic>;
456                 };
457
458         };
459 };