Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
[pandora-kernel.git] / arch / powerpc / boot / dts / ksi8560.dts
1 /*
2  * Device Tree Source for Emerson KSI8560
3  *
4  * Author: Alexandr Smirnov <asmirnov@ru.mvista.com>
5  *
6  * Based on mpc8560ads.dts
7  *
8  * 2008 (c) MontaVista, Software, Inc.  This file is licensed under
9  * the terms of the GNU General Public License version 2.  This program
10  * is licensed "as is" without any warranty of any kind, whether express
11  * or implied.
12  *
13  */
14
15 /dts-v1/;
16
17 / {
18         model = "KSI8560";
19         compatible = "emerson,KSI8560";
20         #address-cells = <1>;
21         #size-cells = <1>;
22
23         aliases {
24                 ethernet0 = &enet0;
25                 ethernet1 = &enet1;
26                 ethernet2 = &enet2;
27         };
28
29         cpus {
30                 #address-cells = <1>;
31                 #size-cells = <0>;
32
33                 PowerPC,8560@0 {
34                         device_type = "cpu";
35                         reg = <0>;
36                         d-cache-line-size = <32>;
37                         i-cache-line-size = <32>;
38                         d-cache-size = <0x8000>;                /* L1, 32K */
39                         i-cache-size = <0x8000>;                /* L1, 32K */
40                         timebase-frequency = <0>;               /* From U-boot */
41                         bus-frequency = <0>;                    /* From U-boot */
42                         clock-frequency = <0>;                  /* From U-boot */
43                         next-level-cache = <&L2>;
44                 };
45         };
46
47         memory {
48                 device_type = "memory";
49                 reg = <0x00000000 0x10000000>;                  /* Fixed by bootwrapper */
50         };
51
52         soc@fdf00000 {
53                 #address-cells = <1>;
54                 #size-cells = <1>;
55                 device_type = "soc";
56                 ranges = <0x00000000 0xfdf00000 0x00100000>;
57                 bus-frequency = <0>;                            /* Fixed by bootwrapper */
58
59                 memory-controller@2000 {
60                         compatible = "fsl,8540-memory-controller";
61                         reg = <0x2000 0x1000>;
62                         interrupt-parent = <&mpic>;
63                         interrupts = <0x12 0x2>;
64                 };
65
66                 L2: l2-cache-controller@20000 {
67                         compatible = "fsl,8540-l2-cache-controller";
68                         reg = <0x20000 0x1000>;
69                         cache-line-size = <0x20>;               /* 32 bytes */
70                         cache-size = <0x40000>;                 /* L2, 256K */
71                         interrupt-parent = <&mpic>;
72                         interrupts = <0x10 0x2>;
73                 };
74
75                 i2c@3000 {
76                         #address-cells = <1>;
77                         #size-cells = <0>;
78                         cell-index = <0>;
79                         compatible = "fsl-i2c";
80                         reg = <0x3000 0x100>;
81                         interrupts = <0x2b 0x2>;
82                         interrupt-parent = <&mpic>;
83                         dfsrr;
84                 };
85
86                 dma@21300 {
87                         #address-cells = <1>;
88                         #size-cells = <1>;
89                         compatible = "fsl,mpc8560-dma", "fsl,eloplus-dma";
90                         reg = <0x21300 0x4>;
91                         ranges = <0x0 0x21100 0x200>;
92                         cell-index = <0>;
93                         dma-channel@0 {
94                                 compatible = "fsl,mpc8560-dma-channel",
95                                                 "fsl,eloplus-dma-channel";
96                                 reg = <0x0 0x80>;
97                                 cell-index = <0>;
98                                 interrupt-parent = <&mpic>;
99                                 interrupts = <20 2>;
100                         };
101                         dma-channel@80 {
102                                 compatible = "fsl,mpc8560-dma-channel",
103                                                 "fsl,eloplus-dma-channel";
104                                 reg = <0x80 0x80>;
105                                 cell-index = <1>;
106                                 interrupt-parent = <&mpic>;
107                                 interrupts = <21 2>;
108                         };
109                         dma-channel@100 {
110                                 compatible = "fsl,mpc8560-dma-channel",
111                                                 "fsl,eloplus-dma-channel";
112                                 reg = <0x100 0x80>;
113                                 cell-index = <2>;
114                                 interrupt-parent = <&mpic>;
115                                 interrupts = <22 2>;
116                         };
117                         dma-channel@180 {
118                                 compatible = "fsl,mpc8560-dma-channel",
119                                                 "fsl,eloplus-dma-channel";
120                                 reg = <0x180 0x80>;
121                                 cell-index = <3>;
122                                 interrupt-parent = <&mpic>;
123                                 interrupts = <23 2>;
124                         };
125                 };
126
127                 enet0: ethernet@24000 {
128                         #address-cells = <1>;
129                         #size-cells = <1>;
130                         device_type = "network";
131                         model = "TSEC";
132                         compatible = "gianfar";
133                         reg = <0x24000 0x1000>;
134                         ranges = <0x0 0x24000 0x1000>;
135                         /* Mac address filled in by bootwrapper */
136                         local-mac-address = [ 00 00 00 00 00 00 ];
137                         interrupts = <0x1d 0x2 0x1e 0x2 0x22 0x2>;
138                         interrupt-parent = <&mpic>;
139                         tbi-handle = <&tbi0>;
140                         phy-handle = <&PHY1>;
141
142                         mdio@520 {                                      /* For TSECs */
143                                 #address-cells = <1>;
144                                 #size-cells = <0>;
145                                 compatible = "fsl,gianfar-mdio";
146                                 reg = <0x520 0x20>;
147
148                                 PHY1: ethernet-phy@1 {
149                                         interrupt-parent = <&mpic>;
150                                         reg = <0x1>;
151                                         device_type = "ethernet-phy";
152                                 };
153
154                                 PHY2: ethernet-phy@2 {
155                                         interrupt-parent = <&mpic>;
156                                         reg = <0x2>;
157                                         device_type = "ethernet-phy";
158                                 };
159
160                                 tbi0: tbi-phy@11 {
161                                         reg = <0x11>;
162                                         device_type = "tbi-phy";
163                                 };
164                         };
165                 };
166
167                 enet1: ethernet@25000 {
168                         #address-cells = <1>;
169                         #size-cells = <1>;
170                         device_type = "network";
171                         model = "TSEC";
172                         compatible = "gianfar";
173                         reg = <0x25000 0x1000>;
174                         ranges = <0x0 0x25000 0x1000>;
175                         /* Mac address filled in by bootwrapper */
176                         local-mac-address = [ 00 00 00 00 00 00 ];
177                         interrupts = <0x23 0x2 0x24 0x2 0x28 0x2>;
178                         interrupt-parent = <&mpic>;
179                         tbi-handle = <&tbi1>;
180                         phy-handle = <&PHY2>;
181
182                         mdio@520 {
183                                 #address-cells = <1>;
184                                 #size-cells = <0>;
185                                 compatible = "fsl,gianfar-tbi";
186                                 reg = <0x520 0x20>;
187
188                                 tbi1: tbi-phy@11 {
189                                         reg = <0x11>;
190                                         device_type = "tbi-phy";
191                                 };
192                         };
193                 };
194
195                 mpic: pic@40000 {
196                         #address-cells = <0>;
197                         #interrupt-cells = <2>;
198                         interrupt-controller;
199                         reg = <0x40000 0x40000>;
200                         device_type = "open-pic";
201                 };
202
203                 cpm@919c0 {
204                         #address-cells = <1>;
205                         #size-cells = <1>;
206                         compatible = "fsl,mpc8560-cpm", "fsl,cpm2";
207                         reg = <0x919c0 0x30>;
208                         ranges;
209
210                         muram@80000 {
211                                 #address-cells = <1>;
212                                 #size-cells = <1>;
213                                 ranges = <0x0 0x80000 0x10000>;
214
215                                 data@0 {
216                                         compatible = "fsl,cpm-muram-data";
217                                         reg = <0x0 0x4000 0x9000 0x2000>;
218                                 };
219                         };
220
221                         brg@919f0 {
222                                 compatible = "fsl,mpc8560-brg",
223                                              "fsl,cpm2-brg",
224                                              "fsl,cpm-brg";
225                                 reg = <0x919f0 0x10 0x915f0 0x10>;
226                                 clock-frequency = <165000000>;  /* 166MHz */
227                         };
228
229                         CPMPIC: pic@90c00 {
230                                 #address-cells = <0>;
231                                 #interrupt-cells = <2>;
232                                 interrupt-controller;
233                                 interrupts = <0x2e 0x2>;
234                                 interrupt-parent = <&mpic>;
235                                 reg = <0x90c00 0x80>;
236                                 compatible = "fsl,mpc8560-cpm-pic", "fsl,cpm2-pic";
237                         };
238
239                         serial@91a00 {
240                                 device_type = "serial";
241                                 compatible = "fsl,mpc8560-scc-uart",
242                                              "fsl,cpm2-scc-uart";
243                                 reg = <0x91a00 0x20 0x88000 0x100>;
244                                 fsl,cpm-brg = <1>;
245                                 fsl,cpm-command = <0x800000>;
246                                 current-speed = <0x1c200>;
247                                 interrupts = <0x28 0x8>;
248                                 interrupt-parent = <&CPMPIC>;
249                         };
250
251                         serial@91a20 {
252                                 device_type = "serial";
253                                 compatible = "fsl,mpc8560-scc-uart",
254                                              "fsl,cpm2-scc-uart";
255                                 reg = <0x91a20 0x20 0x88100 0x100>;
256                                 fsl,cpm-brg = <2>;
257                                 fsl,cpm-command = <0x4a00000>;
258                                 current-speed = <0x1c200>;
259                                 interrupts = <0x29 0x8>;
260                                 interrupt-parent = <&CPMPIC>;
261                         };
262
263                         mdio@90d00 {                            /* For FCCs */
264                                 #address-cells = <1>;
265                                 #size-cells = <0>;
266                                 compatible = "fsl,cpm2-mdio-bitbang";
267                                 reg = <0x90d00 0x14>;
268                                 fsl,mdio-pin = <24>;
269                                 fsl,mdc-pin = <25>;
270
271                                 PHY0: ethernet-phy@0 {
272                                         interrupt-parent = <&mpic>;
273                                         reg = <0x0>;
274                                         device_type = "ethernet-phy";
275                                 };
276                         };
277
278                         enet2: ethernet@91300 {
279                                 device_type = "network";
280                                 compatible = "fsl,mpc8560-fcc-enet",
281                                              "fsl,cpm2-fcc-enet";
282                                 reg = <0x91300 0x20 0x88400 0x100 0x91390 0x1>;
283                                 /* Mac address filled in by bootwrapper */
284                                 local-mac-address = [ 00 00 00 00 00 00 ];
285                                 fsl,cpm-command = <0x12000300>;
286                                 interrupts = <0x20 0x8>;
287                                 interrupt-parent = <&CPMPIC>;
288                                 phy-handle = <&PHY0>;
289                         };
290                 };
291         };
292
293         localbus@fdf05000 {
294                 #address-cells = <2>;
295                 #size-cells = <1>;
296                 compatible = "fsl,mpc8560-localbus";
297                 reg = <0xfdf05000 0x68>;
298
299                 ranges = <0x0 0x0 0xe0000000 0x00800000
300                           0x4 0x0 0xe8080000 0x00080000>;
301
302                 flash@0,0 {
303                         #address-cells = <1>;
304                         #size-cells = <1>;
305                         compatible = "jedec-flash";
306                         reg = <0x0 0x0 0x800000>;
307                         bank-width = <0x2>;
308
309                         partition@0 {
310                                 label = "Primary Kernel";
311                                 reg = <0x0 0x180000>;
312                         };
313                         partition@180000 {
314                                 label = "Primary Filesystem";
315                                 reg = <0x180000 0x580000>;
316                         };
317                         partition@700000 {
318                                 label = "Monitor";
319                                 reg = <0x300000 0x100000>;
320                                 read-only;
321                         };
322                 };
323
324                 cpld@4,0 {
325                         compatible = "emerson,KSI8560-cpld";
326                         reg = <0x4 0x0 0x80000>;
327                 };
328         };
329
330
331         chosen {
332                 linux,stdout-path = "/soc/cpm/serial@91a00";
333         };
334 };