xref: /linux/scripts/dtc/include-prefixes/arm/nxp/imx/imx51.dtsi (revision ec71f661a572a770d7c861cd52a50cbbb0e1a8d1)
1724ba675SRob Herring// SPDX-License-Identifier: GPL-2.0+
2724ba675SRob Herring//
3724ba675SRob Herring// Copyright 2011 Freescale Semiconductor, Inc.
4724ba675SRob Herring// Copyright 2011 Linaro Ltd.
5724ba675SRob Herring
6724ba675SRob Herring#include "imx51-pinfunc.h"
7724ba675SRob Herring#include <dt-bindings/clock/imx5-clock.h>
8724ba675SRob Herring#include <dt-bindings/gpio/gpio.h>
9724ba675SRob Herring#include <dt-bindings/input/input.h>
10724ba675SRob Herring#include <dt-bindings/interrupt-controller/irq.h>
11724ba675SRob Herring
12724ba675SRob Herring/ {
13724ba675SRob Herring	#address-cells = <1>;
14724ba675SRob Herring	#size-cells = <1>;
15724ba675SRob Herring	/*
16724ba675SRob Herring	 * The decompressor and also some bootloaders rely on a
17724ba675SRob Herring	 * pre-existing /chosen node to be available to insert the
18724ba675SRob Herring	 * command line and merge other ATAGS info.
19724ba675SRob Herring	 */
20724ba675SRob Herring	chosen {};
21724ba675SRob Herring
22724ba675SRob Herring	aliases {
23724ba675SRob Herring		ethernet0 = &fec;
24724ba675SRob Herring		gpio0 = &gpio1;
25724ba675SRob Herring		gpio1 = &gpio2;
26724ba675SRob Herring		gpio2 = &gpio3;
27724ba675SRob Herring		gpio3 = &gpio4;
28724ba675SRob Herring		i2c0 = &i2c1;
29724ba675SRob Herring		i2c1 = &i2c2;
30724ba675SRob Herring		mmc0 = &esdhc1;
31724ba675SRob Herring		mmc1 = &esdhc2;
32724ba675SRob Herring		mmc2 = &esdhc3;
33724ba675SRob Herring		mmc3 = &esdhc4;
34724ba675SRob Herring		serial0 = &uart1;
35724ba675SRob Herring		serial1 = &uart2;
36724ba675SRob Herring		serial2 = &uart3;
37724ba675SRob Herring		spi0 = &ecspi1;
38724ba675SRob Herring		spi1 = &ecspi2;
39724ba675SRob Herring		spi2 = &cspi;
40724ba675SRob Herring	};
41724ba675SRob Herring
42724ba675SRob Herring	tzic: tz-interrupt-controller@e0000000 {
43724ba675SRob Herring		compatible = "fsl,imx51-tzic", "fsl,tzic";
44724ba675SRob Herring		interrupt-controller;
45724ba675SRob Herring		#interrupt-cells = <1>;
46724ba675SRob Herring		reg = <0xe0000000 0x4000>;
47724ba675SRob Herring	};
48724ba675SRob Herring
49724ba675SRob Herring	clocks {
50724ba675SRob Herring		ckil {
51724ba675SRob Herring			compatible = "fixed-clock";
52724ba675SRob Herring			#clock-cells = <0>;
53724ba675SRob Herring			clock-frequency = <32768>;
54724ba675SRob Herring		};
55724ba675SRob Herring
56724ba675SRob Herring		ckih1 {
57724ba675SRob Herring			compatible = "fixed-clock";
58724ba675SRob Herring			#clock-cells = <0>;
59724ba675SRob Herring			clock-frequency = <0>;
60724ba675SRob Herring		};
61724ba675SRob Herring
62724ba675SRob Herring		ckih2 {
63724ba675SRob Herring			compatible = "fixed-clock";
64724ba675SRob Herring			#clock-cells = <0>;
65724ba675SRob Herring			clock-frequency = <0>;
66724ba675SRob Herring		};
67724ba675SRob Herring
68724ba675SRob Herring		osc {
69724ba675SRob Herring			compatible = "fixed-clock";
70724ba675SRob Herring			#clock-cells = <0>;
71724ba675SRob Herring			clock-frequency = <24000000>;
72724ba675SRob Herring		};
73724ba675SRob Herring	};
74724ba675SRob Herring
75724ba675SRob Herring	cpus {
76724ba675SRob Herring		#address-cells = <1>;
77724ba675SRob Herring		#size-cells = <0>;
78724ba675SRob Herring		cpu: cpu@0 {
79724ba675SRob Herring			device_type = "cpu";
80724ba675SRob Herring			compatible = "arm,cortex-a8";
81724ba675SRob Herring			reg = <0>;
82724ba675SRob Herring			clock-latency = <62500>;
83724ba675SRob Herring			clocks = <&clks IMX5_CLK_CPU_PODF>;
84724ba675SRob Herring			clock-names = "cpu";
85724ba675SRob Herring			operating-points = <
86724ba675SRob Herring				166000	1000000
87724ba675SRob Herring				600000	1050000
88724ba675SRob Herring				800000	1100000
89724ba675SRob Herring			>;
90724ba675SRob Herring			voltage-tolerance = <5>;
91724ba675SRob Herring		};
92724ba675SRob Herring	};
93724ba675SRob Herring
94724ba675SRob Herring	pmu: pmu {
95724ba675SRob Herring		compatible = "arm,cortex-a8-pmu";
96724ba675SRob Herring		interrupt-parent = <&tzic>;
97724ba675SRob Herring		interrupts = <77>;
98724ba675SRob Herring	};
99724ba675SRob Herring
100724ba675SRob Herring	usbphy0: usbphy0 {
101724ba675SRob Herring		compatible = "usb-nop-xceiv";
102724ba675SRob Herring		clocks = <&clks IMX5_CLK_USB_PHY_GATE>;
103724ba675SRob Herring		clock-names = "main_clk";
104724ba675SRob Herring		#phy-cells = <0>;
105724ba675SRob Herring	};
106724ba675SRob Herring
107724ba675SRob Herring	capture-subsystem {
108724ba675SRob Herring		compatible = "fsl,imx-capture-subsystem";
109724ba675SRob Herring		ports = <&ipu_csi0>, <&ipu_csi1>;
110724ba675SRob Herring	};
111724ba675SRob Herring
112724ba675SRob Herring	display-subsystem {
113724ba675SRob Herring		compatible = "fsl,imx-display-subsystem";
114724ba675SRob Herring		ports = <&ipu_di0>, <&ipu_di1>;
115724ba675SRob Herring	};
116724ba675SRob Herring
117724ba675SRob Herring	soc: soc {
118724ba675SRob Herring		#address-cells = <1>;
119724ba675SRob Herring		#size-cells = <1>;
120724ba675SRob Herring		compatible = "simple-bus";
121724ba675SRob Herring		interrupt-parent = <&tzic>;
122724ba675SRob Herring		ranges;
123724ba675SRob Herring
124724ba675SRob Herring		iram: sram@1ffe0000 {
125724ba675SRob Herring			compatible = "mmio-sram";
126724ba675SRob Herring			reg = <0x1ffe0000 0x20000>;
127724ba675SRob Herring			ranges = <0 0x1ffe0000 0x20000>;
128724ba675SRob Herring			#address-cells = <1>;
129724ba675SRob Herring			#size-cells = <1>;
130724ba675SRob Herring		};
131724ba675SRob Herring
132724ba675SRob Herring		gpu: gpu@30000000 {
133724ba675SRob Herring			compatible = "amd,imageon-200.1", "amd,imageon";
134724ba675SRob Herring			reg = <0x30000000 0x20000>;
135724ba675SRob Herring			reg-names = "kgsl_3d0_reg_memory";
136724ba675SRob Herring			interrupts = <12>;
137724ba675SRob Herring			interrupt-names = "kgsl_3d0_irq";
138724ba675SRob Herring			clocks = <&clks IMX5_CLK_GPU3D_GATE>, <&clks IMX5_CLK_GARB_GATE>;
139724ba675SRob Herring			clock-names = "core_clk", "mem_iface_clk";
140724ba675SRob Herring		};
141724ba675SRob Herring
142724ba675SRob Herring		ipu: ipu@40000000 {
143724ba675SRob Herring			#address-cells = <1>;
144724ba675SRob Herring			#size-cells = <0>;
145724ba675SRob Herring			compatible = "fsl,imx51-ipu";
146724ba675SRob Herring			reg = <0x40000000 0x20000000>;
147724ba675SRob Herring			interrupts = <11 10>;
148724ba675SRob Herring			clocks = <&clks IMX5_CLK_IPU_GATE>,
149724ba675SRob Herring				 <&clks IMX5_CLK_IPU_DI0_GATE>,
150724ba675SRob Herring				 <&clks IMX5_CLK_IPU_DI1_GATE>;
151724ba675SRob Herring			clock-names = "bus", "di0", "di1";
152724ba675SRob Herring			resets = <&src 2>;
153724ba675SRob Herring
154724ba675SRob Herring			ipu_csi0: port@0 {
155724ba675SRob Herring				reg = <0>;
156724ba675SRob Herring			};
157724ba675SRob Herring
158724ba675SRob Herring			ipu_csi1: port@1 {
159724ba675SRob Herring				reg = <1>;
160724ba675SRob Herring			};
161724ba675SRob Herring
162724ba675SRob Herring			ipu_di0: port@2 {
163724ba675SRob Herring				reg = <2>;
164724ba675SRob Herring
165724ba675SRob Herring				ipu_di0_disp1: endpoint {
166724ba675SRob Herring				};
167724ba675SRob Herring			};
168724ba675SRob Herring
169724ba675SRob Herring			ipu_di1: port@3 {
170724ba675SRob Herring				reg = <3>;
171724ba675SRob Herring
172724ba675SRob Herring				ipu_di1_disp2: endpoint {
173724ba675SRob Herring				};
174724ba675SRob Herring			};
175724ba675SRob Herring		};
176724ba675SRob Herring
177724ba675SRob Herring		aips1: bus@70000000 { /* AIPS1 */
178724ba675SRob Herring			compatible = "fsl,aips-bus", "simple-bus";
179724ba675SRob Herring			#address-cells = <1>;
180724ba675SRob Herring			#size-cells = <1>;
181724ba675SRob Herring			reg = <0x70000000 0x10000000>;
182724ba675SRob Herring			ranges;
183724ba675SRob Herring
184724ba675SRob Herring			spba-bus@70000000 {
185724ba675SRob Herring				compatible = "fsl,spba-bus", "simple-bus";
186724ba675SRob Herring				#address-cells = <1>;
187724ba675SRob Herring				#size-cells = <1>;
188724ba675SRob Herring				reg = <0x70000000 0x40000>;
189724ba675SRob Herring				ranges;
190724ba675SRob Herring
191724ba675SRob Herring				esdhc1: mmc@70004000 {
192724ba675SRob Herring					compatible = "fsl,imx51-esdhc";
193724ba675SRob Herring					reg = <0x70004000 0x4000>;
194724ba675SRob Herring					interrupts = <1>;
195724ba675SRob Herring					clocks = <&clks IMX5_CLK_ESDHC1_IPG_GATE>,
196724ba675SRob Herring						 <&clks IMX5_CLK_DUMMY>,
197724ba675SRob Herring						 <&clks IMX5_CLK_ESDHC1_PER_GATE>;
198724ba675SRob Herring					clock-names = "ipg", "ahb", "per";
199724ba675SRob Herring					status = "disabled";
200724ba675SRob Herring				};
201724ba675SRob Herring
202724ba675SRob Herring				esdhc2: mmc@70008000 {
203724ba675SRob Herring					compatible = "fsl,imx51-esdhc";
204724ba675SRob Herring					reg = <0x70008000 0x4000>;
205724ba675SRob Herring					interrupts = <2>;
206724ba675SRob Herring					clocks = <&clks IMX5_CLK_ESDHC2_IPG_GATE>,
207724ba675SRob Herring						 <&clks IMX5_CLK_DUMMY>,
208724ba675SRob Herring						 <&clks IMX5_CLK_ESDHC2_PER_GATE>;
209724ba675SRob Herring					clock-names = "ipg", "ahb", "per";
210724ba675SRob Herring					bus-width = <4>;
211724ba675SRob Herring					status = "disabled";
212724ba675SRob Herring				};
213724ba675SRob Herring
214724ba675SRob Herring				uart3: serial@7000c000 {
215724ba675SRob Herring					compatible = "fsl,imx51-uart", "fsl,imx21-uart";
216724ba675SRob Herring					reg = <0x7000c000 0x4000>;
217724ba675SRob Herring					interrupts = <33>;
218724ba675SRob Herring					clocks = <&clks IMX5_CLK_UART3_IPG_GATE>,
219724ba675SRob Herring						 <&clks IMX5_CLK_UART3_PER_GATE>;
220724ba675SRob Herring					clock-names = "ipg", "per";
221724ba675SRob Herring					dmas = <&sdma 43 5 1>, <&sdma 44 5 2>;
222724ba675SRob Herring					dma-names = "rx", "tx";
223724ba675SRob Herring					status = "disabled";
224724ba675SRob Herring				};
225724ba675SRob Herring
226724ba675SRob Herring				ecspi1: spi@70010000 {
227724ba675SRob Herring					#address-cells = <1>;
228724ba675SRob Herring					#size-cells = <0>;
229724ba675SRob Herring					compatible = "fsl,imx51-ecspi";
230724ba675SRob Herring					reg = <0x70010000 0x4000>;
231724ba675SRob Herring					interrupts = <36>;
232724ba675SRob Herring					clocks = <&clks IMX5_CLK_ECSPI1_IPG_GATE>,
233724ba675SRob Herring						 <&clks IMX5_CLK_ECSPI1_PER_GATE>;
234724ba675SRob Herring					clock-names = "ipg", "per";
235724ba675SRob Herring					status = "disabled";
236724ba675SRob Herring				};
237724ba675SRob Herring
238724ba675SRob Herring				ssi2: ssi@70014000 {
239724ba675SRob Herring					#sound-dai-cells = <0>;
240724ba675SRob Herring					compatible = "fsl,imx51-ssi", "fsl,imx21-ssi";
241724ba675SRob Herring					reg = <0x70014000 0x4000>;
242724ba675SRob Herring					interrupts = <30>;
243724ba675SRob Herring					clocks = <&clks IMX5_CLK_SSI2_IPG_GATE>,
244724ba675SRob Herring						 <&clks IMX5_CLK_SSI2_ROOT_GATE>;
245724ba675SRob Herring					clock-names = "ipg", "baud";
246724ba675SRob Herring					dmas = <&sdma 24 1 0>,
247724ba675SRob Herring					       <&sdma 25 1 0>;
248724ba675SRob Herring					dma-names = "rx", "tx";
249724ba675SRob Herring					fsl,fifo-depth = <15>;
250724ba675SRob Herring					status = "disabled";
251724ba675SRob Herring				};
252724ba675SRob Herring
253724ba675SRob Herring				esdhc3: mmc@70020000 {
254724ba675SRob Herring					compatible = "fsl,imx51-esdhc";
255724ba675SRob Herring					reg = <0x70020000 0x4000>;
256724ba675SRob Herring					interrupts = <3>;
257724ba675SRob Herring					clocks = <&clks IMX5_CLK_ESDHC3_IPG_GATE>,
258724ba675SRob Herring						 <&clks IMX5_CLK_DUMMY>,
259724ba675SRob Herring						 <&clks IMX5_CLK_ESDHC3_PER_GATE>;
260724ba675SRob Herring					clock-names = "ipg", "ahb", "per";
261724ba675SRob Herring					bus-width = <4>;
262724ba675SRob Herring					status = "disabled";
263724ba675SRob Herring				};
264724ba675SRob Herring
265724ba675SRob Herring				esdhc4: mmc@70024000 {
266724ba675SRob Herring					compatible = "fsl,imx51-esdhc";
267724ba675SRob Herring					reg = <0x70024000 0x4000>;
268724ba675SRob Herring					interrupts = <4>;
269724ba675SRob Herring					clocks = <&clks IMX5_CLK_ESDHC4_IPG_GATE>,
270724ba675SRob Herring						 <&clks IMX5_CLK_DUMMY>,
271724ba675SRob Herring						 <&clks IMX5_CLK_ESDHC4_PER_GATE>;
272724ba675SRob Herring					clock-names = "ipg", "ahb", "per";
273724ba675SRob Herring					bus-width = <4>;
274724ba675SRob Herring					status = "disabled";
275724ba675SRob Herring				};
276724ba675SRob Herring			};
277724ba675SRob Herring
278724ba675SRob Herring			aipstz1: bridge@73f00000 {
279724ba675SRob Herring				compatible = "fsl,imx51-aipstz";
280724ba675SRob Herring				reg = <0x73f00000 0x60>;
281724ba675SRob Herring			};
282724ba675SRob Herring
283724ba675SRob Herring			usbotg: usb@73f80000 {
284724ba675SRob Herring				compatible = "fsl,imx51-usb", "fsl,imx27-usb";
285724ba675SRob Herring				reg = <0x73f80000 0x0200>;
286724ba675SRob Herring				interrupts = <18>;
287724ba675SRob Herring				clocks = <&clks IMX5_CLK_USBOH3_GATE>;
288724ba675SRob Herring				fsl,usbmisc = <&usbmisc 0>;
289724ba675SRob Herring				fsl,usbphy = <&usbphy0>;
290724ba675SRob Herring				status = "disabled";
291724ba675SRob Herring			};
292724ba675SRob Herring
293724ba675SRob Herring			usbh1: usb@73f80200 {
294724ba675SRob Herring				compatible = "fsl,imx51-usb", "fsl,imx27-usb";
295724ba675SRob Herring				reg = <0x73f80200 0x0200>;
296724ba675SRob Herring				interrupts = <14>;
297724ba675SRob Herring				clocks = <&clks IMX5_CLK_USBOH3_GATE>;
298724ba675SRob Herring				fsl,usbmisc = <&usbmisc 1>;
299724ba675SRob Herring				dr_mode = "host";
300724ba675SRob Herring				status = "disabled";
301724ba675SRob Herring			};
302724ba675SRob Herring
303724ba675SRob Herring			usbh2: usb@73f80400 {
304724ba675SRob Herring				compatible = "fsl,imx51-usb", "fsl,imx27-usb";
305724ba675SRob Herring				reg = <0x73f80400 0x0200>;
306724ba675SRob Herring				interrupts = <16>;
307724ba675SRob Herring				clocks = <&clks IMX5_CLK_USBOH3_GATE>;
308724ba675SRob Herring				fsl,usbmisc = <&usbmisc 2>;
309724ba675SRob Herring				dr_mode = "host";
310724ba675SRob Herring				status = "disabled";
311724ba675SRob Herring			};
312724ba675SRob Herring
313724ba675SRob Herring			usbh3: usb@73f80600 {
314724ba675SRob Herring				compatible = "fsl,imx51-usb", "fsl,imx27-usb";
315724ba675SRob Herring				reg = <0x73f80600 0x0200>;
316724ba675SRob Herring				interrupts = <17>;
317724ba675SRob Herring				clocks = <&clks IMX5_CLK_USBOH3_GATE>;
318724ba675SRob Herring				fsl,usbmisc = <&usbmisc 3>;
319724ba675SRob Herring				dr_mode = "host";
320724ba675SRob Herring				status = "disabled";
321724ba675SRob Herring			};
322724ba675SRob Herring
323724ba675SRob Herring			usbmisc: usbmisc@73f80800 {
324724ba675SRob Herring				#index-cells = <1>;
325724ba675SRob Herring				compatible = "fsl,imx51-usbmisc";
326724ba675SRob Herring				reg = <0x73f80800 0x200>;
327724ba675SRob Herring				clocks = <&clks IMX5_CLK_USBOH3_GATE>;
328724ba675SRob Herring			};
329724ba675SRob Herring
330724ba675SRob Herring			gpio1: gpio@73f84000 {
331724ba675SRob Herring				compatible = "fsl,imx51-gpio", "fsl,imx35-gpio";
332724ba675SRob Herring				reg = <0x73f84000 0x4000>;
333724ba675SRob Herring				interrupts = <50 51>;
334724ba675SRob Herring				gpio-controller;
335724ba675SRob Herring				#gpio-cells = <2>;
336724ba675SRob Herring				interrupt-controller;
337724ba675SRob Herring				#interrupt-cells = <2>;
338724ba675SRob Herring			};
339724ba675SRob Herring
340724ba675SRob Herring			gpio2: gpio@73f88000 {
341724ba675SRob Herring				compatible = "fsl,imx51-gpio", "fsl,imx35-gpio";
342724ba675SRob Herring				reg = <0x73f88000 0x4000>;
343724ba675SRob Herring				interrupts = <52 53>;
344724ba675SRob Herring				gpio-controller;
345724ba675SRob Herring				#gpio-cells = <2>;
346724ba675SRob Herring				interrupt-controller;
347724ba675SRob Herring				#interrupt-cells = <2>;
348724ba675SRob Herring			};
349724ba675SRob Herring
350724ba675SRob Herring			gpio3: gpio@73f8c000 {
351724ba675SRob Herring				compatible = "fsl,imx51-gpio", "fsl,imx35-gpio";
352724ba675SRob Herring				reg = <0x73f8c000 0x4000>;
353724ba675SRob Herring				interrupts = <54 55>;
354724ba675SRob Herring				gpio-controller;
355724ba675SRob Herring				#gpio-cells = <2>;
356724ba675SRob Herring				interrupt-controller;
357724ba675SRob Herring				#interrupt-cells = <2>;
358724ba675SRob Herring			};
359724ba675SRob Herring
360724ba675SRob Herring			gpio4: gpio@73f90000 {
361724ba675SRob Herring				compatible = "fsl,imx51-gpio", "fsl,imx35-gpio";
362724ba675SRob Herring				reg = <0x73f90000 0x4000>;
363724ba675SRob Herring				interrupts = <56 57>;
364724ba675SRob Herring				gpio-controller;
365724ba675SRob Herring				#gpio-cells = <2>;
366724ba675SRob Herring				interrupt-controller;
367724ba675SRob Herring				#interrupt-cells = <2>;
368724ba675SRob Herring			};
369724ba675SRob Herring
370724ba675SRob Herring			kpp: kpp@73f94000 {
371724ba675SRob Herring				compatible = "fsl,imx51-kpp", "fsl,imx21-kpp";
372724ba675SRob Herring				reg = <0x73f94000 0x4000>;
373724ba675SRob Herring				interrupts = <60>;
374724ba675SRob Herring				clocks = <&clks IMX5_CLK_DUMMY>;
375724ba675SRob Herring				status = "disabled";
376724ba675SRob Herring			};
377724ba675SRob Herring
378724ba675SRob Herring			wdog1: watchdog@73f98000 {
379724ba675SRob Herring				compatible = "fsl,imx51-wdt", "fsl,imx21-wdt";
380724ba675SRob Herring				reg = <0x73f98000 0x4000>;
381724ba675SRob Herring				interrupts = <58>;
382724ba675SRob Herring				clocks = <&clks IMX5_CLK_DUMMY>;
383724ba675SRob Herring			};
384724ba675SRob Herring
385724ba675SRob Herring			wdog2: watchdog@73f9c000 {
386724ba675SRob Herring				compatible = "fsl,imx51-wdt", "fsl,imx21-wdt";
387724ba675SRob Herring				reg = <0x73f9c000 0x4000>;
388724ba675SRob Herring				interrupts = <59>;
389724ba675SRob Herring				clocks = <&clks IMX5_CLK_DUMMY>;
390724ba675SRob Herring				status = "disabled";
391724ba675SRob Herring			};
392724ba675SRob Herring
393724ba675SRob Herring			gpt: timer@73fa0000 {
394724ba675SRob Herring				compatible = "fsl,imx51-gpt", "fsl,imx31-gpt";
395724ba675SRob Herring				reg = <0x73fa0000 0x4000>;
396724ba675SRob Herring				interrupts = <39>;
397724ba675SRob Herring				clocks = <&clks IMX5_CLK_GPT_IPG_GATE>,
398724ba675SRob Herring					 <&clks IMX5_CLK_GPT_HF_GATE>;
399724ba675SRob Herring				clock-names = "ipg", "per";
400724ba675SRob Herring			};
401724ba675SRob Herring
4024b5cd1feSMarek Vasut			iomuxc: pinctrl@73fa8000 {
403724ba675SRob Herring				compatible = "fsl,imx51-iomuxc";
404724ba675SRob Herring				reg = <0x73fa8000 0x4000>;
405724ba675SRob Herring			};
406724ba675SRob Herring
407724ba675SRob Herring			pwm1: pwm@73fb4000 {
408724ba675SRob Herring				#pwm-cells = <3>;
409724ba675SRob Herring				compatible = "fsl,imx51-pwm", "fsl,imx27-pwm";
410724ba675SRob Herring				reg = <0x73fb4000 0x4000>;
411724ba675SRob Herring				clocks = <&clks IMX5_CLK_PWM1_IPG_GATE>,
412724ba675SRob Herring					 <&clks IMX5_CLK_PWM1_HF_GATE>;
413724ba675SRob Herring				clock-names = "ipg", "per";
414724ba675SRob Herring				interrupts = <61>;
415724ba675SRob Herring			};
416724ba675SRob Herring
417724ba675SRob Herring			pwm2: pwm@73fb8000 {
418724ba675SRob Herring				#pwm-cells = <3>;
419724ba675SRob Herring				compatible = "fsl,imx51-pwm", "fsl,imx27-pwm";
420724ba675SRob Herring				reg = <0x73fb8000 0x4000>;
421724ba675SRob Herring				clocks = <&clks IMX5_CLK_PWM2_IPG_GATE>,
422724ba675SRob Herring					 <&clks IMX5_CLK_PWM2_HF_GATE>;
423724ba675SRob Herring				clock-names = "ipg", "per";
424724ba675SRob Herring				interrupts = <94>;
425724ba675SRob Herring			};
426724ba675SRob Herring
427724ba675SRob Herring			uart1: serial@73fbc000 {
428724ba675SRob Herring				compatible = "fsl,imx51-uart", "fsl,imx21-uart";
429724ba675SRob Herring				reg = <0x73fbc000 0x4000>;
430724ba675SRob Herring				interrupts = <31>;
431724ba675SRob Herring				clocks = <&clks IMX5_CLK_UART1_IPG_GATE>,
432724ba675SRob Herring					 <&clks IMX5_CLK_UART1_PER_GATE>;
433724ba675SRob Herring				clock-names = "ipg", "per";
434724ba675SRob Herring				dmas = <&sdma 18 4 1>, <&sdma 19 4 2>;
435724ba675SRob Herring				dma-names = "rx", "tx";
436724ba675SRob Herring				status = "disabled";
437724ba675SRob Herring			};
438724ba675SRob Herring
439724ba675SRob Herring			uart2: serial@73fc0000 {
440724ba675SRob Herring				compatible = "fsl,imx51-uart", "fsl,imx21-uart";
441724ba675SRob Herring				reg = <0x73fc0000 0x4000>;
442724ba675SRob Herring				interrupts = <32>;
443724ba675SRob Herring				clocks = <&clks IMX5_CLK_UART2_IPG_GATE>,
444724ba675SRob Herring					 <&clks IMX5_CLK_UART2_PER_GATE>;
445724ba675SRob Herring				clock-names = "ipg", "per";
446724ba675SRob Herring				dmas = <&sdma 16 4 1>, <&sdma 17 4 2>;
447724ba675SRob Herring				dma-names = "rx", "tx";
448724ba675SRob Herring				status = "disabled";
449724ba675SRob Herring			};
450724ba675SRob Herring
451724ba675SRob Herring			src: reset-controller@73fd0000 {
452724ba675SRob Herring				compatible = "fsl,imx51-src";
453724ba675SRob Herring				reg = <0x73fd0000 0x4000>;
454724ba675SRob Herring				interrupts = <75>;
455724ba675SRob Herring				#reset-cells = <1>;
456724ba675SRob Herring			};
457724ba675SRob Herring
458724ba675SRob Herring			clks: ccm@73fd4000 {
459724ba675SRob Herring				compatible = "fsl,imx51-ccm";
460724ba675SRob Herring				reg = <0x73fd4000 0x4000>;
4619c9b2d86SFabio Estevam				interrupts = <71>, <72>;
462724ba675SRob Herring				#clock-cells = <1>;
463724ba675SRob Herring			};
464724ba675SRob Herring		};
465724ba675SRob Herring
466724ba675SRob Herring		aips2: bus@80000000 {	/* AIPS2 */
467724ba675SRob Herring			compatible = "fsl,aips-bus", "simple-bus";
468724ba675SRob Herring			#address-cells = <1>;
469724ba675SRob Herring			#size-cells = <1>;
470724ba675SRob Herring			reg = <0x80000000 0x10000000>;
471724ba675SRob Herring			ranges;
472724ba675SRob Herring
473724ba675SRob Herring			aipstz2: bridge@83f00000 {
474724ba675SRob Herring				compatible = "fsl,imx51-aipstz";
475724ba675SRob Herring				reg = <0x83f00000 0x60>;
476724ba675SRob Herring			};
477724ba675SRob Herring
478724ba675SRob Herring			iim: efuse@83f98000 {
479d5b55c35SFabio Estevam				compatible = "fsl,imx51-iim";
480724ba675SRob Herring				reg = <0x83f98000 0x4000>;
481724ba675SRob Herring				interrupts = <69>;
482724ba675SRob Herring				clocks = <&clks IMX5_CLK_IIM_GATE>;
483724ba675SRob Herring			};
484724ba675SRob Herring
485724ba675SRob Herring			tigerp: tigerp@83fa0000 {
486724ba675SRob Herring				compatible = "fsl,imx51-tigerp";
487724ba675SRob Herring				reg = <0x83fa0000 0x28>;
488724ba675SRob Herring			};
489724ba675SRob Herring
490724ba675SRob Herring			owire: owire@83fa4000 {
491724ba675SRob Herring				compatible = "fsl,imx51-owire", "fsl,imx21-owire";
492724ba675SRob Herring				reg = <0x83fa4000 0x4000>;
493724ba675SRob Herring				interrupts = <88>;
494724ba675SRob Herring				clocks = <&clks IMX5_CLK_OWIRE_GATE>;
495724ba675SRob Herring				status = "disabled";
496724ba675SRob Herring			};
497724ba675SRob Herring
498724ba675SRob Herring			ecspi2: spi@83fac000 {
499724ba675SRob Herring				#address-cells = <1>;
500724ba675SRob Herring				#size-cells = <0>;
501724ba675SRob Herring				compatible = "fsl,imx51-ecspi";
502724ba675SRob Herring				reg = <0x83fac000 0x4000>;
503724ba675SRob Herring				interrupts = <37>;
504724ba675SRob Herring				clocks = <&clks IMX5_CLK_ECSPI2_IPG_GATE>,
505724ba675SRob Herring					 <&clks IMX5_CLK_ECSPI2_PER_GATE>;
506724ba675SRob Herring				clock-names = "ipg", "per";
507724ba675SRob Herring				status = "disabled";
508724ba675SRob Herring			};
509724ba675SRob Herring
510724ba675SRob Herring			sdma: dma-controller@83fb0000 {
511724ba675SRob Herring				compatible = "fsl,imx51-sdma", "fsl,imx35-sdma";
512724ba675SRob Herring				reg = <0x83fb0000 0x4000>;
513724ba675SRob Herring				interrupts = <6>;
514724ba675SRob Herring				clocks = <&clks IMX5_CLK_SDMA_GATE>,
515724ba675SRob Herring					 <&clks IMX5_CLK_AHB>;
516724ba675SRob Herring				clock-names = "ipg", "ahb";
517724ba675SRob Herring				#dma-cells = <3>;
518724ba675SRob Herring				fsl,sdma-ram-script-name = "imx/sdma/sdma-imx51.bin";
519724ba675SRob Herring			};
520724ba675SRob Herring
521724ba675SRob Herring			cspi: spi@83fc0000 {
522724ba675SRob Herring				#address-cells = <1>;
523724ba675SRob Herring				#size-cells = <0>;
524724ba675SRob Herring				compatible = "fsl,imx51-cspi", "fsl,imx35-cspi";
525724ba675SRob Herring				reg = <0x83fc0000 0x4000>;
526724ba675SRob Herring				interrupts = <38>;
527724ba675SRob Herring				clocks = <&clks IMX5_CLK_CSPI_IPG_GATE>,
528724ba675SRob Herring					 <&clks IMX5_CLK_CSPI_IPG_GATE>;
529724ba675SRob Herring				clock-names = "ipg", "per";
530724ba675SRob Herring				status = "disabled";
531724ba675SRob Herring			};
532724ba675SRob Herring
533724ba675SRob Herring			i2c2: i2c@83fc4000 {
534724ba675SRob Herring				#address-cells = <1>;
535724ba675SRob Herring				#size-cells = <0>;
536724ba675SRob Herring				compatible = "fsl,imx51-i2c", "fsl,imx21-i2c";
537724ba675SRob Herring				reg = <0x83fc4000 0x4000>;
538724ba675SRob Herring				interrupts = <63>;
539724ba675SRob Herring				clocks = <&clks IMX5_CLK_I2C2_GATE>;
540724ba675SRob Herring				status = "disabled";
541724ba675SRob Herring			};
542724ba675SRob Herring
543724ba675SRob Herring			i2c1: i2c@83fc8000 {
544724ba675SRob Herring				#address-cells = <1>;
545724ba675SRob Herring				#size-cells = <0>;
546724ba675SRob Herring				compatible = "fsl,imx51-i2c", "fsl,imx21-i2c";
547724ba675SRob Herring				reg = <0x83fc8000 0x4000>;
548724ba675SRob Herring				interrupts = <62>;
549724ba675SRob Herring				clocks = <&clks IMX5_CLK_I2C1_GATE>;
550724ba675SRob Herring				status = "disabled";
551724ba675SRob Herring			};
552724ba675SRob Herring
553724ba675SRob Herring			ssi1: ssi@83fcc000 {
554724ba675SRob Herring				#sound-dai-cells = <0>;
555724ba675SRob Herring				compatible = "fsl,imx51-ssi", "fsl,imx21-ssi";
556724ba675SRob Herring				reg = <0x83fcc000 0x4000>;
557724ba675SRob Herring				interrupts = <29>;
558724ba675SRob Herring				clocks = <&clks IMX5_CLK_SSI1_IPG_GATE>,
559724ba675SRob Herring					 <&clks IMX5_CLK_SSI1_ROOT_GATE>;
560724ba675SRob Herring				clock-names = "ipg", "baud";
561724ba675SRob Herring				dmas = <&sdma 28 0 0>,
562724ba675SRob Herring				       <&sdma 29 0 0>;
563724ba675SRob Herring				dma-names = "rx", "tx";
564724ba675SRob Herring				fsl,fifo-depth = <15>;
565724ba675SRob Herring				status = "disabled";
566724ba675SRob Herring			};
567724ba675SRob Herring
568724ba675SRob Herring			audmux: audmux@83fd0000 {
569724ba675SRob Herring				compatible = "fsl,imx51-audmux", "fsl,imx31-audmux";
570724ba675SRob Herring				reg = <0x83fd0000 0x4000>;
571724ba675SRob Herring				clocks = <&clks IMX5_CLK_DUMMY>;
572724ba675SRob Herring				clock-names = "audmux";
573724ba675SRob Herring				status = "disabled";
574724ba675SRob Herring			};
575724ba675SRob Herring
576724ba675SRob Herring			m4if: m4if@83fd8000 {
577724ba675SRob Herring				compatible = "fsl,imx51-m4if";
578724ba675SRob Herring				reg = <0x83fd8000 0x1000>;
579724ba675SRob Herring			};
580724ba675SRob Herring
581ccda9e5cSSebastian Reichel			weim: memory-controller@83fda000 {
582724ba675SRob Herring				#address-cells = <2>;
583724ba675SRob Herring				#size-cells = <1>;
584724ba675SRob Herring				compatible = "fsl,imx51-weim";
585724ba675SRob Herring				reg = <0x83fda000 0x1000>;
586724ba675SRob Herring				clocks = <&clks IMX5_CLK_EMI_SLOW_GATE>;
587724ba675SRob Herring				ranges = <
588724ba675SRob Herring					0 0 0xb0000000 0x08000000
589724ba675SRob Herring					1 0 0xb8000000 0x08000000
590724ba675SRob Herring					2 0 0xc0000000 0x08000000
591724ba675SRob Herring					3 0 0xc8000000 0x04000000
592724ba675SRob Herring					4 0 0xcc000000 0x02000000
593724ba675SRob Herring					5 0 0xce000000 0x02000000
594724ba675SRob Herring				>;
595724ba675SRob Herring				status = "disabled";
596724ba675SRob Herring			};
597724ba675SRob Herring
598*89cedb33SKrzysztof Kozlowski			nfc: nand-controller@83fdb000 {
599724ba675SRob Herring				#address-cells = <1>;
600724ba675SRob Herring				#size-cells = <1>;
601724ba675SRob Herring				compatible = "fsl,imx51-nand";
602724ba675SRob Herring				reg = <0x83fdb000 0x1000 0xcfff0000 0x10000>;
603724ba675SRob Herring				interrupts = <8>;
604724ba675SRob Herring				clocks = <&clks IMX5_CLK_NFC_GATE>;
605724ba675SRob Herring				status = "disabled";
606724ba675SRob Herring			};
607724ba675SRob Herring
608724ba675SRob Herring			pata: pata@83fe0000 {
609724ba675SRob Herring				compatible = "fsl,imx51-pata", "fsl,imx27-pata";
610724ba675SRob Herring				reg = <0x83fe0000 0x4000>;
611724ba675SRob Herring				interrupts = <70>;
612724ba675SRob Herring				clocks = <&clks IMX5_CLK_PATA_GATE>;
613724ba675SRob Herring				status = "disabled";
614724ba675SRob Herring			};
615724ba675SRob Herring
616724ba675SRob Herring			ssi3: ssi@83fe8000 {
617724ba675SRob Herring				#sound-dai-cells = <0>;
618724ba675SRob Herring				compatible = "fsl,imx51-ssi", "fsl,imx21-ssi";
619724ba675SRob Herring				reg = <0x83fe8000 0x4000>;
620724ba675SRob Herring				interrupts = <96>;
621724ba675SRob Herring				clocks = <&clks IMX5_CLK_SSI3_IPG_GATE>,
622724ba675SRob Herring					 <&clks IMX5_CLK_SSI3_ROOT_GATE>;
623724ba675SRob Herring				clock-names = "ipg", "baud";
624724ba675SRob Herring				dmas = <&sdma 46 0 0>,
625724ba675SRob Herring				       <&sdma 47 0 0>;
626724ba675SRob Herring				dma-names = "rx", "tx";
627724ba675SRob Herring				fsl,fifo-depth = <15>;
628724ba675SRob Herring				status = "disabled";
629724ba675SRob Herring			};
630724ba675SRob Herring
631724ba675SRob Herring			fec: ethernet@83fec000 {
632724ba675SRob Herring				compatible = "fsl,imx51-fec", "fsl,imx27-fec";
633724ba675SRob Herring				reg = <0x83fec000 0x4000>;
634724ba675SRob Herring				interrupts = <87>;
635724ba675SRob Herring				clocks = <&clks IMX5_CLK_FEC_GATE>,
636724ba675SRob Herring					 <&clks IMX5_CLK_FEC_GATE>,
637724ba675SRob Herring					 <&clks IMX5_CLK_FEC_GATE>;
638724ba675SRob Herring				clock-names = "ipg", "ahb", "ptp";
639724ba675SRob Herring				status = "disabled";
640724ba675SRob Herring			};
641724ba675SRob Herring
642724ba675SRob Herring			vpu: vpu@83ff4000 {
643724ba675SRob Herring				compatible = "fsl,imx51-vpu", "cnm,codahx4";
644724ba675SRob Herring				reg = <0x83ff4000 0x1000>;
645724ba675SRob Herring				interrupts = <9>;
646724ba675SRob Herring				clocks = <&clks IMX5_CLK_VPU_REFERENCE_GATE>,
647724ba675SRob Herring					 <&clks IMX5_CLK_VPU_GATE>;
648724ba675SRob Herring				clock-names = "per", "ahb";
649724ba675SRob Herring				resets = <&src 1>;
650724ba675SRob Herring				iram = <&iram>;
651724ba675SRob Herring			};
652724ba675SRob Herring
653724ba675SRob Herring			sahara: crypto@83ff8000 {
6542902c6f2SFabio Estevam				compatible = "fsl,imx53-sahara";
655724ba675SRob Herring				reg = <0x83ff8000 0x4000>;
656724ba675SRob Herring				interrupts = <19 20>;
657724ba675SRob Herring				clocks = <&clks IMX5_CLK_SAHARA_IPG_GATE>,
658724ba675SRob Herring					 <&clks IMX5_CLK_SAHARA_IPG_GATE>;
659724ba675SRob Herring				clock-names = "ipg", "ahb";
660724ba675SRob Herring			};
661724ba675SRob Herring		};
662724ba675SRob Herring	};
663724ba675SRob Herring};
664