blob: ece602a40680edeaddf6729f259dce306bc6e2d1 [file] [log] [blame]
Valentine Barshakd60ff952007-08-29 17:39:42 +04001/*
2 * Device Tree Source for AMCC Sequoia
3 *
4 * Based on Bamboo code by Josh Boyer <jwboyer@linux.vnet.ibm.com>
5 * Copyright (c) 2006, 2007 IBM Corp.
6 *
7 * FIXME: Draft only!
8 *
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.
12 *
13 */
14
15/ {
16 #address-cells = <2>;
17 #size-cells = <1>;
18 model = "amcc,sequoia";
19 compatible = "amcc,sequoia";
20 dcr-parent = <&/cpus/PowerPC,440EPx@0>;
21
22 cpus {
23 #address-cells = <1>;
24 #size-cells = <0>;
25
26 PowerPC,440EPx@0 {
27 device_type = "cpu";
28 reg = <0>;
29 clock-frequency = <0>; /* Filled in by zImage */
30 timebase-frequency = <0>; /* Filled in by zImage */
31 i-cache-line-size = <20>;
32 d-cache-line-size = <20>;
33 i-cache-size = <8000>;
34 d-cache-size = <8000>;
35 dcr-controller;
36 dcr-access-method = "native";
37 };
38 };
39
40 memory {
41 device_type = "memory";
42 reg = <0 0 0>; /* Filled in by zImage */
43 };
44
45 UIC0: interrupt-controller0 {
46 compatible = "ibm,uic-440epx","ibm,uic";
47 interrupt-controller;
48 cell-index = <0>;
49 dcr-reg = <0c0 009>;
50 #address-cells = <0>;
51 #size-cells = <0>;
52 #interrupt-cells = <2>;
53 };
54
55 UIC1: interrupt-controller1 {
56 compatible = "ibm,uic-440epx","ibm,uic";
57 interrupt-controller;
58 cell-index = <1>;
59 dcr-reg = <0d0 009>;
60 #address-cells = <0>;
61 #size-cells = <0>;
62 #interrupt-cells = <2>;
63 interrupts = <1e 4 1f 4>; /* cascade */
64 interrupt-parent = <&UIC0>;
65 };
66
67 UIC2: interrupt-controller2 {
68 compatible = "ibm,uic-440epx","ibm,uic";
69 interrupt-controller;
70 cell-index = <2>;
71 dcr-reg = <0e0 009>;
72 #address-cells = <0>;
73 #size-cells = <0>;
74 #interrupt-cells = <2>;
75 interrupts = <1c 4 1d 4>; /* cascade */
76 interrupt-parent = <&UIC0>;
77 };
78
79 SDR0: sdr {
80 compatible = "ibm,sdr-440epx", "ibm,sdr-440ep";
81 dcr-reg = <00e 002>;
82 };
83
84 CPR0: cpr {
85 compatible = "ibm,cpr-440epx", "ibm,cpr-440ep";
86 dcr-reg = <00c 002>;
87 };
88
89 plb {
90 compatible = "ibm,plb-440epx", "ibm,plb4";
91 #address-cells = <2>;
92 #size-cells = <1>;
93 ranges;
94 clock-frequency = <0>; /* Filled in by zImage */
95
96 SDRAM0: sdram {
97 device_type = "memory-controller";
98 compatible = "ibm,sdram-440epx", "ibm,sdram-44x-ddr2denali";
99 dcr-reg = <010 2>;
100 };
101
102 DMA0: dma {
103 compatible = "ibm,dma-440epx", "ibm,dma-4xx";
104 dcr-reg = <100 027>;
105 };
106
107 MAL0: mcmal {
108 compatible = "ibm,mcmal-440epx", "ibm,mcmal2";
109 dcr-reg = <180 62>;
Valentine Barshakbd0076c2007-09-19 03:29:13 +1000110 num-tx-chans = <2>;
111 num-rx-chans = <2>;
Valentine Barshakd60ff952007-08-29 17:39:42 +0400112 interrupt-parent = <&MAL0>;
113 interrupts = <0 1 2 3 4>;
114 #interrupt-cells = <1>;
115 #address-cells = <0>;
116 #size-cells = <0>;
117 interrupt-map = </*TXEOB*/ 0 &UIC0 a 4
118 /*RXEOB*/ 1 &UIC0 b 4
119 /*SERR*/ 2 &UIC1 0 4
120 /*TXDE*/ 3 &UIC1 1 4
121 /*RXDE*/ 4 &UIC1 2 4>;
122 interrupt-map-mask = <ffffffff>;
123 };
124
Valentine Barshakf82f5a22007-10-09 00:26:58 +1000125 USB1: usb@e0000400 {
126 compatible = "ohci-be";
127 reg = <0 e0000400 60>;
128 interrupt-parent = <&UIC0>;
129 interrupts = <15 8>;
130 };
131
Valentine Barshakd60ff952007-08-29 17:39:42 +0400132 POB0: opb {
133 compatible = "ibm,opb-440epx", "ibm,opb";
134 #address-cells = <1>;
135 #size-cells = <1>;
136 ranges = <00000000 1 00000000 80000000
137 80000000 1 80000000 80000000>;
138 interrupt-parent = <&UIC1>;
139 interrupts = <7 4>;
140 clock-frequency = <0>; /* Filled in by zImage */
141
142 EBC0: ebc {
143 compatible = "ibm,ebc-440epx", "ibm,ebc";
144 dcr-reg = <012 2>;
145 #address-cells = <2>;
146 #size-cells = <1>;
147 clock-frequency = <0>; /* Filled in by zImage */
148 interrupts = <5 1>;
149 interrupt-parent = <&UIC1>;
150
151 nor_flash@0,0 {
Josh Boyer504ca432007-09-15 04:54:14 +1000152 compatible = "amd,s29gl256n", "cfi-flash";
Valentine Barshakd60ff952007-08-29 17:39:42 +0400153 bank-width = <2>;
Valentine Barshakd60ff952007-08-29 17:39:42 +0400154 reg = <0 000000 4000000>;
Josh Boyer504ca432007-09-15 04:54:14 +1000155 #address-cells = <1>;
156 #size-cells = <1>;
157 partition@0 {
158 label = "Kernel";
159 reg = <0 180000>;
160 };
161 partition@180000 {
162 label = "ramdisk";
163 reg = <180000 200000>;
164 };
165 partition@380000 {
166 label = "file system";
167 reg = <380000 3aa0000>;
168 };
169 partition@3e20000 {
170 label = "kozio";
171 reg = <3e20000 140000>;
172 };
173 partition@3f60000 {
174 label = "env";
175 reg = <3f60000 40000>;
176 };
177 partition@3fa0000 {
178 label = "u-boot";
179 reg = <3fa0000 60000>;
180 };
Valentine Barshakd60ff952007-08-29 17:39:42 +0400181 };
182
183 };
184
185 UART0: serial@ef600300 {
186 device_type = "serial";
187 compatible = "ns16550";
188 reg = <ef600300 8>;
189 virtual-reg = <ef600300>;
190 clock-frequency = <0>; /* Filled in by zImage */
191 current-speed = <1c200>;
192 interrupt-parent = <&UIC0>;
193 interrupts = <0 4>;
194 };
195
196 UART1: serial@ef600400 {
197 device_type = "serial";
198 compatible = "ns16550";
199 reg = <ef600400 8>;
200 virtual-reg = <ef600400>;
201 clock-frequency = <0>;
202 current-speed = <0>;
203 interrupt-parent = <&UIC0>;
204 interrupts = <1 4>;
205 };
206
207 UART2: serial@ef600500 {
208 device_type = "serial";
209 compatible = "ns16550";
210 reg = <ef600500 8>;
211 virtual-reg = <ef600500>;
212 clock-frequency = <0>;
213 current-speed = <0>;
214 interrupt-parent = <&UIC1>;
215 interrupts = <3 4>;
216 };
217
218 UART3: serial@ef600600 {
219 device_type = "serial";
220 compatible = "ns16550";
221 reg = <ef600600 8>;
222 virtual-reg = <ef600600>;
223 clock-frequency = <0>;
224 current-speed = <0>;
225 interrupt-parent = <&UIC1>;
226 interrupts = <4 4>;
227 };
228
229 IIC0: i2c@ef600700 {
230 device_type = "i2c";
231 compatible = "ibm,iic-440epx", "ibm,iic";
232 reg = <ef600700 14>;
233 interrupt-parent = <&UIC0>;
234 interrupts = <2 4>;
235 };
236
237 IIC1: i2c@ef600800 {
238 device_type = "i2c";
239 compatible = "ibm,iic-440epx", "ibm,iic";
240 reg = <ef600800 14>;
241 interrupt-parent = <&UIC0>;
242 interrupts = <7 4>;
243 };
244
245 ZMII0: emac-zmii@ef600d00 {
246 device_type = "zmii-interface";
247 compatible = "ibm,zmii-440epx", "ibm,zmii";
248 reg = <ef600d00 c>;
249 };
250
Valentine Barshak1f69dcf2007-10-02 00:12:09 +1000251 RGMII0: emac-rgmii@ef601000 {
252 device_type = "rgmii-interface";
253 compatible = "ibm,rgmii-440epx", "ibm,rgmii";
254 reg = <ef601000 8>;
Benjamin Herrenschmidt1f578772007-12-05 11:14:28 +1100255 has-mdio;
Valentine Barshak1f69dcf2007-10-02 00:12:09 +1000256 };
257
Valentine Barshakd60ff952007-08-29 17:39:42 +0400258 EMAC0: ethernet@ef600e00 {
259 linux,network-index = <0>;
260 device_type = "network";
261 compatible = "ibm,emac-440epx", "ibm,emac4";
262 interrupt-parent = <&EMAC0>;
263 interrupts = <0 1>;
264 #interrupt-cells = <1>;
265 #address-cells = <0>;
266 #size-cells = <0>;
267 interrupt-map = </*Status*/ 0 &UIC0 18 4
268 /*Wake*/ 1 &UIC1 1d 4>;
269 reg = <ef600e00 70>;
270 local-mac-address = [000000000000];
271 mal-device = <&MAL0>;
Valentine Barshakbd0076c2007-09-19 03:29:13 +1000272 mal-tx-channel = <0>;
Valentine Barshakd60ff952007-08-29 17:39:42 +0400273 mal-rx-channel = <0>;
274 cell-index = <0>;
275 max-frame-size = <5dc>;
276 rx-fifo-size = <1000>;
277 tx-fifo-size = <800>;
Valentine Barshak1f69dcf2007-10-02 00:12:09 +1000278 phy-mode = "rgmii";
Valentine Barshakd60ff952007-08-29 17:39:42 +0400279 phy-map = <00000000>;
280 zmii-device = <&ZMII0>;
281 zmii-channel = <0>;
Valentine Barshak1f69dcf2007-10-02 00:12:09 +1000282 rgmii-device = <&RGMII0>;
283 rgmii-channel = <0>;
Benjamin Herrenschmidtbff713b2007-12-05 11:14:29 +1100284 has-inverted-stacr-oc;
285 has-new-stacr-staopc;
Valentine Barshakd60ff952007-08-29 17:39:42 +0400286 };
287
288 EMAC1: ethernet@ef600f00 {
289 linux,network-index = <1>;
290 device_type = "network";
291 compatible = "ibm,emac-440epx", "ibm,emac4";
292 interrupt-parent = <&EMAC1>;
293 interrupts = <0 1>;
294 #interrupt-cells = <1>;
295 #address-cells = <0>;
296 #size-cells = <0>;
297 interrupt-map = </*Status*/ 0 &UIC0 19 4
298 /*Wake*/ 1 &UIC1 1f 4>;
299 reg = <ef600f00 70>;
300 local-mac-address = [000000000000];
301 mal-device = <&MAL0>;
Valentine Barshakbd0076c2007-09-19 03:29:13 +1000302 mal-tx-channel = <1>;
Valentine Barshakd60ff952007-08-29 17:39:42 +0400303 mal-rx-channel = <1>;
304 cell-index = <1>;
305 max-frame-size = <5dc>;
306 rx-fifo-size = <1000>;
307 tx-fifo-size = <800>;
Valentine Barshak1f69dcf2007-10-02 00:12:09 +1000308 phy-mode = "rgmii";
Valentine Barshakd60ff952007-08-29 17:39:42 +0400309 phy-map = <00000000>;
310 zmii-device = <&ZMII0>;
311 zmii-channel = <1>;
Valentine Barshak1f69dcf2007-10-02 00:12:09 +1000312 rgmii-device = <&RGMII0>;
313 rgmii-channel = <1>;
Benjamin Herrenschmidtbff713b2007-12-05 11:14:29 +1100314 has-inverted-stacr-oc;
315 has-new-stacr-staopc;
Valentine Barshakd60ff952007-08-29 17:39:42 +0400316 };
317 };
318 };
319
320 chosen {
321 linux,stdout-path = "/plb/opb/serial@ef600300";
322 bootargs = "console=ttyS0,115200";
323 };
324};