[POWERPC] DTS cleanup
[linux-2.6/linux-acpi-2.6/ibm-acpi-2.6.git] / arch / powerpc / boot / dts / mpc8641_hpcn.dts
blob4d53d9bc3a9d2342cb78addb83a25e22951b22f8
1 /*
2  * MPC8641 HPCN 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  */
13 / {
14         model = "MPC8641HPCN";
15         compatible = "mpc86xx";
16         #address-cells = <1>;
17         #size-cells = <1>;
19         cpus {
20                 #address-cells = <1>;
21                 #size-cells = <0>;
23                 PowerPC,8641@0 {
24                         device_type = "cpu";
25                         reg = <0>;
26                         d-cache-line-size = <20>;       // 32 bytes
27                         i-cache-line-size = <20>;       // 32 bytes
28                         d-cache-size = <8000>;          // L1, 32K
29                         i-cache-size = <8000>;          // L1, 32K
30                         timebase-frequency = <0>;       // 33 MHz, from uboot
31                         bus-frequency = <0>;            // From uboot
32                         clock-frequency = <0>;          // From uboot
33                 };
34                 PowerPC,8641@1 {
35                         device_type = "cpu";
36                         reg = <1>;
37                         d-cache-line-size = <20>;       // 32 bytes
38                         i-cache-line-size = <20>;       // 32 bytes
39                         d-cache-size = <8000>;          // L1, 32K
40                         i-cache-size = <8000>;          // L1, 32K
41                         timebase-frequency = <0>;       // 33 MHz, from uboot
42                         bus-frequency = <0>;            // From uboot
43                         clock-frequency = <0>;          // From uboot
44                 };
45         };
47         memory {
48                 device_type = "memory";
49                 reg = <00000000 40000000>;      // 1G at 0x0
50         };
52         soc8641@f8000000 {
53                 #address-cells = <1>;
54                 #size-cells = <1>;
55                 device_type = "soc";
56                 ranges = <00001000 f8001000 000ff000
57                           80000000 80000000 20000000
58                           e2000000 e2000000 00100000
59                           a0000000 a0000000 20000000
60                           e3000000 e3000000 00100000>;
61                 reg = <f8000000 00001000>;      // CCSRBAR
62                 bus-frequency = <0>;
64                 i2c@3000 {
65                         device_type = "i2c";
66                         compatible = "fsl-i2c";
67                         reg = <3000 100>;
68                         interrupts = <2b 2>;
69                         interrupt-parent = <&mpic>;
70                         dfsrr;
71                 };
73                 i2c@3100 {
74                         device_type = "i2c";
75                         compatible = "fsl-i2c";
76                         reg = <3100 100>;
77                         interrupts = <2b 2>;
78                         interrupt-parent = <&mpic>;
79                         dfsrr;
80                 };
82                 mdio@24520 {
83                         #address-cells = <1>;
84                         #size-cells = <0>;
85                         device_type = "mdio";
86                         compatible = "gianfar";
87                         reg = <24520 20>;
88                         phy0: ethernet-phy@0 {
89                                 interrupt-parent = <&mpic>;
90                                 interrupts = <a 1>;
91                                 reg = <0>;
92                                 device_type = "ethernet-phy";
93                         };
94                         phy1: ethernet-phy@1 {
95                                 interrupt-parent = <&mpic>;
96                                 interrupts = <a 1>;
97                                 reg = <1>;
98                                 device_type = "ethernet-phy";
99                         };
100                         phy2: ethernet-phy@2 {
101                                 interrupt-parent = <&mpic>;
102                                 interrupts = <a 1>;
103                                 reg = <2>;
104                                 device_type = "ethernet-phy";
105                         };
106                         phy3: ethernet-phy@3 {
107                                 interrupt-parent = <&mpic>;
108                                 interrupts = <a 1>;
109                                 reg = <3>;
110                                 device_type = "ethernet-phy";
111                         };
112                 };
114                 ethernet@24000 {
115                         #address-cells = <1>;
116                         #size-cells = <0>;
117                         device_type = "network";
118                         model = "TSEC";
119                         compatible = "gianfar";
120                         reg = <24000 1000>;
121                         /*
122                          * mac-address is deprecated and will be removed
123                          * in 2.6.25.  Only recent versions of
124                          * U-Boot support local-mac-address, however.
125                          */
126                         mac-address = [ 00 00 00 00 00 00 ];
127                         local-mac-address = [ 00 00 00 00 00 00 ];
128                         interrupts = <1d 2 1e 2 22 2>;
129                         interrupt-parent = <&mpic>;
130                         phy-handle = <&phy0>;
131                         phy-connection-type = "rgmii-id";
132                 };
134                 ethernet@25000 {
135                         #address-cells = <1>;
136                         #size-cells = <0>;
137                         device_type = "network";
138                         model = "TSEC";
139                         compatible = "gianfar";
140                         reg = <25000 1000>;
141                         /*
142                          * mac-address is deprecated and will be removed
143                          * in 2.6.25.  Only recent versions of
144                          * U-Boot support local-mac-address, however.
145                          */
146                         mac-address = [ 00 00 00 00 00 00 ];
147                         local-mac-address = [ 00 00 00 00 00 00 ];
148                         interrupts = <23 2 24 2 28 2>;
149                         interrupt-parent = <&mpic>;
150                         phy-handle = <&phy1>;
151                         phy-connection-type = "rgmii-id";
152                 };
153                 
154                 ethernet@26000 {
155                         #address-cells = <1>;
156                         #size-cells = <0>;
157                         device_type = "network";
158                         model = "TSEC";
159                         compatible = "gianfar";
160                         reg = <26000 1000>;
161                         /*
162                          * mac-address is deprecated and will be removed
163                          * in 2.6.25.  Only recent versions of
164                          * U-Boot support local-mac-address, however.
165                          */
166                         mac-address = [ 00 00 00 00 00 00 ];
167                         local-mac-address = [ 00 00 00 00 00 00 ];
168                         interrupts = <1F 2 20 2 21 2>;
169                         interrupt-parent = <&mpic>;
170                         phy-handle = <&phy2>;
171                         phy-connection-type = "rgmii-id";
172                 };
174                 ethernet@27000 {
175                         #address-cells = <1>;
176                         #size-cells = <0>;
177                         device_type = "network";
178                         model = "TSEC";
179                         compatible = "gianfar";
180                         reg = <27000 1000>;
181                         /*
182                          * mac-address is deprecated and will be removed
183                          * in 2.6.25.  Only recent versions of
184                          * U-Boot support local-mac-address, however.
185                          */
186                         mac-address = [ 00 00 00 00 00 00 ];
187                         local-mac-address = [ 00 00 00 00 00 00 ];
188                         interrupts = <25 2 26 2 27 2>;
189                         interrupt-parent = <&mpic>;
190                         phy-handle = <&phy3>;
191                         phy-connection-type = "rgmii-id";
192                 };
193                 serial@4500 {
194                         device_type = "serial";
195                         compatible = "ns16550";
196                         reg = <4500 100>;
197                         clock-frequency = <0>;
198                         interrupts = <2a 2>;
199                         interrupt-parent = <&mpic>;
200                 };
202                 serial@4600 {
203                         device_type = "serial";
204                         compatible = "ns16550";
205                         reg = <4600 100>;
206                         clock-frequency = <0>;
207                         interrupts = <1c 2>;
208                         interrupt-parent = <&mpic>;
209                 };
211                 pcie@8000 {
212                         compatible = "fsl,mpc8641-pcie";
213                         device_type = "pci";
214                         #interrupt-cells = <1>;
215                         #size-cells = <2>;
216                         #address-cells = <3>;
217                         reg = <8000 1000>;
218                         bus-range = <0 ff>;
219                         ranges = <02000000 0 80000000 80000000 0 20000000
220                                   01000000 0 00000000 e2000000 0 00100000>;
221                         clock-frequency = <1fca055>;
222                         interrupt-parent = <&mpic>;
223                         interrupts = <18 2>;
224                         interrupt-map-mask = <fb00 0 0 0>;
225                         interrupt-map = <
226                                 /* IDSEL 0x11 */
227                                 8800 0 0 1 &i8259 9 2
228                                 8800 0 0 2 &i8259 a 2
229                                 8800 0 0 3 &i8259 b 2
230                                 8800 0 0 4 &i8259 c 2
232                                 /* IDSEL 0x12 */
233                                 9000 0 0 1 &i8259 a 2
234                                 9000 0 0 2 &i8259 b 2
235                                 9000 0 0 3 &i8259 c 2
236                                 9000 0 0 4 &i8259 9 2
238                                 // IDSEL 0x1c  USB
239                                 e000 0 0 0 &i8259 c 2
240                                 e100 0 0 0 &i8259 9 2
241                                 e200 0 0 0 &i8259 a 2
242                                 e300 0 0 0 &i8259 b 2
244                                 // IDSEL 0x1d  Audio
245                                 e800 0 0 0 &i8259 6 2
247                                 // IDSEL 0x1e Legacy
248                                 f000 0 0 0 &i8259 7 2
249                                 f100 0 0 0 &i8259 7 2
251                                 // IDSEL 0x1f IDE/SATA
252                                 f800 0 0 0 &i8259 e 2
253                                 f900 0 0 0 &i8259 5 2
254                                 >;
255                         uli1575@0 {
256                                 reg = <0 0 0 0 0>;
257                                 #size-cells = <2>;
258                                 #address-cells = <3>;
259                                 ranges = <02000000 0 80000000
260                                           02000000 0 80000000
261                                           0 20000000
262                                           01000000 0 00000000
263                                           01000000 0 00000000
264                                           0 00100000>;
266                                 pci_bridge@0 {
267                                         reg = <0 0 0 0 0>;
268                                         #size-cells = <2>;
269                                         #address-cells = <3>;
270                                         ranges = <02000000 0 80000000
271                                                   02000000 0 80000000
272                                                   0 20000000
273                                                   01000000 0 00000000
274                                                   01000000 0 00000000
275                                                   0 00100000>;
277                                         isa@1e {
278                                                 device_type = "isa";
279                                                 #interrupt-cells = <2>;
280                                                 #size-cells = <1>;
281                                                 #address-cells = <2>;
282                                                 reg = <f000 0 0 0 0>;
283                                                 ranges = <1 0 01000000 0 0
284                                                           00001000>;
285                                                 interrupt-parent = <&i8259>;
287                                                 i8259: interrupt-controller@20 {
288                                                         reg = <1 20 2
289                                                                1 a0 2
290                                                                1 4d0 2>;
291                                                         interrupt-controller;
292                                                         device_type = "interrupt-controller";
293                                                         #address-cells = <0>;
294                                                         #interrupt-cells = <2>;
295                                                         compatible = "chrp,iic";
296                                                         interrupts = <9 2>;
297                                                         interrupt-parent =
298                                                                 <&mpic>;
299                                                 };
301                                                 i8042@60 {
302                                                         #size-cells = <0>;
303                                                         #address-cells = <1>;
304                                                         reg = <1 60 1 1 64 1>;
305                                                         interrupts = <1 3 c 3>;
306                                                         interrupt-parent =
307                                                                 <&i8259>;
309                                                         keyboard@0 {
310                                                                 reg = <0>;
311                                                                 compatible = "pnpPNP,303";
312                                                         };
314                                                         mouse@1 {
315                                                                 reg = <1>;
316                                                                 compatible = "pnpPNP,f03";
317                                                         };
318                                                 };
320                                                 rtc@70 {
321                                                         compatible =
322                                                                 "pnpPNP,b00";
323                                                         reg = <1 70 2>;
324                                                 };
326                                                 gpio@400 {
327                                                         reg = <1 400 80>;
328                                                 };
329                                         };
330                                 };
331                         };
333                 };
335                 pcie@9000 {
336                         compatible = "fsl,mpc8641-pcie";
337                         device_type = "pci";
338                         #interrupt-cells = <1>;
339                         #size-cells = <2>;
340                         #address-cells = <3>;
341                         reg = <9000 1000>;
342                         bus-range = <0 ff>;
343                         ranges = <02000000 0 a0000000 a0000000 0 20000000
344                                   01000000 0 00000000 e3000000 0 00100000>;
345                         clock-frequency = <1fca055>;
346                         interrupt-parent = <&mpic>;
347                         interrupts = <19 2>;
348                         interrupt-map-mask = <f800 0 0 7>;
349                         interrupt-map = <
350                                 /* IDSEL 0x0 */
351                                 0000 0 0 1 &mpic 4 1
352                                 0000 0 0 2 &mpic 5 1
353                                 0000 0 0 3 &mpic 6 1
354                                 0000 0 0 4 &mpic 7 1
355                                 >;
356                 };
358                 mpic: pic@40000 {
359                         clock-frequency = <0>;
360                         interrupt-controller;
361                         #address-cells = <0>;
362                         #interrupt-cells = <2>;
363                         reg = <40000 40000>;
364                         compatible = "chrp,open-pic";
365                         device_type = "open-pic";
366                         big-endian;
367                 };
368         };