]>
Commit | Line | Data |
---|---|---|
ff290fc3 HZ |
1 | /* |
2 | * Copyright (C) 2012 Marvell Technology Group Ltd. | |
3 | * Author: Haojian Zhuang <haojian.zhuang@marvell.com> | |
4 | * | |
5 | * This program is free software; you can redistribute it and/or modify | |
6 | * it under the terms of the GNU General Public License version 2 as | |
7 | * publishhed by the Free Software Foundation. | |
8 | */ | |
9 | ||
d41ef540 | 10 | #include <dt-bindings/clock/marvell,mmp2.h> |
ff290fc3 HZ |
11 | |
12 | / { | |
abe60a3a RH |
13 | #address-cells = <1>; |
14 | #size-cells = <1>; | |
15 | ||
ff290fc3 HZ |
16 | aliases { |
17 | serial0 = &uart1; | |
18 | serial1 = &uart2; | |
19 | serial2 = &uart3; | |
20 | serial3 = &uart4; | |
21 | i2c0 = &twsi1; | |
22 | i2c1 = &twsi2; | |
23 | }; | |
24 | ||
25 | soc { | |
26 | #address-cells = <1>; | |
27 | #size-cells = <1>; | |
28 | compatible = "simple-bus"; | |
29 | interrupt-parent = <&intc>; | |
30 | ranges; | |
31 | ||
51931b37 HZ |
32 | L2: l2-cache { |
33 | compatible = "marvell,tauros2-cache"; | |
34 | marvell,tauros2-cache-features = <0x3>; | |
35 | }; | |
36 | ||
ff290fc3 HZ |
37 | axi@d4200000 { /* AXI */ |
38 | compatible = "mrvl,axi-bus", "simple-bus"; | |
39 | #address-cells = <1>; | |
40 | #size-cells = <1>; | |
41 | reg = <0xd4200000 0x00200000>; | |
42 | ranges; | |
43 | ||
44 | intc: interrupt-controller@d4282000 { | |
45 | compatible = "mrvl,mmp2-intc"; | |
46 | interrupt-controller; | |
47 | #interrupt-cells = <1>; | |
48 | reg = <0xd4282000 0x1000>; | |
49 | mrvl,intc-nr-irqs = <64>; | |
50 | }; | |
51 | ||
58f1193e | 52 | intcmux4: interrupt-controller@d4282150 { |
ff290fc3 HZ |
53 | compatible = "mrvl,mmp2-mux-intc"; |
54 | interrupts = <4>; | |
55 | interrupt-controller; | |
56 | #interrupt-cells = <1>; | |
57 | reg = <0x150 0x4>, <0x168 0x4>; | |
58 | reg-names = "mux status", "mux mask"; | |
59 | mrvl,intc-nr-irqs = <2>; | |
60 | }; | |
61 | ||
62 | intcmux5: interrupt-controller@d4282154 { | |
63 | compatible = "mrvl,mmp2-mux-intc"; | |
64 | interrupts = <5>; | |
65 | interrupt-controller; | |
66 | #interrupt-cells = <1>; | |
67 | reg = <0x154 0x4>, <0x16c 0x4>; | |
68 | reg-names = "mux status", "mux mask"; | |
69 | mrvl,intc-nr-irqs = <2>; | |
70 | mrvl,clr-mfp-irq = <1>; | |
71 | }; | |
72 | ||
73 | intcmux9: interrupt-controller@d4282180 { | |
74 | compatible = "mrvl,mmp2-mux-intc"; | |
75 | interrupts = <9>; | |
76 | interrupt-controller; | |
77 | #interrupt-cells = <1>; | |
78 | reg = <0x180 0x4>, <0x17c 0x4>; | |
79 | reg-names = "mux status", "mux mask"; | |
80 | mrvl,intc-nr-irqs = <3>; | |
81 | }; | |
82 | ||
83 | intcmux17: interrupt-controller@d4282158 { | |
84 | compatible = "mrvl,mmp2-mux-intc"; | |
85 | interrupts = <17>; | |
86 | interrupt-controller; | |
87 | #interrupt-cells = <1>; | |
88 | reg = <0x158 0x4>, <0x170 0x4>; | |
89 | reg-names = "mux status", "mux mask"; | |
90 | mrvl,intc-nr-irqs = <5>; | |
91 | }; | |
92 | ||
93 | intcmux35: interrupt-controller@d428215c { | |
94 | compatible = "mrvl,mmp2-mux-intc"; | |
95 | interrupts = <35>; | |
96 | interrupt-controller; | |
97 | #interrupt-cells = <1>; | |
98 | reg = <0x15c 0x4>, <0x174 0x4>; | |
99 | reg-names = "mux status", "mux mask"; | |
100 | mrvl,intc-nr-irqs = <15>; | |
101 | }; | |
102 | ||
103 | intcmux51: interrupt-controller@d4282160 { | |
104 | compatible = "mrvl,mmp2-mux-intc"; | |
105 | interrupts = <51>; | |
106 | interrupt-controller; | |
107 | #interrupt-cells = <1>; | |
108 | reg = <0x160 0x4>, <0x178 0x4>; | |
109 | reg-names = "mux status", "mux mask"; | |
110 | mrvl,intc-nr-irqs = <2>; | |
111 | }; | |
112 | ||
113 | intcmux55: interrupt-controller@d4282188 { | |
114 | compatible = "mrvl,mmp2-mux-intc"; | |
115 | interrupts = <55>; | |
116 | interrupt-controller; | |
117 | #interrupt-cells = <1>; | |
118 | reg = <0x188 0x4>, <0x184 0x4>; | |
119 | reg-names = "mux status", "mux mask"; | |
120 | mrvl,intc-nr-irqs = <2>; | |
121 | }; | |
03f64e17 | 122 | |
df606f41 LR |
123 | usb_otg_phy0: usb-otg-phy@d4207000 { |
124 | compatible = "marvell,mmp2-usb-phy"; | |
125 | reg = <0xd4207000 0x40>; | |
126 | #phy-cells = <0>; | |
127 | status = "disabled"; | |
128 | }; | |
129 | ||
3f3ad8ab LR |
130 | usb_otg0: usb-otg@d4208000 { |
131 | compatible = "marvell,pxau2o-ehci"; | |
132 | reg = <0xd4208000 0x200>; | |
133 | interrupts = <44>; | |
134 | clocks = <&soc_clocks MMP2_CLK_USB>; | |
135 | clock-names = "USBCLK"; | |
136 | phys = <&usb_otg_phy0>; | |
137 | phy-names = "usb"; | |
138 | status = "disabled"; | |
139 | }; | |
140 | ||
03f64e17 LR |
141 | mmc1: mmc@d4280000 { |
142 | compatible = "mrvl,pxav3-mmc"; | |
143 | reg = <0xd4280000 0x120>; | |
144 | clocks = <&soc_clocks MMP2_CLK_SDH0>; | |
145 | clock-names = "io"; | |
146 | interrupts = <39>; | |
147 | status = "disabled"; | |
148 | }; | |
149 | ||
150 | mmc2: mmc@d4280800 { | |
151 | compatible = "mrvl,pxav3-mmc"; | |
152 | reg = <0xd4280800 0x120>; | |
153 | clocks = <&soc_clocks MMP2_CLK_SDH1>; | |
154 | clock-names = "io"; | |
155 | interrupts = <52>; | |
156 | status = "disabled"; | |
157 | }; | |
158 | ||
159 | mmc3: mmc@d4281000 { | |
160 | compatible = "mrvl,pxav3-mmc"; | |
161 | reg = <0xd4281000 0x120>; | |
162 | clocks = <&soc_clocks MMP2_CLK_SDH2>; | |
163 | clock-names = "io"; | |
164 | interrupts = <53>; | |
165 | status = "disabled"; | |
166 | }; | |
167 | ||
168 | mmc4: mmc@d4281800 { | |
169 | compatible = "mrvl,pxav3-mmc"; | |
170 | reg = <0xd4281800 0x120>; | |
171 | clocks = <&soc_clocks MMP2_CLK_SDH3>; | |
172 | clock-names = "io"; | |
173 | interrupts = <54>; | |
174 | status = "disabled"; | |
175 | }; | |
ff290fc3 HZ |
176 | }; |
177 | ||
178 | apb@d4000000 { /* APB */ | |
179 | compatible = "mrvl,apb-bus", "simple-bus"; | |
180 | #address-cells = <1>; | |
181 | #size-cells = <1>; | |
182 | reg = <0xd4000000 0x00200000>; | |
183 | ranges; | |
184 | ||
185 | timer0: timer@d4014000 { | |
186 | compatible = "mrvl,mmp-timer"; | |
187 | reg = <0xd4014000 0x100>; | |
188 | interrupts = <13>; | |
1c22b9c1 | 189 | clocks = <&soc_clocks MMP2_CLK_TIMER>; |
ff290fc3 HZ |
190 | }; |
191 | ||
192 | uart1: uart@d4030000 { | |
193 | compatible = "mrvl,mmp-uart"; | |
194 | reg = <0xd4030000 0x1000>; | |
195 | interrupts = <27>; | |
d41ef540 CX |
196 | clocks = <&soc_clocks MMP2_CLK_UART0>; |
197 | resets = <&soc_clocks MMP2_CLK_UART0>; | |
ff290fc3 HZ |
198 | status = "disabled"; |
199 | }; | |
200 | ||
201 | uart2: uart@d4017000 { | |
202 | compatible = "mrvl,mmp-uart"; | |
203 | reg = <0xd4017000 0x1000>; | |
204 | interrupts = <28>; | |
d41ef540 CX |
205 | clocks = <&soc_clocks MMP2_CLK_UART1>; |
206 | resets = <&soc_clocks MMP2_CLK_UART1>; | |
ff290fc3 HZ |
207 | status = "disabled"; |
208 | }; | |
209 | ||
210 | uart3: uart@d4018000 { | |
211 | compatible = "mrvl,mmp-uart"; | |
212 | reg = <0xd4018000 0x1000>; | |
213 | interrupts = <24>; | |
d41ef540 CX |
214 | clocks = <&soc_clocks MMP2_CLK_UART2>; |
215 | resets = <&soc_clocks MMP2_CLK_UART2>; | |
ff290fc3 HZ |
216 | status = "disabled"; |
217 | }; | |
218 | ||
219 | uart4: uart@d4016000 { | |
220 | compatible = "mrvl,mmp-uart"; | |
221 | reg = <0xd4016000 0x1000>; | |
222 | interrupts = <46>; | |
d41ef540 CX |
223 | clocks = <&soc_clocks MMP2_CLK_UART3>; |
224 | resets = <&soc_clocks MMP2_CLK_UART3>; | |
ff290fc3 HZ |
225 | status = "disabled"; |
226 | }; | |
227 | ||
5b3edb56 | 228 | gpio: gpio@d4019000 { |
f8731174 | 229 | compatible = "marvell,mmp2-gpio"; |
ff290fc3 HZ |
230 | #address-cells = <1>; |
231 | #size-cells = <1>; | |
232 | reg = <0xd4019000 0x1000>; | |
233 | gpio-controller; | |
234 | #gpio-cells = <2>; | |
235 | interrupts = <49>; | |
236 | interrupt-names = "gpio_mux"; | |
d41ef540 CX |
237 | clocks = <&soc_clocks MMP2_CLK_GPIO>; |
238 | resets = <&soc_clocks MMP2_CLK_GPIO>; | |
ff290fc3 | 239 | interrupt-controller; |
40058398 | 240 | #interrupt-cells = <2>; |
ff290fc3 HZ |
241 | ranges; |
242 | ||
243 | gcb0: gpio@d4019000 { | |
244 | reg = <0xd4019000 0x4>; | |
245 | }; | |
246 | ||
247 | gcb1: gpio@d4019004 { | |
248 | reg = <0xd4019004 0x4>; | |
249 | }; | |
250 | ||
251 | gcb2: gpio@d4019008 { | |
252 | reg = <0xd4019008 0x4>; | |
253 | }; | |
254 | ||
255 | gcb3: gpio@d4019100 { | |
256 | reg = <0xd4019100 0x4>; | |
257 | }; | |
258 | ||
259 | gcb4: gpio@d4019104 { | |
260 | reg = <0xd4019104 0x4>; | |
261 | }; | |
262 | ||
263 | gcb5: gpio@d4019108 { | |
264 | reg = <0xd4019108 0x4>; | |
265 | }; | |
266 | }; | |
267 | ||
268 | twsi1: i2c@d4011000 { | |
269 | compatible = "mrvl,mmp-twsi"; | |
270 | reg = <0xd4011000 0x1000>; | |
271 | interrupts = <7>; | |
d41ef540 CX |
272 | clocks = <&soc_clocks MMP2_CLK_TWSI0>; |
273 | resets = <&soc_clocks MMP2_CLK_TWSI0>; | |
58f1193e QX |
274 | #address-cells = <1>; |
275 | #size-cells = <0>; | |
ff290fc3 HZ |
276 | mrvl,i2c-fast-mode; |
277 | status = "disabled"; | |
278 | }; | |
279 | ||
1147e05a | 280 | twsi2: i2c@d4031000 { |
ff290fc3 | 281 | compatible = "mrvl,mmp-twsi"; |
1147e05a LR |
282 | reg = <0xd4031000 0x1000>; |
283 | interrupt-parent = <&intcmux17>; | |
284 | interrupts = <0>; | |
d41ef540 CX |
285 | clocks = <&soc_clocks MMP2_CLK_TWSI1>; |
286 | resets = <&soc_clocks MMP2_CLK_TWSI1>; | |
1147e05a LR |
287 | #address-cells = <1>; |
288 | #size-cells = <0>; | |
ff290fc3 HZ |
289 | status = "disabled"; |
290 | }; | |
291 | ||
8a22b194 LR |
292 | twsi3: i2c@d4032000 { |
293 | compatible = "mrvl,mmp-twsi"; | |
294 | reg = <0xd4032000 0x1000>; | |
295 | interrupt-parent = <&intcmux17>; | |
296 | interrupts = <1>; | |
297 | clocks = <&soc_clocks MMP2_CLK_TWSI2>; | |
298 | resets = <&soc_clocks MMP2_CLK_TWSI2>; | |
299 | #address-cells = <1>; | |
300 | #size-cells = <0>; | |
301 | status = "disabled"; | |
302 | }; | |
303 | ||
304 | twsi4: i2c@d4033000 { | |
305 | compatible = "mrvl,mmp-twsi"; | |
306 | reg = <0xd4033000 0x1000>; | |
307 | interrupt-parent = <&intcmux17>; | |
308 | interrupts = <2>; | |
309 | clocks = <&soc_clocks MMP2_CLK_TWSI3>; | |
310 | resets = <&soc_clocks MMP2_CLK_TWSI3>; | |
311 | #address-cells = <1>; | |
312 | #size-cells = <0>; | |
313 | status = "disabled"; | |
314 | }; | |
315 | ||
316 | ||
317 | twsi5: i2c@d4033800 { | |
318 | compatible = "mrvl,mmp-twsi"; | |
319 | reg = <0xd4033800 0x1000>; | |
320 | interrupt-parent = <&intcmux17>; | |
321 | interrupts = <3>; | |
322 | clocks = <&soc_clocks MMP2_CLK_TWSI4>; | |
323 | resets = <&soc_clocks MMP2_CLK_TWSI4>; | |
324 | #address-cells = <1>; | |
325 | #size-cells = <0>; | |
326 | status = "disabled"; | |
327 | }; | |
328 | ||
329 | twsi6: i2c@d4034000 { | |
330 | compatible = "mrvl,mmp-twsi"; | |
331 | reg = <0xd4034000 0x1000>; | |
332 | interrupt-parent = <&intcmux17>; | |
333 | interrupts = <4>; | |
334 | clocks = <&soc_clocks MMP2_CLK_TWSI5>; | |
335 | resets = <&soc_clocks MMP2_CLK_TWSI5>; | |
336 | #address-cells = <1>; | |
337 | #size-cells = <0>; | |
338 | status = "disabled"; | |
339 | }; | |
340 | ||
ff290fc3 HZ |
341 | rtc: rtc@d4010000 { |
342 | compatible = "mrvl,mmp-rtc"; | |
343 | reg = <0xd4010000 0x1000>; | |
344 | interrupts = <1 0>; | |
345 | interrupt-names = "rtc 1Hz", "rtc alarm"; | |
346 | interrupt-parent = <&intcmux5>; | |
d41ef540 CX |
347 | clocks = <&soc_clocks MMP2_CLK_RTC>; |
348 | resets = <&soc_clocks MMP2_CLK_RTC>; | |
ff290fc3 HZ |
349 | status = "disabled"; |
350 | }; | |
d3e9d2ce LR |
351 | |
352 | ssp1: ssp@d4035000 { | |
353 | compatible = "marvell,mmp2-ssp"; | |
354 | reg = <0xd4035000 0x1000>; | |
355 | clocks = <&soc_clocks MMP2_CLK_SSP0>; | |
356 | interrupts = <0>; | |
357 | status = "disabled"; | |
358 | }; | |
359 | ||
360 | ssp2: ssp@d4036000 { | |
361 | compatible = "marvell,mmp2-ssp"; | |
362 | reg = <0xd4036000 0x1000>; | |
363 | clocks = <&soc_clocks MMP2_CLK_SSP1>; | |
364 | interrupts = <1>; | |
365 | status = "disabled"; | |
366 | }; | |
367 | ||
368 | ssp3: ssp@d4037000 { | |
369 | compatible = "marvell,mmp2-ssp"; | |
370 | reg = <0xd4037000 0x1000>; | |
371 | clocks = <&soc_clocks MMP2_CLK_SSP2>; | |
372 | interrupts = <20>; | |
373 | status = "disabled"; | |
374 | }; | |
375 | ||
376 | ssp4: ssp@d4039000 { | |
377 | compatible = "marvell,mmp2-ssp"; | |
378 | reg = <0xd4039000 0x1000>; | |
379 | clocks = <&soc_clocks MMP2_CLK_SSP3>; | |
380 | interrupts = <21>; | |
381 | status = "disabled"; | |
382 | }; | |
ff290fc3 | 383 | }; |
d41ef540 CX |
384 | |
385 | soc_clocks: clocks{ | |
386 | compatible = "marvell,mmp2-clock"; | |
387 | reg = <0xd4050000 0x1000>, | |
388 | <0xd4282800 0x400>, | |
389 | <0xd4015000 0x1000>; | |
390 | reg-names = "mpmu", "apmu", "apbc"; | |
391 | #clock-cells = <1>; | |
392 | #reset-cells = <1>; | |
393 | }; | |
ff290fc3 HZ |
394 | }; |
395 | }; |