2 * Device Tree Source for AMCC Rainier
4 * Based on Sequoia code
5 * Copyright (c) 2007 MontaVista Software, Inc.
9 * This file is licensed under the terms of the GNU General Public
10 * License version 2. This program is licensed "as is" without
11 * any warranty of any kind, whether express or implied.
18 model = "amcc,rainier";
19 compatible = "amcc,rainier";
20 dcr-parent = <&/cpus/cpu@0>;
28 model = "PowerPC,440GRx";
30 clock-frequency = <0>; /* Filled in by zImage */
31 timebase-frequency = <0>; /* Filled in by zImage */
32 i-cache-line-size = <20>;
33 d-cache-line-size = <20>;
34 i-cache-size = <8000>;
35 d-cache-size = <8000>;
37 dcr-access-method = "native";
42 device_type = "memory";
43 reg = <0 0 0>; /* Filled in by zImage */
46 UIC0: interrupt-controller0 {
47 compatible = "ibm,uic-440grx","ibm,uic";
53 #interrupt-cells = <2>;
56 UIC1: interrupt-controller1 {
57 compatible = "ibm,uic-440grx","ibm,uic";
63 #interrupt-cells = <2>;
64 interrupts = <1e 4 1f 4>; /* cascade */
65 interrupt-parent = <&UIC0>;
68 UIC2: interrupt-controller2 {
69 compatible = "ibm,uic-440grx","ibm,uic";
75 #interrupt-cells = <2>;
76 interrupts = <1c 4 1d 4>; /* cascade */
77 interrupt-parent = <&UIC0>;
81 compatible = "ibm,sdr-440grx", "ibm,sdr-440ep";
86 compatible = "ibm,cpr-440grx", "ibm,cpr-440ep";
91 compatible = "ibm,plb-440grx", "ibm,plb4";
95 clock-frequency = <0>; /* Filled in by zImage */
98 compatible = "ibm,sdram-440grx", "ibm,sdram-44x-ddr2denali";
103 compatible = "ibm,dma-440grx", "ibm,dma-4xx";
108 compatible = "ibm,mcmal-440grx", "ibm,mcmal2";
112 interrupt-parent = <&MAL0>;
113 interrupts = <0 1 2 3 4>;
114 #interrupt-cells = <1>;
115 #address-cells = <0>;
117 interrupt-map = </*TXEOB*/ 0 &UIC0 a 4
118 /*RXEOB*/ 1 &UIC0 b 4
121 /*RXDE*/ 4 &UIC1 2 4>;
122 interrupt-map-mask = <ffffffff>;
126 compatible = "ibm,opb-440grx", "ibm,opb";
127 #address-cells = <1>;
129 ranges = <00000000 1 00000000 80000000
130 80000000 1 80000000 80000000>;
131 interrupt-parent = <&UIC1>;
133 clock-frequency = <0>; /* Filled in by zImage */
136 compatible = "ibm,ebc-440grx", "ibm,ebc";
138 #address-cells = <2>;
140 clock-frequency = <0>; /* Filled in by zImage */
142 interrupt-parent = <&UIC1>;
145 compatible = "amd,s29gl256n", "cfi-flash";
147 reg = <0 000000 4000000>;
148 #address-cells = <1>;
156 reg = <180000 200000>;
159 label = "file system";
160 reg = <380000 3aa0000>;
164 reg = <3e20000 140000>;
168 reg = <3f60000 40000>;
172 reg = <3fa0000 60000>;
178 UART0: serial@ef600300 {
179 device_type = "serial";
180 compatible = "ns16550";
182 virtual-reg = <ef600300>;
183 clock-frequency = <0>; /* Filled in by zImage */
184 current-speed = <1c200>;
185 interrupt-parent = <&UIC0>;
189 UART1: serial@ef600400 {
190 device_type = "serial";
191 compatible = "ns16550";
193 virtual-reg = <ef600400>;
194 clock-frequency = <0>;
196 interrupt-parent = <&UIC0>;
200 UART2: serial@ef600500 {
201 device_type = "serial";
202 compatible = "ns16550";
204 virtual-reg = <ef600500>;
205 clock-frequency = <0>;
207 interrupt-parent = <&UIC1>;
211 UART3: serial@ef600600 {
212 device_type = "serial";
213 compatible = "ns16550";
215 virtual-reg = <ef600600>;
216 clock-frequency = <0>;
218 interrupt-parent = <&UIC1>;
224 compatible = "ibm,iic-440grx", "ibm,iic";
226 interrupt-parent = <&UIC0>;
232 compatible = "ibm,iic-440grx", "ibm,iic";
234 interrupt-parent = <&UIC0>;
238 ZMII0: emac-zmii@ef600d00 {
239 device_type = "zmii-interface";
240 compatible = "ibm,zmii-440grx", "ibm,zmii";
244 RGMII0: emac-rgmii@ef601000 {
245 device_type = "rgmii-interface";
246 compatible = "ibm,rgmii-440grx", "ibm,rgmii";
251 EMAC0: ethernet@ef600e00 {
252 linux,network-index = <0>;
253 device_type = "network";
254 compatible = "ibm,emac-440grx", "ibm,emac-440epx", "ibm,emac4";
255 interrupt-parent = <&EMAC0>;
257 #interrupt-cells = <1>;
258 #address-cells = <0>;
260 interrupt-map = </*Status*/ 0 &UIC0 18 4
261 /*Wake*/ 1 &UIC1 1d 4>;
263 local-mac-address = [000000000000];
264 mal-device = <&MAL0>;
265 mal-tx-channel = <0>;
266 mal-rx-channel = <0>;
268 max-frame-size = <5dc>;
269 rx-fifo-size = <1000>;
270 tx-fifo-size = <800>;
272 phy-map = <00000000>;
273 zmii-device = <&ZMII0>;
275 rgmii-device = <&RGMII0>;
277 has-inverted-stacr-oc;
278 has-new-stacr-staopc;
281 EMAC1: ethernet@ef600f00 {
282 linux,network-index = <1>;
283 device_type = "network";
284 compatible = "ibm,emac-440grx", "ibm,emac-440epx", "ibm,emac4";
285 interrupt-parent = <&EMAC1>;
287 #interrupt-cells = <1>;
288 #address-cells = <0>;
290 interrupt-map = </*Status*/ 0 &UIC0 19 4
291 /*Wake*/ 1 &UIC1 1f 4>;
293 local-mac-address = [000000000000];
294 mal-device = <&MAL0>;
295 mal-tx-channel = <1>;
296 mal-rx-channel = <1>;
298 max-frame-size = <5dc>;
299 rx-fifo-size = <1000>;
300 tx-fifo-size = <800>;
302 phy-map = <00000000>;
303 zmii-device = <&ZMII0>;
305 rgmii-device = <&RGMII0>;
307 has-inverted-stacr-oc;
308 has-new-stacr-staopc;
312 PCI0: pci@1ec000000 {
314 #interrupt-cells = <1>;
316 #address-cells = <3>;
317 compatible = "ibm,plb440grx-pci", "ibm,plb-pci";
319 reg = <1 eec00000 8 /* Config space access */
320 1 eed00000 4 /* IACK */
321 1 eed00000 4 /* Special cycle */
322 1 ef400000 40>; /* Internal registers */
324 /* Outbound ranges, one memory and one IO,
325 * later cannot be changed. Chip supports a second
326 * IO range but we don't use it for now
328 ranges = <02000000 0 80000000 1 80000000 0 10000000
329 01000000 0 00000000 1 e8000000 0 00100000>;
331 /* Inbound 2GB range starting at 0 */
332 dma-ranges = <42000000 0 0 0 0 0 80000000>;
334 /* All PCI interrupts are routed to IRQ 67 */
335 interrupt-map-mask = <0000 0 0 0>;
336 interrupt-map = < 0000 0 0 0 &UIC2 3 8 >;
341 linux,stdout-path = "/plb/opb/serial@ef600300";
342 bootargs = "console=ttyS0,115200";