blob: 6b198c6d4da5822ff70110b9f87e409907545b20 [file] [log] [blame]
Shawn Guo73d2b4c2011-10-17 08:42:16 +08001/*
2 * Copyright 2011 Freescale Semiconductor, Inc.
3 * Copyright 2011 Linaro Ltd.
4 *
5 * The code contained herein is licensed under the GNU General Public
6 * License. You may obtain a copy of the GNU General Public License
7 * Version 2 or later at the following locations:
8 *
9 * http://www.opensource.org/licenses/gpl-license.html
10 * http://www.gnu.org/copyleft/gpl.html
11 */
12
Shawn Guo36dffd82013-04-07 10:49:34 +080013#include "skeleton.dtsi"
Shawn Guoe1641532013-02-20 10:32:52 +080014#include "imx53-pinfunc.h"
Lucas Stach564695d2013-11-14 11:18:58 +010015#include <dt-bindings/clock/imx5-clock.h>
Denis Carikli4e05a7a2014-01-06 17:16:07 +010016#include <dt-bindings/gpio/gpio.h>
17#include <dt-bindings/input/input.h>
Shawn Guo73d2b4c2011-10-17 08:42:16 +080018
19/ {
20 aliases {
Marek Vasut22970072014-02-28 12:58:41 +010021 ethernet0 = &fec;
Shawn Guo5230f8f2012-08-05 14:01:28 +080022 gpio0 = &gpio1;
23 gpio1 = &gpio2;
24 gpio2 = &gpio3;
25 gpio3 = &gpio4;
26 gpio4 = &gpio5;
27 gpio5 = &gpio6;
28 gpio6 = &gpio7;
Philipp Zabelc60dc1d2013-04-09 19:18:47 +020029 i2c0 = &i2c1;
30 i2c1 = &i2c2;
31 i2c2 = &i2c3;
Sascha Hauerc63d06d2014-01-16 13:44:18 +010032 mmc0 = &esdhc1;
33 mmc1 = &esdhc2;
34 mmc2 = &esdhc3;
35 mmc3 = &esdhc4;
Sascha Hauercf4e5772013-06-25 15:51:56 +020036 serial0 = &uart1;
37 serial1 = &uart2;
38 serial2 = &uart3;
39 serial3 = &uart4;
40 serial4 = &uart5;
41 spi0 = &ecspi1;
42 spi1 = &ecspi2;
43 spi2 = &cspi;
Shawn Guo73d2b4c2011-10-17 08:42:16 +080044 };
45
Fabio Estevam070bd7e2013-07-07 10:12:30 -030046 cpus {
47 #address-cells = <1>;
48 #size-cells = <0>;
49 cpu@0 {
50 device_type = "cpu";
51 compatible = "arm,cortex-a8";
52 reg = <0x0>;
53 };
54 };
55
Philipp Zabele05c8c92014-03-05 10:21:00 +010056 display-subsystem {
57 compatible = "fsl,imx-display-subsystem";
58 ports = <&ipu_di0>, <&ipu_di1>;
59 };
60
Shawn Guo73d2b4c2011-10-17 08:42:16 +080061 tzic: tz-interrupt-controller@0fffc000 {
62 compatible = "fsl,imx53-tzic", "fsl,tzic";
63 interrupt-controller;
64 #interrupt-cells = <1>;
65 reg = <0x0fffc000 0x4000>;
66 };
67
68 clocks {
69 #address-cells = <1>;
70 #size-cells = <0>;
71
72 ckil {
73 compatible = "fsl,imx-ckil", "fixed-clock";
Shawn Guo4b2b4042014-04-11 09:56:46 +080074 #clock-cells = <0>;
Shawn Guo73d2b4c2011-10-17 08:42:16 +080075 clock-frequency = <32768>;
76 };
77
78 ckih1 {
79 compatible = "fsl,imx-ckih1", "fixed-clock";
Shawn Guo4b2b4042014-04-11 09:56:46 +080080 #clock-cells = <0>;
Shawn Guo73d2b4c2011-10-17 08:42:16 +080081 clock-frequency = <22579200>;
82 };
83
84 ckih2 {
85 compatible = "fsl,imx-ckih2", "fixed-clock";
Shawn Guo4b2b4042014-04-11 09:56:46 +080086 #clock-cells = <0>;
Shawn Guo73d2b4c2011-10-17 08:42:16 +080087 clock-frequency = <0>;
88 };
89
90 osc {
91 compatible = "fsl,imx-osc", "fixed-clock";
Shawn Guo4b2b4042014-04-11 09:56:46 +080092 #clock-cells = <0>;
Shawn Guo73d2b4c2011-10-17 08:42:16 +080093 clock-frequency = <24000000>;
94 };
95 };
96
97 soc {
98 #address-cells = <1>;
99 #size-cells = <1>;
100 compatible = "simple-bus";
101 interrupt-parent = <&tzic>;
102 ranges;
103
Marek Vasut7affee42013-11-22 12:05:03 +0100104 sata: sata@10000000 {
105 compatible = "fsl,imx53-ahci";
106 reg = <0x10000000 0x1000>;
107 interrupts = <28>;
108 clocks = <&clks IMX5_CLK_SATA_GATE>,
109 <&clks IMX5_CLK_SATA_REF>,
110 <&clks IMX5_CLK_AHB>;
Shawn Guo025781532014-07-08 16:14:47 +0800111 clock-names = "sata", "sata_ref", "ahb";
Marek Vasut7affee42013-11-22 12:05:03 +0100112 status = "disabled";
113 };
114
Sascha Hauerabed9a62012-06-05 13:52:10 +0200115 ipu: ipu@18000000 {
Philipp Zabele05c8c92014-03-05 10:21:00 +0100116 #address-cells = <1>;
117 #size-cells = <0>;
Sascha Hauerabed9a62012-06-05 13:52:10 +0200118 compatible = "fsl,imx53-ipu";
Sascha Hauer6d66da82014-05-06 13:01:34 +0200119 reg = <0x18000000 0x08000000>;
Sascha Hauerabed9a62012-06-05 13:52:10 +0200120 interrupts = <11 10>;
Lucas Stach564695d2013-11-14 11:18:58 +0100121 clocks = <&clks IMX5_CLK_IPU_GATE>,
122 <&clks IMX5_CLK_IPU_DI0_GATE>,
123 <&clks IMX5_CLK_IPU_DI1_GATE>;
Philipp Zabel4438a6a2013-03-27 18:30:36 +0100124 clock-names = "bus", "di0", "di1";
Philipp Zabel8d84c372013-03-28 17:35:23 +0100125 resets = <&src 2>;
Philipp Zabele05c8c92014-03-05 10:21:00 +0100126
127 ipu_di0: port@2 {
128 #address-cells = <1>;
129 #size-cells = <0>;
130 reg = <2>;
131
132 ipu_di0_disp0: endpoint@0 {
133 reg = <0>;
134 };
135
136 ipu_di0_lvds0: endpoint@1 {
137 reg = <1>;
138 remote-endpoint = <&lvds0_in>;
139 };
140 };
141
142 ipu_di1: port@3 {
143 #address-cells = <1>;
144 #size-cells = <0>;
145 reg = <3>;
146
147 ipu_di1_disp1: endpoint@0 {
148 reg = <0>;
149 };
150
151 ipu_di1_lvds1: endpoint@1 {
152 reg = <1>;
153 remote-endpoint = <&lvds1_in>;
154 };
155
156 ipu_di1_tve: endpoint@2 {
157 reg = <2>;
158 remote-endpoint = <&tve_in>;
159 };
160 };
Sascha Hauerabed9a62012-06-05 13:52:10 +0200161 };
162
Shawn Guo73d2b4c2011-10-17 08:42:16 +0800163 aips@50000000 { /* AIPS1 */
164 compatible = "fsl,aips-bus", "simple-bus";
165 #address-cells = <1>;
166 #size-cells = <1>;
167 reg = <0x50000000 0x10000000>;
168 ranges;
169
170 spba@50000000 {
171 compatible = "fsl,spba-bus", "simple-bus";
172 #address-cells = <1>;
173 #size-cells = <1>;
174 reg = <0x50000000 0x40000>;
175 ranges;
176
Sascha Hauer7b7d6722012-11-15 09:31:52 +0100177 esdhc1: esdhc@50004000 {
Shawn Guo73d2b4c2011-10-17 08:42:16 +0800178 compatible = "fsl,imx53-esdhc";
179 reg = <0x50004000 0x4000>;
180 interrupts = <1>;
Lucas Stach564695d2013-11-14 11:18:58 +0100181 clocks = <&clks IMX5_CLK_ESDHC1_IPG_GATE>,
182 <&clks IMX5_CLK_DUMMY>,
183 <&clks IMX5_CLK_ESDHC1_PER_GATE>;
Fabio Estevamf40f38d2012-11-21 13:43:05 -0200184 clock-names = "ipg", "ahb", "per";
Sascha Hauerc104b6a2012-09-25 11:49:33 +0200185 bus-width = <4>;
Shawn Guo73d2b4c2011-10-17 08:42:16 +0800186 status = "disabled";
187 };
188
Sascha Hauer7b7d6722012-11-15 09:31:52 +0100189 esdhc2: esdhc@50008000 {
Shawn Guo73d2b4c2011-10-17 08:42:16 +0800190 compatible = "fsl,imx53-esdhc";
191 reg = <0x50008000 0x4000>;
192 interrupts = <2>;
Lucas Stach564695d2013-11-14 11:18:58 +0100193 clocks = <&clks IMX5_CLK_ESDHC2_IPG_GATE>,
194 <&clks IMX5_CLK_DUMMY>,
195 <&clks IMX5_CLK_ESDHC2_PER_GATE>;
Fabio Estevamf40f38d2012-11-21 13:43:05 -0200196 clock-names = "ipg", "ahb", "per";
Sascha Hauerc104b6a2012-09-25 11:49:33 +0200197 bus-width = <4>;
Shawn Guo73d2b4c2011-10-17 08:42:16 +0800198 status = "disabled";
199 };
200
Shawn Guo0c456cf2012-04-02 14:39:26 +0800201 uart3: serial@5000c000 {
Shawn Guo73d2b4c2011-10-17 08:42:16 +0800202 compatible = "fsl,imx53-uart", "fsl,imx21-uart";
203 reg = <0x5000c000 0x4000>;
204 interrupts = <33>;
Lucas Stach564695d2013-11-14 11:18:58 +0100205 clocks = <&clks IMX5_CLK_UART3_IPG_GATE>,
206 <&clks IMX5_CLK_UART3_PER_GATE>;
Fabio Estevamf40f38d2012-11-21 13:43:05 -0200207 clock-names = "ipg", "per";
Shawn Guo73d2b4c2011-10-17 08:42:16 +0800208 status = "disabled";
209 };
210
Sascha Hauer7b7d6722012-11-15 09:31:52 +0100211 ecspi1: ecspi@50010000 {
Shawn Guo73d2b4c2011-10-17 08:42:16 +0800212 #address-cells = <1>;
213 #size-cells = <0>;
214 compatible = "fsl,imx53-ecspi", "fsl,imx51-ecspi";
215 reg = <0x50010000 0x4000>;
216 interrupts = <36>;
Lucas Stach564695d2013-11-14 11:18:58 +0100217 clocks = <&clks IMX5_CLK_ECSPI1_IPG_GATE>,
218 <&clks IMX5_CLK_ECSPI1_PER_GATE>;
Fabio Estevamf40f38d2012-11-21 13:43:05 -0200219 clock-names = "ipg", "per";
Shawn Guo73d2b4c2011-10-17 08:42:16 +0800220 status = "disabled";
221 };
222
Shawn Guoffc505c2012-05-11 13:12:01 +0800223 ssi2: ssi@50014000 {
Alexander Shiyan6ff7f512014-08-19 20:00:09 +0400224 #sound-dai-cells = <0>;
Markus Pargmann28f93d02014-01-17 10:07:42 +0100225 compatible = "fsl,imx53-ssi",
226 "fsl,imx51-ssi",
227 "fsl,imx21-ssi";
Shawn Guoffc505c2012-05-11 13:12:01 +0800228 reg = <0x50014000 0x4000>;
229 interrupts = <30>;
Lucas Stach564695d2013-11-14 11:18:58 +0100230 clocks = <&clks IMX5_CLK_SSI2_IPG_GATE>;
Shawn Guo5da826ab2013-07-17 13:50:54 +0800231 dmas = <&sdma 24 1 0>,
232 <&sdma 25 1 0>;
233 dma-names = "rx", "tx";
Shawn Guoffc505c2012-05-11 13:12:01 +0800234 fsl,fifo-depth = <15>;
Shawn Guoffc505c2012-05-11 13:12:01 +0800235 status = "disabled";
236 };
237
Sascha Hauer7b7d6722012-11-15 09:31:52 +0100238 esdhc3: esdhc@50020000 {
Shawn Guo73d2b4c2011-10-17 08:42:16 +0800239 compatible = "fsl,imx53-esdhc";
240 reg = <0x50020000 0x4000>;
241 interrupts = <3>;
Lucas Stach564695d2013-11-14 11:18:58 +0100242 clocks = <&clks IMX5_CLK_ESDHC3_IPG_GATE>,
243 <&clks IMX5_CLK_DUMMY>,
244 <&clks IMX5_CLK_ESDHC3_PER_GATE>;
Fabio Estevamf40f38d2012-11-21 13:43:05 -0200245 clock-names = "ipg", "ahb", "per";
Sascha Hauerc104b6a2012-09-25 11:49:33 +0200246 bus-width = <4>;
Shawn Guo73d2b4c2011-10-17 08:42:16 +0800247 status = "disabled";
248 };
249
Sascha Hauer7b7d6722012-11-15 09:31:52 +0100250 esdhc4: esdhc@50024000 {
Shawn Guo73d2b4c2011-10-17 08:42:16 +0800251 compatible = "fsl,imx53-esdhc";
252 reg = <0x50024000 0x4000>;
253 interrupts = <4>;
Lucas Stach564695d2013-11-14 11:18:58 +0100254 clocks = <&clks IMX5_CLK_ESDHC4_IPG_GATE>,
255 <&clks IMX5_CLK_DUMMY>,
256 <&clks IMX5_CLK_ESDHC4_PER_GATE>;
Fabio Estevamf40f38d2012-11-21 13:43:05 -0200257 clock-names = "ipg", "ahb", "per";
Sascha Hauerc104b6a2012-09-25 11:49:33 +0200258 bus-width = <4>;
Shawn Guo73d2b4c2011-10-17 08:42:16 +0800259 status = "disabled";
260 };
261 };
262
Steffen Trumtrarac08281e2014-06-25 13:01:30 +0200263 aipstz1: bridge@53f00000 {
264 compatible = "fsl,imx53-aipstz";
265 reg = <0x53f00000 0x60>;
266 };
267
Michael Grzeschika79025c2013-04-11 12:13:16 +0200268 usbphy0: usbphy@0 {
269 compatible = "usb-nop-xceiv";
Lucas Stach564695d2013-11-14 11:18:58 +0100270 clocks = <&clks IMX5_CLK_USB_PHY1_GATE>;
Michael Grzeschika79025c2013-04-11 12:13:16 +0200271 clock-names = "main_clk";
272 status = "okay";
273 };
274
275 usbphy1: usbphy@1 {
276 compatible = "usb-nop-xceiv";
Lucas Stach564695d2013-11-14 11:18:58 +0100277 clocks = <&clks IMX5_CLK_USB_PHY2_GATE>;
Michael Grzeschika79025c2013-04-11 12:13:16 +0200278 clock-names = "main_clk";
279 status = "okay";
280 };
281
Sascha Hauer7b7d6722012-11-15 09:31:52 +0100282 usbotg: usb@53f80000 {
Michael Grzeschik212d0b82012-08-23 12:35:57 +0200283 compatible = "fsl,imx53-usb", "fsl,imx27-usb";
284 reg = <0x53f80000 0x0200>;
285 interrupts = <18>;
Lucas Stach564695d2013-11-14 11:18:58 +0100286 clocks = <&clks IMX5_CLK_USBOH3_GATE>;
Michael Grzeschika5735022013-04-11 12:13:14 +0200287 fsl,usbmisc = <&usbmisc 0>;
Michael Grzeschika79025c2013-04-11 12:13:16 +0200288 fsl,usbphy = <&usbphy0>;
Michael Grzeschik212d0b82012-08-23 12:35:57 +0200289 status = "disabled";
290 };
291
Sascha Hauer7b7d6722012-11-15 09:31:52 +0100292 usbh1: usb@53f80200 {
Michael Grzeschik212d0b82012-08-23 12:35:57 +0200293 compatible = "fsl,imx53-usb", "fsl,imx27-usb";
294 reg = <0x53f80200 0x0200>;
295 interrupts = <14>;
Lucas Stach564695d2013-11-14 11:18:58 +0100296 clocks = <&clks IMX5_CLK_USBOH3_GATE>;
Michael Grzeschika5735022013-04-11 12:13:14 +0200297 fsl,usbmisc = <&usbmisc 1>;
Michael Grzeschika79025c2013-04-11 12:13:16 +0200298 fsl,usbphy = <&usbphy1>;
Michael Grzeschik212d0b82012-08-23 12:35:57 +0200299 status = "disabled";
300 };
301
Sascha Hauer7b7d6722012-11-15 09:31:52 +0100302 usbh2: usb@53f80400 {
Michael Grzeschik212d0b82012-08-23 12:35:57 +0200303 compatible = "fsl,imx53-usb", "fsl,imx27-usb";
304 reg = <0x53f80400 0x0200>;
305 interrupts = <16>;
Lucas Stach564695d2013-11-14 11:18:58 +0100306 clocks = <&clks IMX5_CLK_USBOH3_GATE>;
Michael Grzeschika5735022013-04-11 12:13:14 +0200307 fsl,usbmisc = <&usbmisc 2>;
Michael Grzeschik212d0b82012-08-23 12:35:57 +0200308 status = "disabled";
309 };
310
Sascha Hauer7b7d6722012-11-15 09:31:52 +0100311 usbh3: usb@53f80600 {
Michael Grzeschik212d0b82012-08-23 12:35:57 +0200312 compatible = "fsl,imx53-usb", "fsl,imx27-usb";
313 reg = <0x53f80600 0x0200>;
314 interrupts = <17>;
Lucas Stach564695d2013-11-14 11:18:58 +0100315 clocks = <&clks IMX5_CLK_USBOH3_GATE>;
Michael Grzeschika5735022013-04-11 12:13:14 +0200316 fsl,usbmisc = <&usbmisc 3>;
Michael Grzeschik212d0b82012-08-23 12:35:57 +0200317 status = "disabled";
318 };
319
Michael Grzeschika5735022013-04-11 12:13:14 +0200320 usbmisc: usbmisc@53f80800 {
321 #index-cells = <1>;
322 compatible = "fsl,imx53-usbmisc";
323 reg = <0x53f80800 0x200>;
Lucas Stach564695d2013-11-14 11:18:58 +0100324 clocks = <&clks IMX5_CLK_USBOH3_GATE>;
Michael Grzeschika5735022013-04-11 12:13:14 +0200325 };
326
Richard Zhao4d191862011-12-14 09:26:44 +0800327 gpio1: gpio@53f84000 {
Benoît Thébaudeauaeb27742012-06-22 21:04:06 +0200328 compatible = "fsl,imx53-gpio", "fsl,imx35-gpio";
Shawn Guo73d2b4c2011-10-17 08:42:16 +0800329 reg = <0x53f84000 0x4000>;
330 interrupts = <50 51>;
331 gpio-controller;
332 #gpio-cells = <2>;
333 interrupt-controller;
Shawn Guo88cde8b2012-07-06 20:03:37 +0800334 #interrupt-cells = <2>;
Shawn Guo73d2b4c2011-10-17 08:42:16 +0800335 };
336
Richard Zhao4d191862011-12-14 09:26:44 +0800337 gpio2: gpio@53f88000 {
Benoît Thébaudeauaeb27742012-06-22 21:04:06 +0200338 compatible = "fsl,imx53-gpio", "fsl,imx35-gpio";
Shawn Guo73d2b4c2011-10-17 08:42:16 +0800339 reg = <0x53f88000 0x4000>;
340 interrupts = <52 53>;
341 gpio-controller;
342 #gpio-cells = <2>;
343 interrupt-controller;
Shawn Guo88cde8b2012-07-06 20:03:37 +0800344 #interrupt-cells = <2>;
Shawn Guo73d2b4c2011-10-17 08:42:16 +0800345 };
346
Richard Zhao4d191862011-12-14 09:26:44 +0800347 gpio3: gpio@53f8c000 {
Benoît Thébaudeauaeb27742012-06-22 21:04:06 +0200348 compatible = "fsl,imx53-gpio", "fsl,imx35-gpio";
Shawn Guo73d2b4c2011-10-17 08:42:16 +0800349 reg = <0x53f8c000 0x4000>;
350 interrupts = <54 55>;
351 gpio-controller;
352 #gpio-cells = <2>;
353 interrupt-controller;
Shawn Guo88cde8b2012-07-06 20:03:37 +0800354 #interrupt-cells = <2>;
Shawn Guo73d2b4c2011-10-17 08:42:16 +0800355 };
356
Richard Zhao4d191862011-12-14 09:26:44 +0800357 gpio4: gpio@53f90000 {
Benoît Thébaudeauaeb27742012-06-22 21:04:06 +0200358 compatible = "fsl,imx53-gpio", "fsl,imx35-gpio";
Shawn Guo73d2b4c2011-10-17 08:42:16 +0800359 reg = <0x53f90000 0x4000>;
360 interrupts = <56 57>;
361 gpio-controller;
362 #gpio-cells = <2>;
363 interrupt-controller;
Shawn Guo88cde8b2012-07-06 20:03:37 +0800364 #interrupt-cells = <2>;
Shawn Guo73d2b4c2011-10-17 08:42:16 +0800365 };
366
Rostislav Lisovy675e4d02013-10-22 19:07:21 +0200367 kpp: kpp@53f94000 {
368 compatible = "fsl,imx53-kpp", "fsl,imx21-kpp";
369 reg = <0x53f94000 0x4000>;
370 interrupts = <60>;
Lucas Stach564695d2013-11-14 11:18:58 +0100371 clocks = <&clks IMX5_CLK_DUMMY>;
Rostislav Lisovy675e4d02013-10-22 19:07:21 +0200372 status = "disabled";
373 };
374
Sascha Hauer7b7d6722012-11-15 09:31:52 +0100375 wdog1: wdog@53f98000 {
Shawn Guo73d2b4c2011-10-17 08:42:16 +0800376 compatible = "fsl,imx53-wdt", "fsl,imx21-wdt";
377 reg = <0x53f98000 0x4000>;
378 interrupts = <58>;
Lucas Stach564695d2013-11-14 11:18:58 +0100379 clocks = <&clks IMX5_CLK_DUMMY>;
Shawn Guo73d2b4c2011-10-17 08:42:16 +0800380 };
381
Sascha Hauer7b7d6722012-11-15 09:31:52 +0100382 wdog2: wdog@53f9c000 {
Shawn Guo73d2b4c2011-10-17 08:42:16 +0800383 compatible = "fsl,imx53-wdt", "fsl,imx21-wdt";
384 reg = <0x53f9c000 0x4000>;
385 interrupts = <59>;
Lucas Stach564695d2013-11-14 11:18:58 +0100386 clocks = <&clks IMX5_CLK_DUMMY>;
Shawn Guo73d2b4c2011-10-17 08:42:16 +0800387 status = "disabled";
388 };
389
Sascha Hauercc8aae92013-03-14 13:09:00 +0100390 gpt: timer@53fa0000 {
391 compatible = "fsl,imx53-gpt", "fsl,imx31-gpt";
392 reg = <0x53fa0000 0x4000>;
393 interrupts = <39>;
Lucas Stach564695d2013-11-14 11:18:58 +0100394 clocks = <&clks IMX5_CLK_GPT_IPG_GATE>,
395 <&clks IMX5_CLK_GPT_HF_GATE>;
Sascha Hauercc8aae92013-03-14 13:09:00 +0100396 clock-names = "ipg", "per";
397 };
398
Sascha Hauer7b7d6722012-11-15 09:31:52 +0100399 iomuxc: iomuxc@53fa8000 {
Shawn Guo5be03a72012-08-12 20:02:10 +0800400 compatible = "fsl,imx53-iomuxc";
401 reg = <0x53fa8000 0x4000>;
Shawn Guo5be03a72012-08-12 20:02:10 +0800402 };
403
Philipp Zabel5af9f142013-03-27 18:30:43 +0100404 gpr: iomuxc-gpr@53fa8000 {
405 compatible = "fsl,imx53-iomuxc-gpr", "syscon";
406 reg = <0x53fa8000 0xc>;
407 };
408
Philipp Zabel420714a2013-03-27 18:30:44 +0100409 ldb: ldb@53fa8008 {
410 #address-cells = <1>;
411 #size-cells = <0>;
412 compatible = "fsl,imx53-ldb";
413 reg = <0x53fa8008 0x4>;
414 gpr = <&gpr>;
Lucas Stach564695d2013-11-14 11:18:58 +0100415 clocks = <&clks IMX5_CLK_LDB_DI0_SEL>,
416 <&clks IMX5_CLK_LDB_DI1_SEL>,
417 <&clks IMX5_CLK_IPU_DI0_SEL>,
418 <&clks IMX5_CLK_IPU_DI1_SEL>,
419 <&clks IMX5_CLK_LDB_DI0_GATE>,
420 <&clks IMX5_CLK_LDB_DI1_GATE>;
Philipp Zabel420714a2013-03-27 18:30:44 +0100421 clock-names = "di0_pll", "di1_pll",
422 "di0_sel", "di1_sel",
423 "di0", "di1";
424 status = "disabled";
425
426 lvds-channel@0 {
427 reg = <0>;
Philipp Zabel420714a2013-03-27 18:30:44 +0100428 status = "disabled";
Philipp Zabele05c8c92014-03-05 10:21:00 +0100429
430 port {
431 lvds0_in: endpoint {
432 remote-endpoint = <&ipu_di0_lvds0>;
433 };
434 };
Philipp Zabel420714a2013-03-27 18:30:44 +0100435 };
436
437 lvds-channel@1 {
438 reg = <1>;
Philipp Zabel420714a2013-03-27 18:30:44 +0100439 status = "disabled";
Philipp Zabele05c8c92014-03-05 10:21:00 +0100440
441 port {
442 lvds1_in: endpoint {
Lothar Waßmannfa1746a2014-04-10 10:03:40 +0200443 remote-endpoint = <&ipu_di1_lvds1>;
Philipp Zabele05c8c92014-03-05 10:21:00 +0100444 };
445 };
Philipp Zabel420714a2013-03-27 18:30:44 +0100446 };
447 };
448
Sascha Hauer9ae90af2012-07-04 12:30:37 +0200449 pwm1: pwm@53fb4000 {
450 #pwm-cells = <2>;
451 compatible = "fsl,imx53-pwm", "fsl,imx27-pwm";
452 reg = <0x53fb4000 0x4000>;
Lucas Stach564695d2013-11-14 11:18:58 +0100453 clocks = <&clks IMX5_CLK_PWM1_IPG_GATE>,
454 <&clks IMX5_CLK_PWM1_HF_GATE>;
Sascha Hauer9ae90af2012-07-04 12:30:37 +0200455 clock-names = "ipg", "per";
456 interrupts = <61>;
457 };
458
459 pwm2: pwm@53fb8000 {
460 #pwm-cells = <2>;
461 compatible = "fsl,imx53-pwm", "fsl,imx27-pwm";
462 reg = <0x53fb8000 0x4000>;
Lucas Stach564695d2013-11-14 11:18:58 +0100463 clocks = <&clks IMX5_CLK_PWM2_IPG_GATE>,
464 <&clks IMX5_CLK_PWM2_HF_GATE>;
Sascha Hauer9ae90af2012-07-04 12:30:37 +0200465 clock-names = "ipg", "per";
466 interrupts = <94>;
467 };
468
Shawn Guo0c456cf2012-04-02 14:39:26 +0800469 uart1: serial@53fbc000 {
Shawn Guo73d2b4c2011-10-17 08:42:16 +0800470 compatible = "fsl,imx53-uart", "fsl,imx21-uart";
471 reg = <0x53fbc000 0x4000>;
472 interrupts = <31>;
Lucas Stach564695d2013-11-14 11:18:58 +0100473 clocks = <&clks IMX5_CLK_UART1_IPG_GATE>,
474 <&clks IMX5_CLK_UART1_PER_GATE>;
Fabio Estevamf40f38d2012-11-21 13:43:05 -0200475 clock-names = "ipg", "per";
Shawn Guo73d2b4c2011-10-17 08:42:16 +0800476 status = "disabled";
477 };
478
Shawn Guo0c456cf2012-04-02 14:39:26 +0800479 uart2: serial@53fc0000 {
Shawn Guo73d2b4c2011-10-17 08:42:16 +0800480 compatible = "fsl,imx53-uart", "fsl,imx21-uart";
481 reg = <0x53fc0000 0x4000>;
482 interrupts = <32>;
Lucas Stach564695d2013-11-14 11:18:58 +0100483 clocks = <&clks IMX5_CLK_UART2_IPG_GATE>,
484 <&clks IMX5_CLK_UART2_PER_GATE>;
Fabio Estevamf40f38d2012-11-21 13:43:05 -0200485 clock-names = "ipg", "per";
Shawn Guo73d2b4c2011-10-17 08:42:16 +0800486 status = "disabled";
487 };
488
Steffen Trumtrara9d1f922012-07-18 11:42:43 +0200489 can1: can@53fc8000 {
490 compatible = "fsl,imx53-flexcan", "fsl,p1010-flexcan";
491 reg = <0x53fc8000 0x4000>;
492 interrupts = <82>;
Lucas Stach564695d2013-11-14 11:18:58 +0100493 clocks = <&clks IMX5_CLK_CAN1_IPG_GATE>,
494 <&clks IMX5_CLK_CAN1_SERIAL_GATE>;
Fabio Estevamf40f38d2012-11-21 13:43:05 -0200495 clock-names = "ipg", "per";
Steffen Trumtrara9d1f922012-07-18 11:42:43 +0200496 status = "disabled";
497 };
498
499 can2: can@53fcc000 {
500 compatible = "fsl,imx53-flexcan", "fsl,p1010-flexcan";
501 reg = <0x53fcc000 0x4000>;
502 interrupts = <83>;
Lucas Stach564695d2013-11-14 11:18:58 +0100503 clocks = <&clks IMX5_CLK_CAN2_IPG_GATE>,
504 <&clks IMX5_CLK_CAN2_SERIAL_GATE>;
Fabio Estevamf40f38d2012-11-21 13:43:05 -0200505 clock-names = "ipg", "per";
Steffen Trumtrara9d1f922012-07-18 11:42:43 +0200506 status = "disabled";
507 };
508
Philipp Zabel8d84c372013-03-28 17:35:23 +0100509 src: src@53fd0000 {
510 compatible = "fsl,imx53-src", "fsl,imx51-src";
511 reg = <0x53fd0000 0x4000>;
512 #reset-cells = <1>;
513 };
514
Fabio Estevamf40f38d2012-11-21 13:43:05 -0200515 clks: ccm@53fd4000{
516 compatible = "fsl,imx53-ccm";
517 reg = <0x53fd4000 0x4000>;
518 interrupts = <0 71 0x04 0 72 0x04>;
519 #clock-cells = <1>;
520 };
521
Richard Zhao4d191862011-12-14 09:26:44 +0800522 gpio5: gpio@53fdc000 {
Benoît Thébaudeauaeb27742012-06-22 21:04:06 +0200523 compatible = "fsl,imx53-gpio", "fsl,imx35-gpio";
Shawn Guo73d2b4c2011-10-17 08:42:16 +0800524 reg = <0x53fdc000 0x4000>;
525 interrupts = <103 104>;
526 gpio-controller;
527 #gpio-cells = <2>;
528 interrupt-controller;
Shawn Guo88cde8b2012-07-06 20:03:37 +0800529 #interrupt-cells = <2>;
Shawn Guo73d2b4c2011-10-17 08:42:16 +0800530 };
531
Richard Zhao4d191862011-12-14 09:26:44 +0800532 gpio6: gpio@53fe0000 {
Benoît Thébaudeauaeb27742012-06-22 21:04:06 +0200533 compatible = "fsl,imx53-gpio", "fsl,imx35-gpio";
Shawn Guo73d2b4c2011-10-17 08:42:16 +0800534 reg = <0x53fe0000 0x4000>;
535 interrupts = <105 106>;
536 gpio-controller;
537 #gpio-cells = <2>;
538 interrupt-controller;
Shawn Guo88cde8b2012-07-06 20:03:37 +0800539 #interrupt-cells = <2>;
Shawn Guo73d2b4c2011-10-17 08:42:16 +0800540 };
541
Richard Zhao4d191862011-12-14 09:26:44 +0800542 gpio7: gpio@53fe4000 {
Benoît Thébaudeauaeb27742012-06-22 21:04:06 +0200543 compatible = "fsl,imx53-gpio", "fsl,imx35-gpio";
Shawn Guo73d2b4c2011-10-17 08:42:16 +0800544 reg = <0x53fe4000 0x4000>;
545 interrupts = <107 108>;
546 gpio-controller;
547 #gpio-cells = <2>;
548 interrupt-controller;
Shawn Guo88cde8b2012-07-06 20:03:37 +0800549 #interrupt-cells = <2>;
Shawn Guo73d2b4c2011-10-17 08:42:16 +0800550 };
551
Sascha Hauer7b7d6722012-11-15 09:31:52 +0100552 i2c3: i2c@53fec000 {
Shawn Guo73d2b4c2011-10-17 08:42:16 +0800553 #address-cells = <1>;
554 #size-cells = <0>;
Shawn Guo5bdfba22012-09-14 15:19:00 +0800555 compatible = "fsl,imx53-i2c", "fsl,imx21-i2c";
Shawn Guo73d2b4c2011-10-17 08:42:16 +0800556 reg = <0x53fec000 0x4000>;
557 interrupts = <64>;
Lucas Stach564695d2013-11-14 11:18:58 +0100558 clocks = <&clks IMX5_CLK_I2C3_GATE>;
Shawn Guo73d2b4c2011-10-17 08:42:16 +0800559 status = "disabled";
560 };
561
Shawn Guo0c456cf2012-04-02 14:39:26 +0800562 uart4: serial@53ff0000 {
Shawn Guo73d2b4c2011-10-17 08:42:16 +0800563 compatible = "fsl,imx53-uart", "fsl,imx21-uart";
564 reg = <0x53ff0000 0x4000>;
565 interrupts = <13>;
Lucas Stach564695d2013-11-14 11:18:58 +0100566 clocks = <&clks IMX5_CLK_UART4_IPG_GATE>,
567 <&clks IMX5_CLK_UART4_PER_GATE>;
Fabio Estevamf40f38d2012-11-21 13:43:05 -0200568 clock-names = "ipg", "per";
Shawn Guo73d2b4c2011-10-17 08:42:16 +0800569 status = "disabled";
570 };
571 };
572
573 aips@60000000 { /* AIPS2 */
574 compatible = "fsl,aips-bus", "simple-bus";
575 #address-cells = <1>;
576 #size-cells = <1>;
577 reg = <0x60000000 0x10000000>;
578 ranges;
579
Steffen Trumtrarac08281e2014-06-25 13:01:30 +0200580 aipstz2: bridge@63f00000 {
581 compatible = "fsl,imx53-aipstz";
582 reg = <0x63f00000 0x60>;
583 };
584
Sascha Hauer4f3b2a42013-06-25 15:51:52 +0200585 iim: iim@63f98000 {
586 compatible = "fsl,imx53-iim", "fsl,imx27-iim";
587 reg = <0x63f98000 0x4000>;
588 interrupts = <69>;
Lucas Stach564695d2013-11-14 11:18:58 +0100589 clocks = <&clks IMX5_CLK_IIM_GATE>;
Sascha Hauer4f3b2a42013-06-25 15:51:52 +0200590 };
591
Shawn Guo0c456cf2012-04-02 14:39:26 +0800592 uart5: serial@63f90000 {
Shawn Guo73d2b4c2011-10-17 08:42:16 +0800593 compatible = "fsl,imx53-uart", "fsl,imx21-uart";
594 reg = <0x63f90000 0x4000>;
595 interrupts = <86>;
Lucas Stach564695d2013-11-14 11:18:58 +0100596 clocks = <&clks IMX5_CLK_UART5_IPG_GATE>,
597 <&clks IMX5_CLK_UART5_PER_GATE>;
Fabio Estevamf40f38d2012-11-21 13:43:05 -0200598 clock-names = "ipg", "per";
Shawn Guo73d2b4c2011-10-17 08:42:16 +0800599 status = "disabled";
600 };
601
Martin Fuzzeya82b7b92013-01-29 16:46:19 +0100602 owire: owire@63fa4000 {
603 compatible = "fsl,imx53-owire", "fsl,imx21-owire";
604 reg = <0x63fa4000 0x4000>;
Lucas Stach564695d2013-11-14 11:18:58 +0100605 clocks = <&clks IMX5_CLK_OWIRE_GATE>;
Martin Fuzzeya82b7b92013-01-29 16:46:19 +0100606 status = "disabled";
607 };
608
Sascha Hauer7b7d6722012-11-15 09:31:52 +0100609 ecspi2: ecspi@63fac000 {
Shawn Guo73d2b4c2011-10-17 08:42:16 +0800610 #address-cells = <1>;
611 #size-cells = <0>;
612 compatible = "fsl,imx53-ecspi", "fsl,imx51-ecspi";
613 reg = <0x63fac000 0x4000>;
614 interrupts = <37>;
Lucas Stach564695d2013-11-14 11:18:58 +0100615 clocks = <&clks IMX5_CLK_ECSPI2_IPG_GATE>,
616 <&clks IMX5_CLK_ECSPI2_PER_GATE>;
Fabio Estevamf40f38d2012-11-21 13:43:05 -0200617 clock-names = "ipg", "per";
Shawn Guo73d2b4c2011-10-17 08:42:16 +0800618 status = "disabled";
619 };
620
Sascha Hauer7b7d6722012-11-15 09:31:52 +0100621 sdma: sdma@63fb0000 {
Shawn Guo73d2b4c2011-10-17 08:42:16 +0800622 compatible = "fsl,imx53-sdma", "fsl,imx35-sdma";
623 reg = <0x63fb0000 0x4000>;
624 interrupts = <6>;
Lucas Stach564695d2013-11-14 11:18:58 +0100625 clocks = <&clks IMX5_CLK_SDMA_GATE>,
626 <&clks IMX5_CLK_SDMA_GATE>;
Fabio Estevamf40f38d2012-11-21 13:43:05 -0200627 clock-names = "ipg", "ahb";
Huang Shijiefb72bb22013-07-02 10:15:29 +0800628 #dma-cells = <3>;
Fabio Estevam7e4f0362012-08-08 11:28:07 -0300629 fsl,sdma-ram-script-name = "imx/sdma/sdma-imx53.bin";
Shawn Guo73d2b4c2011-10-17 08:42:16 +0800630 };
631
Sascha Hauer7b7d6722012-11-15 09:31:52 +0100632 cspi: cspi@63fc0000 {
Shawn Guo73d2b4c2011-10-17 08:42:16 +0800633 #address-cells = <1>;
634 #size-cells = <0>;
635 compatible = "fsl,imx53-cspi", "fsl,imx35-cspi";
636 reg = <0x63fc0000 0x4000>;
637 interrupts = <38>;
Lucas Stach564695d2013-11-14 11:18:58 +0100638 clocks = <&clks IMX5_CLK_CSPI_IPG_GATE>,
639 <&clks IMX5_CLK_CSPI_IPG_GATE>;
Fabio Estevamf40f38d2012-11-21 13:43:05 -0200640 clock-names = "ipg", "per";
Shawn Guo73d2b4c2011-10-17 08:42:16 +0800641 status = "disabled";
642 };
643
Sascha Hauer7b7d6722012-11-15 09:31:52 +0100644 i2c2: i2c@63fc4000 {
Shawn Guo73d2b4c2011-10-17 08:42:16 +0800645 #address-cells = <1>;
646 #size-cells = <0>;
Shawn Guo5bdfba22012-09-14 15:19:00 +0800647 compatible = "fsl,imx53-i2c", "fsl,imx21-i2c";
Shawn Guo73d2b4c2011-10-17 08:42:16 +0800648 reg = <0x63fc4000 0x4000>;
649 interrupts = <63>;
Lucas Stach564695d2013-11-14 11:18:58 +0100650 clocks = <&clks IMX5_CLK_I2C2_GATE>;
Shawn Guo73d2b4c2011-10-17 08:42:16 +0800651 status = "disabled";
652 };
653
Sascha Hauer7b7d6722012-11-15 09:31:52 +0100654 i2c1: i2c@63fc8000 {
Shawn Guo73d2b4c2011-10-17 08:42:16 +0800655 #address-cells = <1>;
656 #size-cells = <0>;
Shawn Guo5bdfba22012-09-14 15:19:00 +0800657 compatible = "fsl,imx53-i2c", "fsl,imx21-i2c";
Shawn Guo73d2b4c2011-10-17 08:42:16 +0800658 reg = <0x63fc8000 0x4000>;
659 interrupts = <62>;
Lucas Stach564695d2013-11-14 11:18:58 +0100660 clocks = <&clks IMX5_CLK_I2C1_GATE>;
Shawn Guo73d2b4c2011-10-17 08:42:16 +0800661 status = "disabled";
662 };
663
Shawn Guoffc505c2012-05-11 13:12:01 +0800664 ssi1: ssi@63fcc000 {
Alexander Shiyan6ff7f512014-08-19 20:00:09 +0400665 #sound-dai-cells = <0>;
Markus Pargmann28f93d02014-01-17 10:07:42 +0100666 compatible = "fsl,imx53-ssi", "fsl,imx51-ssi",
667 "fsl,imx21-ssi";
Shawn Guoffc505c2012-05-11 13:12:01 +0800668 reg = <0x63fcc000 0x4000>;
669 interrupts = <29>;
Lucas Stach564695d2013-11-14 11:18:58 +0100670 clocks = <&clks IMX5_CLK_SSI1_IPG_GATE>;
Shawn Guo5da826ab2013-07-17 13:50:54 +0800671 dmas = <&sdma 28 0 0>,
672 <&sdma 29 0 0>;
673 dma-names = "rx", "tx";
Shawn Guoffc505c2012-05-11 13:12:01 +0800674 fsl,fifo-depth = <15>;
Shawn Guoffc505c2012-05-11 13:12:01 +0800675 status = "disabled";
676 };
677
Sascha Hauer7b7d6722012-11-15 09:31:52 +0100678 audmux: audmux@63fd0000 {
Shawn Guoffc505c2012-05-11 13:12:01 +0800679 compatible = "fsl,imx53-audmux", "fsl,imx31-audmux";
680 reg = <0x63fd0000 0x4000>;
681 status = "disabled";
682 };
683
Sascha Hauer7b7d6722012-11-15 09:31:52 +0100684 nfc: nand@63fdb000 {
Sascha Hauer75453a02012-06-06 12:33:16 +0200685 compatible = "fsl,imx53-nand";
686 reg = <0x63fdb000 0x1000 0xf7ff0000 0x10000>;
687 interrupts = <8>;
Lucas Stach564695d2013-11-14 11:18:58 +0100688 clocks = <&clks IMX5_CLK_NFC_GATE>;
Sascha Hauer75453a02012-06-06 12:33:16 +0200689 status = "disabled";
690 };
691
Shawn Guoffc505c2012-05-11 13:12:01 +0800692 ssi3: ssi@63fe8000 {
Alexander Shiyan6ff7f512014-08-19 20:00:09 +0400693 #sound-dai-cells = <0>;
Markus Pargmann28f93d02014-01-17 10:07:42 +0100694 compatible = "fsl,imx53-ssi", "fsl,imx51-ssi",
695 "fsl,imx21-ssi";
Shawn Guoffc505c2012-05-11 13:12:01 +0800696 reg = <0x63fe8000 0x4000>;
697 interrupts = <96>;
Lucas Stach564695d2013-11-14 11:18:58 +0100698 clocks = <&clks IMX5_CLK_SSI3_IPG_GATE>;
Shawn Guo5da826ab2013-07-17 13:50:54 +0800699 dmas = <&sdma 46 0 0>,
700 <&sdma 47 0 0>;
701 dma-names = "rx", "tx";
Shawn Guoffc505c2012-05-11 13:12:01 +0800702 fsl,fifo-depth = <15>;
Shawn Guoffc505c2012-05-11 13:12:01 +0800703 status = "disabled";
704 };
705
Sascha Hauer7b7d6722012-11-15 09:31:52 +0100706 fec: ethernet@63fec000 {
Shawn Guo73d2b4c2011-10-17 08:42:16 +0800707 compatible = "fsl,imx53-fec", "fsl,imx25-fec";
708 reg = <0x63fec000 0x4000>;
709 interrupts = <87>;
Lucas Stach564695d2013-11-14 11:18:58 +0100710 clocks = <&clks IMX5_CLK_FEC_GATE>,
711 <&clks IMX5_CLK_FEC_GATE>,
712 <&clks IMX5_CLK_FEC_GATE>;
Fabio Estevamf40f38d2012-11-21 13:43:05 -0200713 clock-names = "ipg", "ahb", "ptp";
Shawn Guo73d2b4c2011-10-17 08:42:16 +0800714 status = "disabled";
715 };
Philipp Zabel19194c22013-06-04 12:12:22 +0200716
717 tve: tve@63ff0000 {
718 compatible = "fsl,imx53-tve";
719 reg = <0x63ff0000 0x1000>;
720 interrupts = <92>;
Lucas Stach564695d2013-11-14 11:18:58 +0100721 clocks = <&clks IMX5_CLK_TVE_GATE>,
722 <&clks IMX5_CLK_IPU_DI1_SEL>;
Philipp Zabel19194c22013-06-04 12:12:22 +0200723 clock-names = "tve", "di_sel";
Philipp Zabel19194c22013-06-04 12:12:22 +0200724 status = "disabled";
Philipp Zabele05c8c92014-03-05 10:21:00 +0100725
726 port {
727 tve_in: endpoint {
728 remote-endpoint = <&ipu_di1_tve>;
729 };
730 };
Philipp Zabel19194c22013-06-04 12:12:22 +0200731 };
Fabio Estevamfbf970f2013-06-28 19:49:18 -0300732
733 vpu: vpu@63ff4000 {
734 compatible = "fsl,imx53-vpu";
735 reg = <0x63ff4000 0x1000>;
736 interrupts = <9>;
Lothar Waßmannfa97d2f2014-08-13 15:47:47 +0200737 clocks = <&clks IMX5_CLK_VPU_REFERENCE_GATE>,
Lucas Stach564695d2013-11-14 11:18:58 +0100738 <&clks IMX5_CLK_VPU_GATE>;
Fabio Estevamfbf970f2013-06-28 19:49:18 -0300739 clock-names = "per", "ahb";
Philipp Zabelb1e2e542014-03-19 15:49:24 +0100740 resets = <&src 1>;
Fabio Estevamfbf970f2013-06-28 19:49:18 -0300741 iram = <&ocram>;
Fabio Estevamfbf970f2013-06-28 19:49:18 -0300742 };
Shawn Guo73d2b4c2011-10-17 08:42:16 +0800743 };
Philipp Zabel481fbe12013-07-01 11:06:09 +0200744
745 ocram: sram@f8000000 {
746 compatible = "mmio-sram";
747 reg = <0xf8000000 0x20000>;
Lucas Stach564695d2013-11-14 11:18:58 +0100748 clocks = <&clks IMX5_CLK_OCRAM>;
Philipp Zabel481fbe12013-07-01 11:06:09 +0200749 };
Steffen Trumtrar49bdf582014-08-22 14:02:27 +0200750
751 pmu {
752 compatible = "arm,cortex-a8-pmu";
753 interrupts = <77>;
754 };
Shawn Guo73d2b4c2011-10-17 08:42:16 +0800755 };
756};