xref: /OK3568_Linux_fs/kernel/arch/arm/boot/dts/imx53.dtsi (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun// SPDX-License-Identifier: GPL-2.0+
2*4882a593Smuzhiyun//
3*4882a593Smuzhiyun// Copyright 2011 Freescale Semiconductor, Inc.
4*4882a593Smuzhiyun// Copyright 2011 Linaro Ltd.
5*4882a593Smuzhiyun
6*4882a593Smuzhiyun#include "imx53-pinfunc.h"
7*4882a593Smuzhiyun#include <dt-bindings/clock/imx5-clock.h>
8*4882a593Smuzhiyun#include <dt-bindings/gpio/gpio.h>
9*4882a593Smuzhiyun#include <dt-bindings/input/input.h>
10*4882a593Smuzhiyun#include <dt-bindings/interrupt-controller/irq.h>
11*4882a593Smuzhiyun
12*4882a593Smuzhiyun/ {
13*4882a593Smuzhiyun	#address-cells = <1>;
14*4882a593Smuzhiyun	#size-cells = <1>;
15*4882a593Smuzhiyun	/*
16*4882a593Smuzhiyun	 * The decompressor and also some bootloaders rely on a
17*4882a593Smuzhiyun	 * pre-existing /chosen node to be available to insert the
18*4882a593Smuzhiyun	 * command line and merge other ATAGS info.
19*4882a593Smuzhiyun	 */
20*4882a593Smuzhiyun	chosen {};
21*4882a593Smuzhiyun
22*4882a593Smuzhiyun	aliases {
23*4882a593Smuzhiyun		ethernet0 = &fec;
24*4882a593Smuzhiyun		gpio0 = &gpio1;
25*4882a593Smuzhiyun		gpio1 = &gpio2;
26*4882a593Smuzhiyun		gpio2 = &gpio3;
27*4882a593Smuzhiyun		gpio3 = &gpio4;
28*4882a593Smuzhiyun		gpio4 = &gpio5;
29*4882a593Smuzhiyun		gpio5 = &gpio6;
30*4882a593Smuzhiyun		gpio6 = &gpio7;
31*4882a593Smuzhiyun		i2c0 = &i2c1;
32*4882a593Smuzhiyun		i2c1 = &i2c2;
33*4882a593Smuzhiyun		i2c2 = &i2c3;
34*4882a593Smuzhiyun		ipu0 = &ipu;
35*4882a593Smuzhiyun		mmc0 = &esdhc1;
36*4882a593Smuzhiyun		mmc1 = &esdhc2;
37*4882a593Smuzhiyun		mmc2 = &esdhc3;
38*4882a593Smuzhiyun		mmc3 = &esdhc4;
39*4882a593Smuzhiyun		serial0 = &uart1;
40*4882a593Smuzhiyun		serial1 = &uart2;
41*4882a593Smuzhiyun		serial2 = &uart3;
42*4882a593Smuzhiyun		serial3 = &uart4;
43*4882a593Smuzhiyun		serial4 = &uart5;
44*4882a593Smuzhiyun		spi0 = &ecspi1;
45*4882a593Smuzhiyun		spi1 = &ecspi2;
46*4882a593Smuzhiyun		spi2 = &cspi;
47*4882a593Smuzhiyun	};
48*4882a593Smuzhiyun
49*4882a593Smuzhiyun	cpus {
50*4882a593Smuzhiyun		#address-cells = <1>;
51*4882a593Smuzhiyun		#size-cells = <0>;
52*4882a593Smuzhiyun		cpu0: cpu@0 {
53*4882a593Smuzhiyun			device_type = "cpu";
54*4882a593Smuzhiyun			compatible = "arm,cortex-a8";
55*4882a593Smuzhiyun			reg = <0x0>;
56*4882a593Smuzhiyun			clocks = <&clks IMX5_CLK_ARM>;
57*4882a593Smuzhiyun			clock-latency = <61036>;
58*4882a593Smuzhiyun			voltage-tolerance = <5>;
59*4882a593Smuzhiyun			operating-points = <
60*4882a593Smuzhiyun				/* kHz */
61*4882a593Smuzhiyun				 166666  850000
62*4882a593Smuzhiyun				 400000  900000
63*4882a593Smuzhiyun				 800000 1050000
64*4882a593Smuzhiyun				1000000 1200000
65*4882a593Smuzhiyun				1200000 1300000
66*4882a593Smuzhiyun			>;
67*4882a593Smuzhiyun		};
68*4882a593Smuzhiyun	};
69*4882a593Smuzhiyun
70*4882a593Smuzhiyun	display-subsystem {
71*4882a593Smuzhiyun		compatible = "fsl,imx-display-subsystem";
72*4882a593Smuzhiyun		ports = <&ipu_di0>, <&ipu_di1>;
73*4882a593Smuzhiyun	};
74*4882a593Smuzhiyun
75*4882a593Smuzhiyun	capture_subsystem {
76*4882a593Smuzhiyun		compatible = "fsl,imx-capture-subsystem";
77*4882a593Smuzhiyun		ports = <&ipu_csi0>, <&ipu_csi1>;
78*4882a593Smuzhiyun	};
79*4882a593Smuzhiyun
80*4882a593Smuzhiyun	tzic: tz-interrupt-controller@fffc000 {
81*4882a593Smuzhiyun		compatible = "fsl,imx53-tzic", "fsl,tzic";
82*4882a593Smuzhiyun		interrupt-controller;
83*4882a593Smuzhiyun		#interrupt-cells = <1>;
84*4882a593Smuzhiyun		reg = <0x0fffc000 0x4000>;
85*4882a593Smuzhiyun	};
86*4882a593Smuzhiyun
87*4882a593Smuzhiyun	clocks {
88*4882a593Smuzhiyun		ckil {
89*4882a593Smuzhiyun			compatible = "fsl,imx-ckil", "fixed-clock";
90*4882a593Smuzhiyun			#clock-cells = <0>;
91*4882a593Smuzhiyun			clock-frequency = <32768>;
92*4882a593Smuzhiyun		};
93*4882a593Smuzhiyun
94*4882a593Smuzhiyun		ckih1 {
95*4882a593Smuzhiyun			compatible = "fsl,imx-ckih1", "fixed-clock";
96*4882a593Smuzhiyun			#clock-cells = <0>;
97*4882a593Smuzhiyun			clock-frequency = <22579200>;
98*4882a593Smuzhiyun		};
99*4882a593Smuzhiyun
100*4882a593Smuzhiyun		ckih2 {
101*4882a593Smuzhiyun			compatible = "fsl,imx-ckih2", "fixed-clock";
102*4882a593Smuzhiyun			#clock-cells = <0>;
103*4882a593Smuzhiyun			clock-frequency = <0>;
104*4882a593Smuzhiyun		};
105*4882a593Smuzhiyun
106*4882a593Smuzhiyun		osc {
107*4882a593Smuzhiyun			compatible = "fsl,imx-osc", "fixed-clock";
108*4882a593Smuzhiyun			#clock-cells = <0>;
109*4882a593Smuzhiyun			clock-frequency = <24000000>;
110*4882a593Smuzhiyun		};
111*4882a593Smuzhiyun	};
112*4882a593Smuzhiyun
113*4882a593Smuzhiyun	pmu: pmu {
114*4882a593Smuzhiyun		compatible = "arm,cortex-a8-pmu";
115*4882a593Smuzhiyun		interrupt-parent = <&tzic>;
116*4882a593Smuzhiyun		interrupts = <77>;
117*4882a593Smuzhiyun	};
118*4882a593Smuzhiyun
119*4882a593Smuzhiyun	usbphy0: usbphy-0 {
120*4882a593Smuzhiyun		compatible = "usb-nop-xceiv";
121*4882a593Smuzhiyun		clocks = <&clks IMX5_CLK_USB_PHY1_GATE>;
122*4882a593Smuzhiyun		clock-names = "main_clk";
123*4882a593Smuzhiyun		#phy-cells = <0>;
124*4882a593Smuzhiyun		status = "okay";
125*4882a593Smuzhiyun	};
126*4882a593Smuzhiyun
127*4882a593Smuzhiyun	usbphy1: usbphy-1 {
128*4882a593Smuzhiyun		compatible = "usb-nop-xceiv";
129*4882a593Smuzhiyun		clocks = <&clks IMX5_CLK_USB_PHY2_GATE>;
130*4882a593Smuzhiyun		clock-names = "main_clk";
131*4882a593Smuzhiyun		#phy-cells = <0>;
132*4882a593Smuzhiyun		status = "okay";
133*4882a593Smuzhiyun	};
134*4882a593Smuzhiyun
135*4882a593Smuzhiyun	soc {
136*4882a593Smuzhiyun		#address-cells = <1>;
137*4882a593Smuzhiyun		#size-cells = <1>;
138*4882a593Smuzhiyun		compatible = "simple-bus";
139*4882a593Smuzhiyun		interrupt-parent = <&tzic>;
140*4882a593Smuzhiyun		ranges;
141*4882a593Smuzhiyun
142*4882a593Smuzhiyun		sata: sata@10000000 {
143*4882a593Smuzhiyun			compatible = "fsl,imx53-ahci";
144*4882a593Smuzhiyun			reg = <0x10000000 0x1000>;
145*4882a593Smuzhiyun			interrupts = <28>;
146*4882a593Smuzhiyun			clocks = <&clks IMX5_CLK_SATA_GATE>,
147*4882a593Smuzhiyun				 <&clks IMX5_CLK_SATA_REF>,
148*4882a593Smuzhiyun				 <&clks IMX5_CLK_AHB>;
149*4882a593Smuzhiyun			clock-names = "sata", "sata_ref", "ahb";
150*4882a593Smuzhiyun			status = "disabled";
151*4882a593Smuzhiyun		};
152*4882a593Smuzhiyun
153*4882a593Smuzhiyun		ipu: ipu@18000000 {
154*4882a593Smuzhiyun			#address-cells = <1>;
155*4882a593Smuzhiyun			#size-cells = <0>;
156*4882a593Smuzhiyun			compatible = "fsl,imx53-ipu";
157*4882a593Smuzhiyun			reg = <0x18000000 0x08000000>;
158*4882a593Smuzhiyun			interrupts = <11 10>;
159*4882a593Smuzhiyun			clocks = <&clks IMX5_CLK_IPU_GATE>,
160*4882a593Smuzhiyun				 <&clks IMX5_CLK_IPU_DI0_GATE>,
161*4882a593Smuzhiyun				 <&clks IMX5_CLK_IPU_DI1_GATE>;
162*4882a593Smuzhiyun			clock-names = "bus", "di0", "di1";
163*4882a593Smuzhiyun			resets = <&src 2>;
164*4882a593Smuzhiyun
165*4882a593Smuzhiyun			ipu_csi0: port@0 {
166*4882a593Smuzhiyun				reg = <0>;
167*4882a593Smuzhiyun
168*4882a593Smuzhiyun				ipu_csi0_from_parallel_sensor: endpoint {
169*4882a593Smuzhiyun				};
170*4882a593Smuzhiyun			};
171*4882a593Smuzhiyun
172*4882a593Smuzhiyun			ipu_csi1: port@1 {
173*4882a593Smuzhiyun				reg = <1>;
174*4882a593Smuzhiyun
175*4882a593Smuzhiyun				ipu_csi1_from_parallel_sensor: endpoint {
176*4882a593Smuzhiyun				};
177*4882a593Smuzhiyun			};
178*4882a593Smuzhiyun
179*4882a593Smuzhiyun			ipu_di0: port@2 {
180*4882a593Smuzhiyun				#address-cells = <1>;
181*4882a593Smuzhiyun				#size-cells = <0>;
182*4882a593Smuzhiyun				reg = <2>;
183*4882a593Smuzhiyun
184*4882a593Smuzhiyun				ipu_di0_disp0: endpoint@0 {
185*4882a593Smuzhiyun					reg = <0>;
186*4882a593Smuzhiyun				};
187*4882a593Smuzhiyun
188*4882a593Smuzhiyun				ipu_di0_lvds0: endpoint@1 {
189*4882a593Smuzhiyun					reg = <1>;
190*4882a593Smuzhiyun					remote-endpoint = <&lvds0_in>;
191*4882a593Smuzhiyun				};
192*4882a593Smuzhiyun			};
193*4882a593Smuzhiyun
194*4882a593Smuzhiyun			ipu_di1: port@3 {
195*4882a593Smuzhiyun				#address-cells = <1>;
196*4882a593Smuzhiyun				#size-cells = <0>;
197*4882a593Smuzhiyun				reg = <3>;
198*4882a593Smuzhiyun
199*4882a593Smuzhiyun				ipu_di1_disp1: endpoint@0 {
200*4882a593Smuzhiyun					reg = <0>;
201*4882a593Smuzhiyun				};
202*4882a593Smuzhiyun
203*4882a593Smuzhiyun				ipu_di1_lvds1: endpoint@1 {
204*4882a593Smuzhiyun					reg = <1>;
205*4882a593Smuzhiyun					remote-endpoint = <&lvds1_in>;
206*4882a593Smuzhiyun				};
207*4882a593Smuzhiyun
208*4882a593Smuzhiyun				ipu_di1_tve: endpoint@2 {
209*4882a593Smuzhiyun					reg = <2>;
210*4882a593Smuzhiyun					remote-endpoint = <&tve_in>;
211*4882a593Smuzhiyun				};
212*4882a593Smuzhiyun			};
213*4882a593Smuzhiyun		};
214*4882a593Smuzhiyun
215*4882a593Smuzhiyun		gpu: gpu@30000000 {
216*4882a593Smuzhiyun			compatible = "amd,imageon-200.0", "amd,imageon";
217*4882a593Smuzhiyun			reg = <0x30000000 0x20000>;
218*4882a593Smuzhiyun			reg-names = "kgsl_3d0_reg_memory";
219*4882a593Smuzhiyun			interrupts = <12>;
220*4882a593Smuzhiyun			interrupt-names = "kgsl_3d0_irq";
221*4882a593Smuzhiyun			clocks = <&clks IMX5_CLK_GPU3D_GATE>, <&clks IMX5_CLK_GARB_GATE>;
222*4882a593Smuzhiyun			clock-names = "core_clk", "mem_iface_clk";
223*4882a593Smuzhiyun		};
224*4882a593Smuzhiyun
225*4882a593Smuzhiyun		bus@50000000 { /* AIPS1 */
226*4882a593Smuzhiyun			compatible = "fsl,aips-bus", "simple-bus";
227*4882a593Smuzhiyun			#address-cells = <1>;
228*4882a593Smuzhiyun			#size-cells = <1>;
229*4882a593Smuzhiyun			reg = <0x50000000 0x10000000>;
230*4882a593Smuzhiyun			ranges;
231*4882a593Smuzhiyun
232*4882a593Smuzhiyun			spba@50000000 {
233*4882a593Smuzhiyun				compatible = "fsl,spba-bus", "simple-bus";
234*4882a593Smuzhiyun				#address-cells = <1>;
235*4882a593Smuzhiyun				#size-cells = <1>;
236*4882a593Smuzhiyun				reg = <0x50000000 0x40000>;
237*4882a593Smuzhiyun				ranges;
238*4882a593Smuzhiyun
239*4882a593Smuzhiyun				esdhc1: mmc@50004000 {
240*4882a593Smuzhiyun					compatible = "fsl,imx53-esdhc";
241*4882a593Smuzhiyun					reg = <0x50004000 0x4000>;
242*4882a593Smuzhiyun					interrupts = <1>;
243*4882a593Smuzhiyun					clocks = <&clks IMX5_CLK_ESDHC1_IPG_GATE>,
244*4882a593Smuzhiyun						 <&clks IMX5_CLK_DUMMY>,
245*4882a593Smuzhiyun						 <&clks IMX5_CLK_ESDHC1_PER_GATE>;
246*4882a593Smuzhiyun					clock-names = "ipg", "ahb", "per";
247*4882a593Smuzhiyun					bus-width = <4>;
248*4882a593Smuzhiyun					status = "disabled";
249*4882a593Smuzhiyun				};
250*4882a593Smuzhiyun
251*4882a593Smuzhiyun				esdhc2: mmc@50008000 {
252*4882a593Smuzhiyun					compatible = "fsl,imx53-esdhc";
253*4882a593Smuzhiyun					reg = <0x50008000 0x4000>;
254*4882a593Smuzhiyun					interrupts = <2>;
255*4882a593Smuzhiyun					clocks = <&clks IMX5_CLK_ESDHC2_IPG_GATE>,
256*4882a593Smuzhiyun						 <&clks IMX5_CLK_DUMMY>,
257*4882a593Smuzhiyun						 <&clks IMX5_CLK_ESDHC2_PER_GATE>;
258*4882a593Smuzhiyun					clock-names = "ipg", "ahb", "per";
259*4882a593Smuzhiyun					bus-width = <4>;
260*4882a593Smuzhiyun					status = "disabled";
261*4882a593Smuzhiyun				};
262*4882a593Smuzhiyun
263*4882a593Smuzhiyun				uart3: serial@5000c000 {
264*4882a593Smuzhiyun					compatible = "fsl,imx53-uart", "fsl,imx21-uart";
265*4882a593Smuzhiyun					reg = <0x5000c000 0x4000>;
266*4882a593Smuzhiyun					interrupts = <33>;
267*4882a593Smuzhiyun					clocks = <&clks IMX5_CLK_UART3_IPG_GATE>,
268*4882a593Smuzhiyun						 <&clks IMX5_CLK_UART3_PER_GATE>;
269*4882a593Smuzhiyun					clock-names = "ipg", "per";
270*4882a593Smuzhiyun					dmas = <&sdma 42 4 0>, <&sdma 43 4 0>;
271*4882a593Smuzhiyun					dma-names = "rx", "tx";
272*4882a593Smuzhiyun					status = "disabled";
273*4882a593Smuzhiyun				};
274*4882a593Smuzhiyun
275*4882a593Smuzhiyun				ecspi1: spi@50010000 {
276*4882a593Smuzhiyun					#address-cells = <1>;
277*4882a593Smuzhiyun					#size-cells = <0>;
278*4882a593Smuzhiyun					compatible = "fsl,imx53-ecspi", "fsl,imx51-ecspi";
279*4882a593Smuzhiyun					reg = <0x50010000 0x4000>;
280*4882a593Smuzhiyun					interrupts = <36>;
281*4882a593Smuzhiyun					clocks = <&clks IMX5_CLK_ECSPI1_IPG_GATE>,
282*4882a593Smuzhiyun						 <&clks IMX5_CLK_ECSPI1_PER_GATE>;
283*4882a593Smuzhiyun					clock-names = "ipg", "per";
284*4882a593Smuzhiyun					status = "disabled";
285*4882a593Smuzhiyun				};
286*4882a593Smuzhiyun
287*4882a593Smuzhiyun				ssi2: ssi@50014000 {
288*4882a593Smuzhiyun					#sound-dai-cells = <0>;
289*4882a593Smuzhiyun					compatible = "fsl,imx53-ssi",
290*4882a593Smuzhiyun							"fsl,imx51-ssi",
291*4882a593Smuzhiyun							"fsl,imx21-ssi";
292*4882a593Smuzhiyun					reg = <0x50014000 0x4000>;
293*4882a593Smuzhiyun					interrupts = <30>;
294*4882a593Smuzhiyun					clocks = <&clks IMX5_CLK_SSI2_IPG_GATE>,
295*4882a593Smuzhiyun						 <&clks IMX5_CLK_SSI2_ROOT_GATE>;
296*4882a593Smuzhiyun					clock-names = "ipg", "baud";
297*4882a593Smuzhiyun					dmas = <&sdma 24 1 0>,
298*4882a593Smuzhiyun					       <&sdma 25 1 0>;
299*4882a593Smuzhiyun					dma-names = "rx", "tx";
300*4882a593Smuzhiyun					fsl,fifo-depth = <15>;
301*4882a593Smuzhiyun					status = "disabled";
302*4882a593Smuzhiyun				};
303*4882a593Smuzhiyun
304*4882a593Smuzhiyun				esdhc3: mmc@50020000 {
305*4882a593Smuzhiyun					compatible = "fsl,imx53-esdhc";
306*4882a593Smuzhiyun					reg = <0x50020000 0x4000>;
307*4882a593Smuzhiyun					interrupts = <3>;
308*4882a593Smuzhiyun					clocks = <&clks IMX5_CLK_ESDHC3_IPG_GATE>,
309*4882a593Smuzhiyun						 <&clks IMX5_CLK_DUMMY>,
310*4882a593Smuzhiyun						 <&clks IMX5_CLK_ESDHC3_PER_GATE>;
311*4882a593Smuzhiyun					clock-names = "ipg", "ahb", "per";
312*4882a593Smuzhiyun					bus-width = <4>;
313*4882a593Smuzhiyun					status = "disabled";
314*4882a593Smuzhiyun				};
315*4882a593Smuzhiyun
316*4882a593Smuzhiyun				esdhc4: mmc@50024000 {
317*4882a593Smuzhiyun					compatible = "fsl,imx53-esdhc";
318*4882a593Smuzhiyun					reg = <0x50024000 0x4000>;
319*4882a593Smuzhiyun					interrupts = <4>;
320*4882a593Smuzhiyun					clocks = <&clks IMX5_CLK_ESDHC4_IPG_GATE>,
321*4882a593Smuzhiyun						 <&clks IMX5_CLK_DUMMY>,
322*4882a593Smuzhiyun						 <&clks IMX5_CLK_ESDHC4_PER_GATE>;
323*4882a593Smuzhiyun					clock-names = "ipg", "ahb", "per";
324*4882a593Smuzhiyun					bus-width = <4>;
325*4882a593Smuzhiyun					status = "disabled";
326*4882a593Smuzhiyun				};
327*4882a593Smuzhiyun			};
328*4882a593Smuzhiyun
329*4882a593Smuzhiyun			aipstz1: bridge@53f00000 {
330*4882a593Smuzhiyun				compatible = "fsl,imx53-aipstz";
331*4882a593Smuzhiyun				reg = <0x53f00000 0x60>;
332*4882a593Smuzhiyun			};
333*4882a593Smuzhiyun
334*4882a593Smuzhiyun			usbotg: usb@53f80000 {
335*4882a593Smuzhiyun				compatible = "fsl,imx53-usb", "fsl,imx27-usb";
336*4882a593Smuzhiyun				reg = <0x53f80000 0x0200>;
337*4882a593Smuzhiyun				interrupts = <18>;
338*4882a593Smuzhiyun				clocks = <&clks IMX5_CLK_USBOH3_GATE>;
339*4882a593Smuzhiyun				fsl,usbmisc = <&usbmisc 0>;
340*4882a593Smuzhiyun				fsl,usbphy = <&usbphy0>;
341*4882a593Smuzhiyun				status = "disabled";
342*4882a593Smuzhiyun			};
343*4882a593Smuzhiyun
344*4882a593Smuzhiyun			usbh1: usb@53f80200 {
345*4882a593Smuzhiyun				compatible = "fsl,imx53-usb", "fsl,imx27-usb";
346*4882a593Smuzhiyun				reg = <0x53f80200 0x0200>;
347*4882a593Smuzhiyun				interrupts = <14>;
348*4882a593Smuzhiyun				clocks = <&clks IMX5_CLK_USBOH3_GATE>;
349*4882a593Smuzhiyun				fsl,usbmisc = <&usbmisc 1>;
350*4882a593Smuzhiyun				fsl,usbphy = <&usbphy1>;
351*4882a593Smuzhiyun				dr_mode = "host";
352*4882a593Smuzhiyun				status = "disabled";
353*4882a593Smuzhiyun			};
354*4882a593Smuzhiyun
355*4882a593Smuzhiyun			usbh2: usb@53f80400 {
356*4882a593Smuzhiyun				compatible = "fsl,imx53-usb", "fsl,imx27-usb";
357*4882a593Smuzhiyun				reg = <0x53f80400 0x0200>;
358*4882a593Smuzhiyun				interrupts = <16>;
359*4882a593Smuzhiyun				clocks = <&clks IMX5_CLK_USBOH3_GATE>;
360*4882a593Smuzhiyun				fsl,usbmisc = <&usbmisc 2>;
361*4882a593Smuzhiyun				dr_mode = "host";
362*4882a593Smuzhiyun				status = "disabled";
363*4882a593Smuzhiyun			};
364*4882a593Smuzhiyun
365*4882a593Smuzhiyun			usbh3: usb@53f80600 {
366*4882a593Smuzhiyun				compatible = "fsl,imx53-usb", "fsl,imx27-usb";
367*4882a593Smuzhiyun				reg = <0x53f80600 0x0200>;
368*4882a593Smuzhiyun				interrupts = <17>;
369*4882a593Smuzhiyun				clocks = <&clks IMX5_CLK_USBOH3_GATE>;
370*4882a593Smuzhiyun				fsl,usbmisc = <&usbmisc 3>;
371*4882a593Smuzhiyun				dr_mode = "host";
372*4882a593Smuzhiyun				status = "disabled";
373*4882a593Smuzhiyun			};
374*4882a593Smuzhiyun
375*4882a593Smuzhiyun			usbmisc: usbmisc@53f80800 {
376*4882a593Smuzhiyun				#index-cells = <1>;
377*4882a593Smuzhiyun				compatible = "fsl,imx53-usbmisc";
378*4882a593Smuzhiyun				reg = <0x53f80800 0x200>;
379*4882a593Smuzhiyun				clocks = <&clks IMX5_CLK_USBOH3_GATE>;
380*4882a593Smuzhiyun			};
381*4882a593Smuzhiyun
382*4882a593Smuzhiyun			gpio1: gpio@53f84000 {
383*4882a593Smuzhiyun				compatible = "fsl,imx53-gpio", "fsl,imx35-gpio";
384*4882a593Smuzhiyun				reg = <0x53f84000 0x4000>;
385*4882a593Smuzhiyun				interrupts = <50 51>;
386*4882a593Smuzhiyun				gpio-controller;
387*4882a593Smuzhiyun				#gpio-cells = <2>;
388*4882a593Smuzhiyun				interrupt-controller;
389*4882a593Smuzhiyun				#interrupt-cells = <2>;
390*4882a593Smuzhiyun			};
391*4882a593Smuzhiyun
392*4882a593Smuzhiyun			gpio2: gpio@53f88000 {
393*4882a593Smuzhiyun				compatible = "fsl,imx53-gpio", "fsl,imx35-gpio";
394*4882a593Smuzhiyun				reg = <0x53f88000 0x4000>;
395*4882a593Smuzhiyun				interrupts = <52 53>;
396*4882a593Smuzhiyun				gpio-controller;
397*4882a593Smuzhiyun				#gpio-cells = <2>;
398*4882a593Smuzhiyun				interrupt-controller;
399*4882a593Smuzhiyun				#interrupt-cells = <2>;
400*4882a593Smuzhiyun			};
401*4882a593Smuzhiyun
402*4882a593Smuzhiyun			gpio3: gpio@53f8c000 {
403*4882a593Smuzhiyun				compatible = "fsl,imx53-gpio", "fsl,imx35-gpio";
404*4882a593Smuzhiyun				reg = <0x53f8c000 0x4000>;
405*4882a593Smuzhiyun				interrupts = <54 55>;
406*4882a593Smuzhiyun				gpio-controller;
407*4882a593Smuzhiyun				#gpio-cells = <2>;
408*4882a593Smuzhiyun				interrupt-controller;
409*4882a593Smuzhiyun				#interrupt-cells = <2>;
410*4882a593Smuzhiyun			};
411*4882a593Smuzhiyun
412*4882a593Smuzhiyun			gpio4: gpio@53f90000 {
413*4882a593Smuzhiyun				compatible = "fsl,imx53-gpio", "fsl,imx35-gpio";
414*4882a593Smuzhiyun				reg = <0x53f90000 0x4000>;
415*4882a593Smuzhiyun				interrupts = <56 57>;
416*4882a593Smuzhiyun				gpio-controller;
417*4882a593Smuzhiyun				#gpio-cells = <2>;
418*4882a593Smuzhiyun				interrupt-controller;
419*4882a593Smuzhiyun				#interrupt-cells = <2>;
420*4882a593Smuzhiyun			};
421*4882a593Smuzhiyun
422*4882a593Smuzhiyun			kpp: kpp@53f94000 {
423*4882a593Smuzhiyun				compatible = "fsl,imx53-kpp", "fsl,imx21-kpp";
424*4882a593Smuzhiyun				reg = <0x53f94000 0x4000>;
425*4882a593Smuzhiyun				interrupts = <60>;
426*4882a593Smuzhiyun				clocks = <&clks IMX5_CLK_DUMMY>;
427*4882a593Smuzhiyun				status = "disabled";
428*4882a593Smuzhiyun			};
429*4882a593Smuzhiyun
430*4882a593Smuzhiyun			wdog1: wdog@53f98000 {
431*4882a593Smuzhiyun				compatible = "fsl,imx53-wdt", "fsl,imx21-wdt";
432*4882a593Smuzhiyun				reg = <0x53f98000 0x4000>;
433*4882a593Smuzhiyun				interrupts = <58>;
434*4882a593Smuzhiyun				clocks = <&clks IMX5_CLK_DUMMY>;
435*4882a593Smuzhiyun			};
436*4882a593Smuzhiyun
437*4882a593Smuzhiyun			wdog2: wdog@53f9c000 {
438*4882a593Smuzhiyun				compatible = "fsl,imx53-wdt", "fsl,imx21-wdt";
439*4882a593Smuzhiyun				reg = <0x53f9c000 0x4000>;
440*4882a593Smuzhiyun				interrupts = <59>;
441*4882a593Smuzhiyun				clocks = <&clks IMX5_CLK_DUMMY>;
442*4882a593Smuzhiyun				status = "disabled";
443*4882a593Smuzhiyun			};
444*4882a593Smuzhiyun
445*4882a593Smuzhiyun			gpt: timer@53fa0000 {
446*4882a593Smuzhiyun				compatible = "fsl,imx53-gpt", "fsl,imx31-gpt";
447*4882a593Smuzhiyun				reg = <0x53fa0000 0x4000>;
448*4882a593Smuzhiyun				interrupts = <39>;
449*4882a593Smuzhiyun				clocks = <&clks IMX5_CLK_GPT_IPG_GATE>,
450*4882a593Smuzhiyun					 <&clks IMX5_CLK_GPT_HF_GATE>;
451*4882a593Smuzhiyun				clock-names = "ipg", "per";
452*4882a593Smuzhiyun			};
453*4882a593Smuzhiyun
454*4882a593Smuzhiyun			srtc: rtc@53fa4000 {
455*4882a593Smuzhiyun				compatible = "fsl,imx53-rtc";
456*4882a593Smuzhiyun				reg = <0x53fa4000 0x4000>;
457*4882a593Smuzhiyun				interrupts = <24>;
458*4882a593Smuzhiyun				clocks = <&clks IMX5_CLK_SRTC_GATE>;
459*4882a593Smuzhiyun			};
460*4882a593Smuzhiyun
461*4882a593Smuzhiyun			iomuxc: iomuxc@53fa8000 {
462*4882a593Smuzhiyun				compatible = "fsl,imx53-iomuxc";
463*4882a593Smuzhiyun				reg = <0x53fa8000 0x4000>;
464*4882a593Smuzhiyun			};
465*4882a593Smuzhiyun
466*4882a593Smuzhiyun			gpr: iomuxc-gpr@53fa8000 {
467*4882a593Smuzhiyun				compatible = "fsl,imx53-iomuxc-gpr", "syscon";
468*4882a593Smuzhiyun				reg = <0x53fa8000 0xc>;
469*4882a593Smuzhiyun			};
470*4882a593Smuzhiyun
471*4882a593Smuzhiyun			ldb: ldb@53fa8008 {
472*4882a593Smuzhiyun				#address-cells = <1>;
473*4882a593Smuzhiyun				#size-cells = <0>;
474*4882a593Smuzhiyun				compatible = "fsl,imx53-ldb";
475*4882a593Smuzhiyun				reg = <0x53fa8008 0x4>;
476*4882a593Smuzhiyun				gpr = <&gpr>;
477*4882a593Smuzhiyun				clocks = <&clks IMX5_CLK_LDB_DI0_SEL>,
478*4882a593Smuzhiyun					 <&clks IMX5_CLK_LDB_DI1_SEL>,
479*4882a593Smuzhiyun					 <&clks IMX5_CLK_IPU_DI0_SEL>,
480*4882a593Smuzhiyun					 <&clks IMX5_CLK_IPU_DI1_SEL>,
481*4882a593Smuzhiyun					 <&clks IMX5_CLK_LDB_DI0_GATE>,
482*4882a593Smuzhiyun					 <&clks IMX5_CLK_LDB_DI1_GATE>;
483*4882a593Smuzhiyun				clock-names = "di0_pll", "di1_pll",
484*4882a593Smuzhiyun					      "di0_sel", "di1_sel",
485*4882a593Smuzhiyun					      "di0", "di1";
486*4882a593Smuzhiyun				status = "disabled";
487*4882a593Smuzhiyun
488*4882a593Smuzhiyun				lvds-channel@0 {
489*4882a593Smuzhiyun					#address-cells = <1>;
490*4882a593Smuzhiyun					#size-cells = <0>;
491*4882a593Smuzhiyun					reg = <0>;
492*4882a593Smuzhiyun					status = "disabled";
493*4882a593Smuzhiyun
494*4882a593Smuzhiyun					port@0 {
495*4882a593Smuzhiyun						reg = <0>;
496*4882a593Smuzhiyun
497*4882a593Smuzhiyun						lvds0_in: endpoint {
498*4882a593Smuzhiyun							remote-endpoint = <&ipu_di0_lvds0>;
499*4882a593Smuzhiyun						};
500*4882a593Smuzhiyun					};
501*4882a593Smuzhiyun
502*4882a593Smuzhiyun					port@2 {
503*4882a593Smuzhiyun						reg = <2>;
504*4882a593Smuzhiyun					};
505*4882a593Smuzhiyun				};
506*4882a593Smuzhiyun
507*4882a593Smuzhiyun				lvds-channel@1 {
508*4882a593Smuzhiyun					#address-cells = <1>;
509*4882a593Smuzhiyun					#size-cells = <0>;
510*4882a593Smuzhiyun					reg = <1>;
511*4882a593Smuzhiyun					status = "disabled";
512*4882a593Smuzhiyun
513*4882a593Smuzhiyun					port@1 {
514*4882a593Smuzhiyun						reg = <1>;
515*4882a593Smuzhiyun
516*4882a593Smuzhiyun						lvds1_in: endpoint {
517*4882a593Smuzhiyun							remote-endpoint = <&ipu_di1_lvds1>;
518*4882a593Smuzhiyun						};
519*4882a593Smuzhiyun					};
520*4882a593Smuzhiyun
521*4882a593Smuzhiyun					port@2 {
522*4882a593Smuzhiyun						reg = <2>;
523*4882a593Smuzhiyun					};
524*4882a593Smuzhiyun				};
525*4882a593Smuzhiyun			};
526*4882a593Smuzhiyun
527*4882a593Smuzhiyun			pwm1: pwm@53fb4000 {
528*4882a593Smuzhiyun				#pwm-cells = <3>;
529*4882a593Smuzhiyun				compatible = "fsl,imx53-pwm", "fsl,imx27-pwm";
530*4882a593Smuzhiyun				reg = <0x53fb4000 0x4000>;
531*4882a593Smuzhiyun				clocks = <&clks IMX5_CLK_PWM1_IPG_GATE>,
532*4882a593Smuzhiyun					 <&clks IMX5_CLK_PWM1_HF_GATE>;
533*4882a593Smuzhiyun				clock-names = "ipg", "per";
534*4882a593Smuzhiyun				interrupts = <61>;
535*4882a593Smuzhiyun			};
536*4882a593Smuzhiyun
537*4882a593Smuzhiyun			pwm2: pwm@53fb8000 {
538*4882a593Smuzhiyun				#pwm-cells = <3>;
539*4882a593Smuzhiyun				compatible = "fsl,imx53-pwm", "fsl,imx27-pwm";
540*4882a593Smuzhiyun				reg = <0x53fb8000 0x4000>;
541*4882a593Smuzhiyun				clocks = <&clks IMX5_CLK_PWM2_IPG_GATE>,
542*4882a593Smuzhiyun					 <&clks IMX5_CLK_PWM2_HF_GATE>;
543*4882a593Smuzhiyun				clock-names = "ipg", "per";
544*4882a593Smuzhiyun				interrupts = <94>;
545*4882a593Smuzhiyun			};
546*4882a593Smuzhiyun
547*4882a593Smuzhiyun			uart1: serial@53fbc000 {
548*4882a593Smuzhiyun				compatible = "fsl,imx53-uart", "fsl,imx21-uart";
549*4882a593Smuzhiyun				reg = <0x53fbc000 0x4000>;
550*4882a593Smuzhiyun				interrupts = <31>;
551*4882a593Smuzhiyun				clocks = <&clks IMX5_CLK_UART1_IPG_GATE>,
552*4882a593Smuzhiyun					 <&clks IMX5_CLK_UART1_PER_GATE>;
553*4882a593Smuzhiyun				clock-names = "ipg", "per";
554*4882a593Smuzhiyun				dmas = <&sdma 18 4 0>, <&sdma 19 4 0>;
555*4882a593Smuzhiyun				dma-names = "rx", "tx";
556*4882a593Smuzhiyun				status = "disabled";
557*4882a593Smuzhiyun			};
558*4882a593Smuzhiyun
559*4882a593Smuzhiyun			uart2: serial@53fc0000 {
560*4882a593Smuzhiyun				compatible = "fsl,imx53-uart", "fsl,imx21-uart";
561*4882a593Smuzhiyun				reg = <0x53fc0000 0x4000>;
562*4882a593Smuzhiyun				interrupts = <32>;
563*4882a593Smuzhiyun				clocks = <&clks IMX5_CLK_UART2_IPG_GATE>,
564*4882a593Smuzhiyun					 <&clks IMX5_CLK_UART2_PER_GATE>;
565*4882a593Smuzhiyun				clock-names = "ipg", "per";
566*4882a593Smuzhiyun				dmas = <&sdma 12 4 0>, <&sdma 13 4 0>;
567*4882a593Smuzhiyun				dma-names = "rx", "tx";
568*4882a593Smuzhiyun				status = "disabled";
569*4882a593Smuzhiyun			};
570*4882a593Smuzhiyun
571*4882a593Smuzhiyun			can1: can@53fc8000 {
572*4882a593Smuzhiyun				compatible = "fsl,imx53-flexcan", "fsl,imx25-flexcan";
573*4882a593Smuzhiyun				reg = <0x53fc8000 0x4000>;
574*4882a593Smuzhiyun				interrupts = <82>;
575*4882a593Smuzhiyun				clocks = <&clks IMX5_CLK_CAN1_IPG_GATE>,
576*4882a593Smuzhiyun					 <&clks IMX5_CLK_CAN1_SERIAL_GATE>;
577*4882a593Smuzhiyun				clock-names = "ipg", "per";
578*4882a593Smuzhiyun				status = "disabled";
579*4882a593Smuzhiyun			};
580*4882a593Smuzhiyun
581*4882a593Smuzhiyun			can2: can@53fcc000 {
582*4882a593Smuzhiyun				compatible = "fsl,imx53-flexcan", "fsl,imx25-flexcan";
583*4882a593Smuzhiyun				reg = <0x53fcc000 0x4000>;
584*4882a593Smuzhiyun				interrupts = <83>;
585*4882a593Smuzhiyun				clocks = <&clks IMX5_CLK_CAN2_IPG_GATE>,
586*4882a593Smuzhiyun					 <&clks IMX5_CLK_CAN2_SERIAL_GATE>;
587*4882a593Smuzhiyun				clock-names = "ipg", "per";
588*4882a593Smuzhiyun				status = "disabled";
589*4882a593Smuzhiyun			};
590*4882a593Smuzhiyun
591*4882a593Smuzhiyun			src: reset-controller@53fd0000 {
592*4882a593Smuzhiyun				compatible = "fsl,imx53-src", "fsl,imx51-src";
593*4882a593Smuzhiyun				reg = <0x53fd0000 0x4000>;
594*4882a593Smuzhiyun				interrupts = <75>;
595*4882a593Smuzhiyun				#reset-cells = <1>;
596*4882a593Smuzhiyun			};
597*4882a593Smuzhiyun
598*4882a593Smuzhiyun			clks: ccm@53fd4000{
599*4882a593Smuzhiyun				compatible = "fsl,imx53-ccm";
600*4882a593Smuzhiyun				reg = <0x53fd4000 0x4000>;
601*4882a593Smuzhiyun				interrupts = <0 71 0x04 0 72 0x04>;
602*4882a593Smuzhiyun				#clock-cells = <1>;
603*4882a593Smuzhiyun			};
604*4882a593Smuzhiyun
605*4882a593Smuzhiyun			gpio5: gpio@53fdc000 {
606*4882a593Smuzhiyun				compatible = "fsl,imx53-gpio", "fsl,imx35-gpio";
607*4882a593Smuzhiyun				reg = <0x53fdc000 0x4000>;
608*4882a593Smuzhiyun				interrupts = <103 104>;
609*4882a593Smuzhiyun				gpio-controller;
610*4882a593Smuzhiyun				#gpio-cells = <2>;
611*4882a593Smuzhiyun				interrupt-controller;
612*4882a593Smuzhiyun				#interrupt-cells = <2>;
613*4882a593Smuzhiyun			};
614*4882a593Smuzhiyun
615*4882a593Smuzhiyun			gpio6: gpio@53fe0000 {
616*4882a593Smuzhiyun				compatible = "fsl,imx53-gpio", "fsl,imx35-gpio";
617*4882a593Smuzhiyun				reg = <0x53fe0000 0x4000>;
618*4882a593Smuzhiyun				interrupts = <105 106>;
619*4882a593Smuzhiyun				gpio-controller;
620*4882a593Smuzhiyun				#gpio-cells = <2>;
621*4882a593Smuzhiyun				interrupt-controller;
622*4882a593Smuzhiyun				#interrupt-cells = <2>;
623*4882a593Smuzhiyun			};
624*4882a593Smuzhiyun
625*4882a593Smuzhiyun			gpio7: gpio@53fe4000 {
626*4882a593Smuzhiyun				compatible = "fsl,imx53-gpio", "fsl,imx35-gpio";
627*4882a593Smuzhiyun				reg = <0x53fe4000 0x4000>;
628*4882a593Smuzhiyun				interrupts = <107 108>;
629*4882a593Smuzhiyun				gpio-controller;
630*4882a593Smuzhiyun				#gpio-cells = <2>;
631*4882a593Smuzhiyun				interrupt-controller;
632*4882a593Smuzhiyun				#interrupt-cells = <2>;
633*4882a593Smuzhiyun			};
634*4882a593Smuzhiyun
635*4882a593Smuzhiyun			i2c3: i2c@53fec000 {
636*4882a593Smuzhiyun				#address-cells = <1>;
637*4882a593Smuzhiyun				#size-cells = <0>;
638*4882a593Smuzhiyun				compatible = "fsl,imx53-i2c", "fsl,imx21-i2c";
639*4882a593Smuzhiyun				reg = <0x53fec000 0x4000>;
640*4882a593Smuzhiyun				interrupts = <64>;
641*4882a593Smuzhiyun				clocks = <&clks IMX5_CLK_I2C3_GATE>;
642*4882a593Smuzhiyun				status = "disabled";
643*4882a593Smuzhiyun			};
644*4882a593Smuzhiyun
645*4882a593Smuzhiyun			uart4: serial@53ff0000 {
646*4882a593Smuzhiyun				compatible = "fsl,imx53-uart", "fsl,imx21-uart";
647*4882a593Smuzhiyun				reg = <0x53ff0000 0x4000>;
648*4882a593Smuzhiyun				interrupts = <13>;
649*4882a593Smuzhiyun				clocks = <&clks IMX5_CLK_UART4_IPG_GATE>,
650*4882a593Smuzhiyun					 <&clks IMX5_CLK_UART4_PER_GATE>;
651*4882a593Smuzhiyun				clock-names = "ipg", "per";
652*4882a593Smuzhiyun				dmas = <&sdma 2 4 0>, <&sdma 3 4 0>;
653*4882a593Smuzhiyun				dma-names = "rx", "tx";
654*4882a593Smuzhiyun				status = "disabled";
655*4882a593Smuzhiyun			};
656*4882a593Smuzhiyun		};
657*4882a593Smuzhiyun
658*4882a593Smuzhiyun		bus@60000000 {	/* AIPS2 */
659*4882a593Smuzhiyun			compatible = "fsl,aips-bus", "simple-bus";
660*4882a593Smuzhiyun			#address-cells = <1>;
661*4882a593Smuzhiyun			#size-cells = <1>;
662*4882a593Smuzhiyun			reg = <0x60000000 0x10000000>;
663*4882a593Smuzhiyun			ranges;
664*4882a593Smuzhiyun
665*4882a593Smuzhiyun			aipstz2: bridge@63f00000 {
666*4882a593Smuzhiyun				compatible = "fsl,imx53-aipstz";
667*4882a593Smuzhiyun				reg = <0x63f00000 0x60>;
668*4882a593Smuzhiyun			};
669*4882a593Smuzhiyun
670*4882a593Smuzhiyun			iim: efuse@63f98000 {
671*4882a593Smuzhiyun				compatible = "fsl,imx53-iim", "fsl,imx27-iim";
672*4882a593Smuzhiyun				reg = <0x63f98000 0x4000>;
673*4882a593Smuzhiyun				interrupts = <69>;
674*4882a593Smuzhiyun				clocks = <&clks IMX5_CLK_IIM_GATE>;
675*4882a593Smuzhiyun			};
676*4882a593Smuzhiyun
677*4882a593Smuzhiyun			uart5: serial@63f90000 {
678*4882a593Smuzhiyun				compatible = "fsl,imx53-uart", "fsl,imx21-uart";
679*4882a593Smuzhiyun				reg = <0x63f90000 0x4000>;
680*4882a593Smuzhiyun				interrupts = <86>;
681*4882a593Smuzhiyun				clocks = <&clks IMX5_CLK_UART5_IPG_GATE>,
682*4882a593Smuzhiyun					 <&clks IMX5_CLK_UART5_PER_GATE>;
683*4882a593Smuzhiyun				clock-names = "ipg", "per";
684*4882a593Smuzhiyun				dmas = <&sdma 16 4 0>, <&sdma 17 4 0>;
685*4882a593Smuzhiyun				dma-names = "rx", "tx";
686*4882a593Smuzhiyun				status = "disabled";
687*4882a593Smuzhiyun			};
688*4882a593Smuzhiyun
689*4882a593Smuzhiyun			tigerp: tigerp@63fa0000 {
690*4882a593Smuzhiyun				compatible = "fsl,imx53-tigerp", "fsl,imx51-tigerp";
691*4882a593Smuzhiyun				reg = <0x63fa0000 0x28>;
692*4882a593Smuzhiyun			};
693*4882a593Smuzhiyun
694*4882a593Smuzhiyun			owire: owire@63fa4000 {
695*4882a593Smuzhiyun				compatible = "fsl,imx53-owire", "fsl,imx21-owire";
696*4882a593Smuzhiyun				reg = <0x63fa4000 0x4000>;
697*4882a593Smuzhiyun				clocks = <&clks IMX5_CLK_OWIRE_GATE>;
698*4882a593Smuzhiyun				status = "disabled";
699*4882a593Smuzhiyun			};
700*4882a593Smuzhiyun
701*4882a593Smuzhiyun			ecspi2: spi@63fac000 {
702*4882a593Smuzhiyun				#address-cells = <1>;
703*4882a593Smuzhiyun				#size-cells = <0>;
704*4882a593Smuzhiyun				compatible = "fsl,imx53-ecspi", "fsl,imx51-ecspi";
705*4882a593Smuzhiyun				reg = <0x63fac000 0x4000>;
706*4882a593Smuzhiyun				interrupts = <37>;
707*4882a593Smuzhiyun				clocks = <&clks IMX5_CLK_ECSPI2_IPG_GATE>,
708*4882a593Smuzhiyun					 <&clks IMX5_CLK_ECSPI2_PER_GATE>;
709*4882a593Smuzhiyun				clock-names = "ipg", "per";
710*4882a593Smuzhiyun				status = "disabled";
711*4882a593Smuzhiyun			};
712*4882a593Smuzhiyun
713*4882a593Smuzhiyun			sdma: sdma@63fb0000 {
714*4882a593Smuzhiyun				compatible = "fsl,imx53-sdma", "fsl,imx35-sdma";
715*4882a593Smuzhiyun				reg = <0x63fb0000 0x4000>;
716*4882a593Smuzhiyun				interrupts = <6>;
717*4882a593Smuzhiyun				clocks = <&clks IMX5_CLK_SDMA_GATE>,
718*4882a593Smuzhiyun					 <&clks IMX5_CLK_AHB>;
719*4882a593Smuzhiyun				clock-names = "ipg", "ahb";
720*4882a593Smuzhiyun				#dma-cells = <3>;
721*4882a593Smuzhiyun				fsl,sdma-ram-script-name = "imx/sdma/sdma-imx53.bin";
722*4882a593Smuzhiyun			};
723*4882a593Smuzhiyun
724*4882a593Smuzhiyun			cspi: spi@63fc0000 {
725*4882a593Smuzhiyun				#address-cells = <1>;
726*4882a593Smuzhiyun				#size-cells = <0>;
727*4882a593Smuzhiyun				compatible = "fsl,imx53-cspi", "fsl,imx35-cspi";
728*4882a593Smuzhiyun				reg = <0x63fc0000 0x4000>;
729*4882a593Smuzhiyun				interrupts = <38>;
730*4882a593Smuzhiyun				clocks = <&clks IMX5_CLK_CSPI_IPG_GATE>,
731*4882a593Smuzhiyun					 <&clks IMX5_CLK_CSPI_IPG_GATE>;
732*4882a593Smuzhiyun				clock-names = "ipg", "per";
733*4882a593Smuzhiyun				status = "disabled";
734*4882a593Smuzhiyun			};
735*4882a593Smuzhiyun
736*4882a593Smuzhiyun			i2c2: i2c@63fc4000 {
737*4882a593Smuzhiyun				#address-cells = <1>;
738*4882a593Smuzhiyun				#size-cells = <0>;
739*4882a593Smuzhiyun				compatible = "fsl,imx53-i2c", "fsl,imx21-i2c";
740*4882a593Smuzhiyun				reg = <0x63fc4000 0x4000>;
741*4882a593Smuzhiyun				interrupts = <63>;
742*4882a593Smuzhiyun				clocks = <&clks IMX5_CLK_I2C2_GATE>;
743*4882a593Smuzhiyun				status = "disabled";
744*4882a593Smuzhiyun			};
745*4882a593Smuzhiyun
746*4882a593Smuzhiyun			i2c1: i2c@63fc8000 {
747*4882a593Smuzhiyun				#address-cells = <1>;
748*4882a593Smuzhiyun				#size-cells = <0>;
749*4882a593Smuzhiyun				compatible = "fsl,imx53-i2c", "fsl,imx21-i2c";
750*4882a593Smuzhiyun				reg = <0x63fc8000 0x4000>;
751*4882a593Smuzhiyun				interrupts = <62>;
752*4882a593Smuzhiyun				clocks = <&clks IMX5_CLK_I2C1_GATE>;
753*4882a593Smuzhiyun				status = "disabled";
754*4882a593Smuzhiyun			};
755*4882a593Smuzhiyun
756*4882a593Smuzhiyun			ssi1: ssi@63fcc000 {
757*4882a593Smuzhiyun				#sound-dai-cells = <0>;
758*4882a593Smuzhiyun				compatible = "fsl,imx53-ssi", "fsl,imx51-ssi",
759*4882a593Smuzhiyun						"fsl,imx21-ssi";
760*4882a593Smuzhiyun				reg = <0x63fcc000 0x4000>;
761*4882a593Smuzhiyun				interrupts = <29>;
762*4882a593Smuzhiyun				clocks = <&clks IMX5_CLK_SSI1_IPG_GATE>,
763*4882a593Smuzhiyun					 <&clks IMX5_CLK_SSI1_ROOT_GATE>;
764*4882a593Smuzhiyun				clock-names = "ipg", "baud";
765*4882a593Smuzhiyun				dmas = <&sdma 28 0 0>,
766*4882a593Smuzhiyun				       <&sdma 29 0 0>;
767*4882a593Smuzhiyun				dma-names = "rx", "tx";
768*4882a593Smuzhiyun				fsl,fifo-depth = <15>;
769*4882a593Smuzhiyun				status = "disabled";
770*4882a593Smuzhiyun			};
771*4882a593Smuzhiyun
772*4882a593Smuzhiyun			audmux: audmux@63fd0000 {
773*4882a593Smuzhiyun				compatible = "fsl,imx53-audmux", "fsl,imx31-audmux";
774*4882a593Smuzhiyun				reg = <0x63fd0000 0x4000>;
775*4882a593Smuzhiyun				status = "disabled";
776*4882a593Smuzhiyun			};
777*4882a593Smuzhiyun
778*4882a593Smuzhiyun			nfc: nand@63fdb000 {
779*4882a593Smuzhiyun				compatible = "fsl,imx53-nand";
780*4882a593Smuzhiyun				reg = <0x63fdb000 0x1000 0xf7ff0000 0x10000>;
781*4882a593Smuzhiyun				interrupts = <8>;
782*4882a593Smuzhiyun				clocks = <&clks IMX5_CLK_NFC_GATE>;
783*4882a593Smuzhiyun				status = "disabled";
784*4882a593Smuzhiyun			};
785*4882a593Smuzhiyun
786*4882a593Smuzhiyun			ssi3: ssi@63fe8000 {
787*4882a593Smuzhiyun				#sound-dai-cells = <0>;
788*4882a593Smuzhiyun				compatible = "fsl,imx53-ssi", "fsl,imx51-ssi",
789*4882a593Smuzhiyun						"fsl,imx21-ssi";
790*4882a593Smuzhiyun				reg = <0x63fe8000 0x4000>;
791*4882a593Smuzhiyun				interrupts = <96>;
792*4882a593Smuzhiyun				clocks = <&clks IMX5_CLK_SSI3_IPG_GATE>,
793*4882a593Smuzhiyun					 <&clks IMX5_CLK_SSI3_ROOT_GATE>;
794*4882a593Smuzhiyun				clock-names = "ipg", "baud";
795*4882a593Smuzhiyun				dmas = <&sdma 46 0 0>,
796*4882a593Smuzhiyun				       <&sdma 47 0 0>;
797*4882a593Smuzhiyun				dma-names = "rx", "tx";
798*4882a593Smuzhiyun				fsl,fifo-depth = <15>;
799*4882a593Smuzhiyun				status = "disabled";
800*4882a593Smuzhiyun			};
801*4882a593Smuzhiyun
802*4882a593Smuzhiyun			fec: ethernet@63fec000 {
803*4882a593Smuzhiyun				compatible = "fsl,imx53-fec", "fsl,imx25-fec";
804*4882a593Smuzhiyun				reg = <0x63fec000 0x4000>;
805*4882a593Smuzhiyun				interrupts = <87>;
806*4882a593Smuzhiyun				clocks = <&clks IMX5_CLK_FEC_GATE>,
807*4882a593Smuzhiyun					 <&clks IMX5_CLK_FEC_GATE>,
808*4882a593Smuzhiyun					 <&clks IMX5_CLK_FEC_GATE>;
809*4882a593Smuzhiyun				clock-names = "ipg", "ahb", "ptp";
810*4882a593Smuzhiyun				status = "disabled";
811*4882a593Smuzhiyun			};
812*4882a593Smuzhiyun
813*4882a593Smuzhiyun			tve: tve@63ff0000 {
814*4882a593Smuzhiyun				compatible = "fsl,imx53-tve";
815*4882a593Smuzhiyun				reg = <0x63ff0000 0x1000>;
816*4882a593Smuzhiyun				interrupts = <92>;
817*4882a593Smuzhiyun				clocks = <&clks IMX5_CLK_TVE_GATE>,
818*4882a593Smuzhiyun					 <&clks IMX5_CLK_IPU_DI1_SEL>;
819*4882a593Smuzhiyun				clock-names = "tve", "di_sel";
820*4882a593Smuzhiyun				status = "disabled";
821*4882a593Smuzhiyun
822*4882a593Smuzhiyun				port {
823*4882a593Smuzhiyun					tve_in: endpoint {
824*4882a593Smuzhiyun						remote-endpoint = <&ipu_di1_tve>;
825*4882a593Smuzhiyun					};
826*4882a593Smuzhiyun				};
827*4882a593Smuzhiyun			};
828*4882a593Smuzhiyun
829*4882a593Smuzhiyun			vpu: vpu@63ff4000 {
830*4882a593Smuzhiyun				compatible = "fsl,imx53-vpu", "cnm,coda7541";
831*4882a593Smuzhiyun				reg = <0x63ff4000 0x1000>;
832*4882a593Smuzhiyun				interrupts = <9>;
833*4882a593Smuzhiyun				clocks = <&clks IMX5_CLK_VPU_REFERENCE_GATE>,
834*4882a593Smuzhiyun					 <&clks IMX5_CLK_VPU_GATE>;
835*4882a593Smuzhiyun				clock-names = "per", "ahb";
836*4882a593Smuzhiyun				resets = <&src 1>;
837*4882a593Smuzhiyun				iram = <&ocram>;
838*4882a593Smuzhiyun			};
839*4882a593Smuzhiyun
840*4882a593Smuzhiyun			sahara: crypto@63ff8000 {
841*4882a593Smuzhiyun				compatible = "fsl,imx53-sahara";
842*4882a593Smuzhiyun				reg = <0x63ff8000 0x4000>;
843*4882a593Smuzhiyun				interrupts = <19 20>;
844*4882a593Smuzhiyun				clocks = <&clks IMX5_CLK_SAHARA_IPG_GATE>,
845*4882a593Smuzhiyun					 <&clks IMX5_CLK_SAHARA_IPG_GATE>;
846*4882a593Smuzhiyun				clock-names = "ipg", "ahb";
847*4882a593Smuzhiyun			};
848*4882a593Smuzhiyun		};
849*4882a593Smuzhiyun
850*4882a593Smuzhiyun		ocram: sram@f8000000 {
851*4882a593Smuzhiyun			compatible = "mmio-sram";
852*4882a593Smuzhiyun			reg = <0xf8000000 0x20000>;
853*4882a593Smuzhiyun			clocks = <&clks IMX5_CLK_OCRAM>;
854*4882a593Smuzhiyun		};
855*4882a593Smuzhiyun	};
856*4882a593Smuzhiyun};
857