ralink: add mt7620n dts files
[openwrt.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         palmbus@10000000 {
24                 compatible = "palmbus";
25                 reg = <0x10000000 0x200000>;
26                 ranges = <0x0 0x10000000 0x1FFFFF>;
27
28                 #address-cells = <1>;
29                 #size-cells = <1>;
30
31                 sysc@0 {
32                         compatible = "ralink,mt7620a-sysc", "ralink,rt3050-sysc";
33                         reg = <0x0 0x100>;
34                 };
35
36                 timer@100 {
37                         compatible = "ralink,mt7620a-timer", "ralink,rt2880-timer";
38                         reg = <0x100 0x20>;
39
40                         interrupt-parent = <&intc>;
41                         interrupts = <1>;
42                 };
43
44                 watchdog@120 {
45                         compatible = "ralink,mt7620a-wdt", "ralink,rt2880-wdt";
46                         reg = <0x120 0x10>;
47
48                         resets = <&rstctrl 8>;
49                         reset-names = "wdt";
50
51                         interrupt-parent = <&intc>;
52                         interrupts = <1>;
53                 };
54
55                 intc: intc@200 {
56                         compatible = "ralink,mt7620a-intc", "ralink,rt2880-intc";
57                         reg = <0x200 0x100>;
58
59                         resets = <&rstctrl 19>;
60                         reset-names = "intc";
61
62                         interrupt-controller;
63                         #interrupt-cells = <1>;
64
65                         interrupt-parent = <&cpuintc>;
66                         interrupts = <2>;
67                 };
68
69                 memc@300 {
70                         compatible = "ralink,mt7620a-memc", "ralink,rt3050-memc";
71                         reg = <0x300 0x100>;
72
73                         resets = <&rstctrl 20>;
74                         reset-names = "mc";
75
76                         interrupt-parent = <&intc>;
77                         interrupts = <3>;
78                 };
79
80                 gpio0: gpio@600 {
81                         compatible = "ralink,mt7620a-gpio", "ralink,rt2880-gpio";
82                         reg = <0x600 0x34>;
83
84                         resets = <&rstctrl 13>;
85                         reset-names = "pio";
86
87                         interrupt-parent = <&intc>;
88                         interrupts = <6>;
89
90                         gpio-controller;
91                         #gpio-cells = <2>;
92
93                         ralink,gpio-base = <0>;
94                         ralink,num-gpios = <24>;
95                         ralink,register-map = [ 00 04 08 0c
96                                                 20 24 28 2c
97                                                 30 34 ];
98                 };
99
100                 gpio1: gpio@638 {
101                         compatible = "ralink,mt7620a-gpio", "ralink,rt2880-gpio";
102                         reg = <0x638 0x24>;
103
104                         interrupt-parent = <&intc>;
105                         interrupts = <6>;
106
107                         gpio-controller;
108                         #gpio-cells = <2>;
109
110                         ralink,gpio-base = <24>;
111                         ralink,num-gpios = <16>;
112                         ralink,register-map = [ 00 04 08 0c
113                                                 10 14 18 1c
114                                                 20 24 ];
115
116                         status = "disabled";
117                 };
118
119                 gpio2: gpio@660 {
120                         compatible = "ralink,mt7620a-gpio", "ralink,rt2880-gpio";
121                         reg = <0x660 0x24>;
122
123                         interrupt-parent = <&intc>;
124                         interrupts = <6>;
125
126                         gpio-controller;
127                         #gpio-cells = <2>;
128
129                         ralink,gpio-base = <40>;
130                         ralink,num-gpios = <32>;
131                         ralink,register-map = [ 00 04 08 0c
132                                                 10 14 18 1c
133                                                 20 24 ];
134
135                         status = "disabled";
136                 };
137
138                 spi@b00 {
139                         compatible = "ralink,mt7620a-spi", "ralink,rt2880-spi";
140                         reg = <0xb00 0x100>;
141
142                         resets = <&rstctrl 18>;
143                         reset-names = "spi";
144
145                         #address-cells = <1>;
146                         #size-cells = <1>;
147
148                         status = "disabled";
149
150                         pinctrl-names = "default";
151                         pinctrl-0 = <&spi_pins>;
152                 };
153
154                 uartlite@c00 {
155                         compatible = "ralink,mt7620a-uart", "ralink,rt2880-uart", "ns16550a";
156                         reg = <0xc00 0x100>;
157
158                         resets = <&rstctrl 19>;
159                         reset-names = "uartl";
160
161                         interrupt-parent = <&intc>;
162                         interrupts = <12>;
163
164                         reg-shift = <2>;
165
166                         pinctrl-names = "default";
167                         pinctrl-0 = <&uartlite_pins>;
168                 };
169
170                 systick@d00 {
171                         compatible = "ralink,mt7620a-systick", "ralink,cevt-systick";
172                         reg = <0xd00 0x10>;
173
174                         resets = <&rstctrl 28>;
175                         reset-names = "intc";
176
177                         interrupt-parent = <&cpuintc>;
178                         interrupts = <7>;
179                 };
180         };
181
182         pinctrl {
183                 compatible = "ralink,rt2880-pinmux";
184                 pinctrl-names = "default";
185                 pinctrl-0 = <&state_default>;
186                 state_default: pinctrl0 {
187                 };
188                 spi_pins: spi {
189                         spi {
190                                 ralink,group = "spi";
191                                 ralink,function = "spi";
192                         };
193                 };
194                 uartlite_pins: uartlite {
195                         uart {
196                                 ralink,group = "uartlite";
197                                 ralink,function = "uartlite";
198                         };
199                 };
200         };
201
202         rstctrl: rstctrl {
203                 compatible = "ralink,mt7620a-reset", "ralink,rt2880-reset";
204                 #reset-cells = <1>;
205         };
206
207         ubsphy {
208                 compatible = "ralink,mt7620a-usbphy";
209
210                 resets = <&rstctrl 22 &rstctrl 25>;
211                 reset-names = "host", "device";
212         };
213
214         ethernet@10100000 {
215                 compatible = "ralink,mt7620a-eth";
216                 reg = <0x10100000 10000>;
217
218                 #address-cells = <1>;
219                 #size-cells = <0>;
220
221                 interrupt-parent = <&cpuintc>;
222                 interrupts = <5>;
223
224                 resets = <&rstctrl 21 &rstctrl 23>;
225                 reset-names = "fe", "esw";
226
227                 mdio-bus {
228                         #address-cells = <1>;
229                         #size-cells = <0>;
230
231                         status = "disabled";
232                 };
233         };
234
235         gsw@10110000 {
236                 compatible = "ralink,mt7620a-gsw";
237                 reg = <0x10110000 8000>;
238
239                 interrupt-parent = <&intc>;
240                 interrupts = <17>;
241                 ralink,port4 = "gmac";
242         };
243
244         ehci@101c0000 {
245                 compatible = "ralink,rt3xxx-ehci";
246                 reg = <0x101c0000 0x1000>;
247
248                 interrupt-parent = <&intc>;
249                 interrupts = <18>;
250
251                 status = "disabled";
252         };
253
254         ohci@101c1000 {
255                 compatible = "ralink,rt3xxx-ohci";
256                 reg = <0x101c1000 0x1000>;
257
258                 interrupt-parent = <&intc>;
259                 interrupts = <18>;
260
261                 status = "disabled";
262         };
263 };