Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input
[pandora-kernel.git] / arch / powerpc / boot / dts / mpc834x_mds.dts
1 /*
2  * MPC8349E MDS Device Tree Source
3  *
4  * Copyright 2005, 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         model = "MPC8349EMDS";
14         compatible = "MPC8349EMDS", "MPC834xMDS", "MPC83xxMDS";
15         #address-cells = <1>;
16         #size-cells = <1>;
17
18         cpus {
19                 #address-cells = <1>;
20                 #size-cells = <0>;
21
22                 PowerPC,8349@0 {
23                         device_type = "cpu";
24                         reg = <0>;
25                         d-cache-line-size = <20>;       // 32 bytes
26                         i-cache-line-size = <20>;       // 32 bytes
27                         d-cache-size = <8000>;          // L1, 32K
28                         i-cache-size = <8000>;          // L1, 32K
29                         timebase-frequency = <0>;       // from bootloader
30                         bus-frequency = <0>;            // from bootloader
31                         clock-frequency = <0>;          // from bootloader
32                 };
33         };
34
35         memory {
36                 device_type = "memory";
37                 reg = <00000000 10000000>;      // 256MB at 0
38         };
39
40         bcsr@e2400000 {
41                 device_type = "board-control";
42                 reg = <e2400000 8000>;
43         };
44
45         soc8349@e0000000 {
46                 #address-cells = <1>;
47                 #size-cells = <1>;
48                 device_type = "soc";
49                 ranges = <0 e0000000 00100000>;
50                 reg = <e0000000 00000200>;
51                 bus-frequency = <0>;
52
53                 wdt@200 {
54                         device_type = "watchdog";
55                         compatible = "mpc83xx_wdt";
56                         reg = <200 100>;
57                 };
58
59                 i2c@3000 {
60                         #address-cells = <1>;
61                         #size-cells = <0>;
62                         device_type = "i2c";
63                         compatible = "fsl-i2c";
64                         reg = <3000 100>;
65                         interrupts = <e 8>;
66                         interrupt-parent = < &ipic >;
67                         dfsrr;
68
69                         rtc@68 {
70                                 compatible = "dallas,ds1374";
71                                 reg = <68>;
72                         };
73                 };
74
75                 i2c@3100 {
76                         #address-cells = <1>;
77                         #size-cells = <0>;
78                         device_type = "i2c";
79                         compatible = "fsl-i2c";
80                         reg = <3100 100>;
81                         interrupts = <f 8>;
82                         interrupt-parent = < &ipic >;
83                         dfsrr;
84                 };
85
86                 spi@7000 {
87                         device_type = "spi";
88                         compatible = "fsl_spi";
89                         reg = <7000 1000>;
90                         interrupts = <10 8>;
91                         interrupt-parent = < &ipic >;
92                         mode = "cpu";
93                 };
94
95                 /* phy type (ULPI or SERIAL) are only types supportted for MPH */
96                 /* port = 0 or 1 */
97                 usb@22000 {
98                         device_type = "usb";
99                         compatible = "fsl-usb2-mph";
100                         reg = <22000 1000>;
101                         #address-cells = <1>;
102                         #size-cells = <0>;
103                         interrupt-parent = < &ipic >;
104                         interrupts = <27 8>;
105                         phy_type = "ulpi";
106                         port1;
107                 };
108                 /* phy type (ULPI, UTMI, UTMI_WIDE, SERIAL) */
109                 usb@23000 {
110                         device_type = "usb";
111                         compatible = "fsl-usb2-dr";
112                         reg = <23000 1000>;
113                         #address-cells = <1>;
114                         #size-cells = <0>;
115                         interrupt-parent = < &ipic >;
116                         interrupts = <26 8>;
117                         dr_mode = "otg";
118                         phy_type = "ulpi";
119                 };
120
121                 mdio@24520 {
122                         device_type = "mdio";
123                         compatible = "gianfar";
124                         reg = <24520 20>;
125                         #address-cells = <1>;
126                         #size-cells = <0>;
127                         phy0: ethernet-phy@0 {
128                                 interrupt-parent = < &ipic >;
129                                 interrupts = <11 8>;
130                                 reg = <0>;
131                                 device_type = "ethernet-phy";
132                         };
133                         phy1: ethernet-phy@1 {
134                                 interrupt-parent = < &ipic >;
135                                 interrupts = <12 8>;
136                                 reg = <1>;
137                                 device_type = "ethernet-phy";
138                         };
139                 };
140
141                 ethernet@24000 {
142                         device_type = "network";
143                         model = "TSEC";
144                         compatible = "gianfar";
145                         reg = <24000 1000>;
146                         /*
147                          * address is deprecated and will be removed
148                          * in 2.6.25.  Only recent versions of
149                          * U-Boot support local-mac-address, however.
150                          */
151                         address = [ 00 00 00 00 00 00 ];
152                         local-mac-address = [ 00 00 00 00 00 00 ];
153                         interrupts = <20 8 21 8 22 8>;
154                         interrupt-parent = < &ipic >;
155                         phy-handle = < &phy0 >;
156                         linux,network-index = <0>;
157                 };
158
159                 ethernet@25000 {
160                         #address-cells = <1>;
161                         #size-cells = <0>;
162                         device_type = "network";
163                         model = "TSEC";
164                         compatible = "gianfar";
165                         reg = <25000 1000>;
166                         /*
167                          * address is deprecated and will be removed
168                          * in 2.6.25.  Only recent versions of
169                          * U-Boot support local-mac-address, however.
170                          */
171                         address = [ 00 00 00 00 00 00 ];
172                         local-mac-address = [ 00 00 00 00 00 00 ];
173                         interrupts = <23 8 24 8 25 8>;
174                         interrupt-parent = < &ipic >;
175                         phy-handle = < &phy1 >;
176                         linux,network-index = <1>;
177                 };
178
179                 serial@4500 {
180                         device_type = "serial";
181                         compatible = "ns16550";
182                         reg = <4500 100>;
183                         clock-frequency = <0>;
184                         interrupts = <9 8>;
185                         interrupt-parent = < &ipic >;
186                 };
187
188                 serial@4600 {
189                         device_type = "serial";
190                         compatible = "ns16550";
191                         reg = <4600 100>;
192                         clock-frequency = <0>;
193                         interrupts = <a 8>;
194                         interrupt-parent = < &ipic >;
195                 };
196
197                 /* May need to remove if on a part without crypto engine */
198                 crypto@30000 {
199                         device_type = "crypto";
200                         model = "SEC2";
201                         compatible = "talitos";
202                         reg = <30000 10000>;
203                         interrupts = <b 8>;
204                         interrupt-parent = < &ipic >;
205                         num-channels = <4>;
206                         channel-fifo-len = <18>;
207                         exec-units-mask = <0000007e>;
208                         /* desc mask is for rev2.0,
209                          * we need runtime fixup for >2.0 */
210                         descriptor-types-mask = <01010ebf>;
211                 };
212
213                 /* IPIC
214                  * interrupts cell = <intr #, sense>
215                  * sense values match linux IORESOURCE_IRQ_* defines:
216                  * sense == 8: Level, low assertion
217                  * sense == 2: Edge, high-to-low change
218                  */
219                 ipic: pic@700 {
220                         interrupt-controller;
221                         #address-cells = <0>;
222                         #interrupt-cells = <2>;
223                         reg = <700 100>;
224                         device_type = "ipic";
225                 };
226         };
227
228         pci@e0008500 {
229                 interrupt-map-mask = <f800 0 0 7>;
230                 interrupt-map = <
231
232                                 /* IDSEL 0x11 */
233                                  8800 0 0 1 &ipic 14 8
234                                  8800 0 0 2 &ipic 15 8
235                                  8800 0 0 3 &ipic 16 8
236                                  8800 0 0 4 &ipic 17 8
237
238                                 /* IDSEL 0x12 */
239                                  9000 0 0 1 &ipic 16 8
240                                  9000 0 0 2 &ipic 17 8
241                                  9000 0 0 3 &ipic 14 8
242                                  9000 0 0 4 &ipic 15 8
243
244                                 /* IDSEL 0x13 */
245                                  9800 0 0 1 &ipic 17 8
246                                  9800 0 0 2 &ipic 14 8
247                                  9800 0 0 3 &ipic 15 8
248                                  9800 0 0 4 &ipic 16 8
249
250                                 /* IDSEL 0x15 */
251                                  a800 0 0 1 &ipic 14 8
252                                  a800 0 0 2 &ipic 15 8
253                                  a800 0 0 3 &ipic 16 8
254                                  a800 0 0 4 &ipic 17 8
255
256                                 /* IDSEL 0x16 */
257                                  b000 0 0 1 &ipic 17 8
258                                  b000 0 0 2 &ipic 14 8
259                                  b000 0 0 3 &ipic 15 8
260                                  b000 0 0 4 &ipic 16 8
261
262                                 /* IDSEL 0x17 */
263                                  b800 0 0 1 &ipic 16 8
264                                  b800 0 0 2 &ipic 17 8
265                                  b800 0 0 3 &ipic 14 8
266                                  b800 0 0 4 &ipic 15 8
267
268                                 /* IDSEL 0x18 */
269                                  c000 0 0 1 &ipic 15 8
270                                  c000 0 0 2 &ipic 16 8
271                                  c000 0 0 3 &ipic 17 8
272                                  c000 0 0 4 &ipic 14 8>;
273                 interrupt-parent = < &ipic >;
274                 interrupts = <42 8>;
275                 bus-range = <0 0>;
276                 ranges = <02000000 0 90000000 90000000 0 10000000
277                           42000000 0 80000000 80000000 0 10000000
278                           01000000 0 00000000 e2000000 0 00100000>;
279                 clock-frequency = <3f940aa>;
280                 #interrupt-cells = <1>;
281                 #size-cells = <2>;
282                 #address-cells = <3>;
283                 reg = <e0008500 100>;
284                 compatible = "fsl,mpc8349-pci";
285                 device_type = "pci";
286         };
287
288         pci@e0008600 {
289                 interrupt-map-mask = <f800 0 0 7>;
290                 interrupt-map = <
291
292                                 /* IDSEL 0x11 */
293                                  8800 0 0 1 &ipic 14 8
294                                  8800 0 0 2 &ipic 15 8
295                                  8800 0 0 3 &ipic 16 8
296                                  8800 0 0 4 &ipic 17 8
297
298                                 /* IDSEL 0x12 */
299                                  9000 0 0 1 &ipic 16 8
300                                  9000 0 0 2 &ipic 17 8
301                                  9000 0 0 3 &ipic 14 8
302                                  9000 0 0 4 &ipic 15 8
303
304                                 /* IDSEL 0x13 */
305                                  9800 0 0 1 &ipic 17 8
306                                  9800 0 0 2 &ipic 14 8
307                                  9800 0 0 3 &ipic 15 8
308                                  9800 0 0 4 &ipic 16 8
309
310                                 /* IDSEL 0x15 */
311                                  a800 0 0 1 &ipic 14 8
312                                  a800 0 0 2 &ipic 15 8
313                                  a800 0 0 3 &ipic 16 8
314                                  a800 0 0 4 &ipic 17 8
315
316                                 /* IDSEL 0x16 */
317                                  b000 0 0 1 &ipic 17 8
318                                  b000 0 0 2 &ipic 14 8
319                                  b000 0 0 3 &ipic 15 8
320                                  b000 0 0 4 &ipic 16 8
321
322                                 /* IDSEL 0x17 */
323                                  b800 0 0 1 &ipic 16 8
324                                  b800 0 0 2 &ipic 17 8
325                                  b800 0 0 3 &ipic 14 8
326                                  b800 0 0 4 &ipic 15 8
327
328                                 /* IDSEL 0x18 */
329                                  c000 0 0 1 &ipic 15 8
330                                  c000 0 0 2 &ipic 16 8
331                                  c000 0 0 3 &ipic 17 8
332                                  c000 0 0 4 &ipic 14 8>;
333                 interrupt-parent = < &ipic >;
334                 interrupts = <42 8>;
335                 bus-range = <0 0>;
336                 ranges = <02000000 0 b0000000 b0000000 0 10000000
337                           42000000 0 a0000000 a0000000 0 10000000
338                           01000000 0 00000000 e2100000 0 00100000>;
339                 clock-frequency = <3f940aa>;
340                 #interrupt-cells = <1>;
341                 #size-cells = <2>;
342                 #address-cells = <3>;
343                 reg = <e0008600 100>;
344                 compatible = "fsl,mpc8349-pci";
345                 device_type = "pci";
346         };
347 };