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