Commit | Line | Data |
---|---|---|
a4f3ac4d ST |
1 | /* |
2 | * Copyright 2012 Steffen Trumtrar, Pengutronix | |
3 | * | |
4 | * based on imx27.dtsi | |
5 | * | |
6 | * This program is free software; you can redistribute it and/or modify it under | |
7 | * the terms of the GNU General Public License version 2 as published by the | |
8 | * Free Software Foundation. | |
9 | */ | |
10 | ||
11 | #include "skeleton.dtsi" | |
12 | #include "imx35-pinfunc.h" | |
13 | ||
14 | / { | |
15 | aliases { | |
22970070 | 16 | ethernet0 = &fec; |
a4f3ac4d ST |
17 | gpio0 = &gpio1; |
18 | gpio1 = &gpio2; | |
19 | gpio2 = &gpio3; | |
20 | serial0 = &uart1; | |
21 | serial1 = &uart2; | |
22 | serial2 = &uart3; | |
23 | spi0 = &spi1; | |
24 | spi1 = &spi2; | |
25 | }; | |
26 | ||
27 | cpus { | |
28 | #address-cells = <0>; | |
29 | #size-cells = <0>; | |
30 | ||
31 | cpu { | |
b2bbb166 | 32 | compatible = "arm,arm1136jf-s"; |
a4f3ac4d ST |
33 | device_type = "cpu"; |
34 | }; | |
35 | }; | |
36 | ||
37 | avic: avic-interrupt-controller@68000000 { | |
38 | compatible = "fsl,imx35-avic", "fsl,avic"; | |
39 | interrupt-controller; | |
40 | #interrupt-cells = <1>; | |
41 | reg = <0x68000000 0x10000000>; | |
42 | }; | |
43 | ||
44 | soc { | |
45 | #address-cells = <1>; | |
46 | #size-cells = <1>; | |
47 | compatible = "simple-bus"; | |
48 | interrupt-parent = <&avic>; | |
49 | ranges; | |
50 | ||
51 | L2: l2-cache@30000000 { | |
52 | compatible = "arm,l210-cache"; | |
53 | reg = <0x30000000 0x1000>; | |
54 | cache-unified; | |
55 | cache-level = <2>; | |
56 | }; | |
57 | ||
58 | aips1: aips@43f00000 { | |
59 | compatible = "fsl,aips", "simple-bus"; | |
60 | #address-cells = <1>; | |
61 | #size-cells = <1>; | |
62 | reg = <0x43f00000 0x100000>; | |
63 | ranges; | |
64 | ||
65 | i2c1: i2c@43f80000 { | |
66 | #address-cells = <1>; | |
67 | #size-cells = <0>; | |
68 | compatible = "fsl,imx35-i2c", "fsl,imx1-i2c"; | |
69 | reg = <0x43f80000 0x4000>; | |
70 | clocks = <&clks 51>; | |
71 | clock-names = "ipg_per"; | |
72 | interrupts = <10>; | |
73 | status = "disabled"; | |
74 | }; | |
75 | ||
76 | i2c3: i2c@43f84000 { | |
77 | #address-cells = <1>; | |
78 | #size-cells = <0>; | |
79 | compatible = "fsl,imx35-i2c", "fsl,imx1-i2c"; | |
80 | reg = <0x43f84000 0x4000>; | |
81 | clocks = <&clks 53>; | |
82 | clock-names = "ipg_per"; | |
83 | interrupts = <3>; | |
84 | status = "disabled"; | |
85 | }; | |
86 | ||
87 | uart1: serial@43f90000 { | |
88 | compatible = "fsl,imx35-uart", "fsl,imx21-uart"; | |
89 | reg = <0x43f90000 0x4000>; | |
90 | clocks = <&clks 9>, <&clks 70>; | |
91 | clock-names = "ipg", "per"; | |
92 | interrupts = <45>; | |
93 | status = "disabled"; | |
94 | }; | |
95 | ||
96 | uart2: serial@43f94000 { | |
97 | compatible = "fsl,imx35-uart", "fsl,imx21-uart"; | |
98 | reg = <0x43f94000 0x4000>; | |
99 | clocks = <&clks 9>, <&clks 71>; | |
100 | clock-names = "ipg", "per"; | |
101 | interrupts = <32>; | |
102 | status = "disabled"; | |
103 | }; | |
104 | ||
105 | i2c2: i2c@43f98000 { | |
106 | #address-cells = <1>; | |
107 | #size-cells = <0>; | |
108 | compatible = "fsl,imx35-i2c", "fsl,imx1-i2c"; | |
109 | reg = <0x43f98000 0x4000>; | |
110 | clocks = <&clks 52>; | |
111 | clock-names = "ipg_per"; | |
112 | interrupts = <4>; | |
113 | status = "disabled"; | |
114 | }; | |
115 | ||
116 | ssi1: ssi@43fa0000 { | |
6ff7f51e | 117 | #sound-dai-cells = <0>; |
a4f3ac4d ST |
118 | compatible = "fsl,imx35-ssi", "fsl,imx21-ssi"; |
119 | reg = <0x43fa0000 0x4000>; | |
120 | interrupts = <11>; | |
121 | clocks = <&clks 68>; | |
122 | dmas = <&sdma 28 0 0>, | |
123 | <&sdma 29 0 0>; | |
124 | dma-names = "rx", "tx"; | |
125 | fsl,fifo-depth = <15>; | |
126 | status = "disabled"; | |
127 | }; | |
128 | ||
129 | spi1: cspi@43fa4000 { | |
130 | #address-cells = <1>; | |
131 | #size-cells = <0>; | |
132 | compatible = "fsl,imx35-cspi"; | |
133 | reg = <0x43fa4000 0x4000>; | |
134 | clocks = <&clks 35 &clks 35>; | |
135 | clock-names = "ipg", "per"; | |
136 | interrupts = <14>; | |
137 | status = "disabled"; | |
138 | }; | |
139 | ||
140 | iomuxc: iomuxc@43fac000 { | |
141 | compatible = "fsl,imx35-iomuxc"; | |
142 | reg = <0x43fac000 0x4000>; | |
143 | }; | |
144 | }; | |
145 | ||
146 | spba: spba-bus@50000000 { | |
147 | compatible = "fsl,spba-bus", "simple-bus"; | |
148 | #address-cells = <1>; | |
149 | #size-cells = <1>; | |
150 | reg = <0x50000000 0x100000>; | |
151 | ranges; | |
152 | ||
153 | uart3: serial@5000c000 { | |
154 | compatible = "fsl,imx35-uart", "fsl,imx21-uart"; | |
155 | reg = <0x5000c000 0x4000>; | |
156 | clocks = <&clks 9>, <&clks 72>; | |
157 | clock-names = "ipg", "per"; | |
158 | interrupts = <18>; | |
159 | status = "disabled"; | |
160 | }; | |
161 | ||
162 | spi2: cspi@50010000 { | |
163 | #address-cells = <1>; | |
164 | #size-cells = <0>; | |
165 | compatible = "fsl,imx35-cspi"; | |
166 | reg = <0x50010000 0x4000>; | |
167 | interrupts = <13>; | |
168 | clocks = <&clks 36 &clks 36>; | |
169 | clock-names = "ipg", "per"; | |
170 | status = "disabled"; | |
171 | }; | |
172 | ||
173 | fec: fec@50038000 { | |
174 | compatible = "fsl,imx35-fec", "fsl,imx27-fec"; | |
175 | reg = <0x50038000 0x4000>; | |
176 | clocks = <&clks 46>, <&clks 8>; | |
177 | clock-names = "ipg", "ahb"; | |
178 | interrupts = <57>; | |
179 | status = "disabled"; | |
180 | }; | |
181 | }; | |
182 | ||
183 | aips2: aips@53f00000 { | |
184 | compatible = "fsl,aips", "simple-bus"; | |
185 | #address-cells = <1>; | |
186 | #size-cells = <1>; | |
187 | reg = <0x53f00000 0x100000>; | |
188 | ranges; | |
189 | ||
190 | clks: ccm@53f80000 { | |
191 | compatible = "fsl,imx35-ccm"; | |
192 | reg = <0x53f80000 0x4000>; | |
193 | interrupts = <31>; | |
194 | #clock-cells = <1>; | |
195 | }; | |
196 | ||
0ebda1d3 AS |
197 | gpt: timer@53f90000 { |
198 | compatible = "fsl,imx35-gpt", "fsl,imx31-gpt"; | |
199 | reg = <0x53f90000 0x4000>; | |
200 | interrupts = <29>; | |
201 | clocks = <&clks 9>, <&clks 50>; | |
202 | clock-names = "ipg", "per"; | |
203 | }; | |
204 | ||
a4f3ac4d ST |
205 | gpio3: gpio@53fa4000 { |
206 | compatible = "fsl,imx35-gpio", "fsl,imx31-gpio"; | |
207 | reg = <0x53fa4000 0x4000>; | |
208 | interrupts = <56>; | |
209 | gpio-controller; | |
210 | #gpio-cells = <2>; | |
211 | interrupt-controller; | |
212 | #interrupt-cells = <2>; | |
213 | }; | |
214 | ||
215 | esdhc1: esdhc@53fb4000 { | |
216 | compatible = "fsl,imx35-esdhc"; | |
217 | reg = <0x53fb4000 0x4000>; | |
218 | interrupts = <7>; | |
219 | clocks = <&clks 9>, <&clks 8>, <&clks 43>; | |
220 | clock-names = "ipg", "ahb", "per"; | |
221 | status = "disabled"; | |
222 | }; | |
223 | ||
224 | esdhc2: esdhc@53fb8000 { | |
225 | compatible = "fsl,imx35-esdhc"; | |
226 | reg = <0x53fb8000 0x4000>; | |
227 | interrupts = <8>; | |
228 | clocks = <&clks 9>, <&clks 8>, <&clks 44>; | |
229 | clock-names = "ipg", "ahb", "per"; | |
230 | status = "disabled"; | |
231 | }; | |
232 | ||
233 | esdhc3: esdhc@53fbc000 { | |
234 | compatible = "fsl,imx35-esdhc"; | |
235 | reg = <0x53fbc000 0x4000>; | |
236 | interrupts = <9>; | |
237 | clocks = <&clks 9>, <&clks 8>, <&clks 45>; | |
238 | clock-names = "ipg", "ahb", "per"; | |
239 | status = "disabled"; | |
240 | }; | |
241 | ||
242 | audmux: audmux@53fc4000 { | |
243 | compatible = "fsl,imx35-audmux", "fsl,imx31-audmux"; | |
244 | reg = <0x53fc4000 0x4000>; | |
245 | status = "disabled"; | |
246 | }; | |
247 | ||
248 | gpio1: gpio@53fcc000 { | |
249 | compatible = "fsl,imx35-gpio", "fsl,imx31-gpio"; | |
250 | reg = <0x53fcc000 0x4000>; | |
251 | interrupts = <52>; | |
252 | gpio-controller; | |
253 | #gpio-cells = <2>; | |
254 | interrupt-controller; | |
255 | #interrupt-cells = <2>; | |
256 | }; | |
257 | ||
258 | gpio2: gpio@53fd0000 { | |
259 | compatible = "fsl,imx35-gpio", "fsl,imx31-gpio"; | |
260 | reg = <0x53fd0000 0x4000>; | |
261 | interrupts = <51>; | |
262 | gpio-controller; | |
263 | #gpio-cells = <2>; | |
264 | interrupt-controller; | |
265 | #interrupt-cells = <2>; | |
266 | }; | |
267 | ||
268 | sdma: sdma@53fd4000 { | |
269 | compatible = "fsl,imx35-sdma"; | |
270 | reg = <0x53fd4000 0x4000>; | |
271 | clocks = <&clks 9>, <&clks 65>; | |
272 | clock-names = "ipg", "ahb"; | |
273 | #dma-cells = <3>; | |
274 | interrupts = <34>; | |
275 | fsl,sdma-ram-script-name = "imx/sdma/sdma-imx35.bin"; | |
276 | }; | |
277 | ||
278 | wdog: wdog@53fdc000 { | |
279 | compatible = "fsl,imx35-wdt", "fsl,imx21-wdt"; | |
280 | reg = <0x53fdc000 0x4000>; | |
281 | clocks = <&clks 74>; | |
282 | clock-names = ""; | |
283 | interrupts = <55>; | |
284 | }; | |
285 | ||
286 | can1: can@53fe4000 { | |
287 | compatible = "fsl,imx35-flexcan", "fsl,p1010-flexcan"; | |
288 | reg = <0x53fe4000 0x1000>; | |
e053f96b DC |
289 | clocks = <&clks 33>, <&clks 33>; |
290 | clock-names = "ipg", "per"; | |
a4f3ac4d ST |
291 | interrupts = <43>; |
292 | status = "disabled"; | |
293 | }; | |
294 | ||
295 | can2: can@53fe8000 { | |
296 | compatible = "fsl,imx35-flexcan", "fsl,p1010-flexcan"; | |
297 | reg = <0x53fe8000 0x1000>; | |
e053f96b DC |
298 | clocks = <&clks 34>, <&clks 34>; |
299 | clock-names = "ipg", "per"; | |
a4f3ac4d ST |
300 | interrupts = <44>; |
301 | status = "disabled"; | |
302 | }; | |
303 | ||
304 | usbotg: usb@53ff4000 { | |
305 | compatible = "fsl,imx35-usb", "fsl,imx27-usb"; | |
306 | reg = <0x53ff4000 0x0200>; | |
307 | interrupts = <37>; | |
056c5a59 | 308 | clocks = <&clks 73>; |
a4f3ac4d | 309 | fsl,usbmisc = <&usbmisc 0>; |
ff348251 | 310 | fsl,usbphy = <&usbphy0>; |
a4f3ac4d ST |
311 | status = "disabled"; |
312 | }; | |
313 | ||
314 | usbhost1: usb@53ff4400 { | |
315 | compatible = "fsl,imx35-usb", "fsl,imx27-usb"; | |
316 | reg = <0x53ff4400 0x0200>; | |
317 | interrupts = <35>; | |
056c5a59 | 318 | clocks = <&clks 73>; |
a4f3ac4d | 319 | fsl,usbmisc = <&usbmisc 1>; |
ff348251 | 320 | fsl,usbphy = <&usbphy1>; |
3ec481ed | 321 | dr_mode = "host"; |
a4f3ac4d ST |
322 | status = "disabled"; |
323 | }; | |
324 | ||
325 | usbmisc: usbmisc@53ff4600 { | |
326 | #index-cells = <1>; | |
327 | compatible = "fsl,imx35-usbmisc"; | |
328 | clocks = <&clks 9>, <&clks 73>, <&clks 28>; | |
329 | clock-names = "ipg", "ahb", "per"; | |
330 | reg = <0x53ff4600 0x00f>; | |
331 | }; | |
332 | }; | |
333 | ||
334 | emi@80000000 { /* External Memory Interface */ | |
335 | compatible = "fsl,emi", "simple-bus"; | |
336 | #address-cells = <1>; | |
337 | #size-cells = <1>; | |
338 | reg = <0x80000000 0x40000000>; | |
339 | ranges; | |
340 | ||
341 | nfc: nand@bb000000 { | |
342 | #address-cells = <1>; | |
343 | #size-cells = <1>; | |
344 | compatible = "fsl,imx35-nand", "fsl,imx25-nand"; | |
345 | reg = <0xbb000000 0x2000>; | |
346 | clocks = <&clks 29>; | |
347 | clock-names = ""; | |
348 | interrupts = <33>; | |
349 | status = "disabled"; | |
350 | }; | |
351 | ||
352 | weim: weim@b8002000 { | |
353 | #address-cells = <2>; | |
354 | #size-cells = <1>; | |
355 | clocks = <&clks 0>; | |
356 | compatible = "fsl,imx35-weim", "fsl,imx27-weim"; | |
357 | reg = <0xb8002000 0x1000>; | |
358 | ranges = < | |
359 | 0 0 0xa0000000 0x8000000 | |
360 | 1 0 0xa8000000 0x8000000 | |
361 | 2 0 0xb0000000 0x2000000 | |
362 | 3 0 0xb2000000 0x2000000 | |
363 | 4 0 0xb4000000 0x2000000 | |
364 | 5 0 0xb6000000 0x2000000 | |
365 | >; | |
366 | status = "disabled"; | |
367 | }; | |
368 | }; | |
369 | }; | |
ff348251 DC |
370 | |
371 | usbphy { | |
372 | compatible = "simple-bus"; | |
373 | #address-cells = <1>; | |
374 | #size-cells = <0>; | |
375 | ||
376 | usbphy0: usb-phy@0 { | |
377 | reg = <0>; | |
378 | compatible = "usb-nop-xceiv"; | |
379 | }; | |
380 | ||
381 | usbphy1: usb-phy@1 { | |
382 | reg = <1>; | |
383 | compatible = "usb-nop-xceiv"; | |
384 | }; | |
385 | }; | |
a4f3ac4d | 386 | }; |