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 | ||
d8c8c70c AK |
140 | kpp: kpp@43fa8000 { |
141 | compatible = "fsl,imx35-kpp", "fsl,imx21-kpp"; | |
142 | reg = <0x43fa8000 0x4000>; | |
143 | interrupts = <24>; | |
144 | clocks = <&clks 56>; | |
145 | status = "disabled"; | |
146 | }; | |
147 | ||
a4f3ac4d ST |
148 | iomuxc: iomuxc@43fac000 { |
149 | compatible = "fsl,imx35-iomuxc"; | |
150 | reg = <0x43fac000 0x4000>; | |
151 | }; | |
152 | }; | |
153 | ||
154 | spba: spba-bus@50000000 { | |
155 | compatible = "fsl,spba-bus", "simple-bus"; | |
156 | #address-cells = <1>; | |
157 | #size-cells = <1>; | |
158 | reg = <0x50000000 0x100000>; | |
159 | ranges; | |
160 | ||
161 | uart3: serial@5000c000 { | |
162 | compatible = "fsl,imx35-uart", "fsl,imx21-uart"; | |
163 | reg = <0x5000c000 0x4000>; | |
164 | clocks = <&clks 9>, <&clks 72>; | |
165 | clock-names = "ipg", "per"; | |
166 | interrupts = <18>; | |
167 | status = "disabled"; | |
168 | }; | |
169 | ||
170 | spi2: cspi@50010000 { | |
171 | #address-cells = <1>; | |
172 | #size-cells = <0>; | |
173 | compatible = "fsl,imx35-cspi"; | |
174 | reg = <0x50010000 0x4000>; | |
175 | interrupts = <13>; | |
176 | clocks = <&clks 36 &clks 36>; | |
177 | clock-names = "ipg", "per"; | |
178 | status = "disabled"; | |
179 | }; | |
180 | ||
181 | fec: fec@50038000 { | |
182 | compatible = "fsl,imx35-fec", "fsl,imx27-fec"; | |
183 | reg = <0x50038000 0x4000>; | |
184 | clocks = <&clks 46>, <&clks 8>; | |
185 | clock-names = "ipg", "ahb"; | |
186 | interrupts = <57>; | |
187 | status = "disabled"; | |
188 | }; | |
189 | }; | |
190 | ||
191 | aips2: aips@53f00000 { | |
192 | compatible = "fsl,aips", "simple-bus"; | |
193 | #address-cells = <1>; | |
194 | #size-cells = <1>; | |
195 | reg = <0x53f00000 0x100000>; | |
196 | ranges; | |
197 | ||
198 | clks: ccm@53f80000 { | |
199 | compatible = "fsl,imx35-ccm"; | |
200 | reg = <0x53f80000 0x4000>; | |
201 | interrupts = <31>; | |
202 | #clock-cells = <1>; | |
203 | }; | |
204 | ||
0ebda1d3 AS |
205 | gpt: timer@53f90000 { |
206 | compatible = "fsl,imx35-gpt", "fsl,imx31-gpt"; | |
207 | reg = <0x53f90000 0x4000>; | |
208 | interrupts = <29>; | |
209 | clocks = <&clks 9>, <&clks 50>; | |
210 | clock-names = "ipg", "per"; | |
211 | }; | |
212 | ||
a4f3ac4d ST |
213 | gpio3: gpio@53fa4000 { |
214 | compatible = "fsl,imx35-gpio", "fsl,imx31-gpio"; | |
215 | reg = <0x53fa4000 0x4000>; | |
216 | interrupts = <56>; | |
217 | gpio-controller; | |
218 | #gpio-cells = <2>; | |
219 | interrupt-controller; | |
220 | #interrupt-cells = <2>; | |
221 | }; | |
222 | ||
223 | esdhc1: esdhc@53fb4000 { | |
224 | compatible = "fsl,imx35-esdhc"; | |
225 | reg = <0x53fb4000 0x4000>; | |
226 | interrupts = <7>; | |
227 | clocks = <&clks 9>, <&clks 8>, <&clks 43>; | |
228 | clock-names = "ipg", "ahb", "per"; | |
229 | status = "disabled"; | |
230 | }; | |
231 | ||
232 | esdhc2: esdhc@53fb8000 { | |
233 | compatible = "fsl,imx35-esdhc"; | |
234 | reg = <0x53fb8000 0x4000>; | |
235 | interrupts = <8>; | |
236 | clocks = <&clks 9>, <&clks 8>, <&clks 44>; | |
237 | clock-names = "ipg", "ahb", "per"; | |
238 | status = "disabled"; | |
239 | }; | |
240 | ||
241 | esdhc3: esdhc@53fbc000 { | |
242 | compatible = "fsl,imx35-esdhc"; | |
243 | reg = <0x53fbc000 0x4000>; | |
244 | interrupts = <9>; | |
245 | clocks = <&clks 9>, <&clks 8>, <&clks 45>; | |
246 | clock-names = "ipg", "ahb", "per"; | |
247 | status = "disabled"; | |
248 | }; | |
249 | ||
250 | audmux: audmux@53fc4000 { | |
251 | compatible = "fsl,imx35-audmux", "fsl,imx31-audmux"; | |
252 | reg = <0x53fc4000 0x4000>; | |
253 | status = "disabled"; | |
254 | }; | |
255 | ||
256 | gpio1: gpio@53fcc000 { | |
257 | compatible = "fsl,imx35-gpio", "fsl,imx31-gpio"; | |
258 | reg = <0x53fcc000 0x4000>; | |
259 | interrupts = <52>; | |
260 | gpio-controller; | |
261 | #gpio-cells = <2>; | |
262 | interrupt-controller; | |
263 | #interrupt-cells = <2>; | |
264 | }; | |
265 | ||
266 | gpio2: gpio@53fd0000 { | |
267 | compatible = "fsl,imx35-gpio", "fsl,imx31-gpio"; | |
268 | reg = <0x53fd0000 0x4000>; | |
269 | interrupts = <51>; | |
270 | gpio-controller; | |
271 | #gpio-cells = <2>; | |
272 | interrupt-controller; | |
273 | #interrupt-cells = <2>; | |
274 | }; | |
275 | ||
276 | sdma: sdma@53fd4000 { | |
277 | compatible = "fsl,imx35-sdma"; | |
278 | reg = <0x53fd4000 0x4000>; | |
279 | clocks = <&clks 9>, <&clks 65>; | |
280 | clock-names = "ipg", "ahb"; | |
281 | #dma-cells = <3>; | |
282 | interrupts = <34>; | |
283 | fsl,sdma-ram-script-name = "imx/sdma/sdma-imx35.bin"; | |
284 | }; | |
285 | ||
286 | wdog: wdog@53fdc000 { | |
287 | compatible = "fsl,imx35-wdt", "fsl,imx21-wdt"; | |
288 | reg = <0x53fdc000 0x4000>; | |
289 | clocks = <&clks 74>; | |
290 | clock-names = ""; | |
291 | interrupts = <55>; | |
292 | }; | |
293 | ||
294 | can1: can@53fe4000 { | |
295 | compatible = "fsl,imx35-flexcan", "fsl,p1010-flexcan"; | |
296 | reg = <0x53fe4000 0x1000>; | |
e053f96b DC |
297 | clocks = <&clks 33>, <&clks 33>; |
298 | clock-names = "ipg", "per"; | |
a4f3ac4d ST |
299 | interrupts = <43>; |
300 | status = "disabled"; | |
301 | }; | |
302 | ||
303 | can2: can@53fe8000 { | |
304 | compatible = "fsl,imx35-flexcan", "fsl,p1010-flexcan"; | |
305 | reg = <0x53fe8000 0x1000>; | |
e053f96b DC |
306 | clocks = <&clks 34>, <&clks 34>; |
307 | clock-names = "ipg", "per"; | |
a4f3ac4d ST |
308 | interrupts = <44>; |
309 | status = "disabled"; | |
310 | }; | |
311 | ||
312 | usbotg: usb@53ff4000 { | |
313 | compatible = "fsl,imx35-usb", "fsl,imx27-usb"; | |
314 | reg = <0x53ff4000 0x0200>; | |
315 | interrupts = <37>; | |
13ccd32b PC |
316 | clocks = <&clks 9>, <&clks 73>, <&clks 28>; |
317 | clock-names = "ipg", "ahb", "per"; | |
a4f3ac4d | 318 | fsl,usbmisc = <&usbmisc 0>; |
ff348251 | 319 | fsl,usbphy = <&usbphy0>; |
a4f3ac4d ST |
320 | status = "disabled"; |
321 | }; | |
322 | ||
323 | usbhost1: usb@53ff4400 { | |
324 | compatible = "fsl,imx35-usb", "fsl,imx27-usb"; | |
325 | reg = <0x53ff4400 0x0200>; | |
326 | interrupts = <35>; | |
13ccd32b PC |
327 | clocks = <&clks 9>, <&clks 73>, <&clks 28>; |
328 | clock-names = "ipg", "ahb", "per"; | |
a4f3ac4d | 329 | fsl,usbmisc = <&usbmisc 1>; |
ff348251 | 330 | fsl,usbphy = <&usbphy1>; |
3ec481ed | 331 | dr_mode = "host"; |
a4f3ac4d ST |
332 | status = "disabled"; |
333 | }; | |
334 | ||
335 | usbmisc: usbmisc@53ff4600 { | |
336 | #index-cells = <1>; | |
337 | compatible = "fsl,imx35-usbmisc"; | |
a4f3ac4d ST |
338 | reg = <0x53ff4600 0x00f>; |
339 | }; | |
340 | }; | |
341 | ||
342 | emi@80000000 { /* External Memory Interface */ | |
343 | compatible = "fsl,emi", "simple-bus"; | |
344 | #address-cells = <1>; | |
345 | #size-cells = <1>; | |
346 | reg = <0x80000000 0x40000000>; | |
347 | ranges; | |
348 | ||
349 | nfc: nand@bb000000 { | |
350 | #address-cells = <1>; | |
351 | #size-cells = <1>; | |
352 | compatible = "fsl,imx35-nand", "fsl,imx25-nand"; | |
353 | reg = <0xbb000000 0x2000>; | |
354 | clocks = <&clks 29>; | |
355 | clock-names = ""; | |
356 | interrupts = <33>; | |
357 | status = "disabled"; | |
358 | }; | |
359 | ||
360 | weim: weim@b8002000 { | |
361 | #address-cells = <2>; | |
362 | #size-cells = <1>; | |
363 | clocks = <&clks 0>; | |
364 | compatible = "fsl,imx35-weim", "fsl,imx27-weim"; | |
365 | reg = <0xb8002000 0x1000>; | |
366 | ranges = < | |
367 | 0 0 0xa0000000 0x8000000 | |
368 | 1 0 0xa8000000 0x8000000 | |
369 | 2 0 0xb0000000 0x2000000 | |
370 | 3 0 0xb2000000 0x2000000 | |
371 | 4 0 0xb4000000 0x2000000 | |
372 | 5 0 0xb6000000 0x2000000 | |
373 | >; | |
374 | status = "disabled"; | |
375 | }; | |
376 | }; | |
377 | }; | |
ff348251 DC |
378 | |
379 | usbphy { | |
380 | compatible = "simple-bus"; | |
381 | #address-cells = <1>; | |
382 | #size-cells = <0>; | |
383 | ||
384 | usbphy0: usb-phy@0 { | |
385 | reg = <0>; | |
386 | compatible = "usb-nop-xceiv"; | |
387 | }; | |
388 | ||
389 | usbphy1: usb-phy@1 { | |
390 | reg = <1>; | |
391 | compatible = "usb-nop-xceiv"; | |
392 | }; | |
393 | }; | |
a4f3ac4d | 394 | }; |