kernel: bump 4.9 to 4.9.65
[oweals/openwrt.git] / target / linux / ramips / dts / mt7620a.dtsi
1 / {
2         #address-cells = <1>;
3         #size-cells = <1>;
4         compatible = "ralink,mtk7620a-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                 uart: uart@500 {
87                         compatible = "ralink,mt7620a-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,mt7620a-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 = <24>;
116                         ralink,register-map = [ 00 04 08 0c
117                                                 20 24 28 2c
118                                                 30 34 ];
119                 };
120
121                 gpio1: gpio@638 {
122                         compatible = "ralink,mt7620a-gpio", "ralink,rt2880-gpio";
123                         reg = <0x638 0x24>;
124
125                         interrupt-parent = <&intc>;
126                         interrupts = <6>;
127
128                         gpio-controller;
129                         #gpio-cells = <2>;
130
131                         ralink,gpio-base = <24>;
132                         ralink,num-gpios = <16>;
133                         ralink,register-map = [ 00 04 08 0c
134                                                 10 14 18 1c
135                                                 20 24 ];
136
137                         status = "disabled";
138                 };
139
140                 gpio2: gpio@660 {
141                         compatible = "ralink,mt7620a-gpio", "ralink,rt2880-gpio";
142                         reg = <0x660 0x24>;
143
144                         interrupt-parent = <&intc>;
145                         interrupts = <6>;
146
147                         gpio-controller;
148                         #gpio-cells = <2>;
149
150                         ralink,gpio-base = <40>;
151                         ralink,num-gpios = <32>;
152                         ralink,register-map = [ 00 04 08 0c
153                                                 10 14 18 1c
154                                                 20 24 ];
155
156                         status = "disabled";
157                 };
158
159                 gpio3: gpio@688 {
160                         compatible = "ralink,mt7620a-gpio", "ralink,rt2880-gpio";
161                         reg = <0x688 0x24>;
162
163                         interrupt-parent = <&intc>;
164                         interrupts = <6>;
165
166                         gpio-controller;
167                         #gpio-cells = <2>;
168
169                         ralink,gpio-base = <72>;
170                         ralink,num-gpios = <1>;
171                         ralink,register-map = [ 00 04 08 0c
172                                                 10 14 18 1c
173                                                 20 24 ];
174
175                         status = "disabled";
176                 };
177
178                 i2c: i2c@900 {
179                         compatible = "ralink,rt2880-i2c";
180                         reg = <0x900 0x100>;
181
182                         resets = <&rstctrl 16>;
183                         reset-names = "i2c";
184
185                         #address-cells = <1>;
186                         #size-cells = <0>;
187
188                         status = "disabled";
189
190                         pinctrl-names = "default";
191                         pinctrl-0 = <&i2c_pins>;
192                 };
193
194                 i2s: i2s@a00 {
195                         compatible = "mediatek,mt7620-i2s";
196                         reg = <0xa00 0x100>;
197
198                         resets = <&rstctrl 17>;
199                         reset-names = "i2s";
200
201                         interrupt-parent = <&intc>;
202                         interrupts = <10>;
203
204                         txdma-req = <2>;
205                         rxdma-req = <3>;
206
207                         dmas = <&gdma 4>,
208                                 <&gdma 6>;
209                         dma-names = "tx", "rx";
210
211                         status = "disabled";
212                 };
213
214                 spi0: spi@b00 {
215                         compatible = "ralink,mt7620a-spi", "ralink,rt2880-spi";
216                         reg = <0xb00 0x40>;
217
218                         resets = <&rstctrl 18>;
219                         reset-names = "spi";
220
221                         #address-cells = <1>;
222                         #size-cells = <0>;
223
224                         status = "disabled";
225
226                         pinctrl-names = "default";
227                         pinctrl-0 = <&spi_pins>;
228                 };
229
230                 spi1: spi@b40 {
231                         compatible = "ralink,rt2880-spi";
232                         reg = <0xb40 0x60>;
233
234                         resets = <&rstctrl 18>;
235                         reset-names = "spi";
236
237                         #address-cells = <1>;
238                         #size-cells = <0>;
239
240                         status = "disabled";
241
242                         pinctrl-names = "default";
243                         pinctrl-0 = <&spi_cs1>;
244                 };
245
246                 uartlite: uartlite@c00 {
247                         compatible = "ralink,mt7620a-uart", "ralink,rt2880-uart", "ns16550a";
248                         reg = <0xc00 0x100>;
249
250                         resets = <&rstctrl 19>;
251                         reset-names = "uartl";
252
253                         interrupt-parent = <&intc>;
254                         interrupts = <12>;
255
256                         reg-shift = <2>;
257
258                         pinctrl-names = "default";
259                         pinctrl-0 = <&uartlite_pins>;
260                 };
261
262                 systick: systick@d00 {
263                         compatible = "ralink,mt7620a-systick", "ralink,cevt-systick";
264                         reg = <0xd00 0x10>;
265
266                         resets = <&rstctrl 28>;
267                         reset-names = "intc";
268
269                         interrupt-parent = <&cpuintc>;
270                         interrupts = <7>;
271                 };
272
273                 pcm: pcm@2000 {
274                         compatible = "ralink,mt7620a-pcm";
275                         reg = <0x2000 0x800>;
276
277                         resets = <&rstctrl 11>;
278                         reset-names = "pcm";
279
280                         interrupt-parent = <&intc>;
281                         interrupts = <4>;
282
283                         status = "disabled";
284                 };
285
286                 gdma: gdma@2800 {
287                         compatible = "ralink,mt7620a-gdma", "ralink,rt3883-gdma";
288                         reg = <0x2800 0x800>;
289
290                         resets = <&rstctrl 14>;
291                         reset-names = "dma";
292
293                         interrupt-parent = <&intc>;
294                         interrupts = <7>;
295
296                         #dma-cells = <1>;
297                         #dma-channels = <16>;
298                         #dma-requests = <16>;
299
300                         status = "disabled";
301                 };
302         };
303
304         pinctrl: pinctrl {
305                 compatible = "ralink,rt2880-pinmux";
306                 pinctrl-names = "default";
307                 pinctrl-0 = <&state_default>;
308
309                 state_default: pinctrl0 {
310                 };
311
312                 pcm_i2s_pins: pcm_i2s {
313                         pcm_i2s {
314                                 ralink,group = "uartf";
315                                 ralink,function = "pcm i2s";
316                         };
317                 };
318
319                 uartf_gpio_pins: uartf_gpio {
320                         uartf_gpio {
321                                 ralink,group = "uartf";
322                                 ralink,function = "gpio uartf";
323                         };
324                 };
325
326                 gpio_i2s_pins: gpio_i2s {
327                         gpio_i2s {
328                                 ralink,group = "uartf";
329                                 ralink,function = "gpio i2s";
330                         };
331                 };
332
333                 spi_pins: spi {
334                         spi {
335                                 ralink,group = "spi";
336                                 ralink,function = "spi";
337                         };
338                 };
339
340                 spi_cs1: spi1 {
341                         spi1 {
342                                 ralink,group = "spi_cs1";
343                                 ralink,function = "spi_cs1";
344                         };
345                 };
346
347                 i2c_pins: i2c {
348                         i2c {
349                                 ralink,group = "i2c";
350                                 ralink,function = "i2c";
351                         };
352                 };
353
354                 uartlite_pins: uartlite {
355                         uart {
356                                 ralink,group = "uartlite";
357                                 ralink,function = "uartlite";
358                         };
359                 };
360
361                 mdio_pins: mdio {
362                         mdio {
363                                 ralink,group = "mdio";
364                                 ralink,function = "mdio";
365                         };
366                 };
367
368                 mdio_refclk_pins: mdio_refclk {
369                         mdio_refclk {
370                                 ralink,group = "mdio";
371                                 ralink,function = "refclk";
372                         };
373                 };
374
375                 ephy_pins: ephy {
376                         ephy {
377                                 ralink,group = "ephy";
378                                 ralink,function = "ephy";
379                         };
380                 };
381
382                 wled_pins: wled {
383                         wled {
384                                 ralink,group = "wled";
385                                 ralink,function = "wled";
386                         };
387                 };
388
389                 rgmii1_pins: rgmii1 {
390                         rgmii1 {
391                                 ralink,group = "rgmii1";
392                                 ralink,function = "rgmii1";
393                         };
394                 };
395
396                 rgmii2_pins: rgmii2 {
397                         rgmii2 {
398                                 ralink,group = "rgmii2";
399                                 ralink,function = "rgmii2";
400                         };
401                 };
402
403                 pcie_pins: pcie {
404                         pcie {
405                                 ralink,group = "pcie";
406                                 ralink,function = "pcie rst";
407                         };
408                 };
409
410                 pa_pins: pa {
411                         pa {
412                                 ralink,group = "pa";
413                                 ralink,function = "pa";
414                         };
415                 };
416         };
417
418         rstctrl: rstctrl {
419                 compatible = "ralink,mt7620a-reset", "ralink,rt2880-reset";
420                 #reset-cells = <1>;
421         };
422
423         clkctrl: clkctrl {
424                 compatible = "ralink,rt2880-clock";
425                 #clock-cells = <1>;
426         };
427
428         usbphy: usbphy {
429                 compatible = "mediatek,mt7620-usbphy";
430                 #phy-cells = <1>;
431
432                 resets = <&rstctrl 22 &rstctrl 25>;
433                 reset-names = "host", "device";
434
435                 clocks = <&clkctrl 22 &clkctrl 25>;
436                 clock-names = "host", "device";
437         };
438
439         ethernet: ethernet@10100000 {
440                 compatible = "mediatek,mt7620-eth";
441                 reg = <0x10100000 0x10000>;
442
443                 #address-cells = <1>;
444                 #size-cells = <0>;
445
446                 interrupt-parent = <&cpuintc>;
447                 interrupts = <5>;
448
449                 resets = <&rstctrl 21 &rstctrl 23>;
450                 reset-names = "fe", "esw";
451
452                 mediatek,switch = <&gsw>;
453
454                 port@4 {
455                         compatible = "mediatek,mt7620a-gsw-port", "mediatek,eth-port";
456                         reg = <4>;
457
458                         status = "disabled";
459                 };
460
461                 port@5 {
462                         compatible = "mediatek,mt7620a-gsw-port", "mediatek,eth-port";
463                         reg = <5>;
464
465                         status = "disabled";
466                 };
467
468                 mdio-bus {
469                         #address-cells = <1>;
470                         #size-cells = <0>;
471
472                         status = "disabled";
473                 };
474         };
475
476         gsw: gsw@10110000 {
477                 compatible = "mediatek,mt7620-gsw";
478                 reg = <0x10110000 0x8000>;
479
480                 resets = <&rstctrl 23>;
481                 reset-names = "esw";
482
483                 interrupt-parent = <&intc>;
484                 interrupts = <17>;
485         };
486
487         sdhci: sdhci@10130000 {
488                 compatible = "ralink,mt7620-sdhci";
489                 reg = <0x10130000 0x4000>;
490
491                 interrupt-parent = <&intc>;
492                 interrupts = <14>;
493
494                 status = "disabled";
495         };
496
497         ehci: ehci@101c0000 {
498                 compatible = "generic-ehci";
499                 reg = <0x101c0000 0x1000>;
500
501                 interrupt-parent = <&intc>;
502                 interrupts = <18>;
503
504                 phys = <&usbphy 1>;
505                 phy-names = "usb";
506
507                 status = "disabled";
508         };
509
510         ohci: ohci@101c1000 {
511                 compatible = "generic-ohci";
512                 reg = <0x101c1000 0x1000>;
513
514                 interrupt-parent = <&intc>;
515                 interrupts = <18>;
516
517                 phys = <&usbphy 1>;
518                 phy-names = "usb";
519
520                 status = "disabled";
521         };
522
523         pcie: pcie@10140000 {
524                 compatible = "mediatek,mt7620-pci";
525                 reg = <0x10140000 0x100
526                         0x10142000 0x100>;
527
528                 #address-cells = <3>;
529                 #size-cells = <2>;
530
531                 resets = <&rstctrl 26>;
532                 reset-names = "pcie0";
533
534                 clocks = <&clkctrl 26>;
535                 clock-names = "pcie0";
536
537                 interrupt-parent = <&cpuintc>;
538                 interrupts = <4>;
539
540                 pinctrl-names = "default";
541                 pinctrl-0 = <&pcie_pins>;
542
543                 device_type = "pci";
544
545                 bus-range = <0 255>;
546                 ranges = <
547                         0x02000000 0 0x00000000 0x20000000 0 0x10000000 /* pci memory */
548                         0x01000000 0 0x00000000 0x10160000 0 0x00010000 /* io space */
549                 >;
550
551                 status = "disabled";
552
553                 pcie-bridge {
554                         reg = <0x0000 0 0 0 0>;
555
556                         #address-cells = <3>;
557                         #size-cells = <2>;
558
559                         device_type = "pci";
560                 };
561         };
562
563         wmac: wmac@10180000 {
564                 compatible = "ralink,rt7620-wmac", "ralink,rt2880-wmac";
565                 reg = <0x10180000 0x40000>;
566
567                 interrupt-parent = <&cpuintc>;
568                 interrupts = <6>;
569
570                 ralink,eeprom = "soc_wmac.eeprom";
571         };
572 };