[POWERPC] 83xx: USB device tree cleanups
[linux-2.6] / arch / powerpc / boot / dts / mpc836x_mds.dts
1 /*
2  * MPC8360E EMDS Device Tree Source
3  *
4  * Copyright 2006 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 = "MPC8360MDS";
19         compatible = "MPC8360EMDS", "MPC836xMDS", "MPC83xxMDS";
20         #address-cells = <1>;
21         #size-cells = <1>;
22
23         aliases {
24                 ethernet0 = &enet0;
25                 ethernet1 = &enet1;
26                 serial0 = &serial0;
27                 serial1 = &serial1;
28                 pci0 = &pci0;
29         };
30
31         cpus {
32                 #address-cells = <1>;
33                 #size-cells = <0>;
34
35                 PowerPC,8360@0 {
36                         device_type = "cpu";
37                         reg = <0>;
38                         d-cache-line-size = <20>;       // 32 bytes
39                         i-cache-line-size = <20>;       // 32 bytes
40                         d-cache-size = <8000>;          // L1, 32K
41                         i-cache-size = <8000>;          // L1, 32K
42                         timebase-frequency = <3EF1480>;
43                         bus-frequency = <FBC5200>;
44                         clock-frequency = <1F78A400>;
45                 };
46         };
47
48         memory {
49                 device_type = "memory";
50                 reg = <00000000 10000000>;
51         };
52
53         bcsr@f8000000 {
54                 device_type = "board-control";
55                 reg = <f8000000 8000>;
56         };
57
58         soc8360@e0000000 {
59                 #address-cells = <1>;
60                 #size-cells = <1>;
61                 device_type = "soc";
62                 ranges = <0 e0000000 00100000>;
63                 reg = <e0000000 00000200>;
64                 bus-frequency = <FBC5200>;
65
66                 wdt@200 {
67                         device_type = "watchdog";
68                         compatible = "mpc83xx_wdt";
69                         reg = <200 100>;
70                 };
71
72                 i2c@3000 {
73                         #address-cells = <1>;
74                         #size-cells = <0>;
75                         cell-index = <0>;
76                         compatible = "fsl-i2c";
77                         reg = <3000 100>;
78                         interrupts = <e 8>;
79                         interrupt-parent = < &ipic >;
80                         dfsrr;
81
82                         rtc@68 {
83                                 compatible = "dallas,ds1374";
84                                 reg = <68>;
85                         };
86                 };
87
88                 i2c@3100 {
89                         #address-cells = <1>;
90                         #size-cells = <0>;
91                         cell-index = <1>;
92                         compatible = "fsl-i2c";
93                         reg = <3100 100>;
94                         interrupts = <f 8>;
95                         interrupt-parent = < &ipic >;
96                         dfsrr;
97                 };
98
99                 serial0: serial@4500 {
100                         cell-index = <0>;
101                         device_type = "serial";
102                         compatible = "ns16550";
103                         reg = <4500 100>;
104                         clock-frequency = <FBC5200>;
105                         interrupts = <9 8>;
106                         interrupt-parent = < &ipic >;
107                 };
108
109                 serial1: serial@4600 {
110                         cell-index = <1>;
111                         device_type = "serial";
112                         compatible = "ns16550";
113                         reg = <4600 100>;
114                         clock-frequency = <FBC5200>;
115                         interrupts = <a 8>;
116                         interrupt-parent = < &ipic >;
117                 };
118
119                 crypto@30000 {
120                         device_type = "crypto";
121                         model = "SEC2";
122                         compatible = "talitos";
123                         reg = <30000 10000>;
124                         interrupts = <b 8>;
125                         interrupt-parent = < &ipic >;
126                         num-channels = <4>;
127                         channel-fifo-len = <18>;
128                         exec-units-mask = <0000007e>;
129                         /* desc mask is for rev1.x, we need runtime fixup for >=2.x */
130                         descriptor-types-mask = <01010ebf>;
131                 };
132
133                 ipic: pic@700 {
134                         interrupt-controller;
135                         #address-cells = <0>;
136                         #interrupt-cells = <2>;
137                         reg = <700 100>;
138                         device_type = "ipic";
139                 };
140
141                 par_io@1400 {
142                         reg = <1400 100>;
143                         device_type = "par_io";
144                         num-ports = <7>;
145
146                         pio1: ucc_pin@01 {
147                                 pio-map = <
148                         /* port  pin  dir  open_drain  assignment  has_irq */
149                                         0  3  1  0  1  0        /* TxD0 */
150                                         0  4  1  0  1  0        /* TxD1 */
151                                         0  5  1  0  1  0        /* TxD2 */
152                                         0  6  1  0  1  0        /* TxD3 */
153                                         1  6  1  0  3  0        /* TxD4 */
154                                         1  7  1  0  1  0        /* TxD5 */
155                                         1  9  1  0  2  0        /* TxD6 */
156                                         1  a  1  0  2  0        /* TxD7 */
157                                         0  9  2  0  1  0        /* RxD0 */
158                                         0  a  2  0  1  0        /* RxD1 */
159                                         0  b  2  0  1  0        /* RxD2 */
160                                         0  c  2  0  1  0        /* RxD3 */
161                                         0  d  2  0  1  0        /* RxD4 */
162                                         1  1  2  0  2  0        /* RxD5 */
163                                         1  0  2  0  2  0        /* RxD6 */
164                                         1  4  2  0  2  0        /* RxD7 */
165                                         0  7  1  0  1  0        /* TX_EN */
166                                         0  8  1  0  1  0        /* TX_ER */
167                                         0  f  2  0  1  0        /* RX_DV */
168                                         0  10 2  0  1  0        /* RX_ER */
169                                         0  0  2  0  1  0        /* RX_CLK */
170                                         2  9  1  0  3  0        /* GTX_CLK - CLK10 */
171                                         2  8  2  0  1  0>;      /* GTX125 - CLK9 */
172                         };
173                         pio2: ucc_pin@02 {
174                                 pio-map = <
175                         /* port  pin  dir  open_drain  assignment  has_irq */
176                                         0  11 1  0  1  0   /* TxD0 */
177                                         0  12 1  0  1  0   /* TxD1 */
178                                         0  13 1  0  1  0   /* TxD2 */
179                                         0  14 1  0  1  0   /* TxD3 */
180                                         1  2  1  0  1  0   /* TxD4 */
181                                         1  3  1  0  2  0   /* TxD5 */
182                                         1  5  1  0  3  0   /* TxD6 */
183                                         1  8  1  0  3  0   /* TxD7 */
184                                         0  17 2  0  1  0   /* RxD0 */
185                                         0  18 2  0  1  0   /* RxD1 */
186                                         0  19 2  0  1  0   /* RxD2 */
187                                         0  1a 2  0  1  0   /* RxD3 */
188                                         0  1b 2  0  1  0   /* RxD4 */
189                                         1  c  2  0  2  0   /* RxD5 */
190                                         1  d  2  0  3  0   /* RxD6 */
191                                         1  b  2  0  2  0   /* RxD7 */
192                                         0  15 1  0  1  0   /* TX_EN */
193                                         0  16 1  0  1  0   /* TX_ER */
194                                         0  1d 2  0  1  0   /* RX_DV */
195                                         0  1e 2  0  1  0   /* RX_ER */
196                                         0  1f 2  0  1  0   /* RX_CLK */
197                                         2  2  1  0  2  0   /* GTX_CLK - CLK10 */
198                                         2  3  2  0  1  0   /* GTX125 - CLK4 */
199                                         0  1  3  0  2  0   /* MDIO */
200                                         0  2  1  0  1  0>; /* MDC */
201                         };
202
203                 };
204         };
205
206         qe@e0100000 {
207                 #address-cells = <1>;
208                 #size-cells = <1>;
209                 device_type = "qe";
210                 model = "QE";
211                 ranges = <0 e0100000 00100000>;
212                 reg = <e0100000 480>;
213                 brg-frequency = <0>;
214                 bus-frequency = <179A7B00>;
215
216                 muram@10000 {
217                         device_type = "muram";
218                         ranges = <0 00010000 0000c000>;
219
220                         data-only@0{
221                                 reg = <0 c000>;
222                         };
223                 };
224
225                 spi@4c0 {
226                         device_type = "spi";
227                         compatible = "fsl_spi";
228                         reg = <4c0 40>;
229                         interrupts = <2>;
230                         interrupt-parent = < &qeic >;
231                         mode = "cpu";
232                 };
233
234                 spi@500 {
235                         device_type = "spi";
236                         compatible = "fsl_spi";
237                         reg = <500 40>;
238                         interrupts = <1>;
239                         interrupt-parent = < &qeic >;
240                         mode = "cpu";
241                 };
242
243                 usb@6c0 {
244                         compatible = "qe_udc";
245                         reg = <6c0 40 8B00 100>;
246                         interrupts = <b>;
247                         interrupt-parent = < &qeic >;
248                         mode = "slave";
249                 };
250
251                 enet0: ucc@2000 {
252                         device_type = "network";
253                         compatible = "ucc_geth";
254                         model = "UCC";
255                         cell-index = <1>;
256                         device-id = <1>;
257                         reg = <2000 200>;
258                         interrupts = <20>;
259                         interrupt-parent = < &qeic >;
260                         local-mac-address = [ 00 00 00 00 00 00 ];
261                         rx-clock-name = "none";
262                         tx-clock-name = "clk9";
263                         phy-handle = < &phy0 >;
264                         phy-connection-type = "rgmii-id";
265                         pio-handle = < &pio1 >;
266                 };
267
268                 enet1: ucc@3000 {
269                         device_type = "network";
270                         compatible = "ucc_geth";
271                         model = "UCC";
272                         cell-index = <2>;
273                         device-id = <2>;
274                         reg = <3000 200>;
275                         interrupts = <21>;
276                         interrupt-parent = < &qeic >;
277                         local-mac-address = [ 00 00 00 00 00 00 ];
278                         rx-clock-name = "none";
279                         tx-clock-name = "clk4";
280                         phy-handle = < &phy1 >;
281                         phy-connection-type = "rgmii-id";
282                         pio-handle = < &pio2 >;
283                 };
284
285                 mdio@2120 {
286                         #address-cells = <1>;
287                         #size-cells = <0>;
288                         reg = <2120 18>;
289                         device_type = "mdio";
290                         compatible = "ucc_geth_phy";
291
292                         phy0: ethernet-phy@00 {
293                                 interrupt-parent = < &ipic >;
294                                 interrupts = <11 8>;
295                                 reg = <0>;
296                                 device_type = "ethernet-phy";
297                         };
298                         phy1: ethernet-phy@01 {
299                                 interrupt-parent = < &ipic >;
300                                 interrupts = <12 8>;
301                                 reg = <1>;
302                                 device_type = "ethernet-phy";
303                         };
304                 };
305
306                 qeic: qeic@80 {
307                         interrupt-controller;
308                         device_type = "qeic";
309                         #address-cells = <0>;
310                         #interrupt-cells = <1>;
311                         reg = <80 80>;
312                         big-endian;
313                         interrupts = <20 8 21 8>; //high:32 low:33
314                         interrupt-parent = < &ipic >;
315                 };
316         };
317
318         pci0: pci@e0008500 {
319                 cell-index = <1>;
320                 interrupt-map-mask = <f800 0 0 7>;
321                 interrupt-map = <
322
323                                 /* IDSEL 0x11 AD17 */
324                                  8800 0 0 1 &ipic 14 8
325                                  8800 0 0 2 &ipic 15 8
326                                  8800 0 0 3 &ipic 16 8
327                                  8800 0 0 4 &ipic 17 8
328
329                                 /* IDSEL 0x12 AD18 */
330                                  9000 0 0 1 &ipic 16 8
331                                  9000 0 0 2 &ipic 17 8
332                                  9000 0 0 3 &ipic 14 8
333                                  9000 0 0 4 &ipic 15 8
334
335                                 /* IDSEL 0x13 AD19 */
336                                  9800 0 0 1 &ipic 17 8
337                                  9800 0 0 2 &ipic 14 8
338                                  9800 0 0 3 &ipic 15 8
339                                  9800 0 0 4 &ipic 16 8
340
341                                 /* IDSEL 0x15 AD21*/
342                                  a800 0 0 1 &ipic 14 8
343                                  a800 0 0 2 &ipic 15 8
344                                  a800 0 0 3 &ipic 16 8
345                                  a800 0 0 4 &ipic 17 8
346
347                                 /* IDSEL 0x16 AD22*/
348                                  b000 0 0 1 &ipic 17 8
349                                  b000 0 0 2 &ipic 14 8
350                                  b000 0 0 3 &ipic 15 8
351                                  b000 0 0 4 &ipic 16 8
352
353                                 /* IDSEL 0x17 AD23*/
354                                  b800 0 0 1 &ipic 16 8
355                                  b800 0 0 2 &ipic 17 8
356                                  b800 0 0 3 &ipic 14 8
357                                  b800 0 0 4 &ipic 15 8
358
359                                 /* IDSEL 0x18 AD24*/
360                                  c000 0 0 1 &ipic 15 8
361                                  c000 0 0 2 &ipic 16 8
362                                  c000 0 0 3 &ipic 17 8
363                                  c000 0 0 4 &ipic 14 8>;
364                 interrupt-parent = < &ipic >;
365                 interrupts = <42 8>;
366                 bus-range = <0 0>;
367                 ranges = <02000000 0 a0000000 a0000000 0 10000000
368                           42000000 0 80000000 80000000 0 10000000
369                           01000000 0 00000000 e2000000 0 00100000>;
370                 clock-frequency = <3f940aa>;
371                 #interrupt-cells = <1>;
372                 #size-cells = <2>;
373                 #address-cells = <3>;
374                 reg = <e0008500 100>;
375                 compatible = "fsl,mpc8349-pci";
376                 device_type = "pci";
377         };
378 };