1 // SPDX-License-Identifier: GPL-2.0+
3 // Copyright 2016-2018 Vladimir Zapolskiy <vz@mleia.com>
4 // Copyright 2012 Denis 'GNUtoo' Carikli <GNUtoo@no-log.org>
10 * The decompressor and also some bootloaders rely on a
11 * pre-existing /chosen node to be available to insert the
12 * command line and merge other ATAGS info.
38 compatible = "arm,arm1136jf-s";
44 avic: interrupt-controller@68000000 {
45 compatible = "fsl,imx31-avic", "fsl,avic";
47 #interrupt-cells = <1>;
48 reg = <0x68000000 0x100000>;
54 compatible = "simple-bus";
55 interrupt-parent = <&avic>;
59 compatible = "mmio-sram";
60 reg = <0x1fffc000 0x4000>;
63 ranges = <0 0x1fffc000 0x4000>;
66 aips@43f00000 { /* AIPS1 */
67 compatible = "fsl,aips-bus", "simple-bus";
70 reg = <0x43f00000 0x100000>;
74 compatible = "fsl,imx31-i2c", "fsl,imx21-i2c";
75 reg = <0x43f80000 0x4000>;
84 compatible = "fsl,imx31-i2c", "fsl,imx21-i2c";
85 reg = <0x43f84000 0x4000>;
94 compatible = "fsl,imx31-pata", "fsl,imx27-pata";
95 reg = <0x43f8c000 0x4000>;
101 uart1: serial@43f90000 {
102 compatible = "fsl,imx31-uart", "fsl,imx21-uart";
103 reg = <0x43f90000 0x4000>;
105 clocks = <&clks 10>, <&clks 30>;
106 clock-names = "ipg", "per";
110 uart2: serial@43f94000 {
111 compatible = "fsl,imx31-uart", "fsl,imx21-uart";
112 reg = <0x43f94000 0x4000>;
114 clocks = <&clks 10>, <&clks 31>;
115 clock-names = "ipg", "per";
120 compatible = "fsl,imx31-i2c", "fsl,imx21-i2c";
121 reg = <0x43f98000 0x4000>;
124 #address-cells = <1>;
130 compatible = "fsl,imx31-cspi";
131 reg = <0x43fa4000 0x4000>;
133 clocks = <&clks 10>, <&clks 53>;
134 clock-names = "ipg", "per";
135 dmas = <&sdma 8 8 0>, <&sdma 9 8 0>;
136 dma-names = "rx", "tx";
137 #address-cells = <1>;
143 compatible = "fsl,imx31-kpp", "fsl,imx21-kpp";
144 reg = <0x43fa8000 0x4000>;
150 uart4: serial@43fb0000 {
151 compatible = "fsl,imx31-uart", "fsl,imx21-uart";
152 reg = <0x43fb0000 0x4000>;
153 clocks = <&clks 10>, <&clks 49>;
154 clock-names = "ipg", "per";
159 uart5: serial@43fb4000 {
160 compatible = "fsl,imx31-uart", "fsl,imx21-uart";
161 reg = <0x43fb4000 0x4000>;
163 clocks = <&clks 10>, <&clks 50>;
164 clock-names = "ipg", "per";
170 compatible = "fsl,spba-bus", "simple-bus";
171 #address-cells = <1>;
173 reg = <0x50000000 0x100000>;
176 sdhci1: sdhci@50004000 {
177 compatible = "fsl,imx31-mmc";
178 reg = <0x50004000 0x4000>;
180 clocks = <&clks 10>, <&clks 20>;
181 clock-names = "ipg", "per";
182 dmas = <&sdma 20 3 0>;
187 sdhci2: sdhci@50008000 {
188 compatible = "fsl,imx31-mmc";
189 reg = <0x50008000 0x4000>;
191 clocks = <&clks 10>, <&clks 21>;
192 clock-names = "ipg", "per";
193 dmas = <&sdma 21 3 0>;
198 uart3: serial@5000c000 {
199 compatible = "fsl,imx31-uart", "fsl,imx21-uart";
200 reg = <0x5000c000 0x4000>;
202 clocks = <&clks 10>, <&clks 48>;
203 clock-names = "ipg", "per";
207 spi2: cspi@50010000 {
208 compatible = "fsl,imx31-cspi";
209 reg = <0x50010000 0x4000>;
211 clocks = <&clks 10>, <&clks 54>;
212 clock-names = "ipg", "per";
213 dmas = <&sdma 6 8 0>, <&sdma 7 8 0>;
214 dma-names = "rx", "tx";
215 #address-cells = <1>;
221 compatible = "fsl,imx31-iim", "fsl,imx27-iim";
222 reg = <0x5001c000 0x1000>;
228 aips@53f00000 { /* AIPS2 */
229 compatible = "fsl,aips-bus", "simple-bus";
230 #address-cells = <1>;
232 reg = <0x53f00000 0x100000>;
236 compatible = "fsl,imx31-ccm";
237 reg = <0x53f80000 0x4000>;
238 interrupts = <31>, <53>;
242 spi3: cspi@53f84000 {
243 compatible = "fsl,imx31-cspi";
244 reg = <0x53f84000 0x4000>;
246 clocks = <&clks 10>, <&clks 28>;
247 clock-names = "ipg", "per";
248 dmas = <&sdma 10 8 0>, <&sdma 11 8 0>;
249 dma-names = "rx", "tx";
250 #address-cells = <1>;
255 gpt: timer@53f90000 {
256 compatible = "fsl,imx31-gpt";
257 reg = <0x53f90000 0x4000>;
259 clocks = <&clks 10>, <&clks 22>;
260 clock-names = "ipg", "per";
263 gpio3: gpio@53fa4000 {
264 compatible = "fsl,imx31-gpio";
265 reg = <0x53fa4000 0x4000>;
269 interrupt-controller;
270 #interrupt-cells = <2>;
274 compatible = "fsl,imx31-rnga";
275 reg = <0x53fb0000 0x4000>;
280 gpio1: gpio@53fcc000 {
281 compatible = "fsl,imx31-gpio";
282 reg = <0x53fcc000 0x4000>;
286 interrupt-controller;
287 #interrupt-cells = <2>;
290 gpio2: gpio@53fd0000 {
291 compatible = "fsl,imx31-gpio";
292 reg = <0x53fd0000 0x4000>;
296 interrupt-controller;
297 #interrupt-cells = <2>;
300 sdma: sdma@53fd4000 {
301 compatible = "fsl,imx31-sdma";
302 reg = <0x53fd4000 0x4000>;
304 clocks = <&clks 10>, <&clks 27>;
305 clock-names = "ipg", "ahb";
307 fsl,sdma-ram-script-name = "/*(DEBLOBBED)*/";
311 compatible = "fsl,imx31-rtc", "fsl,imx21-rtc";
312 reg = <0x53fd8000 0x4000>;
314 clocks = <&clks 2>, <&clks 40>;
315 clock-names = "ref", "ipg";
318 wdog: wdog@53fdc000 {
319 compatible = "fsl,imx31-wdt", "fsl,imx21-wdt";
320 reg = <0x53fdc000 0x4000>;
325 compatible = "fsl,imx31-pwm", "fsl,imx27-pwm";
326 reg = <0x53fe0000 0x4000>;
328 clocks = <&clks 10>, <&clks 42>;
329 clock-names = "ipg", "per";
335 emi@b8000000 { /* External Memory Interface */
336 compatible = "simple-bus";
337 reg = <0xb8000000 0x5000>;
339 #address-cells = <1>;
343 compatible = "fsl,imx31-nand", "fsl,imx27-nand";
344 reg = <0xb8000000 0x1000>;
347 dmas = <&sdma 30 17 0>;
349 #address-cells = <1>;
354 weim: weim@b8002000 {
355 compatible = "fsl,imx31-weim", "fsl,imx27-weim";
356 reg = <0xb8002000 0x1000>;
358 #address-cells = <2>;
360 ranges = <0 0 0xa0000000 0x08000000
361 1 0 0xa8000000 0x08000000
362 2 0 0xb0000000 0x02000000
363 3 0 0xb2000000 0x02000000
364 4 0 0xb4000000 0x02000000
365 5 0 0xb6000000 0x02000000>;