Linux Audio

Check our new training course

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