Fresh pull from upstream
[librecmc/librecmc.git] / target / linux / ramips / dts / mt7620n.dtsi
1 / {
2         #address-cells = <1>;
3         #size-cells = <1>;
4         compatible = "ralink,mtk7620n-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,mt7620a-sysc", "ralink,rt3050-sysc";
39                         reg = <0x0 0x100>;
40                 };
41
42                 timer: timer@100 {
43                         compatible = "ralink,mt7620a-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,mt7620a-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,mt7620a-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,mt7620a-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                 gpio0: gpio@600 {
87                         compatible = "ralink,mt7620a-gpio", "ralink,rt2880-gpio";
88                         reg = <0x600 0x34>;
89
90                         resets = <&rstctrl 13>;
91                         reset-names = "pio";
92
93                         interrupt-parent = <&intc>;
94                         interrupts = <6>;
95
96                         gpio-controller;
97                         #gpio-cells = <2>;
98
99                         ralink,gpio-base = <0>;
100                         ralink,num-gpios = <24>;
101                         ralink,register-map = [ 00 04 08 0c
102                                                 20 24 28 2c
103                                                 30 34 ];
104                 };
105
106                 gpio1: gpio@638 {
107                         compatible = "ralink,mt7620a-gpio", "ralink,rt2880-gpio";
108                         reg = <0x638 0x24>;
109
110                         interrupt-parent = <&intc>;
111                         interrupts = <6>;
112
113                         gpio-controller;
114                         #gpio-cells = <2>;
115
116                         ralink,gpio-base = <24>;
117                         ralink,num-gpios = <16>;
118                         ralink,register-map = [ 00 04 08 0c
119                                                 10 14 18 1c
120                                                 20 24 ];
121
122                         status = "disabled";
123                 };
124
125                 gpio2: gpio@660 {
126                         compatible = "ralink,mt7620a-gpio", "ralink,rt2880-gpio";
127                         reg = <0x660 0x24>;
128
129                         interrupt-parent = <&intc>;
130                         interrupts = <6>;
131
132                         gpio-controller;
133                         #gpio-cells = <2>;
134
135                         ralink,gpio-base = <40>;
136                         ralink,num-gpios = <32>;
137                         ralink,register-map = [ 00 04 08 0c
138                                                 10 14 18 1c
139                                                 20 24 ];
140
141                         status = "disabled";
142                 };
143
144                 gpio3: gpio@688 {
145                         compatible = "ralink,mt7620a-gpio", "ralink,rt2880-gpio";
146                         reg = <0x688 0x24>;
147
148                         interrupt-parent = <&intc>;
149                         interrupts = <6>;
150
151                         gpio-controller;
152                         #gpio-cells = <2>;
153
154                         ralink,gpio-base = <72>;
155                         ralink,num-gpios = <1>;
156                         ralink,register-map = [ 00 04 08 0c
157                                                 10 14 18 1c
158                                                 20 24 ];
159
160                         status = "disabled";
161                 };
162
163                 spi0: spi@b00 {
164                         compatible = "ralink,mt7620a-spi", "ralink,rt2880-spi";
165                         reg = <0xb00 0x40>;
166
167                         resets = <&rstctrl 18>;
168                         reset-names = "spi";
169
170                         #address-cells = <1>;
171                         #size-cells = <0>;
172
173                         status = "disabled";
174
175                         pinctrl-names = "default";
176                         pinctrl-0 = <&spi_pins>;
177                 };
178
179                 spi1: spi@b40 {
180                         compatible = "ralink,rt2880-spi";
181                         reg = <0xb40 0x60>;
182
183                         resets = <&rstctrl 18>;
184                         reset-names = "spi";
185
186                         #address-cells = <1>;
187                         #size-cells = <0>;
188
189                         status = "disabled";
190
191                         pinctrl-names = "default";
192                         pinctrl-0 = <&spi_cs1>;
193                 };
194
195                 uartlite: uartlite@c00 {
196                         compatible = "ralink,mt7620a-uart", "ralink,rt2880-uart", "ns16550a";
197                         reg = <0xc00 0x100>;
198
199                         resets = <&rstctrl 19>;
200                         reset-names = "uartl";
201
202                         interrupt-parent = <&intc>;
203                         interrupts = <12>;
204
205                         reg-shift = <2>;
206
207                         pinctrl-names = "default";
208                         pinctrl-0 = <&uartlite_pins>;
209                 };
210
211                 systick: systick@d00 {
212                         compatible = "ralink,mt7620a-systick", "ralink,cevt-systick";
213                         reg = <0xd00 0x10>;
214
215                         resets = <&rstctrl 28>;
216                         reset-names = "intc";
217
218                         interrupt-parent = <&cpuintc>;
219                         interrupts = <7>;
220                 };
221         };
222
223         pinctrl: pinctrl {
224                 compatible = "ralink,rt2880-pinmux";
225                 pinctrl-names = "default";
226                 pinctrl-0 = <&state_default>;
227
228                 state_default: pinctrl0 {
229                 };
230
231                 spi_pins: spi {
232                         spi {
233                                 ralink,group = "spi";
234                                 ralink,function = "spi";
235                         };
236                 };
237
238                 spi_cs1: spi1 {
239                         spi1 {
240                                 ralink,group = "spi_cs1";
241                                 ralink,function = "spi_cs1";
242                         };
243                 };
244
245                 uartlite_pins: uartlite {
246                         uart {
247                                 ralink,group = "uartlite";
248                                 ralink,function = "uartlite";
249                         };
250                 };
251         };
252
253         rstctrl: rstctrl {
254                 compatible = "ralink,mt7620a-reset", "ralink,rt2880-reset";
255                 #reset-cells = <1>;
256         };
257
258         clkctrl: clkctrl {
259                 compatible = "ralink,rt2880-clock";
260                 #clock-cells = <1>;
261         };
262
263         usbphy: usbphy {
264                 compatible = "mediatek,mt7620-usbphy";
265                 #phy-cells = <1>;
266
267                 resets = <&rstctrl 22 &rstctrl 25>;
268                 reset-names = "host", "device";
269
270                 clocks = <&clkctrl 22 &clkctrl 25>;
271                 clock-names = "host", "device";
272         };
273
274         ethernet: ethernet@10100000 {
275                 compatible = "mediatek,mt7620-eth";
276                 reg = <0x10100000 0x10000>;
277
278                 #address-cells = <1>;
279                 #size-cells = <0>;
280
281                 interrupt-parent = <&cpuintc>;
282                 interrupts = <5>;
283
284                 resets = <&rstctrl 21 &rstctrl 23>;
285                 reset-names = "fe", "esw";
286
287                 mediatek,switch = <&gsw>;
288
289                 mdio-bus {
290                         #address-cells = <1>;
291                         #size-cells = <0>;
292
293                         status = "disabled";
294                 };
295         };
296
297         gsw: gsw@10110000 {
298                 compatible = "mediatek,mt7620-gsw";
299                 reg = <0x10110000 0x8000>;
300
301                 resets = <&rstctrl 23>;
302                 reset-names = "esw";
303
304                 interrupt-parent = <&intc>;
305                 interrupts = <17>;
306                 mediatek,port4 = "gmac";
307         };
308
309         ehci: ehci@101c0000 {
310                 compatible = "generic-ehci";
311                 reg = <0x101c0000 0x1000>;
312
313                 interrupt-parent = <&intc>;
314                 interrupts = <18>;
315
316                 phys = <&usbphy 1>;
317                 phy-names = "usb";
318
319                 status = "disabled";
320         };
321
322         ohci: ohci@101c1000 {
323                 compatible = "generic-ohci";
324                 reg = <0x101c1000 0x1000>;
325
326                 phys = <&usbphy 1>;
327                 phy-names = "usb";
328
329                 interrupt-parent = <&intc>;
330                 interrupts = <18>;
331
332                 status = "disabled";
333         };
334
335         wmac: wmac@10180000 {
336                 compatible = "ralink,rt7620-wmac", "ralink,rt2880-wmac";
337                 reg = <0x10180000 0x40000>;
338
339                 interrupt-parent = <&cpuintc>;
340                 interrupts = <6>;
341
342                 ralink,eeprom = "soc_wmac.eeprom";
343         };
344 };