imx28-tx28.dts revision 279377
1/*
2 * Copyright 2012 Shawn Guo <shawn.guo@linaro.org>
3 * Copyright 2013 Lothar Wa��mann <LW@KARO-electronics.de>
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 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/dts-v1/;
14#include "imx28.dtsi"
15#include <dt-bindings/gpio/gpio.h>
16
17/ {
18	model = "Ka-Ro electronics TX28 module";
19	compatible = "karo,tx28", "fsl,imx28";
20
21	aliases {
22		can0 = &can0;
23		can1 = &can1;
24		display = &display0;
25		ds1339 = &ds1339;
26		gpio5 = &gpio5;
27		lcdif = &lcdif;
28		lcdif_23bit_pins = &tx28_lcdif_23bit_pins;
29		lcdif_24bit_pins = &lcdif_24bit_pins_a;
30		reg_can_xcvr = &reg_can_xcvr;
31		spi_gpio = &spi_gpio;
32		spi_mxs = &ssp3;
33		stk5led = &user_led;
34		usbotg = &usb0;
35	};
36
37	memory {
38		reg = <0 0>; /* will be filled in by U-Boot */
39	};
40
41	onewire {
42		compatible = "w1-gpio";
43		gpios = <&gpio2 7 GPIO_ACTIVE_HIGH>;
44		status = "disabled";
45	};
46
47	regulators {
48		compatible = "simple-bus";
49		#address-cells = <1>;
50		#size-cells = <0>;
51
52		reg_usb0_vbus: regulator@0 {
53			compatible = "regulator-fixed";
54			reg = <0>;
55			regulator-name = "usb0_vbus";
56			regulator-min-microvolt = <5000000>;
57			regulator-max-microvolt = <5000000>;
58			gpio = <&gpio0 18 GPIO_ACTIVE_HIGH>;
59			enable-active-high;
60		};
61
62		reg_usb1_vbus: regulator@1 {
63			compatible = "regulator-fixed";
64			reg = <1>;
65			regulator-name = "usb1_vbus";
66			regulator-min-microvolt = <5000000>;
67			regulator-max-microvolt = <5000000>;
68			gpio = <&gpio3 27 GPIO_ACTIVE_HIGH>;
69			enable-active-high;
70		};
71
72		reg_2p5v: regulator@2 {
73			compatible = "regulator-fixed";
74			reg = <2>;
75			regulator-name = "2P5V";
76			regulator-min-microvolt = <2500000>;
77			regulator-max-microvolt = <2500000>;
78			regulator-always-on;
79		};
80
81		reg_3p3v: regulator@3 {
82			compatible = "regulator-fixed";
83			reg = <3>;
84			regulator-name = "3P3V";
85			regulator-min-microvolt = <3300000>;
86			regulator-max-microvolt = <3300000>;
87			regulator-always-on;
88		};
89
90		reg_can_xcvr: regulator@4 {
91			compatible = "regulator-fixed";
92			reg = <4>;
93			regulator-name = "CAN XCVR";
94			regulator-min-microvolt = <3300000>;
95			regulator-max-microvolt = <3300000>;
96			gpio = <&gpio1 0 GPIO_ACTIVE_HIGH>;
97			pinctrl-names = "default";
98			pinctrl-0 = <&tx28_flexcan_xcvr_pins>;
99		};
100
101		reg_lcd: regulator@5 {
102			compatible = "regulator-fixed";
103			reg = <5>;
104			regulator-name = "LCD POWER";
105			regulator-min-microvolt = <3300000>;
106			regulator-max-microvolt = <3300000>;
107			gpio = <&gpio1 31 GPIO_ACTIVE_HIGH>;
108			enable-active-high;
109		};
110
111		reg_lcd_reset: regulator@6 {
112			compatible = "regulator-fixed";
113			reg = <6>;
114			regulator-name = "LCD RESET";
115			regulator-min-microvolt = <3300000>;
116			regulator-max-microvolt = <3300000>;
117			gpio = <&gpio3 30 GPIO_ACTIVE_HIGH>;
118			startup-delay-us = <300000>;
119			enable-active-high;
120			regulator-always-on;
121			regulator-boot-on;
122		};
123	};
124
125	clocks {
126		#address-cells = <1>;
127		#size-cells = <0>;
128		mclk: clock@0 {
129			compatible = "fixed-clock";
130			reg = <0>;
131			#clock-cells = <0>;
132			clock-frequency = <27000000>;
133		};
134	};
135
136	sound {
137		compatible = "fsl,imx28-tx28-sgtl5000",
138			     "fsl,mxs-audio-sgtl5000";
139		model = "imx28-tx28-sgtl5000";
140		saif-controllers = <&saif0 &saif1>;
141		audio-codec = <&sgtl5000>;
142	};
143
144	leds {
145		compatible = "gpio-leds";
146
147		user_led: user {
148			label = "Heartbeat";
149			gpios = <&gpio4 10 GPIO_ACTIVE_HIGH>;
150			linux,default-trigger = "heartbeat";
151		};
152	};
153
154	backlight {
155		compatible = "pwm-backlight";
156		pwms = <&pwm 0 500000>;
157		/*
158		 * a silly way to create a 1:1 relationship between the
159		 * PWM value and the actual duty cycle
160		 */
161		brightness-levels = < 0  1  2  3  4  5  6  7  8  9
162				     10 11 12 13 14 15 16 17 18 19
163				     20 21 22 23 24 25 26 27 28 29
164				     30 31 32 33 34 35 36 37 38 39
165				     40 41 42 43 44 45 46 47 48 49
166				     50 51 52 53 54 55 56 57 58 59
167				     60 61 62 63 64 65 66 67 68 69
168				     70 71 72 73 74 75 76 77 78 79
169				     80 81 82 83 84 85 86 87 88 89
170				     90 91 92 93 94 95 96 97 98 99
171				    100>;
172		default-brightness-level = <50>;
173	};
174
175	matrix_keypad: matrix-keypad@0 {
176		compatible = "gpio-matrix-keypad";
177		col-gpios = <
178			&gpio5 0 GPIO_ACTIVE_HIGH
179			&gpio5 1 GPIO_ACTIVE_HIGH
180			&gpio5 2 GPIO_ACTIVE_HIGH
181			&gpio5 3 GPIO_ACTIVE_HIGH
182		>;
183		row-gpios = <
184			&gpio5 4 GPIO_ACTIVE_HIGH
185			&gpio5 5 GPIO_ACTIVE_HIGH
186			&gpio5 6 GPIO_ACTIVE_HIGH
187			&gpio5 7 GPIO_ACTIVE_HIGH
188		>;
189		/* sample keymap */
190		linux,keymap = <
191			0x00000074 /* row 0, col 0, KEY_POWER */
192			0x00010052 /* row 0, col 1, KEY_KP0 */
193			0x0002004f /* row 0, col 2, KEY_KP1 */
194			0x00030050 /* row 0, col 3, KEY_KP2 */
195			0x01000051 /* row 1, col 0, KEY_KP3 */
196			0x0101004b /* row 1, col 1, KEY_KP4 */
197			0x0102004c /* row 1, col 2, KEY_KP5 */
198			0x0103004d /* row 1, col 3, KEY_KP6 */
199			0x02000047 /* row 2, col 0, KEY_KP7 */
200			0x02010048 /* row 2, col 1, KEY_KP8 */
201			0x02020049 /* row 2, col 2, KEY_KP9 */
202		>;
203		gpio-activelow;
204		linux,wakeup;
205		debounce-delay-ms = <100>;
206		col-scan-delay-us = <5000>;
207		linux,no-autorepeat;
208	};
209
210	spi_gpio: spi-gpio {
211		compatible = "spi-gpio";
212		#address-cells = <1>;
213		#size-cells = <0>;
214		pinctrl-names = "default";
215		pinctrl-0 = <&tx28_spi_gpio_pins>;
216
217		gpio-sck = <&gpio2 24 GPIO_ACTIVE_HIGH>;
218		gpio-mosi = <&gpio2 25 GPIO_ACTIVE_HIGH>;
219		gpio-miso = <&gpio2 26 GPIO_ACTIVE_HIGH>;
220		num-chipselects = <3>;
221		cs-gpios = <
222			&gpio2 27 GPIO_ACTIVE_LOW
223			&gpio3 8 GPIO_ACTIVE_LOW
224			&gpio3 9 GPIO_ACTIVE_LOW
225		>;
226		/* enable this and disable ssp3 below, if you need full duplex SPI transfer */
227		status = "disabled";
228
229		spi@0 {
230			compatible = "spidev";
231			reg = <0>;
232			spi-max-frequency = <57600000>;
233		};
234
235		spi@1 {
236			compatible = "spidev";
237			reg = <1>;
238			spi-max-frequency = <57600000>;
239		};
240
241		spi@2 {
242			compatible = "spidev";
243			reg = <2>;
244			spi-max-frequency = <57600000>;
245		};
246	};
247};
248
249/* 2nd TX-Std UART - (A)UART1  */
250&auart1 {
251	pinctrl-names = "default";
252	pinctrl-0 = <&auart1_pins_a>;
253	status = "okay";
254};
255
256/* 3rd TX-Std UART - (A)UART3  */
257&auart3 {
258	pinctrl-names = "default";
259	pinctrl-0 = <&auart3_pins_a>;
260	status = "okay";
261};
262
263&can0 {
264	pinctrl-names = "default";
265	pinctrl-0 = <&can0_pins_a>;
266	xceiver-supply = <&reg_can_xcvr>;
267	status = "okay";
268};
269
270&can1 {
271	pinctrl-names = "default";
272	pinctrl-0 = <&can1_pins_a>;
273	xceiver-supply = <&reg_can_xcvr>;
274	status = "okay";
275};
276
277&digctl {
278	status = "okay";
279};
280
281/* 1st TX-Std UART - (D)UART */
282&duart {
283	pinctrl-names = "default";
284	pinctrl-0 = <&duart_4pins_a>;
285	status = "okay";
286};
287
288&gpmi {
289	pinctrl-0 = <&gpmi_pins_a &gpmi_status_cfg>;
290	nand-on-flash-bbt;
291	status = "okay";
292};
293
294&i2c0 {
295	pinctrl-names = "default";
296	pinctrl-0 = <&i2c0_pins_a>;
297	clock-frequency = <400000>;
298	status = "okay";
299
300	sgtl5000: sgtl5000@0a {
301		compatible = "fsl,sgtl5000";
302		reg = <0x0a>;
303		VDDA-supply = <&reg_2p5v>;
304		VDDIO-supply = <&reg_3p3v>;
305		clocks = <&mclk>;
306	};
307
308	gpio5: pca953x@20 {
309		compatible = "nxp,pca9554";
310		reg = <0x20>;
311		pinctrl-names = "default";
312		pinctrl-0 = <&tx28_pca9554_pins>;
313		interrupt-parent = <&gpio3>;
314		interrupts = <28 0>;
315		gpio-controller;
316		#gpio-cells = <2>;
317		interrupt-controller;
318		#interrupt-cells = <2>;
319	};
320
321	polytouch: edt-ft5x06@38 {
322		compatible = "edt,edt-ft5x06";
323		reg = <0x38>;
324		pinctrl-names = "default";
325		pinctrl-0 = <&tx28_edt_ft5x06_pins>;
326		interrupt-parent = <&gpio2>;
327		interrupts = <5 0>;
328		reset-gpios = <&gpio2 6 GPIO_ACTIVE_LOW>;
329		wake-gpios = <&gpio4 9 GPIO_ACTIVE_HIGH>;
330	};
331
332	touchscreen: tsc2007@48 {
333		compatible = "ti,tsc2007";
334		reg = <0x48>;
335		pinctrl-names = "default";
336		pinctrl-0 = <&tx28_tsc2007_pins>;
337		interrupt-parent = <&gpio3>;
338		interrupts = <20 0>;
339		pendown-gpio = <&gpio3 20 GPIO_ACTIVE_LOW>;
340		ti,x-plate-ohms = /bits/ 16 <660>;
341	};
342
343	ds1339: rtc@68 {
344		compatible = "mxim,ds1339";
345		reg = <0x68>;
346	};
347};
348
349&lcdif {
350	pinctrl-names = "default";
351	pinctrl-0 = <&lcdif_24bit_pins_a &lcdif_sync_pins_a &tx28_lcdif_ctrl_pins>;
352	lcd-supply = <&reg_lcd>;
353	display = <&display0>;
354	status = "okay";
355
356	display0: display0 {
357		bits-per-pixel = <32>;
358		bus-width = <24>;
359		display-timings {
360			native-mode = <&timing5>;
361			timing0: timing0 {
362				panel-name = "VGA";
363				clock-frequency = <25175000>;
364				hactive = <640>;
365				vactive = <480>;
366				hback-porch = <48>;
367				hsync-len = <96>;
368				hfront-porch = <16>;
369				vback-porch = <33>;
370				vsync-len = <2>;
371				vfront-porch = <10>;
372				hsync-active = <0>;
373				vsync-active = <0>;
374				de-active = <1>;
375				pixelclk-active = <1>;
376			};
377
378			timing1: timing1 {
379				panel-name = "ETV570";
380				clock-frequency = <25175000>;
381				hactive = <640>;
382				vactive = <480>;
383				hback-porch = <114>;
384				hsync-len = <30>;
385				hfront-porch = <16>;
386				vback-porch = <32>;
387				vsync-len = <3>;
388				vfront-porch = <10>;
389				hsync-active = <0>;
390				vsync-active = <0>;
391				de-active = <1>;
392				pixelclk-active = <1>;
393			};
394
395			timing2: timing2 {
396				panel-name = "ET0350";
397				clock-frequency = <6500000>;
398				hactive = <320>;
399				vactive = <240>;
400				hback-porch = <34>;
401				hsync-len = <34>;
402				hfront-porch = <20>;
403				vback-porch = <15>;
404				vsync-len = <3>;
405				vfront-porch = <4>;
406				hsync-active = <0>;
407				vsync-active = <0>;
408				de-active = <1>;
409				pixelclk-active = <1>;
410			};
411
412			timing3: timing3 {
413				panel-name = "ET0430";
414				clock-frequency = <9000000>;
415				hactive = <480>;
416				vactive = <272>;
417				hback-porch = <2>;
418				hsync-len = <41>;
419				hfront-porch = <2>;
420				vback-porch = <2>;
421				vsync-len = <10>;
422				vfront-porch = <2>;
423				hsync-active = <0>;
424				vsync-active = <0>;
425				de-active = <1>;
426				pixelclk-active = <1>;
427			};
428
429			timing4: timing4 {
430				panel-name = "ET0500", "ET0700";
431				clock-frequency = <33260000>;
432				hactive = <800>;
433				vactive = <480>;
434				hback-porch = <88>;
435				hsync-len = <128>;
436				hfront-porch = <40>;
437				vback-porch = <33>;
438				vsync-len = <2>;
439				vfront-porch = <10>;
440				hsync-active = <0>;
441				vsync-active = <0>;
442				de-active = <1>;
443				pixelclk-active = <1>;
444			};
445
446			timing5: timing5 {
447				panel-name = "ETQ570";
448				clock-frequency = <6400000>;
449				hactive = <320>;
450				vactive = <240>;
451				hback-porch = <38>;
452				hsync-len = <30>;
453				hfront-porch = <30>;
454				vback-porch = <16>;
455				vsync-len = <3>;
456				vfront-porch = <4>;
457				hsync-active = <0>;
458				vsync-active = <0>;
459				de-active = <1>;
460				pixelclk-active = <1>;
461			};
462		};
463	};
464};
465
466&lradc {
467	fsl,lradc-touchscreen-wires = <4>;
468	status = "okay";
469};
470
471&mac0 {
472	phy-mode = "rmii";
473	pinctrl-names = "default", "gpio_mode";
474	pinctrl-0 = <&mac0_pins_a>;
475	pinctrl-1 = <&tx28_mac0_pins_gpio>;
476	status = "okay";
477};
478
479&mac1 {
480	phy-mode = "rmii";
481	pinctrl-names = "default";
482	pinctrl-0 = <&mac1_pins_a>;
483	/* not enabled by default */
484};
485
486&mxs_rtc {
487	status = "okay";
488};
489
490&ocotp {
491	status = "okay";
492};
493
494&pwm {
495	pinctrl-names = "default";
496	pinctrl-0 = <&pwm0_pins_a>;
497	status = "okay";
498};
499
500&pinctrl {
501	pinctrl-names = "default";
502	pinctrl-0 = <&hog_pins_a>;
503
504	hog_pins_a: hog@0 {
505		reg = <0>;
506		fsl,pinmux-ids = <
507			MX28_PAD_ENET0_RXD3__GPIO_4_10 /* module LED */
508		>;
509		fsl,drive-strength = <MXS_DRIVE_4mA>;
510		fsl,voltage = <MXS_VOLTAGE_HIGH>;
511		fsl,pull-up = <MXS_PULL_DISABLE>;
512	};
513
514	tx28_edt_ft5x06_pins: tx28-edt-ft5x06-pins {
515		fsl,pinmux-ids = <
516			MX28_PAD_SSP0_DATA6__GPIO_2_6 /* RESET */
517			MX28_PAD_SSP0_DATA5__GPIO_2_5 /* IRQ */
518			MX28_PAD_ENET0_RXD2__GPIO_4_9 /* WAKE */
519		>;
520		fsl,drive-strength = <MXS_DRIVE_4mA>;
521		fsl,voltage = <MXS_VOLTAGE_HIGH>;
522		fsl,pull-up = <MXS_PULL_DISABLE>;
523	};
524
525	tx28_flexcan_xcvr_pins: tx28-flexcan-xcvr-pins {
526		fsl,pinmux-ids = <
527			MX28_PAD_LCD_D00__GPIO_1_0
528		>;
529		fsl,drive-strength = <MXS_DRIVE_4mA>;
530		fsl,voltage = <MXS_VOLTAGE_HIGH>;
531		fsl,pull-up = <MXS_PULL_DISABLE>;
532	};
533
534	tx28_lcdif_23bit_pins: tx28-lcdif-23bit {
535		fsl,pinmux-ids = <
536			/* LCD_D00 may be used as Flexcan Transceiver Enable on STK5-V5 */
537			MX28_PAD_LCD_D01__LCD_D1
538			MX28_PAD_LCD_D02__LCD_D2
539			MX28_PAD_LCD_D03__LCD_D3
540			MX28_PAD_LCD_D04__LCD_D4
541			MX28_PAD_LCD_D05__LCD_D5
542			MX28_PAD_LCD_D06__LCD_D6
543			MX28_PAD_LCD_D07__LCD_D7
544			MX28_PAD_LCD_D08__LCD_D8
545			MX28_PAD_LCD_D09__LCD_D9
546			MX28_PAD_LCD_D10__LCD_D10
547			MX28_PAD_LCD_D11__LCD_D11
548			MX28_PAD_LCD_D12__LCD_D12
549			MX28_PAD_LCD_D13__LCD_D13
550			MX28_PAD_LCD_D14__LCD_D14
551			MX28_PAD_LCD_D15__LCD_D15
552			MX28_PAD_LCD_D16__LCD_D16
553			MX28_PAD_LCD_D17__LCD_D17
554			MX28_PAD_LCD_D18__LCD_D18
555			MX28_PAD_LCD_D19__LCD_D19
556			MX28_PAD_LCD_D20__LCD_D20
557			MX28_PAD_LCD_D21__LCD_D21
558			MX28_PAD_LCD_D22__LCD_D22
559			MX28_PAD_LCD_D23__LCD_D23
560		>;
561		fsl,drive-strength = <MXS_DRIVE_4mA>;
562		fsl,voltage = <MXS_VOLTAGE_HIGH>;
563		fsl,pull-up = <MXS_PULL_DISABLE>;
564	};
565
566	tx28_lcdif_ctrl_pins: tx28-lcdif-ctrl {
567		fsl,pinmux-ids = <
568			MX28_PAD_LCD_ENABLE__GPIO_1_31 /* Enable */
569			MX28_PAD_LCD_RESET__GPIO_3_30  /* Reset */
570		>;
571		fsl,drive-strength = <MXS_DRIVE_4mA>;
572		fsl,voltage = <MXS_VOLTAGE_HIGH>;
573		fsl,pull-up = <MXS_PULL_DISABLE>;
574	};
575
576	tx28_mac0_pins_gpio: tx28-mac0-gpio-pins {
577		fsl,pinmux-ids = <
578			MX28_PAD_ENET0_MDC__GPIO_4_0
579			MX28_PAD_ENET0_MDIO__GPIO_4_1
580			MX28_PAD_ENET0_RX_EN__GPIO_4_2
581			MX28_PAD_ENET0_RXD0__GPIO_4_3
582			MX28_PAD_ENET0_RXD1__GPIO_4_4
583			MX28_PAD_ENET0_TX_EN__GPIO_4_6
584			MX28_PAD_ENET0_TXD0__GPIO_4_7
585			MX28_PAD_ENET0_TXD1__GPIO_4_8
586			MX28_PAD_ENET_CLK__GPIO_4_16
587		>;
588		fsl,drive-strength = <MXS_DRIVE_4mA>;
589		fsl,voltage = <MXS_VOLTAGE_HIGH>;
590		fsl,pull-up = <MXS_PULL_DISABLE>;
591	};
592
593	tx28_pca9554_pins: tx28-pca9554-pins {
594		fsl,pinmux-ids = <
595			MX28_PAD_PWM3__GPIO_3_28
596		>;
597		fsl,drive-strength = <MXS_DRIVE_4mA>;
598		fsl,voltage = <MXS_VOLTAGE_HIGH>;
599		fsl,pull-up = <MXS_PULL_DISABLE>;
600	};
601
602	tx28_spi_gpio_pins: spi-gpiogrp {
603		fsl,pinmux-ids = <
604			MX28_PAD_AUART2_RX__GPIO_3_8
605			MX28_PAD_AUART2_TX__GPIO_3_9
606			MX28_PAD_SSP3_SCK__GPIO_2_24
607			MX28_PAD_SSP3_MOSI__GPIO_2_25
608			MX28_PAD_SSP3_MISO__GPIO_2_26
609			MX28_PAD_SSP3_SS0__GPIO_2_27
610		>;
611		fsl,drive-strength = <MXS_DRIVE_8mA>;
612		fsl,voltage = <MXS_VOLTAGE_HIGH>;
613		fsl,pull-up = <MXS_PULL_DISABLE>;
614	};
615
616	tx28_tsc2007_pins: tx28-tsc2007-pins {
617		fsl,pinmux-ids = <
618			MX28_PAD_SAIF0_MCLK__GPIO_3_20 /* TSC2007 IRQ */
619		>;
620		fsl,drive-strength = <MXS_DRIVE_4mA>;
621		fsl,voltage = <MXS_VOLTAGE_HIGH>;
622		fsl,pull-up = <MXS_PULL_DISABLE>;
623	};
624
625
626	tx28_usbphy0_pins: tx28-usbphy0-pins {
627		fsl,pinmux-ids = <
628			MX28_PAD_GPMI_CE2N__GPIO_0_18 /* USBOTG_VBUSEN */
629			MX28_PAD_GPMI_CE3N__GPIO_0_19 /* USBOTH_OC */
630		>;
631		fsl,drive-strength = <MXS_DRIVE_12mA>;
632		fsl,voltage = <MXS_VOLTAGE_HIGH>;
633		fsl,pull-up = <MXS_PULL_DISABLE>;
634	};
635
636	tx28_usbphy1_pins: tx28-usbphy1-pins {
637		fsl,pinmux-ids = <
638			MX28_PAD_SPDIF__GPIO_3_27 /* USBH_VBUSEN */
639			MX28_PAD_JTAG_RTCK__GPIO_4_20 /* USBH_OC */
640		>;
641		fsl,drive-strength = <MXS_DRIVE_12mA>;
642		fsl,voltage = <MXS_VOLTAGE_HIGH>;
643		fsl,pull-up = <MXS_PULL_DISABLE>;
644	};
645};
646
647&saif0 {
648	pinctrl-names = "default";
649	pinctrl-0 = <&saif0_pins_b>;
650	fsl,saif-master;
651	status = "okay";
652};
653
654&saif1 {
655	pinctrl-names = "default";
656	pinctrl-0 = <&saif1_pins_a>;
657	status = "okay";
658};
659
660&ssp0 {
661	compatible = "fsl,imx28-mmc";
662	pinctrl-names = "default", "special";
663	pinctrl-0 = <&mmc0_4bit_pins_a
664		     &mmc0_cd_cfg
665		     &mmc0_sck_cfg>;
666	bus-width = <4>;
667	status = "okay";
668};
669
670&ssp3 {
671	compatible = "fsl,imx28-spi";
672	pinctrl-names = "default";
673	pinctrl-0 = <&spi3_pins_a>;
674	clock-frequency = <57600000>;
675	status = "okay";
676
677	spi@0 {
678		compatible = "spidev";
679		reg = <0>;
680		spi-max-frequency = <57600000>;
681	};
682
683	spi@1 {
684		compatible = "spidev";
685		reg = <1>;
686		spi-max-frequency = <57600000>;
687	};
688
689	spi@2 {
690		compatible = "spidev";
691		reg = <2>;
692		spi-max-frequency = <57600000>;
693	};
694};
695
696&usb0 {
697	vbus-supply = <&reg_usb0_vbus>;
698	disable-over-current;
699	dr_mode = "peripheral";
700	status = "okay";
701};
702
703&usb1 {
704	vbus-supply = <&reg_usb1_vbus>;
705	disable-over-current;
706	dr_mode = "host";
707	status = "okay";
708};
709
710&usbphy0 {
711	pinctrl-names = "default";
712	pinctrl-0 = <&tx28_usbphy0_pins>;
713	phy_type = "utmi";
714	status = "okay";
715};
716
717&usbphy1 {
718	pinctrl-names = "default";
719	pinctrl-0 = <&tx28_usbphy1_pins>;
720	phy_type = "utmi";
721	status = "okay";
722};
723