Linux Audio

Check our new training course

Loading...
v4.17
  1/*
  2 * Copyright 2012 Sascha Hauer, Pengutronix <s.hauer@pengutronix.de>
  3 *
  4 * The code contained herein is licensed under the GNU General Public
  5 * License. You may obtain a copy of the GNU General Public License
  6 * Version 2 or later at the following locations:
  7 *
  8 * http://www.opensource.org/licenses/gpl-license.html
  9 * http://www.gnu.org/copyleft/gpl.html
 10 */
 11
 12#include <dt-bindings/gpio/gpio.h>
 13#include "imx25-pinfunc.h"
 14
 15/ {
 16	#address-cells = <1>;
 17	#size-cells = <1>;
 18	/*
 19	 * The decompressor and also some bootloaders rely on a
 20	 * pre-existing /chosen node to be available to insert the
 21	 * command line and merge other ATAGS info.
 22	 * Also for U-Boot there must be a pre-existing /memory node.
 23	 */
 24	chosen {};
 25	memory { device_type = "memory"; };
 26
 27	aliases {
 28		ethernet0 = &fec;
 29		gpio0 = &gpio1;
 30		gpio1 = &gpio2;
 31		gpio2 = &gpio3;
 32		gpio3 = &gpio4;
 33		i2c0 = &i2c1;
 34		i2c1 = &i2c2;
 35		i2c2 = &i2c3;
 36		mmc0 = &esdhc1;
 37		mmc1 = &esdhc2;
 38		pwm0 = &pwm1;
 39		pwm1 = &pwm2;
 40		pwm2 = &pwm3;
 41		pwm3 = &pwm4;
 42		serial0 = &uart1;
 43		serial1 = &uart2;
 44		serial2 = &uart3;
 45		serial3 = &uart4;
 46		serial4 = &uart5;
 47		spi0 = &spi1;
 48		spi1 = &spi2;
 49		spi2 = &spi3;
 50		usb0 = &usbotg;
 51		usb1 = &usbhost1;
 52	};
 53
 54	cpus {
 55		#address-cells = <1>;
 56		#size-cells = <0>;
 57
 58		cpu@0 {
 59			compatible = "arm,arm926ej-s";
 60			device_type = "cpu";
 61			reg = <0>;
 62		};
 63	};
 64
 65	asic: asic-interrupt-controller@68000000 {
 66		compatible = "fsl,imx25-asic", "fsl,avic";
 67		interrupt-controller;
 68		#interrupt-cells = <1>;
 69		reg = <0x68000000 0x8000000>;
 70	};
 71
 72	clocks {
 73		#address-cells = <1>;
 74		#size-cells = <0>;
 75
 76		osc {
 77			compatible = "fsl,imx-osc", "fixed-clock";
 78			#clock-cells = <0>;
 79			clock-frequency = <24000000>;
 80		};
 81	};
 82
 83	soc {
 84		#address-cells = <1>;
 85		#size-cells = <1>;
 86		compatible = "simple-bus";
 87		interrupt-parent = <&asic>;
 88		ranges;
 89
 90		aips@43f00000 { /* AIPS1 */
 91			compatible = "fsl,aips-bus", "simple-bus";
 92			#address-cells = <1>;
 93			#size-cells = <1>;
 94			reg = <0x43f00000 0x100000>;
 95			ranges;
 96
 97			aips1: bridge@43f00000 {
 98				compatible = "fsl,imx25-aips";
 99				reg = <0x43f00000 0x4000>;
100			};
101
102			i2c1: i2c@43f80000 {
103				#address-cells = <1>;
104				#size-cells = <0>;
105				compatible = "fsl,imx25-i2c", "fsl,imx21-i2c";
106				reg = <0x43f80000 0x4000>;
107				clocks = <&clks 48>;
108				clock-names = "";
109				interrupts = <3>;
110				status = "disabled";
111			};
112
113			i2c3: i2c@43f84000 {
114				#address-cells = <1>;
115				#size-cells = <0>;
116				compatible = "fsl,imx25-i2c", "fsl,imx21-i2c";
117				reg = <0x43f84000 0x4000>;
118				clocks = <&clks 48>;
119				clock-names = "";
120				interrupts = <10>;
121				status = "disabled";
122			};
123
124			can1: can@43f88000 {
125				compatible = "fsl,imx25-flexcan";
126				reg = <0x43f88000 0x4000>;
127				interrupts = <43>;
128				clocks = <&clks 75>, <&clks 75>;
129				clock-names = "ipg", "per";
130				status = "disabled";
131			};
132
133			can2: can@43f8c000 {
134				compatible = "fsl,imx25-flexcan";
135				reg = <0x43f8c000 0x4000>;
136				interrupts = <44>;
137				clocks = <&clks 76>, <&clks 76>;
138				clock-names = "ipg", "per";
139				status = "disabled";
140			};
141
142			uart1: serial@43f90000 {
143				compatible = "fsl,imx25-uart", "fsl,imx21-uart";
144				reg = <0x43f90000 0x4000>;
145				interrupts = <45>;
146				clocks = <&clks 120>, <&clks 57>;
147				clock-names = "ipg", "per";
148				status = "disabled";
149			};
150
151			uart2: serial@43f94000 {
152				compatible = "fsl,imx25-uart", "fsl,imx21-uart";
153				reg = <0x43f94000 0x4000>;
154				interrupts = <32>;
155				clocks = <&clks 121>, <&clks 57>;
156				clock-names = "ipg", "per";
157				status = "disabled";
158			};
159
160			i2c2: i2c@43f98000 {
161				#address-cells = <1>;
162				#size-cells = <0>;
163				compatible = "fsl,imx25-i2c", "fsl,imx21-i2c";
164				reg = <0x43f98000 0x4000>;
165				clocks = <&clks 48>;
166				clock-names = "";
167				interrupts = <4>;
168				status = "disabled";
169			};
170
171			owire@43f9c000 {
172				#address-cells = <1>;
173				#size-cells = <0>;
174				reg = <0x43f9c000 0x4000>;
175				clocks = <&clks 51>;
176				clock-names = "";
177				interrupts = <2>;
178				status = "disabled";
179			};
180
181			spi1: cspi@43fa4000 {
182				#address-cells = <1>;
183				#size-cells = <0>;
184				compatible = "fsl,imx25-cspi", "fsl,imx35-cspi";
185				reg = <0x43fa4000 0x4000>;
186				clocks = <&clks 78>, <&clks 78>;
187				clock-names = "ipg", "per";
188				interrupts = <14>;
189				status = "disabled";
190			};
191
192			kpp: kpp@43fa8000 {
193				#address-cells = <1>;
194				#size-cells = <0>;
195				compatible = "fsl,imx25-kpp", "fsl,imx21-kpp";
196				reg = <0x43fa8000 0x4000>;
197				clocks = <&clks 102>;
198				clock-names = "";
199				interrupts = <24>;
200				status = "disabled";
201			};
202
203			iomuxc: iomuxc@43fac000 {
204				compatible = "fsl,imx25-iomuxc";
205				reg = <0x43fac000 0x4000>;
206			};
207
208			audmux: audmux@43fb0000 {
209				compatible = "fsl,imx25-audmux", "fsl,imx31-audmux";
210				reg = <0x43fb0000 0x4000>;
211				status = "disabled";
212			};
213		};
214
215		spba@50000000 {
216			compatible = "fsl,spba-bus", "simple-bus";
217			#address-cells = <1>;
218			#size-cells = <1>;
219			reg = <0x50000000 0x40000>;
220			ranges;
221
222			spi3: cspi@50004000 {
223				#address-cells = <1>;
224				#size-cells = <0>;
225				compatible = "fsl,imx25-cspi", "fsl,imx35-cspi";
226				reg = <0x50004000 0x4000>;
227				interrupts = <0>;
228				clocks = <&clks 80>, <&clks 80>;
229				clock-names = "ipg", "per";
230				status = "disabled";
231			};
232
233			uart4: serial@50008000 {
234				compatible = "fsl,imx25-uart", "fsl,imx21-uart";
235				reg = <0x50008000 0x4000>;
236				interrupts = <5>;
237				clocks = <&clks 123>, <&clks 57>;
238				clock-names = "ipg", "per";
239				status = "disabled";
240			};
241
242			uart3: serial@5000c000 {
243				compatible = "fsl,imx25-uart", "fsl,imx21-uart";
244				reg = <0x5000c000 0x4000>;
245				interrupts = <18>;
246				clocks = <&clks 122>, <&clks 57>;
247				clock-names = "ipg", "per";
248				status = "disabled";
249			};
250
251			spi2: cspi@50010000 {
252				#address-cells = <1>;
253				#size-cells = <0>;
254				compatible = "fsl,imx25-cspi", "fsl,imx35-cspi";
255				reg = <0x50010000 0x4000>;
256				clocks = <&clks 79>, <&clks 79>;
257				clock-names = "ipg", "per";
258				interrupts = <13>;
259				status = "disabled";
260			};
261
262			ssi2: ssi@50014000 {
263				#sound-dai-cells = <0>;
264				compatible = "fsl,imx25-ssi", "fsl,imx21-ssi";
265				reg = <0x50014000 0x4000>;
266				interrupts = <11>;
267				clocks = <&clks 118>;
268				clock-names = "ipg";
269				dmas = <&sdma 24 1 0>,
270				       <&sdma 25 1 0>;
271				dma-names = "rx", "tx";
272				fsl,fifo-depth = <15>;
273				status = "disabled";
274			};
275
276			esai@50018000 {
277				reg = <0x50018000 0x4000>;
278				interrupts = <7>;
279			};
280
281			uart5: serial@5002c000 {
282				compatible = "fsl,imx25-uart", "fsl,imx21-uart";
283				reg = <0x5002c000 0x4000>;
284				interrupts = <40>;
285				clocks = <&clks 124>, <&clks 57>;
286				clock-names = "ipg", "per";
287				status = "disabled";
288			};
289
290			tscadc: tscadc@50030000 {
291				compatible = "fsl,imx25-tsadc";
292				reg = <0x50030000 0xc>;
293				interrupts = <46>;
294				clocks = <&clks 119>;
295				clock-names = "ipg";
296				interrupt-controller;
297				#interrupt-cells = <1>;
298				#address-cells = <1>;
299				#size-cells = <1>;
300				status = "disabled";
301				ranges;
302
303				adc: adc@50030800 {
304					compatible = "fsl,imx25-gcq";
305					reg = <0x50030800 0x60>;
306					interrupt-parent = <&tscadc>;
307					interrupts = <1>;
308					#address-cells = <1>;
309					#size-cells = <0>;
310					status = "disabled";
311				};
312
313				tsc: tcq@50030400 {
314					compatible = "fsl,imx25-tcq";
315					reg = <0x50030400 0x60>;
316					interrupt-parent = <&tscadc>;
317					interrupts = <0>;
318					fsl,wires = <4>;
319					status = "disabled";
320				};
321			};
322
323			ssi1: ssi@50034000 {
324				#sound-dai-cells = <0>;
325				compatible = "fsl,imx25-ssi", "fsl,imx21-ssi";
326				reg = <0x50034000 0x4000>;
327				interrupts = <12>;
328				clocks = <&clks 117>;
329				clock-names = "ipg";
330				dmas = <&sdma 28 1 0>,
331				       <&sdma 29 1 0>;
332				dma-names = "rx", "tx";
333				fsl,fifo-depth = <15>;
334				status = "disabled";
335			};
336
337			fec: ethernet@50038000 {
338				compatible = "fsl,imx25-fec";
339				reg = <0x50038000 0x4000>;
340				interrupts = <57>;
341				clocks = <&clks 88>, <&clks 65>;
342				clock-names = "ipg", "ahb";
343				status = "disabled";
344			};
345		};
346
347		aips@53f00000 { /* AIPS2 */
348			compatible = "fsl,aips-bus", "simple-bus";
349			#address-cells = <1>;
350			#size-cells = <1>;
351			reg = <0x53f00000 0x100000>;
352			ranges;
353
354			aips2: bridge@53f00000 {
355				compatible = "fsl,imx25-aips";
356				reg = <0x53f00000 0x4000>;
357			};
358
359			clks: ccm@53f80000 {
360				compatible = "fsl,imx25-ccm";
361				reg = <0x53f80000 0x4000>;
362				interrupts = <31>;
363				#clock-cells = <1>;
364			};
365
366			gpt4: timer@53f84000 {
367				compatible = "fsl,imx25-gpt", "fsl,imx31-gpt";
368				reg = <0x53f84000 0x4000>;
369				clocks = <&clks 95>, <&clks 47>;
370				clock-names = "ipg", "per";
371				interrupts = <1>;
372			};
373
374			gpt3: timer@53f88000 {
375				compatible = "fsl,imx25-gpt", "fsl,imx31-gpt";
376				reg = <0x53f88000 0x4000>;
377				clocks = <&clks 94>, <&clks 47>;
378				clock-names = "ipg", "per";
379				interrupts = <29>;
380			};
381
382			gpt2: timer@53f8c000 {
383				compatible = "fsl,imx25-gpt", "fsl,imx31-gpt";
384				reg = <0x53f8c000 0x4000>;
385				clocks = <&clks 93>, <&clks 47>;
386				clock-names = "ipg", "per";
387				interrupts = <53>;
388			};
389
390			gpt1: timer@53f90000 {
391				compatible = "fsl,imx25-gpt", "fsl,imx31-gpt";
392				reg = <0x53f90000 0x4000>;
393				clocks = <&clks 92>, <&clks 47>;
394				clock-names = "ipg", "per";
395				interrupts = <54>;
396			};
397
398			epit1: timer@53f94000 {
399				compatible = "fsl,imx25-epit";
400				reg = <0x53f94000 0x4000>;
401				interrupts = <28>;
402			};
403
404			epit2: timer@53f98000 {
405				compatible = "fsl,imx25-epit";
406				reg = <0x53f98000 0x4000>;
407				interrupts = <27>;
408			};
409
410			gpio4: gpio@53f9c000 {
411				compatible = "fsl,imx25-gpio", "fsl,imx35-gpio";
412				reg = <0x53f9c000 0x4000>;
413				interrupts = <23>;
414				gpio-controller;
415				#gpio-cells = <2>;
416				interrupt-controller;
417				#interrupt-cells = <2>;
418			};
419
420			pwm2: pwm@53fa0000 {
421				compatible = "fsl,imx25-pwm", "fsl,imx27-pwm";
422				#pwm-cells = <2>;
423				reg = <0x53fa0000 0x4000>;
424				clocks = <&clks 106>, <&clks 52>;
425				clock-names = "ipg", "per";
426				interrupts = <36>;
427			};
428
429			gpio3: gpio@53fa4000 {
430				compatible = "fsl,imx25-gpio", "fsl,imx35-gpio";
431				reg = <0x53fa4000 0x4000>;
432				interrupts = <16>;
433				gpio-controller;
434				#gpio-cells = <2>;
435				interrupt-controller;
436				#interrupt-cells = <2>;
437			};
438
439			pwm3: pwm@53fa8000 {
440				compatible = "fsl,imx25-pwm", "fsl,imx27-pwm";
441				#pwm-cells = <2>;
442				reg = <0x53fa8000 0x4000>;
443				clocks = <&clks 107>, <&clks 52>;
444				clock-names = "ipg", "per";
445				interrupts = <41>;
446			};
447
448			scc: crypto@53fac000 {
449				compatible = "fsl,imx25-scc";
450				reg = <0x53fac000 0x4000>;
451				clocks = <&clks 111>;
452				clock-names = "ipg";
453				interrupts = <49>, <50>;
454				interrupt-names = "scm", "smn";
455			};
456
457			rngb: rngb@53fb0000 {
458				compatible = "fsl,imx25-rngb";
459				reg = <0x53fb0000 0x4000>;
460				clocks = <&clks 109>;
461				interrupts = <22>;
462			};
463
464			esdhc1: esdhc@53fb4000 {
465				compatible = "fsl,imx25-esdhc";
466				reg = <0x53fb4000 0x4000>;
467				interrupts = <9>;
468				clocks = <&clks 86>, <&clks 63>, <&clks 45>;
469				clock-names = "ipg", "ahb", "per";
470				status = "disabled";
471			};
472
473			esdhc2: esdhc@53fb8000 {
474				compatible = "fsl,imx25-esdhc";
475				reg = <0x53fb8000 0x4000>;
476				interrupts = <8>;
477				clocks = <&clks 87>, <&clks 64>, <&clks 46>;
478				clock-names = "ipg", "ahb", "per";
479				status = "disabled";
480			};
481
482			lcdc: lcdc@53fbc000 {
483				compatible = "fsl,imx25-fb", "fsl,imx21-fb";
484				reg = <0x53fbc000 0x4000>;
485				interrupts = <39>;
486				clocks = <&clks 103>, <&clks 66>, <&clks 49>;
487				clock-names = "ipg", "ahb", "per";
488				status = "disabled";
489			};
490
491			slcdc@53fc0000 {
492				reg = <0x53fc0000 0x4000>;
493				interrupts = <38>;
494				status = "disabled";
495			};
496
497			pwm4: pwm@53fc8000 {
498				compatible = "fsl,imx25-pwm", "fsl,imx27-pwm";
499				#pwm-cells = <2>;
500				reg = <0x53fc8000 0x4000>;
501				clocks = <&clks 108>, <&clks 52>;
502				clock-names = "ipg", "per";
503				interrupts = <42>;
504			};
505
506			gpio1: gpio@53fcc000 {
507				compatible = "fsl,imx25-gpio", "fsl,imx35-gpio";
508				reg = <0x53fcc000 0x4000>;
509				interrupts = <52>;
510				gpio-controller;
511				#gpio-cells = <2>;
512				interrupt-controller;
513				#interrupt-cells = <2>;
514			};
515
516			gpio2: gpio@53fd0000 {
517				compatible = "fsl,imx25-gpio", "fsl,imx35-gpio";
518				reg = <0x53fd0000 0x4000>;
519				interrupts = <51>;
520				gpio-controller;
521				#gpio-cells = <2>;
522				interrupt-controller;
523				#interrupt-cells = <2>;
524			};
525
526			sdma: sdma@53fd4000 {
527				compatible = "fsl,imx25-sdma";
528				reg = <0x53fd4000 0x4000>;
529				clocks = <&clks 112>, <&clks 68>;
530				clock-names = "ipg", "ahb";
531				#dma-cells = <3>;
532				interrupts = <34>;
533				fsl,sdma-ram-script-name = "imx/sdma/sdma-imx25.bin";
534			};
535
536			wdog@53fdc000 {
537				compatible = "fsl,imx25-wdt", "fsl,imx21-wdt";
538				reg = <0x53fdc000 0x4000>;
539				clocks = <&clks 126>;
540				clock-names = "";
541				interrupts = <55>;
542			};
543
544			pwm1: pwm@53fe0000 {
545				compatible = "fsl,imx25-pwm", "fsl,imx27-pwm";
546				#pwm-cells = <2>;
547				reg = <0x53fe0000 0x4000>;
548				clocks = <&clks 105>, <&clks 52>;
549				clock-names = "ipg", "per";
550				interrupts = <26>;
551			};
552
553			iim: iim@53ff0000 {
554				compatible = "fsl,imx25-iim", "fsl,imx27-iim";
555				reg = <0x53ff0000 0x4000>;
556				interrupts = <19>;
557				clocks = <&clks 99>;
558			};
559
560			usbotg: usb@53ff4000 {
561				compatible = "fsl,imx25-usb", "fsl,imx27-usb";
562				reg = <0x53ff4000 0x0200>;
563				interrupts = <37>;
564				clocks = <&clks 9>, <&clks 70>, <&clks 8>;
565				clock-names = "ipg", "ahb", "per";
566				fsl,usbmisc = <&usbmisc 0>;
567				fsl,usbphy = <&usbphy0>;
568				phy_type = "utmi";
569				dr_mode = "otg";
570				status = "disabled";
571			};
572
573			usbhost1: usb@53ff4400 {
574				compatible = "fsl,imx25-usb", "fsl,imx27-usb";
575				reg = <0x53ff4400 0x0200>;
576				interrupts = <35>;
577				clocks = <&clks 9>, <&clks 70>, <&clks 8>;
578				clock-names = "ipg", "ahb", "per";
579				fsl,usbmisc = <&usbmisc 1>;
580				fsl,usbphy = <&usbphy1>;
581				status = "disabled";
582			};
583
584			usbmisc: usbmisc@53ff4600 {
585				#index-cells = <1>;
586				compatible = "fsl,imx25-usbmisc";
587				reg = <0x53ff4600 0x00f>;
588			};
589
590			dryice@53ffc000 {
591				compatible = "fsl,imx25-dryice", "fsl,imx25-rtc";
592				reg = <0x53ffc000 0x4000>;
593				clocks = <&clks 81>;
594				clock-names = "ipg";
595				interrupts = <25 56>;
596			};
597		};
598
599		iram: sram@78000000 {
600			compatible = "mmio-sram";
601			reg = <0x78000000 0x20000>;
602		};
603
604		emi@80000000 {
605			compatible = "fsl,emi-bus", "simple-bus";
606			#address-cells = <1>;
607			#size-cells = <1>;
608			reg = <0x80000000 0x3b002000>;
609			ranges;
610
611			nfc: nand@bb000000 {
612				#address-cells = <1>;
613				#size-cells = <1>;
614
615				compatible = "fsl,imx25-nand";
616				reg = <0xbb000000 0x2000>;
617				clocks = <&clks 50>;
618				clock-names = "";
619				interrupts = <33>;
620				status = "disabled";
621			};
622		};
623	};
624
625	usbphy {
626		compatible = "simple-bus";
627		#address-cells = <1>;
628		#size-cells = <0>;
629
630		usbphy0: usb-phy@0 {
631			reg = <0>;
632			compatible = "usb-nop-xceiv";
633			#phy-cells = <0>;
634		};
635
636		usbphy1: usb-phy@1 {
637			reg = <1>;
638			compatible = "usb-nop-xceiv";
639			#phy-cells = <0>;
640		};
641	};
642};
v4.6
  1/*
  2 * Copyright 2012 Sascha Hauer, Pengutronix <s.hauer@pengutronix.de>
  3 *
  4 * The code contained herein is licensed under the GNU General Public
  5 * License. You may obtain a copy of the GNU General Public License
  6 * Version 2 or later at the following locations:
  7 *
  8 * http://www.opensource.org/licenses/gpl-license.html
  9 * http://www.gnu.org/copyleft/gpl.html
 10 */
 11
 12#include "skeleton.dtsi"
 13#include "imx25-pinfunc.h"
 14
 15/ {
 
 
 
 
 
 
 
 
 
 
 
 16	aliases {
 17		ethernet0 = &fec;
 18		gpio0 = &gpio1;
 19		gpio1 = &gpio2;
 20		gpio2 = &gpio3;
 21		gpio3 = &gpio4;
 22		i2c0 = &i2c1;
 23		i2c1 = &i2c2;
 24		i2c2 = &i2c3;
 25		mmc0 = &esdhc1;
 26		mmc1 = &esdhc2;
 27		pwm0 = &pwm1;
 28		pwm1 = &pwm2;
 29		pwm2 = &pwm3;
 30		pwm3 = &pwm4;
 31		serial0 = &uart1;
 32		serial1 = &uart2;
 33		serial2 = &uart3;
 34		serial3 = &uart4;
 35		serial4 = &uart5;
 36		spi0 = &spi1;
 37		spi1 = &spi2;
 38		spi2 = &spi3;
 39		usb0 = &usbotg;
 40		usb1 = &usbhost1;
 41	};
 42
 43	cpus {
 44		#address-cells = <0>;
 45		#size-cells = <0>;
 46
 47		cpu {
 48			compatible = "arm,arm926ej-s";
 49			device_type = "cpu";
 
 50		};
 51	};
 52
 53	asic: asic-interrupt-controller@68000000 {
 54		compatible = "fsl,imx25-asic", "fsl,avic";
 55		interrupt-controller;
 56		#interrupt-cells = <1>;
 57		reg = <0x68000000 0x8000000>;
 58	};
 59
 60	clocks {
 61		#address-cells = <1>;
 62		#size-cells = <0>;
 63
 64		osc {
 65			compatible = "fsl,imx-osc", "fixed-clock";
 66			#clock-cells = <0>;
 67			clock-frequency = <24000000>;
 68		};
 69	};
 70
 71	soc {
 72		#address-cells = <1>;
 73		#size-cells = <1>;
 74		compatible = "simple-bus";
 75		interrupt-parent = <&asic>;
 76		ranges;
 77
 78		aips@43f00000 { /* AIPS1 */
 79			compatible = "fsl,aips-bus", "simple-bus";
 80			#address-cells = <1>;
 81			#size-cells = <1>;
 82			reg = <0x43f00000 0x100000>;
 83			ranges;
 84
 
 
 
 
 
 85			i2c1: i2c@43f80000 {
 86				#address-cells = <1>;
 87				#size-cells = <0>;
 88				compatible = "fsl,imx25-i2c", "fsl,imx21-i2c";
 89				reg = <0x43f80000 0x4000>;
 90				clocks = <&clks 48>;
 91				clock-names = "";
 92				interrupts = <3>;
 93				status = "disabled";
 94			};
 95
 96			i2c3: i2c@43f84000 {
 97				#address-cells = <1>;
 98				#size-cells = <0>;
 99				compatible = "fsl,imx25-i2c", "fsl,imx21-i2c";
100				reg = <0x43f84000 0x4000>;
101				clocks = <&clks 48>;
102				clock-names = "";
103				interrupts = <10>;
104				status = "disabled";
105			};
106
107			can1: can@43f88000 {
108				compatible = "fsl,imx25-flexcan", "fsl,p1010-flexcan";
109				reg = <0x43f88000 0x4000>;
110				interrupts = <43>;
111				clocks = <&clks 75>, <&clks 75>;
112				clock-names = "ipg", "per";
113				status = "disabled";
114			};
115
116			can2: can@43f8c000 {
117				compatible = "fsl,imx25-flexcan", "fsl,p1010-flexcan";
118				reg = <0x43f8c000 0x4000>;
119				interrupts = <44>;
120				clocks = <&clks 76>, <&clks 76>;
121				clock-names = "ipg", "per";
122				status = "disabled";
123			};
124
125			uart1: serial@43f90000 {
126				compatible = "fsl,imx25-uart", "fsl,imx21-uart";
127				reg = <0x43f90000 0x4000>;
128				interrupts = <45>;
129				clocks = <&clks 120>, <&clks 57>;
130				clock-names = "ipg", "per";
131				status = "disabled";
132			};
133
134			uart2: serial@43f94000 {
135				compatible = "fsl,imx25-uart", "fsl,imx21-uart";
136				reg = <0x43f94000 0x4000>;
137				interrupts = <32>;
138				clocks = <&clks 121>, <&clks 57>;
139				clock-names = "ipg", "per";
140				status = "disabled";
141			};
142
143			i2c2: i2c@43f98000 {
144				#address-cells = <1>;
145				#size-cells = <0>;
146				compatible = "fsl,imx25-i2c", "fsl,imx21-i2c";
147				reg = <0x43f98000 0x4000>;
148				clocks = <&clks 48>;
149				clock-names = "";
150				interrupts = <4>;
151				status = "disabled";
152			};
153
154			owire@43f9c000 {
155				#address-cells = <1>;
156				#size-cells = <0>;
157				reg = <0x43f9c000 0x4000>;
158				clocks = <&clks 51>;
159				clock-names = "";
160				interrupts = <2>;
161				status = "disabled";
162			};
163
164			spi1: cspi@43fa4000 {
165				#address-cells = <1>;
166				#size-cells = <0>;
167				compatible = "fsl,imx25-cspi", "fsl,imx35-cspi";
168				reg = <0x43fa4000 0x4000>;
169				clocks = <&clks 78>, <&clks 78>;
170				clock-names = "ipg", "per";
171				interrupts = <14>;
172				status = "disabled";
173			};
174
175			kpp: kpp@43fa8000 {
176				#address-cells = <1>;
177				#size-cells = <0>;
178				compatible = "fsl,imx25-kpp", "fsl,imx21-kpp";
179				reg = <0x43fa8000 0x4000>;
180				clocks = <&clks 102>;
181				clock-names = "";
182				interrupts = <24>;
183				status = "disabled";
184			};
185
186			iomuxc: iomuxc@43fac000 {
187				compatible = "fsl,imx25-iomuxc";
188				reg = <0x43fac000 0x4000>;
189			};
190
191			audmux: audmux@43fb0000 {
192				compatible = "fsl,imx25-audmux", "fsl,imx31-audmux";
193				reg = <0x43fb0000 0x4000>;
194				status = "disabled";
195			};
196		};
197
198		spba@50000000 {
199			compatible = "fsl,spba-bus", "simple-bus";
200			#address-cells = <1>;
201			#size-cells = <1>;
202			reg = <0x50000000 0x40000>;
203			ranges;
204
205			spi3: cspi@50004000 {
206				#address-cells = <1>;
207				#size-cells = <0>;
208				compatible = "fsl,imx25-cspi", "fsl,imx35-cspi";
209				reg = <0x50004000 0x4000>;
210				interrupts = <0>;
211				clocks = <&clks 80>, <&clks 80>;
212				clock-names = "ipg", "per";
213				status = "disabled";
214			};
215
216			uart4: serial@50008000 {
217				compatible = "fsl,imx25-uart", "fsl,imx21-uart";
218				reg = <0x50008000 0x4000>;
219				interrupts = <5>;
220				clocks = <&clks 123>, <&clks 57>;
221				clock-names = "ipg", "per";
222				status = "disabled";
223			};
224
225			uart3: serial@5000c000 {
226				compatible = "fsl,imx25-uart", "fsl,imx21-uart";
227				reg = <0x5000c000 0x4000>;
228				interrupts = <18>;
229				clocks = <&clks 122>, <&clks 57>;
230				clock-names = "ipg", "per";
231				status = "disabled";
232			};
233
234			spi2: cspi@50010000 {
235				#address-cells = <1>;
236				#size-cells = <0>;
237				compatible = "fsl,imx25-cspi", "fsl,imx35-cspi";
238				reg = <0x50010000 0x4000>;
239				clocks = <&clks 79>, <&clks 79>;
240				clock-names = "ipg", "per";
241				interrupts = <13>;
242				status = "disabled";
243			};
244
245			ssi2: ssi@50014000 {
246				#sound-dai-cells = <0>;
247				compatible = "fsl,imx25-ssi", "fsl,imx21-ssi";
248				reg = <0x50014000 0x4000>;
249				interrupts = <11>;
250				clocks = <&clks 118>;
251				clock-names = "ipg";
252				dmas = <&sdma 24 1 0>,
253				       <&sdma 25 1 0>;
254				dma-names = "rx", "tx";
 
255				status = "disabled";
256			};
257
258			esai@50018000 {
259				reg = <0x50018000 0x4000>;
260				interrupts = <7>;
261			};
262
263			uart5: serial@5002c000 {
264				compatible = "fsl,imx25-uart", "fsl,imx21-uart";
265				reg = <0x5002c000 0x4000>;
266				interrupts = <40>;
267				clocks = <&clks 124>, <&clks 57>;
268				clock-names = "ipg", "per";
269				status = "disabled";
270			};
271
272			tscadc: tscadc@50030000 {
273				compatible = "fsl,imx25-tsadc";
274				reg = <0x50030000 0xc>;
275				interrupts = <46>;
276				clocks = <&clks 119>;
277				clock-names = "ipg";
278				interrupt-controller;
279				#interrupt-cells = <1>;
280				#address-cells = <1>;
281				#size-cells = <1>;
282				status = "disabled";
 
283
284				adc: adc@50030800 {
285					compatible = "fsl,imx25-gcq";
286					reg = <0x50030800 0x60>;
287					interrupt-parent = <&tscadc>;
288					interrupts = <1>;
289					#address-cells = <1>;
290					#size-cells = <0>;
291					status = "disabled";
292				};
293
294				tsc: tcq@50030400 {
295					compatible = "fsl,imx25-tcq";
296					reg = <0x50030400 0x60>;
297					interrupt-parent = <&tscadc>;
298					interrupts = <0>;
299					fsl,wires = <4>;
300					status = "disabled";
301				};
302			};
303
304			ssi1: ssi@50034000 {
305				#sound-dai-cells = <0>;
306				compatible = "fsl,imx25-ssi", "fsl,imx21-ssi";
307				reg = <0x50034000 0x4000>;
308				interrupts = <12>;
309				clocks = <&clks 117>;
310				clock-names = "ipg";
311				dmas = <&sdma 28 1 0>,
312				       <&sdma 29 1 0>;
313				dma-names = "rx", "tx";
 
314				status = "disabled";
315			};
316
317			fec: ethernet@50038000 {
318				compatible = "fsl,imx25-fec";
319				reg = <0x50038000 0x4000>;
320				interrupts = <57>;
321				clocks = <&clks 88>, <&clks 65>;
322				clock-names = "ipg", "ahb";
323				status = "disabled";
324			};
325		};
326
327		aips@53f00000 { /* AIPS2 */
328			compatible = "fsl,aips-bus", "simple-bus";
329			#address-cells = <1>;
330			#size-cells = <1>;
331			reg = <0x53f00000 0x100000>;
332			ranges;
333
 
 
 
 
 
334			clks: ccm@53f80000 {
335				compatible = "fsl,imx25-ccm";
336				reg = <0x53f80000 0x4000>;
337				interrupts = <31>;
338				#clock-cells = <1>;
339			};
340
341			gpt4: timer@53f84000 {
342				compatible = "fsl,imx25-gpt", "fsl,imx31-gpt";
343				reg = <0x53f84000 0x4000>;
344				clocks = <&clks 95>, <&clks 47>;
345				clock-names = "ipg", "per";
346				interrupts = <1>;
347			};
348
349			gpt3: timer@53f88000 {
350				compatible = "fsl,imx25-gpt", "fsl,imx31-gpt";
351				reg = <0x53f88000 0x4000>;
352				clocks = <&clks 94>, <&clks 47>;
353				clock-names = "ipg", "per";
354				interrupts = <29>;
355			};
356
357			gpt2: timer@53f8c000 {
358				compatible = "fsl,imx25-gpt", "fsl,imx31-gpt";
359				reg = <0x53f8c000 0x4000>;
360				clocks = <&clks 93>, <&clks 47>;
361				clock-names = "ipg", "per";
362				interrupts = <53>;
363			};
364
365			gpt1: timer@53f90000 {
366				compatible = "fsl,imx25-gpt", "fsl,imx31-gpt";
367				reg = <0x53f90000 0x4000>;
368				clocks = <&clks 92>, <&clks 47>;
369				clock-names = "ipg", "per";
370				interrupts = <54>;
371			};
372
373			epit1: timer@53f94000 {
374				compatible = "fsl,imx25-epit";
375				reg = <0x53f94000 0x4000>;
376				interrupts = <28>;
377			};
378
379			epit2: timer@53f98000 {
380				compatible = "fsl,imx25-epit";
381				reg = <0x53f98000 0x4000>;
382				interrupts = <27>;
383			};
384
385			gpio4: gpio@53f9c000 {
386				compatible = "fsl,imx25-gpio", "fsl,imx35-gpio";
387				reg = <0x53f9c000 0x4000>;
388				interrupts = <23>;
389				gpio-controller;
390				#gpio-cells = <2>;
391				interrupt-controller;
392				#interrupt-cells = <2>;
393			};
394
395			pwm2: pwm@53fa0000 {
396				compatible = "fsl,imx25-pwm", "fsl,imx27-pwm";
397				#pwm-cells = <2>;
398				reg = <0x53fa0000 0x4000>;
399				clocks = <&clks 106>, <&clks 52>;
400				clock-names = "ipg", "per";
401				interrupts = <36>;
402			};
403
404			gpio3: gpio@53fa4000 {
405				compatible = "fsl,imx25-gpio", "fsl,imx35-gpio";
406				reg = <0x53fa4000 0x4000>;
407				interrupts = <16>;
408				gpio-controller;
409				#gpio-cells = <2>;
410				interrupt-controller;
411				#interrupt-cells = <2>;
412			};
413
414			pwm3: pwm@53fa8000 {
415				compatible = "fsl,imx25-pwm", "fsl,imx27-pwm";
416				#pwm-cells = <2>;
417				reg = <0x53fa8000 0x4000>;
418				clocks = <&clks 107>, <&clks 52>;
419				clock-names = "ipg", "per";
420				interrupts = <41>;
421			};
422
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
423			esdhc1: esdhc@53fb4000 {
424				compatible = "fsl,imx25-esdhc";
425				reg = <0x53fb4000 0x4000>;
426				interrupts = <9>;
427				clocks = <&clks 86>, <&clks 63>, <&clks 45>;
428				clock-names = "ipg", "ahb", "per";
429				status = "disabled";
430			};
431
432			esdhc2: esdhc@53fb8000 {
433				compatible = "fsl,imx25-esdhc";
434				reg = <0x53fb8000 0x4000>;
435				interrupts = <8>;
436				clocks = <&clks 87>, <&clks 64>, <&clks 46>;
437				clock-names = "ipg", "ahb", "per";
438				status = "disabled";
439			};
440
441			lcdc: lcdc@53fbc000 {
442				compatible = "fsl,imx25-fb", "fsl,imx21-fb";
443				reg = <0x53fbc000 0x4000>;
444				interrupts = <39>;
445				clocks = <&clks 103>, <&clks 66>, <&clks 49>;
446				clock-names = "ipg", "ahb", "per";
447				status = "disabled";
448			};
449
450			slcdc@53fc0000 {
451				reg = <0x53fc0000 0x4000>;
452				interrupts = <38>;
453				status = "disabled";
454			};
455
456			pwm4: pwm@53fc8000 {
457				compatible = "fsl,imx25-pwm", "fsl,imx27-pwm";
458				#pwm-cells = <2>;
459				reg = <0x53fc8000 0x4000>;
460				clocks = <&clks 108>, <&clks 52>;
461				clock-names = "ipg", "per";
462				interrupts = <42>;
463			};
464
465			gpio1: gpio@53fcc000 {
466				compatible = "fsl,imx25-gpio", "fsl,imx35-gpio";
467				reg = <0x53fcc000 0x4000>;
468				interrupts = <52>;
469				gpio-controller;
470				#gpio-cells = <2>;
471				interrupt-controller;
472				#interrupt-cells = <2>;
473			};
474
475			gpio2: gpio@53fd0000 {
476				compatible = "fsl,imx25-gpio", "fsl,imx35-gpio";
477				reg = <0x53fd0000 0x4000>;
478				interrupts = <51>;
479				gpio-controller;
480				#gpio-cells = <2>;
481				interrupt-controller;
482				#interrupt-cells = <2>;
483			};
484
485			sdma: sdma@53fd4000 {
486				compatible = "fsl,imx25-sdma";
487				reg = <0x53fd4000 0x4000>;
488				clocks = <&clks 112>, <&clks 68>;
489				clock-names = "ipg", "ahb";
490				#dma-cells = <3>;
491				interrupts = <34>;
492				fsl,sdma-ram-script-name = "imx/sdma/sdma-imx25.bin";
493			};
494
495			wdog@53fdc000 {
496				compatible = "fsl,imx25-wdt", "fsl,imx21-wdt";
497				reg = <0x53fdc000 0x4000>;
498				clocks = <&clks 126>;
499				clock-names = "";
500				interrupts = <55>;
501			};
502
503			pwm1: pwm@53fe0000 {
504				compatible = "fsl,imx25-pwm", "fsl,imx27-pwm";
505				#pwm-cells = <2>;
506				reg = <0x53fe0000 0x4000>;
507				clocks = <&clks 105>, <&clks 52>;
508				clock-names = "ipg", "per";
509				interrupts = <26>;
510			};
511
512			iim: iim@53ff0000 {
513				compatible = "fsl,imx25-iim", "fsl,imx27-iim";
514				reg = <0x53ff0000 0x4000>;
515				interrupts = <19>;
516				clocks = <&clks 99>;
517			};
518
519			usbotg: usb@53ff4000 {
520				compatible = "fsl,imx25-usb", "fsl,imx27-usb";
521				reg = <0x53ff4000 0x0200>;
522				interrupts = <37>;
523				clocks = <&clks 9>, <&clks 70>, <&clks 8>;
524				clock-names = "ipg", "ahb", "per";
525				fsl,usbmisc = <&usbmisc 0>;
526				fsl,usbphy = <&usbphy0>;
 
 
527				status = "disabled";
528			};
529
530			usbhost1: usb@53ff4400 {
531				compatible = "fsl,imx25-usb", "fsl,imx27-usb";
532				reg = <0x53ff4400 0x0200>;
533				interrupts = <35>;
534				clocks = <&clks 9>, <&clks 70>, <&clks 8>;
535				clock-names = "ipg", "ahb", "per";
536				fsl,usbmisc = <&usbmisc 1>;
537				fsl,usbphy = <&usbphy1>;
538				status = "disabled";
539			};
540
541			usbmisc: usbmisc@53ff4600 {
542				#index-cells = <1>;
543				compatible = "fsl,imx25-usbmisc";
544				reg = <0x53ff4600 0x00f>;
545			};
546
547			dryice@53ffc000 {
548				compatible = "fsl,imx25-dryice", "fsl,imx25-rtc";
549				reg = <0x53ffc000 0x4000>;
550				clocks = <&clks 81>;
551				clock-names = "ipg";
552				interrupts = <25>;
553			};
554		};
555
556		iram: sram@78000000 {
557			compatible = "mmio-sram";
558			reg = <0x78000000 0x20000>;
559		};
560
561		emi@80000000 {
562			compatible = "fsl,emi-bus", "simple-bus";
563			#address-cells = <1>;
564			#size-cells = <1>;
565			reg = <0x80000000 0x3b002000>;
566			ranges;
567
568			nfc: nand@bb000000 {
569				#address-cells = <1>;
570				#size-cells = <1>;
571
572				compatible = "fsl,imx25-nand";
573				reg = <0xbb000000 0x2000>;
574				clocks = <&clks 50>;
575				clock-names = "";
576				interrupts = <33>;
577				status = "disabled";
578			};
579		};
580	};
581
582	usbphy {
583		compatible = "simple-bus";
584		#address-cells = <1>;
585		#size-cells = <0>;
586
587		usbphy0: usb-phy@0 {
588			reg = <0>;
589			compatible = "usb-nop-xceiv";
 
590		};
591
592		usbphy1: usb-phy@1 {
593			reg = <1>;
594			compatible = "usb-nop-xceiv";
 
595		};
596	};
597};