5c69d282a3fc5db664b2172746764a27f613e62a
[openwrt/openwrt.git] / target / linux / ramips / dts / rt3050.dtsi
1 / {
2 #address-cells = <1>;
3 #size-cells = <1>;
4 compatible = "ralink,rt3050-soc", "ralink,rt3052-soc", "ralink,rt3350-soc";
5
6 cpus {
7 cpu@0 {
8 compatible = "mips,mips24KEc";
9 };
10 };
11
12 chosen {
13 bootargs = "console=ttyS0,57600";
14 };
15
16 aliases {
17 spi0 = &spi0;
18 serial0 = &uartlite;
19 };
20
21 cpuintc: cpuintc@0 {
22 #address-cells = <0>;
23 #interrupt-cells = <1>;
24 interrupt-controller;
25 compatible = "mti,cpu-interrupt-controller";
26 };
27
28 palmbus: palmbus@10000000 {
29 compatible = "palmbus";
30 reg = <0x10000000 0x200000>;
31 ranges = <0x0 0x10000000 0x1FFFFF>;
32
33 #address-cells = <1>;
34 #size-cells = <1>;
35
36 sysc: sysc@0 {
37 compatible = "ralink,rt3050-sysc";
38 reg = <0x0 0x100>;
39 };
40
41 timer: timer@100 {
42 compatible = "ralink,rt3050-timer", "ralink,rt2880-timer";
43 reg = <0x100 0x20>;
44
45 interrupt-parent = <&intc>;
46 interrupts = <1>;
47 };
48
49 watchdog: watchdog@120 {
50 compatible = "ralink,rt3050-wdt", "ralink,rt2880-wdt";
51 reg = <0x120 0x10>;
52
53 resets = <&rstctrl 8>;
54 reset-names = "wdt";
55
56 interrupt-parent = <&intc>;
57 interrupts = <1>;
58 };
59
60 intc: intc@200 {
61 compatible = "ralink,rt3050-intc", "ralink,rt2880-intc";
62 reg = <0x200 0x100>;
63
64 resets = <&rstctrl 19>;
65 reset-names = "intc";
66
67 interrupt-controller;
68 #interrupt-cells = <1>;
69
70 interrupt-parent = <&cpuintc>;
71 interrupts = <2>;
72 };
73
74 memc: memc@300 {
75 compatible = "ralink,rt3050-memc";
76 reg = <0x300 0x100>;
77
78 resets = <&rstctrl 20>;
79 reset-names = "mc";
80
81 interrupt-parent = <&intc>;
82 interrupts = <3>;
83 };
84
85 uart: uart@500 {
86 compatible = "ralink,rt3050-uart", "ralink,rt2880-uart", "ns16550a";
87 reg = <0x500 0x100>;
88
89 resets = <&rstctrl 12>;
90 reset-names = "uart";
91
92 interrupt-parent = <&intc>;
93 interrupts = <5>;
94
95 reg-shift = <2>;
96
97 status = "disabled";
98 };
99
100 gpio0: gpio@600 {
101 compatible = "ralink,rt3050-gpio", "ralink,rt2880-gpio";
102 reg = <0x600 0x34>;
103
104 gpio-controller;
105 #gpio-cells = <2>;
106
107 ralink,gpio-base = <0>;
108 ralink,num-gpios = <24>;
109 ralink,register-map = [ 00 04 08 0c
110 20 24 28 2c
111 30 34 ];
112
113 resets = <&rstctrl 13>;
114 reset-names = "pio";
115
116 interrupt-parent = <&intc>;
117 interrupts = <6>;
118 };
119
120 gpio1: gpio@638 {
121 compatible = "ralink,rt3050-gpio", "ralink,rt2880-gpio";
122 reg = <0x638 0x24>;
123
124 gpio-controller;
125 #gpio-cells = <2>;
126
127 ralink,gpio-base = <24>;
128 ralink,num-gpios = <16>;
129 ralink,register-map = [ 00 04 08 0c
130 10 14 18 1c
131 20 24 ];
132
133 status = "disabled";
134 };
135
136 gpio2: gpio@660 {
137 compatible = "ralink,rt3050-gpio", "ralink,rt2880-gpio";
138 reg = <0x660 0x24>;
139
140 gpio-controller;
141 #gpio-cells = <2>;
142
143 ralink,gpio-base = <40>;
144 ralink,num-gpios = <12>;
145 ralink,register-map = [ 00 04 08 0c
146 10 14 18 1c
147 20 24 ];
148
149 status = "disabled";
150 };
151
152 gdma: gdma@700 {
153 compatible = "ralink,rt305x-gdma";
154 reg = <0x700 0x100>;
155
156 resets = <&rstctrl 14>;
157 reset-names = "dma";
158
159 interrupt-parent = <&intc>;
160 interrupts = <7>;
161
162 #dma-cells = <1>;
163 #dma-channels = <8>;
164 #dma-requests = <8>;
165
166 status = "disabled";
167 };
168
169 i2c@900 {
170 compatible = "ralink,rt2880-i2c";
171 reg = <0x900 0x100>;
172
173 resets = <&rstctrl 16>;
174 reset-names = "i2c";
175
176 #address-cells = <1>;
177 #size-cells = <0>;
178
179 status = "disabled";
180
181 pinctrl-names = "default";
182 pinctrl-0 = <&i2c_pins>;
183 };
184
185 i2s@a00 {
186 compatible = "ralink,rt3050-i2s";
187 reg = <0xa00 0x100>;
188
189 resets = <&rstctrl 17>;
190 reset-names = "i2s";
191
192 interrupt-parent = <&intc>;
193 interrupts = <10>;
194
195 txdma-req = <2>;
196
197 dmas = <&gdma 4>;
198 dma-names = "tx";
199
200 status = "disabled";
201 };
202
203 spi0: spi@b00 {
204 compatible = "ralink,rt3050-spi", "ralink,rt2880-spi";
205 reg = <0xb00 0x100>;
206
207 resets = <&rstctrl 18>;
208 reset-names = "spi";
209
210 #address-cells = <1>;
211 #size-cells = <0>;
212
213 pinctrl-names = "default";
214 pinctrl-0 = <&spi_pins>;
215
216 status = "disabled";
217 };
218
219 uartlite: uartlite@c00 {
220 compatible = "ralink,rt3050-uart", "ralink,rt2880-uart", "ns16550a";
221 reg = <0xc00 0x100>;
222
223 resets = <&rstctrl 19>;
224 reset-names = "uartl";
225
226 interrupt-parent = <&intc>;
227 interrupts = <12>;
228
229 reg-shift = <2>;
230
231 pinctrl-names = "default";
232 pinctrl-0 = <&uartlite_pins>;
233 };
234 };
235
236 pinctrl: pinctrl {
237 compatible = "ralink,rt2880-pinmux";
238
239 pinctrl-names = "default";
240 pinctrl-0 = <&state_default>;
241
242 state_default: pinctrl0 {
243 sdram {
244 ralink,group = "sdram";
245 ralink,function = "sdram";
246 };
247 };
248
249 i2c_pins: i2c {
250 i2c {
251 ralink,group = "i2c";
252 ralink,function = "i2c";
253 };
254 };
255
256 spi_pins: spi {
257 spi {
258 ralink,group = "spi";
259 ralink,function = "spi";
260 };
261 };
262
263 rgmii_pins: rgmii {
264 rgmii {
265 ralink,group = "rgmii";
266 ralink,function = "rgmii";
267 };
268 };
269
270 uartlite_pins: uartlite {
271 uart {
272 ralink,group = "uartlite";
273 ralink,function = "uartlite";
274 };
275 };
276 };
277
278 rstctrl: rstctrl {
279 compatible = "ralink,rt3050-reset", "ralink,rt2880-reset";
280 #reset-cells = <1>;
281 };
282
283 clkctrl: clkctrl {
284 compatible = "ralink,rt2880-clock";
285 #clock-cells = <1>;
286 };
287
288 usbphy: usbphy {
289 compatible = "ralink,rt3050-usbphy";
290 resets = <&rstctrl 22>;
291 reset-names = "host";
292 clocks = <&clkctrl 18>;
293 clock-names = "host";
294 };
295
296 ethernet: ethernet@10100000 {
297 compatible = "ralink,rt3050-eth";
298 reg = <0x10100000 0x10000>;
299
300 resets = <&rstctrl 21>;
301 reset-names = "fe";
302
303 interrupt-parent = <&cpuintc>;
304 interrupts = <5>;
305
306 mediatek,switch = <&esw>;
307 };
308
309 esw: esw@10110000 {
310 compatible = "ralink,rt3050-esw";
311 reg = <0x10110000 0x8000>;
312
313 resets = <&rstctrl 23>;
314 reset-names = "esw";
315
316 interrupt-parent = <&intc>;
317 interrupts = <17>;
318 };
319
320 wmac: wmac@10180000 {
321 compatible = "ralink,rt3050-wmac", "ralink,rt2880-wmac";
322 reg = <0x10180000 0x40000>;
323
324 interrupt-parent = <&cpuintc>;
325 interrupts = <6>;
326
327 ralink,eeprom = "soc_wmac.eeprom";
328 };
329
330 otg: otg@101c0000 {
331 compatible = "ralink,rt3050-otg", "snps,dwc2";
332 reg = <0x101c0000 0x40000>;
333
334 interrupt-parent = <&intc>;
335 interrupts = <18>;
336
337 resets = <&rstctrl 22>;
338 reset-names = "otg";
339
340 status = "disabled";
341 };
342 };