• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1/*
2 * Copyright 2013 Freescale Semiconductor, Inc.
3 *
4 * This file is dual-licensed: you can use it either under the terms
5 * of the GPL or the X11 license, at your option. Note that this dual
6 * licensing only applies to this file, and not this project as a
7 * whole.
8 *
9 *  a) This file is free software; you can redistribute it and/or
10 *     modify it under the terms of the GNU General Public License
11 *     version 2 as published by the Free Software Foundation.
12 *
13 *     This file is distributed in the hope that it will be useful,
14 *     but WITHOUT ANY WARRANTY; without even the implied warranty of
15 *     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16 *     GNU General Public License for more details.
17 *
18 * Or, alternatively,
19 *
20 *  b) Permission is hereby granted, free of charge, to any person
21 *     obtaining a copy of this software and associated documentation
22 *     files (the "Software"), to deal in the Software without
23 *     restriction, including without limitation the rights to use,
24 *     copy, modify, merge, publish, distribute, sublicense, and/or
25 *     sell copies of the Software, and to permit persons to whom the
26 *     Software is furnished to do so, subject to the following
27 *     conditions:
28 *
29 *     The above copyright notice and this permission notice shall be
30 *     included in all copies or substantial portions of the Software.
31 *
32 *     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
33 *     EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
34 *     OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
35 *     NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
36 *     HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
37 *     WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
38 *     FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
39 *     OTHER DEALINGS IN THE SOFTWARE.
40 */
41
42#include "vf610-pinfunc.h"
43#include <dt-bindings/clock/vf610-clock.h>
44#include <dt-bindings/interrupt-controller/irq.h>
45#include <dt-bindings/gpio/gpio.h>
46
47/ {
48	aliases {
49		can0 = &can0;
50		can1 = &can1;
51		ethernet0 = &fec0;
52		ethernet1 = &fec1;
53		serial0 = &uart0;
54		serial1 = &uart1;
55		serial2 = &uart2;
56		serial3 = &uart3;
57		serial4 = &uart4;
58		serial5 = &uart5;
59		gpio0 = &gpio0;
60		gpio1 = &gpio1;
61		gpio2 = &gpio2;
62		gpio3 = &gpio3;
63		gpio4 = &gpio4;
64		usbphy0 = &usbphy0;
65		usbphy1 = &usbphy1;
66	};
67
68	fxosc: fxosc {
69		compatible = "fixed-clock";
70		#clock-cells = <0>;
71		clock-frequency = <24000000>;
72	};
73
74	sxosc: sxosc {
75		compatible = "fixed-clock";
76		#clock-cells = <0>;
77		clock-frequency = <32768>;
78	};
79
80	reboot: syscon-reboot {
81		compatible = "syscon-reboot";
82		regmap = <&src>;
83		offset = <0x0>;
84		mask = <0x1000>;
85	};
86
87	soc {
88		#address-cells = <1>;
89		#size-cells = <1>;
90		compatible = "simple-bus";
91		interrupt-parent = <&mscm_ir>;
92		ranges;
93
94		aips0: aips-bus@40000000 {
95			compatible = "fsl,aips-bus", "simple-bus";
96			#address-cells = <1>;
97			#size-cells = <1>;
98			reg = <0x40000000 0x00070000>;
99			ranges;
100
101			mscm_cpucfg: cpucfg@40001000 {
102				compatible = "fsl,vf610-mscm-cpucfg", "syscon";
103				reg = <0x40001000 0x800>;
104			};
105
106			mscm_ir: interrupt-controller@40001800 {
107				compatible = "fsl,vf610-mscm-ir";
108				reg = <0x40001800 0x400>;
109				fsl,cpucfg = <&mscm_cpucfg>;
110				interrupt-controller;
111				#interrupt-cells = <2>;
112			};
113
114			edma0: dma-controller@40018000 {
115				#dma-cells = <2>;
116				compatible = "fsl,vf610-edma";
117				reg = <0x40018000 0x2000>,
118					<0x40024000 0x1000>,
119					<0x40025000 0x1000>;
120				dma-channels = <32>;
121				interrupts = <8 IRQ_TYPE_LEVEL_HIGH>,
122						<9 IRQ_TYPE_LEVEL_HIGH>;
123				interrupt-names = "edma-tx", "edma-err";
124				clock-names = "dmamux0", "dmamux1";
125				clocks = <&clks VF610_CLK_DMAMUX0>,
126					<&clks VF610_CLK_DMAMUX1>;
127				status = "disabled";
128			};
129
130			can0: flexcan@40020000 {
131				compatible = "fsl,vf610-flexcan";
132				reg = <0x40020000 0x4000>;
133				interrupts = <58 IRQ_TYPE_LEVEL_HIGH>;
134				clocks = <&clks VF610_CLK_FLEXCAN0>,
135					 <&clks VF610_CLK_FLEXCAN0>;
136				clock-names = "ipg", "per";
137				status = "disabled";
138			};
139
140			uart0: serial@40027000 {
141				compatible = "fsl,vf610-lpuart";
142				reg = <0x40027000 0x1000>;
143				interrupts = <61 IRQ_TYPE_LEVEL_HIGH>;
144				clocks = <&clks VF610_CLK_UART0>;
145				clock-names = "ipg";
146				dmas = <&edma0 0 2>,
147					<&edma0 0 3>;
148				dma-names = "rx","tx";
149				status = "disabled";
150			};
151
152			uart1: serial@40028000 {
153				compatible = "fsl,vf610-lpuart";
154				reg = <0x40028000 0x1000>;
155				interrupts = <62 IRQ_TYPE_LEVEL_HIGH>;
156				clocks = <&clks VF610_CLK_UART1>;
157				clock-names = "ipg";
158				dmas = <&edma0 0 4>,
159					<&edma0 0 5>;
160				dma-names = "rx","tx";
161				status = "disabled";
162			};
163
164			uart2: serial@40029000 {
165				compatible = "fsl,vf610-lpuart";
166				reg = <0x40029000 0x1000>;
167				interrupts = <63 IRQ_TYPE_LEVEL_HIGH>;
168				clocks = <&clks VF610_CLK_UART2>;
169				clock-names = "ipg";
170				dmas = <&edma0 0 6>,
171					<&edma0 0 7>;
172				dma-names = "rx","tx";
173				status = "disabled";
174			};
175
176			uart3: serial@4002a000 {
177				compatible = "fsl,vf610-lpuart";
178				reg = <0x4002a000 0x1000>;
179				interrupts = <64 IRQ_TYPE_LEVEL_HIGH>;
180				clocks = <&clks VF610_CLK_UART3>;
181				clock-names = "ipg";
182				dmas = <&edma0 0 8>,
183					<&edma0 0 9>;
184				dma-names = "rx","tx";
185				status = "disabled";
186			};
187
188			dspi0: dspi0@4002c000 {
189				#address-cells = <1>;
190				#size-cells = <0>;
191				compatible = "fsl,vf610-dspi";
192				reg = <0x4002c000 0x1000>;
193				interrupts = <67 IRQ_TYPE_LEVEL_HIGH>;
194				clocks = <&clks VF610_CLK_DSPI0>;
195				clock-names = "dspi";
196				spi-num-chipselects = <6>;
197				dmas = <&edma1 1 12>,
198					<&edma1 1 13>;
199				dma-names = "rx", "tx";
200				status = "disabled";
201			};
202
203			dspi1: dspi1@4002d000 {
204				#address-cells = <1>;
205				#size-cells = <0>;
206				compatible = "fsl,vf610-dspi";
207				reg = <0x4002d000 0x1000>;
208				interrupts = <68 IRQ_TYPE_LEVEL_HIGH>;
209				clocks = <&clks VF610_CLK_DSPI1>;
210				clock-names = "dspi";
211				spi-num-chipselects = <4>;
212				dmas = <&edma1 1 14>,
213					<&edma1 1 15>;
214				dma-names = "rx", "tx";
215				status = "disabled";
216			};
217
218			sai0: sai@4002f000 {
219				compatible = "fsl,vf610-sai";
220				reg = <0x4002f000 0x1000>;
221				interrupts = <84 IRQ_TYPE_LEVEL_HIGH>;
222				clocks = <&clks VF610_CLK_SAI0>,
223					<&clks VF610_CLK_SAI0_DIV>,
224					<&clks 0>, <&clks 0>;
225				clock-names = "bus", "mclk1", "mclk2", "mclk3";
226				dma-names = "tx", "rx";
227				dmas = <&edma0 0 17>,
228					<&edma0 0 16>;
229				status = "disabled";
230			};
231
232			sai1: sai@40030000 {
233				compatible = "fsl,vf610-sai";
234				reg = <0x40030000 0x1000>;
235				interrupts = <85 IRQ_TYPE_LEVEL_HIGH>;
236				clocks = <&clks VF610_CLK_SAI1>,
237					<&clks VF610_CLK_SAI1_DIV>,
238					<&clks 0>, <&clks 0>;
239				clock-names = "bus", "mclk1", "mclk2", "mclk3";
240				dma-names = "tx", "rx";
241				dmas = <&edma0 0 19>,
242					<&edma0 0 18>;
243				status = "disabled";
244			};
245
246			sai2: sai@40031000 {
247				compatible = "fsl,vf610-sai";
248				reg = <0x40031000 0x1000>;
249				interrupts = <86 IRQ_TYPE_LEVEL_HIGH>;
250				clocks = <&clks VF610_CLK_SAI2>,
251					<&clks VF610_CLK_SAI2_DIV>,
252					<&clks 0>, <&clks 0>;
253				clock-names = "bus", "mclk1", "mclk2", "mclk3";
254				dma-names = "tx", "rx";
255				dmas = <&edma0 0 21>,
256					<&edma0 0 20>;
257				status = "disabled";
258			};
259
260			sai3: sai@40032000 {
261				compatible = "fsl,vf610-sai";
262				reg = <0x40032000 0x1000>;
263				interrupts = <87 IRQ_TYPE_LEVEL_HIGH>;
264				clocks = <&clks VF610_CLK_SAI3>,
265					<&clks VF610_CLK_SAI3_DIV>,
266					<&clks 0>, <&clks 0>;
267				clock-names = "bus", "mclk1", "mclk2", "mclk3";
268				dma-names = "tx", "rx";
269				dmas = <&edma0 1 9>,
270					<&edma0 1 8>;
271				status = "disabled";
272			};
273
274			pit: pit@40037000 {
275				compatible = "fsl,vf610-pit";
276				reg = <0x40037000 0x1000>;
277				interrupts = <39 IRQ_TYPE_LEVEL_HIGH>;
278				clocks = <&clks VF610_CLK_PIT>;
279				clock-names = "pit";
280			};
281
282			pwm0: pwm@40038000 {
283				compatible = "fsl,vf610-ftm-pwm";
284				#pwm-cells = <3>;
285				reg = <0x40038000 0x1000>;
286				clock-names = "ftm_sys", "ftm_ext",
287					      "ftm_fix", "ftm_cnt_clk_en";
288				clocks = <&clks VF610_CLK_FTM0>,
289					<&clks VF610_CLK_FTM0_EXT_SEL>,
290					<&clks VF610_CLK_FTM0_FIX_SEL>,
291					<&clks VF610_CLK_FTM0_EXT_FIX_EN>;
292				status = "disabled";
293			};
294
295			pwm1: pwm@40039000 {
296				compatible = "fsl,vf610-ftm-pwm";
297				#pwm-cells = <3>;
298				reg = <0x40039000 0x1000>;
299				clock-names = "ftm_sys", "ftm_ext",
300					      "ftm_fix", "ftm_cnt_clk_en";
301				clocks = <&clks VF610_CLK_FTM1>,
302					<&clks VF610_CLK_FTM1_EXT_SEL>,
303					<&clks VF610_CLK_FTM1_FIX_SEL>,
304					<&clks VF610_CLK_FTM1_EXT_FIX_EN>;
305				status = "disabled";
306			};
307
308			adc0: adc@4003b000 {
309				compatible = "fsl,vf610-adc";
310				reg = <0x4003b000 0x1000>;
311				interrupts = <53 IRQ_TYPE_LEVEL_HIGH>;
312				clocks = <&clks VF610_CLK_ADC0>;
313				clock-names = "adc";
314				#io-channel-cells = <1>;
315				status = "disabled";
316				fsl,adck-max-frequency = <30000000>, <40000000>,
317							<20000000>;
318			};
319
320			tcon0: timing-controller@4003d000 {
321				compatible = "fsl,vf610-tcon";
322				reg = <0x4003d000 0x1000>;
323				clocks = <&clks VF610_CLK_TCON0>;
324				clock-names = "ipg";
325				status = "disabled";
326			};
327
328			wdoga5: wdog@4003e000 {
329				compatible = "fsl,vf610-wdt", "fsl,imx21-wdt";
330				reg = <0x4003e000 0x1000>;
331				interrupts = <20 IRQ_TYPE_LEVEL_HIGH>;
332				clocks = <&clks VF610_CLK_WDT>;
333				clock-names = "wdog";
334				status = "disabled";
335			};
336
337			qspi0: quadspi@40044000 {
338				#address-cells = <1>;
339				#size-cells = <0>;
340				compatible = "fsl,vf610-qspi";
341				reg = <0x40044000 0x1000>, <0x20000000 0x10000000>;
342				reg-names = "QuadSPI", "QuadSPI-memory";
343				interrupts = <24 IRQ_TYPE_LEVEL_HIGH>;
344				clocks = <&clks VF610_CLK_QSPI0_EN>,
345					<&clks VF610_CLK_QSPI0>;
346				clock-names = "qspi_en", "qspi";
347				status = "disabled";
348			};
349
350			iomuxc: iomuxc@40048000 {
351				compatible = "fsl,vf610-iomuxc";
352				reg = <0x40048000 0x1000>;
353			};
354
355			gpio0: gpio@40049000 {
356				compatible = "fsl,vf610-gpio";
357				reg = <0x40049000 0x1000 0x400ff000 0x40>;
358				gpio-controller;
359				#gpio-cells = <2>;
360				interrupts = <107 IRQ_TYPE_LEVEL_HIGH>;
361				interrupt-controller;
362				#interrupt-cells = <2>;
363				gpio-ranges = <&iomuxc 0 0 32>;
364			};
365
366			gpio1: gpio@4004a000 {
367				compatible = "fsl,vf610-gpio";
368				reg = <0x4004a000 0x1000 0x400ff040 0x40>;
369				gpio-controller;
370				#gpio-cells = <2>;
371				interrupts = <108 IRQ_TYPE_LEVEL_HIGH>;
372				interrupt-controller;
373				#interrupt-cells = <2>;
374				gpio-ranges = <&iomuxc 0 32 32>;
375			};
376
377			gpio2: gpio@4004b000 {
378				compatible = "fsl,vf610-gpio";
379				reg = <0x4004b000 0x1000 0x400ff080 0x40>;
380				gpio-controller;
381				#gpio-cells = <2>;
382				interrupts = <109 IRQ_TYPE_LEVEL_HIGH>;
383				interrupt-controller;
384				#interrupt-cells = <2>;
385				gpio-ranges = <&iomuxc 0 64 32>;
386			};
387
388			gpio3: gpio@4004c000 {
389				compatible = "fsl,vf610-gpio";
390				reg = <0x4004c000 0x1000 0x400ff0c0 0x40>;
391				gpio-controller;
392				#gpio-cells = <2>;
393				interrupts = <110 IRQ_TYPE_LEVEL_HIGH>;
394				interrupt-controller;
395				#interrupt-cells = <2>;
396				gpio-ranges = <&iomuxc 0 96 32>;
397			};
398
399			gpio4: gpio@4004d000 {
400				compatible = "fsl,vf610-gpio";
401				reg = <0x4004d000 0x1000 0x400ff100 0x40>;
402				gpio-controller;
403				#gpio-cells = <2>;
404				interrupts = <111 IRQ_TYPE_LEVEL_HIGH>;
405				interrupt-controller;
406				#interrupt-cells = <2>;
407				gpio-ranges = <&iomuxc 0 128 7>;
408			};
409
410			anatop: anatop@40050000 {
411				compatible = "fsl,vf610-anatop", "syscon";
412				reg = <0x40050000 0x400>;
413			};
414
415			usbphy0: usbphy@40050800 {
416				compatible = "fsl,vf610-usbphy";
417				reg = <0x40050800 0x400>;
418				interrupts = <50 IRQ_TYPE_LEVEL_HIGH>;
419				clocks = <&clks VF610_CLK_USBPHY0>;
420				fsl,anatop = <&anatop>;
421				status = "disabled";
422			};
423
424			usbphy1: usbphy@40050c00 {
425				compatible = "fsl,vf610-usbphy";
426				reg = <0x40050c00 0x400>;
427				interrupts = <51 IRQ_TYPE_LEVEL_HIGH>;
428				clocks = <&clks VF610_CLK_USBPHY1>;
429				fsl,anatop = <&anatop>;
430				status = "disabled";
431			};
432
433			dcu0: dcu@40058000 {
434				compatible = "fsl,vf610-dcu";
435				reg = <0x40058000 0x1200>;
436				interrupts = <30 IRQ_TYPE_LEVEL_HIGH>;
437				clocks = <&clks VF610_CLK_DCU0>,
438					<&clks VF610_CLK_DCU0_DIV>;
439				clock-names = "dcu", "pix";
440				fsl,tcon = <&tcon0>;
441				status = "disabled";
442			};
443
444			i2c0: i2c@40066000 {
445				#address-cells = <1>;
446				#size-cells = <0>;
447				compatible = "fsl,vf610-i2c";
448				reg = <0x40066000 0x1000>;
449				interrupts = <71 IRQ_TYPE_LEVEL_HIGH>;
450				clocks = <&clks VF610_CLK_I2C0>;
451				clock-names = "ipg";
452				dmas = <&edma0 0 50>,
453					<&edma0 0 51>;
454				dma-names = "rx","tx";
455				status = "disabled";
456			};
457
458			i2c1: i2c@40067000 {
459				#address-cells = <1>;
460				#size-cells = <0>;
461				compatible = "fsl,vf610-i2c";
462				reg = <0x40067000 0x1000>;
463				interrupts = <72 IRQ_TYPE_LEVEL_HIGH>;
464				clocks = <&clks VF610_CLK_I2C1>;
465				clock-names = "ipg";
466				dmas = <&edma0 0 52>,
467					<&edma0 0 53>;
468				dma-names = "rx","tx";
469				status = "disabled";
470			};
471
472			clks: ccm@4006b000 {
473				compatible = "fsl,vf610-ccm";
474				reg = <0x4006b000 0x1000>;
475				clocks = <&sxosc>, <&fxosc>;
476				clock-names = "sxosc", "fxosc";
477				#clock-cells = <1>;
478			};
479
480			usbdev0: usb@40034000 {
481				compatible = "fsl,vf610-usb", "fsl,imx27-usb";
482				reg = <0x40034000 0x800>;
483				interrupts = <75 IRQ_TYPE_LEVEL_HIGH>;
484				clocks = <&clks VF610_CLK_USBC0>;
485				fsl,usbphy = <&usbphy0>;
486				fsl,usbmisc = <&usbmisc0 0>;
487				dr_mode = "peripheral";
488				status = "disabled";
489			};
490
491			usbmisc0: usb@40034800 {
492				#index-cells = <1>;
493				compatible = "fsl,vf610-usbmisc";
494				reg = <0x40034800 0x200>;
495				clocks = <&clks VF610_CLK_USBC0>;
496				status = "disabled";
497			};
498
499			src: src@4006e000 {
500				compatible = "fsl,vf610-src", "syscon";
501				reg = <0x4006e000 0x1000>;
502				interrupts = <96 IRQ_TYPE_LEVEL_HIGH>;
503			};
504		};
505
506		aips1: aips-bus@40080000 {
507			compatible = "fsl,aips-bus", "simple-bus";
508			#address-cells = <1>;
509			#size-cells = <1>;
510			reg = <0x40080000 0x0007f000>;
511			ranges;
512
513			edma1: dma-controller@40098000 {
514				#dma-cells = <2>;
515				compatible = "fsl,vf610-edma";
516				reg = <0x40098000 0x2000>,
517					<0x400a1000 0x1000>,
518					<0x400a2000 0x1000>;
519				dma-channels = <32>;
520				interrupts = <10 IRQ_TYPE_LEVEL_HIGH>,
521						<11 IRQ_TYPE_LEVEL_HIGH>;
522				interrupt-names = "edma-tx", "edma-err";
523				clock-names = "dmamux0", "dmamux1";
524				clocks = <&clks VF610_CLK_DMAMUX2>,
525					<&clks VF610_CLK_DMAMUX3>;
526				status = "disabled";
527			};
528
529			ocotp: ocotp@400a5000 {
530				compatible = "fsl,vf610-ocotp";
531				reg = <0x400a5000 0x1000>;
532				clocks = <&clks VF610_CLK_OCOTP>;
533			};
534
535			snvs0: snvs@400a7000 {
536			    compatible = "fsl,sec-v4.0-mon", "syscon", "simple-mfd";
537				reg = <0x400a7000 0x2000>;
538
539				snvsrtc: snvs-rtc-lp {
540					compatible = "fsl,sec-v4.0-mon-rtc-lp";
541					regmap = <&snvs0>;
542					offset = <0x34>;
543					interrupts = <100 IRQ_TYPE_LEVEL_HIGH>;
544					clocks = <&clks VF610_CLK_SNVS>;
545					clock-names = "snvs-rtc";
546				};
547			};
548
549			uart4: serial@400a9000 {
550				compatible = "fsl,vf610-lpuart";
551				reg = <0x400a9000 0x1000>;
552				interrupts = <65 IRQ_TYPE_LEVEL_HIGH>;
553				clocks = <&clks VF610_CLK_UART4>;
554				clock-names = "ipg";
555				status = "disabled";
556			};
557
558			uart5: serial@400aa000 {
559				compatible = "fsl,vf610-lpuart";
560				reg = <0x400aa000 0x1000>;
561				interrupts = <66 IRQ_TYPE_LEVEL_HIGH>;
562				clocks = <&clks VF610_CLK_UART5>;
563				clock-names = "ipg";
564				status = "disabled";
565			};
566
567			dspi2: dspi2@400ac000 {
568				#address-cells = <1>;
569				#size-cells = <0>;
570				compatible = "fsl,vf610-dspi";
571				reg = <0x400ac000 0x1000>;
572				interrupts = <69 IRQ_TYPE_LEVEL_HIGH>;
573				clocks = <&clks VF610_CLK_DSPI2>;
574				clock-names = "dspi";
575				spi-num-chipselects = <2>;
576				dmas = <&edma1 0 10>,
577					<&edma1 0 11>;
578				dma-names = "rx", "tx";
579				status = "disabled";
580			};
581
582			dspi3: dspi3@400ad000 {
583				#address-cells = <1>;
584				#size-cells = <0>;
585				compatible = "fsl,vf610-dspi";
586				reg = <0x400ad000 0x1000>;
587				interrupts = <70 IRQ_TYPE_LEVEL_HIGH>;
588				clocks = <&clks VF610_CLK_DSPI3>;
589				clock-names = "dspi";
590				spi-num-chipselects = <2>;
591				dmas = <&edma1 0 12>,
592					<&edma1 0 13>;
593				dma-names = "rx", "tx";
594				status = "disabled";
595			};
596
597			adc1: adc@400bb000 {
598				compatible = "fsl,vf610-adc";
599				reg = <0x400bb000 0x1000>;
600				interrupts = <54 IRQ_TYPE_LEVEL_HIGH>;
601				clocks = <&clks VF610_CLK_ADC1>;
602				clock-names = "adc";
603				#io-channel-cells = <1>;
604				status = "disabled";
605				fsl,adck-max-frequency = <30000000>, <40000000>,
606							<20000000>;
607			};
608
609			esdhc0: esdhc@400b1000 {
610				compatible = "fsl,imx53-esdhc";
611				reg = <0x400b1000 0x1000>;
612				interrupts = <27 IRQ_TYPE_LEVEL_HIGH>;
613				clocks = <&clks VF610_CLK_IPG_BUS>,
614					<&clks VF610_CLK_PLATFORM_BUS>,
615					<&clks VF610_CLK_ESDHC0>;
616				clock-names = "ipg", "ahb", "per";
617				status = "disabled";
618			};
619
620			esdhc1: esdhc@400b2000 {
621				compatible = "fsl,imx53-esdhc";
622				reg = <0x400b2000 0x1000>;
623				interrupts = <28 IRQ_TYPE_LEVEL_HIGH>;
624				clocks = <&clks VF610_CLK_IPG_BUS>,
625					<&clks VF610_CLK_PLATFORM_BUS>,
626					<&clks VF610_CLK_ESDHC1>;
627				clock-names = "ipg", "ahb", "per";
628				status = "disabled";
629			};
630
631			usbh1: usb@400b4000 {
632				compatible = "fsl,vf610-usb", "fsl,imx27-usb";
633				reg = <0x400b4000 0x800>;
634				interrupts = <76 IRQ_TYPE_LEVEL_HIGH>;
635				clocks = <&clks VF610_CLK_USBC1>;
636				fsl,usbphy = <&usbphy1>;
637				fsl,usbmisc = <&usbmisc1 0>;
638				dr_mode = "host";
639				status = "disabled";
640			};
641
642			usbmisc1: usb@400b4800 {
643				#index-cells = <1>;
644				compatible = "fsl,vf610-usbmisc";
645				reg = <0x400b4800 0x200>;
646				clocks = <&clks VF610_CLK_USBC1>;
647				status = "disabled";
648			};
649
650			ftm: ftm@400b8000 {
651				compatible = "fsl,ftm-timer";
652				reg = <0x400b8000 0x1000 0x400b9000 0x1000>;
653				interrupts = <44 IRQ_TYPE_LEVEL_HIGH>;
654				clock-names = "ftm-evt", "ftm-src",
655					"ftm-evt-counter-en", "ftm-src-counter-en";
656				clocks = <&clks VF610_CLK_FTM2>,
657					<&clks VF610_CLK_FTM3>,
658					<&clks VF610_CLK_FTM2_EXT_FIX_EN>,
659					<&clks VF610_CLK_FTM3_EXT_FIX_EN>;
660				status = "disabled";
661			};
662
663			qspi1: quadspi@400c4000 {
664				#address-cells = <1>;
665				#size-cells = <0>;
666				compatible = "fsl,vf610-qspi";
667				reg = <0x400c4000 0x1000>, <0x50000000 0x10000000>;
668				reg-names = "QuadSPI", "QuadSPI-memory";
669				interrupts = <25 IRQ_TYPE_LEVEL_HIGH>;
670				clocks = <&clks VF610_CLK_QSPI1_EN>,
671					<&clks VF610_CLK_QSPI1>;
672				clock-names = "qspi_en", "qspi";
673				status = "disabled";
674			};
675
676			dac0: dac@400cc000 {
677				compatible = "fsl,vf610-dac";
678				reg = <0x400cc000 1000>;
679				interrupts = <55 IRQ_TYPE_LEVEL_HIGH>;
680				clock-names = "dac";
681				clocks = <&clks VF610_CLK_DAC0>;
682				status = "disabled";
683			};
684
685			dac1: dac@400cd000 {
686				compatible = "fsl,vf610-dac";
687				reg = <0x400cd000 1000>;
688				interrupts = <56 IRQ_TYPE_LEVEL_HIGH>;
689				clock-names = "dac";
690				clocks = <&clks VF610_CLK_DAC1>;
691				status = "disabled";
692			};
693
694			fec0: ethernet@400d0000 {
695				compatible = "fsl,mvf600-fec";
696				reg = <0x400d0000 0x1000>;
697				interrupts = <78 IRQ_TYPE_LEVEL_HIGH>;
698				clocks = <&clks VF610_CLK_ENET0>,
699					<&clks VF610_CLK_ENET0>,
700					<&clks VF610_CLK_ENET>;
701				clock-names = "ipg", "ahb", "ptp";
702				status = "disabled";
703			};
704
705			fec1: ethernet@400d1000 {
706				compatible = "fsl,mvf600-fec";
707				reg = <0x400d1000 0x1000>;
708				interrupts = <79 IRQ_TYPE_LEVEL_HIGH>;
709				clocks = <&clks VF610_CLK_ENET1>,
710					<&clks VF610_CLK_ENET1>,
711					<&clks VF610_CLK_ENET>;
712				clock-names = "ipg", "ahb", "ptp";
713				status = "disabled";
714			};
715
716			can1: flexcan@400d4000 {
717				compatible = "fsl,vf610-flexcan";
718				reg = <0x400d4000 0x4000>;
719				interrupts = <59 IRQ_TYPE_LEVEL_HIGH>;
720				clocks = <&clks VF610_CLK_FLEXCAN1>,
721					 <&clks VF610_CLK_FLEXCAN1>;
722				clock-names = "ipg", "per";
723				status = "disabled";
724			};
725
726			nfc: nand@400e0000 {
727				#address-cells = <1>;
728				#size-cells = <0>;
729				compatible = "fsl,vf610-nfc";
730				reg = <0x400e0000 0x4000>;
731				interrupts = <83 IRQ_TYPE_LEVEL_HIGH>;
732				clocks = <&clks VF610_CLK_NFC>;
733				clock-names = "nfc";
734				status = "disabled";
735			};
736
737			i2c2: i2c@400e6000 {
738				#address-cells = <1>;
739				#size-cells = <0>;
740				compatible = "fsl,vf610-i2c";
741				reg = <0x400e6000 0x1000>;
742				interrupts = <73 IRQ_TYPE_LEVEL_HIGH>;
743				clocks = <&clks VF610_CLK_I2C2>;
744				clock-names = "ipg";
745				dmas = <&edma0 1 36>,
746					<&edma0 1 37>;
747				dma-names = "rx","tx";
748				status = "disabled";
749			};
750
751			i2c3: i2c@400e7000 {
752				#address-cells = <1>;
753				#size-cells = <0>;
754				compatible = "fsl,vf610-i2c";
755				reg = <0x400e7000 0x1000>;
756				interrupts = <74 IRQ_TYPE_LEVEL_HIGH>;
757				clocks = <&clks VF610_CLK_I2C3>;
758				clock-names = "ipg";
759				dmas = <&edma0 1 38>,
760					<&edma0 1 39>;
761				dma-names = "rx","tx";
762				status = "disabled";
763			};
764		};
765
766		iio-hwmon {
767			compatible = "iio-hwmon";
768			io-channels = <&adc0 16>, <&adc1 16>;
769		};
770	};
771};
772