powerpc: DTS file for the C2K
[linux-2.6] / arch / powerpc / boot / dts / pq2fads.dts
1 /*
2  * Device Tree for the PQ2FADS-ZU board with an MPC8280 chip.
3  *
4  * Copyright 2007,2008 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 /dts-v1/;
13
14 / {
15         model = "pq2fads";
16         compatible = "fsl,pq2fads";
17         #address-cells = <1>;
18         #size-cells = <1>;
19
20         cpus {
21                 #address-cells = <1>;
22                 #size-cells = <0>;
23
24                 cpu@0 {
25                         device_type = "cpu";
26                         reg = <0x0>;
27                         d-cache-line-size = <32>;
28                         i-cache-line-size = <32>;
29                         d-cache-size = <16384>;
30                         i-cache-size = <16384>;
31                         timebase-frequency = <0>;
32                         clock-frequency = <0>;
33                 };
34         };
35
36         memory {
37                 device_type = "memory";
38                 reg = <0x0 0x0>;
39         };
40
41         localbus@f0010100 {
42                 compatible = "fsl,mpc8280-localbus",
43                              "fsl,pq2-localbus";
44                 #address-cells = <2>;
45                 #size-cells = <1>;
46                 reg = <0xf0010100 0x60>;
47
48                 ranges = <0x0 0x0 0xfe000000 0x800000
49                           0x1 0x0 0xf4500000 0x8000
50                           0x8 0x0 0xf8200000 0x8000>;
51
52                 flash@0,0 {
53                         compatible = "jedec-flash";
54                         reg = <0x0 0x0 0x800000>;
55                         bank-width = <4>;
56                         device-width = <1>;
57                 };
58
59                 bcsr@1,0 {
60                         reg = <0x1 0x0 0x20>;
61                         compatible = "fsl,pq2fads-bcsr";
62                 };
63
64                 PCI_PIC: pic@8,0 {
65                         #interrupt-cells = <1>;
66                         interrupt-controller;
67                         reg = <0x8 0x0 0x8>;
68                         compatible = "fsl,pq2ads-pci-pic";
69                         interrupt-parent = <&PIC>;
70                         interrupts = <24 8>;
71                 };
72         };
73
74         pci@f0010800 {
75                 device_type = "pci";
76                 reg = <0xf0010800 0x10c 0xf00101ac 0x8 0xf00101c4 0x8>;
77                 compatible = "fsl,mpc8280-pci", "fsl,pq2-pci";
78                 #interrupt-cells = <1>;
79                 #size-cells = <2>;
80                 #address-cells = <3>;
81                 clock-frequency = <66000000>;
82                 interrupt-map-mask = <0xf800 0x0 0x0 0x7>;
83                 interrupt-map = <
84                                 /* IDSEL 0x16 */
85                                  0xb000 0x0 0x0 0x1 &PCI_PIC 0
86                                  0xb000 0x0 0x0 0x2 &PCI_PIC 1
87                                  0xb000 0x0 0x0 0x3 &PCI_PIC 2
88                                  0xb000 0x0 0x0 0x4 &PCI_PIC 3
89
90                                 /* IDSEL 0x17 */
91                                  0xb800 0x0 0x0 0x1 &PCI_PIC 4
92                                  0xb800 0x0 0x0 0x2 &PCI_PIC 5
93                                  0xb800 0x0 0x0 0x3 &PCI_PIC 6
94                                  0xb800 0x0 0x0 0x4 &PCI_PIC 7
95
96                                 /* IDSEL 0x18 */
97                                  0xc000 0x0 0x0 0x1 &PCI_PIC 8
98                                  0xc000 0x0 0x0 0x2 &PCI_PIC 9
99                                  0xc000 0x0 0x0 0x3 &PCI_PIC 10
100                                  0xc000 0x0 0x0 0x4 &PCI_PIC 11>;
101
102                 interrupt-parent = <&PIC>;
103                 interrupts = <18 8>;
104                 ranges = <0x42000000 0x0 0x80000000 0x80000000 0x0 0x20000000
105                           0x2000000 0x0 0xa0000000 0xa0000000 0x0 0x20000000
106                           0x1000000 0x0 0x0 0xf6000000 0x0 0x2000000>;
107         };
108
109         soc@f0000000 {
110                 #address-cells = <1>;
111                 #size-cells = <1>;
112                 device_type = "soc";
113                 compatible = "fsl,mpc8280", "fsl,pq2-soc";
114                 ranges = <0x0 0xf0000000 0x53000>;
115
116                 // Temporary -- will go away once kernel uses ranges for get_immrbase().
117                 reg = <0xf0000000 0x53000>;
118
119                 cpm@119c0 {
120                         #address-cells = <1>;
121                         #size-cells = <1>;
122                         #interrupt-cells = <2>;
123                         compatible = "fsl,mpc8280-cpm", "fsl,cpm2";
124                         reg = <0x119c0 0x30>;
125                         ranges;
126
127                         muram@0 {
128                                 #address-cells = <1>;
129                                 #size-cells = <1>;
130                                 ranges = <0x0 0x0 0x10000>;
131
132                                 data@0 {
133                                         compatible = "fsl,cpm-muram-data";
134                                         reg = <0x0 0x2000 0x9800 0x800>;
135                                 };
136                         };
137
138                         brg@119f0 {
139                                 compatible = "fsl,mpc8280-brg",
140                                              "fsl,cpm2-brg",
141                                              "fsl,cpm-brg";
142                                 reg = <0x119f0 0x10 0x115f0 0x10>;
143                         };
144
145                         serial@11a00 {
146                                 device_type = "serial";
147                                 compatible = "fsl,mpc8280-scc-uart",
148                                              "fsl,cpm2-scc-uart";
149                                 reg = <0x11a00 0x20 0x8000 0x100>;
150                                 interrupts = <40 8>;
151                                 interrupt-parent = <&PIC>;
152                                 fsl,cpm-brg = <1>;
153                                 fsl,cpm-command = <0x800000>;
154                         };
155
156                         serial@11a20 {
157                                 device_type = "serial";
158                                 compatible = "fsl,mpc8280-scc-uart",
159                                              "fsl,cpm2-scc-uart";
160                                 reg = <0x11a20 0x20 0x8100 0x100>;
161                                 interrupts = <41 8>;
162                                 interrupt-parent = <&PIC>;
163                                 fsl,cpm-brg = <2>;
164                                 fsl,cpm-command = <0x4a00000>;
165                         };
166
167                         ethernet@11320 {
168                                 device_type = "network";
169                                 compatible = "fsl,mpc8280-fcc-enet",
170                                              "fsl,cpm2-fcc-enet";
171                                 reg = <0x11320 0x20 0x8500 0x100 0x113b0 0x1>;
172                                 interrupts = <33 8>;
173                                 interrupt-parent = <&PIC>;
174                                 phy-handle = <&PHY0>;
175                                 linux,network-index = <0>;
176                                 fsl,cpm-command = <0x16200300>;
177                         };
178
179                         ethernet@11340 {
180                                 device_type = "network";
181                                 compatible = "fsl,mpc8280-fcc-enet",
182                                              "fsl,cpm2-fcc-enet";
183                                 reg = <0x11340 0x20 0x8600 0x100 0x113d0 0x1>;
184                                 interrupts = <34 8>;
185                                 interrupt-parent = <&PIC>;
186                                 phy-handle = <&PHY1>;
187                                 linux,network-index = <1>;
188                                 fsl,cpm-command = <0x1a400300>;
189                                 local-mac-address = [00 e0 0c 00 79 01];
190                         };
191
192                         mdio@10d40 {
193                                 device_type = "mdio";
194                                 compatible = "fsl,pq2fads-mdio-bitbang",
195                                              "fsl,mpc8280-mdio-bitbang",
196                                              "fsl,cpm2-mdio-bitbang";
197                                 #address-cells = <1>;
198                                 #size-cells = <0>;
199                                 reg = <0x10d40 0x14>;
200                                 fsl,mdio-pin = <9>;
201                                 fsl,mdc-pin = <10>;
202
203                                 PHY0: ethernet-phy@0 {
204                                         interrupt-parent = <&PIC>;
205                                         interrupts = <25 2>;
206                                         reg = <0x0>;
207                                         device_type = "ethernet-phy";
208                                 };
209
210                                 PHY1: ethernet-phy@1 {
211                                         interrupt-parent = <&PIC>;
212                                         interrupts = <25 2>;
213                                         reg = <0x3>;
214                                         device_type = "ethernet-phy";
215                                 };
216                         };
217
218                         usb@11b60 {
219                                 #address-cells = <1>;
220                                 #size-cells = <0>;
221                                 compatible = "fsl,mpc8280-usb",
222                                              "fsl,cpm2-usb";
223                                 reg = <0x11b60 0x18 0x8b00 0x100>;
224                                 interrupt-parent = <&PIC>;
225                                 interrupts = <11 8>;
226                                 fsl,cpm-command = <0x2e600000>;
227                         };
228                 };
229
230                 PIC: interrupt-controller@10c00 {
231                         #interrupt-cells = <2>;
232                         interrupt-controller;
233                         reg = <0x10c00 0x80>;
234                         compatible = "fsl,mpc8280-pic", "fsl,cpm2-pic";
235                 };
236
237         };
238
239         chosen {
240                 linux,stdout-path = "/soc/cpm/serial@11a00";
241         };
242 };