xref: /OK3568_Linux_fs/kernel/arch/arm/boot/dts/am335x-moxa-uc-8100-common.dtsi (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun// SPDX-License-Identifier: GPL-2.0-only
2*4882a593Smuzhiyun/*
3*4882a593Smuzhiyun * Copyright (C) 2020 MOXA Inc. - https://www.moxa.com/
4*4882a593Smuzhiyun *
5*4882a593Smuzhiyun * Author: Johnson Chen <johnsonch.chen@moxa.com>
6*4882a593Smuzhiyun */
7*4882a593Smuzhiyun
8*4882a593Smuzhiyun#include "am33xx.dtsi"
9*4882a593Smuzhiyun
10*4882a593Smuzhiyun/ {
11*4882a593Smuzhiyun
12*4882a593Smuzhiyun	cpus {
13*4882a593Smuzhiyun		cpu@0 {
14*4882a593Smuzhiyun			cpu0-supply = <&vdd1_reg>;
15*4882a593Smuzhiyun		};
16*4882a593Smuzhiyun	};
17*4882a593Smuzhiyun
18*4882a593Smuzhiyun	vbat: vbat-regulator {
19*4882a593Smuzhiyun		compatible = "regulator-fixed";
20*4882a593Smuzhiyun	};
21*4882a593Smuzhiyun
22*4882a593Smuzhiyun	/* Power supply provides a fixed 3.3V @3A */
23*4882a593Smuzhiyun	vmmcsd_fixed: vmmcsd-regulator {
24*4882a593Smuzhiyun	      compatible = "regulator-fixed";
25*4882a593Smuzhiyun	      regulator-name = "vmmcsd_fixed";
26*4882a593Smuzhiyun	      regulator-min-microvolt = <3300000>;
27*4882a593Smuzhiyun	      regulator-max-microvolt = <3300000>;
28*4882a593Smuzhiyun	      regulator-boot-on;
29*4882a593Smuzhiyun	};
30*4882a593Smuzhiyun
31*4882a593Smuzhiyun	buttons: push_button {
32*4882a593Smuzhiyun		compatible = "gpio-keys";
33*4882a593Smuzhiyun	};
34*4882a593Smuzhiyun
35*4882a593Smuzhiyun};
36*4882a593Smuzhiyun
37*4882a593Smuzhiyun&am33xx_pinmux {
38*4882a593Smuzhiyun	pinctrl-names = "default";
39*4882a593Smuzhiyun	pinctrl-0 = <&minipcie_pins>;
40*4882a593Smuzhiyun
41*4882a593Smuzhiyun	minipcie_pins: pinmux_minipcie {
42*4882a593Smuzhiyun		pinctrl-single,pins = <
43*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_LCD_PCLK, PIN_INPUT_PULLDOWN, MUX_MODE7)	/* lcd_pclk.gpio2_24 */
44*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_LCD_AC_BIAS_EN, PIN_INPUT_PULLDOWN, MUX_MODE7)	/* lcd_ac_bias_en.gpio2_25 */
45*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_LCD_VSYNC, PIN_INPUT_PULLDOWN, MUX_MODE7)	/* lcd_vsync.gpio2_22  Power off PIN*/
46*4882a593Smuzhiyun		>;
47*4882a593Smuzhiyun	};
48*4882a593Smuzhiyun
49*4882a593Smuzhiyun	push_button_pins: pinmux_push_button {
50*4882a593Smuzhiyun		pinctrl-single,pins = <
51*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_MCASP0_AHCLKX, PIN_INPUT_PULLDOWN, MUX_MODE7)	/* mcasp0_ahcklx.gpio3_21 */
52*4882a593Smuzhiyun		>;
53*4882a593Smuzhiyun	};
54*4882a593Smuzhiyun
55*4882a593Smuzhiyun	i2c0_pins: pinmux_i2c0_pins {
56*4882a593Smuzhiyun		pinctrl-single,pins = <
57*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_I2C0_SDA, PIN_INPUT_PULLUP, MUX_MODE0)
58*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_I2C0_SCL, PIN_INPUT_PULLUP, MUX_MODE0)
59*4882a593Smuzhiyun		>;
60*4882a593Smuzhiyun	};
61*4882a593Smuzhiyun
62*4882a593Smuzhiyun
63*4882a593Smuzhiyun	i2c1_pins: pinmux_i2c1_pins {
64*4882a593Smuzhiyun		pinctrl-single,pins = <
65*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_UART0_CTSN, PIN_INPUT_PULLUP, MUX_MODE3)	/* uart0_ctsn.i2c1_sda */
66*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_UART0_RTSN, PIN_INPUT_PULLUP, MUX_MODE3)	/* uart0_rtsn.i2c1_scl */
67*4882a593Smuzhiyun		>;
68*4882a593Smuzhiyun	};
69*4882a593Smuzhiyun
70*4882a593Smuzhiyun	uart0_pins: pinmux_uart0_pins {
71*4882a593Smuzhiyun		pinctrl-single,pins = <
72*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_UART0_RXD, PIN_INPUT_PULLUP, MUX_MODE0)
73*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_UART0_TXD, PIN_OUTPUT_PULLDOWN, MUX_MODE0)
74*4882a593Smuzhiyun		>;
75*4882a593Smuzhiyun	};
76*4882a593Smuzhiyun
77*4882a593Smuzhiyun	uart1_pins: pinmux_uart1_pins {
78*4882a593Smuzhiyun		pinctrl-single,pins = <
79*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_UART1_CTSN, PIN_INPUT, MUX_MODE0)
80*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_UART1_RTSN, PIN_OUTPUT_PULLDOWN, MUX_MODE0)
81*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_UART1_RXD, PIN_INPUT_PULLUP, MUX_MODE0)
82*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_UART1_TXD, PIN_OUTPUT, MUX_MODE0)
83*4882a593Smuzhiyun		>;
84*4882a593Smuzhiyun	};
85*4882a593Smuzhiyun
86*4882a593Smuzhiyun	uart2_pins: pinmux_uart2_pins {
87*4882a593Smuzhiyun		pinctrl-single,pins = <
88*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_LCD_DATA14, PIN_INPUT, MUX_MODE6)		/* lcd_data14.uart5_ctsn */
89*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_LCD_DATA15, PIN_OUTPUT_PULLDOWN, MUX_MODE6)  /* lcd_data15.uart5_rtsn */
90*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_LCD_DATA9, PIN_INPUT_PULLUP, MUX_MODE4)     /* lcd_data9.uart5_rxd */
91*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_LCD_DATA8, PIN_OUTPUT, MUX_MODE4)		/* lcd_data8.uart5_txd */
92*4882a593Smuzhiyun		>;
93*4882a593Smuzhiyun	};
94*4882a593Smuzhiyun
95*4882a593Smuzhiyun	cpsw_default: cpsw_default {
96*4882a593Smuzhiyun		pinctrl-single,pins = <
97*4882a593Smuzhiyun			/* Slave 1 */
98*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_MII1_CRS, PIN_INPUT_PULLDOWN, MUX_MODE1)
99*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_MII1_RX_ER, PIN_INPUT_PULLUP, MUX_MODE1)
100*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_MII1_TX_EN, PIN_OUTPUT_PULLDOWN, MUX_MODE1)
101*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_MII1_TXD1, PIN_OUTPUT_PULLDOWN, MUX_MODE1)
102*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_MII1_TXD0, PIN_OUTPUT_PULLDOWN, MUX_MODE1)
103*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_MII1_RXD1, PIN_INPUT_PULLUP, MUX_MODE1)
104*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_MII1_RXD0, PIN_INPUT_PULLUP, MUX_MODE1)
105*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_RMII1_REF_CLK, PIN_INPUT_PULLDOWN, MUX_MODE0)
106*4882a593Smuzhiyun
107*4882a593Smuzhiyun			/* Slave 2 */
108*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_GPMC_WAIT0, PIN_INPUT_PULLDOWN, MUX_MODE3)   /* rmii2_crs_dv */
109*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_GPMC_WPN, PIN_INPUT_PULLDOWN, MUX_MODE3)   /* rmii2_rxer */
110*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_GPMC_A0, PIN_OUTPUT_PULLDOWN, MUX_MODE3)  /* rmii2_txen */
111*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_GPMC_A4, PIN_OUTPUT_PULLDOWN, MUX_MODE3)  /* rmii2_td1 */
112*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_GPMC_A5, PIN_OUTPUT_PULLDOWN, MUX_MODE3)  /* rmii2_td0 */
113*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_GPMC_A10, PIN_INPUT_PULLDOWN, MUX_MODE3)   /* rmii2_rd1 */
114*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_GPMC_A11, PIN_INPUT_PULLDOWN, MUX_MODE3)   /* rmii2_rd0 */
115*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_MII1_COL, PIN_INPUT_PULLDOWN, MUX_MODE1)  /* rmii2_refclk */
116*4882a593Smuzhiyun
117*4882a593Smuzhiyun		>;
118*4882a593Smuzhiyun	};
119*4882a593Smuzhiyun
120*4882a593Smuzhiyun	davinci_mdio_default: davinci_mdio_default {
121*4882a593Smuzhiyun		pinctrl-single,pins = <
122*4882a593Smuzhiyun			/* MDIO */
123*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_MDIO, PIN_INPUT_PULLUP | SLEWCTRL_FAST, MUX_MODE0)
124*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_MDC, PIN_OUTPUT_PULLUP, MUX_MODE0)
125*4882a593Smuzhiyun		>;
126*4882a593Smuzhiyun	};
127*4882a593Smuzhiyun
128*4882a593Smuzhiyun	mmc0_pins_default: pinmux_mmc0_pins {
129*4882a593Smuzhiyun		pinctrl-single,pins = <
130*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_MMC0_DAT3, PIN_INPUT_PULLUP, MUX_MODE0)
131*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_MMC0_DAT2, PIN_INPUT_PULLUP, MUX_MODE0)
132*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_MMC0_DAT1, PIN_INPUT_PULLUP, MUX_MODE0)
133*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_MMC0_DAT0, PIN_INPUT_PULLUP, MUX_MODE0)
134*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_MMC0_CLK, PIN_INPUT_PULLUP, MUX_MODE0)
135*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_MMC0_CMD, PIN_INPUT_PULLUP, MUX_MODE0)
136*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_MCASP0_ACLKX, PIN_INPUT_PULLUP, MUX_MODE7)	/* mcasp0_aclkx.gpio3_14 */
137*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_MCASP0_ACLKR, PIN_INPUT_PULLUP, MUX_MODE7)    /* mcasp0_aclkx.gpio3_18 */
138*4882a593Smuzhiyun		>;
139*4882a593Smuzhiyun	};
140*4882a593Smuzhiyun
141*4882a593Smuzhiyun	mmc2_pins_default: pinmux_mmc2_pins {
142*4882a593Smuzhiyun		pinctrl-single,pins = <
143*4882a593Smuzhiyun			/* eMMC */
144*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_GPMC_AD12, PIN_INPUT_PULLUP, MUX_MODE3)	/* gpmc_ad12.mmc2_dat0 */
145*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_GPMC_AD13, PIN_INPUT_PULLUP, MUX_MODE3)	/* gpmc_ad13.mmc2_dat1 */
146*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_GPMC_AD14, PIN_INPUT_PULLUP, MUX_MODE3)	/* gpmc_ad14.mmc2_dat2 */
147*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_GPMC_AD15, PIN_INPUT_PULLUP, MUX_MODE3)	/* gpmc_ad15.mmc2_dat3 */
148*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_GPMC_AD8, PIN_INPUT_PULLUP, MUX_MODE3)	/* gpmc_ad8.mmc2_dat4 */
149*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_GPMC_AD9, PIN_INPUT_PULLUP, MUX_MODE3)	/* gpmc_ad9.mmc2_dat5 */
150*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_GPMC_AD10, PIN_INPUT_PULLUP, MUX_MODE3)	/* gpmc_ad10.mmc2_dat6 */
151*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_GPMC_AD11, PIN_INPUT_PULLUP, MUX_MODE3)	/* gpmc_ad11.mmc2_dat7 */
152*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_GPMC_CSN3, PIN_INPUT_PULLUP, MUX_MODE3)     /* gpmc_csn3.mmc2_cmd */
153*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_GPMC_CLK, PIN_INPUT_PULLUP, MUX_MODE3)	/* gpmc_clk.mmc2_clk */
154*4882a593Smuzhiyun		>;
155*4882a593Smuzhiyun	};
156*4882a593Smuzhiyun
157*4882a593Smuzhiyun	spi0_pins: pinmux_spi0 {
158*4882a593Smuzhiyun		pinctrl-single,pins = <
159*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_SPI0_SCLK, PIN_INPUT_PULLUP, MUX_MODE0)
160*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_SPI0_CS0, PIN_INPUT_PULLUP, MUX_MODE0)
161*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_SPI0_D0, PIN_INPUT_PULLUP, MUX_MODE0)
162*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_SPI0_D1, PIN_INPUT_PULLUP, MUX_MODE0)
163*4882a593Smuzhiyun		>;
164*4882a593Smuzhiyun	};
165*4882a593Smuzhiyun
166*4882a593Smuzhiyun};
167*4882a593Smuzhiyun
168*4882a593Smuzhiyun&uart0 {
169*4882a593Smuzhiyun	/* Console */
170*4882a593Smuzhiyun	status = "okay";
171*4882a593Smuzhiyun	pinctrl-names = "default";
172*4882a593Smuzhiyun	pinctrl-0 = <&uart0_pins>;
173*4882a593Smuzhiyun};
174*4882a593Smuzhiyun
175*4882a593Smuzhiyun&uart1 {
176*4882a593Smuzhiyun	/* UART 1 setting */
177*4882a593Smuzhiyun	status = "okay";
178*4882a593Smuzhiyun	pinctrl-names = "default";
179*4882a593Smuzhiyun	pinctrl-0 = <&uart1_pins>;
180*4882a593Smuzhiyun};
181*4882a593Smuzhiyun
182*4882a593Smuzhiyun&uart5 {
183*4882a593Smuzhiyun	/* UART 2 setting */
184*4882a593Smuzhiyun	status = "okay";
185*4882a593Smuzhiyun	pinctrl-names = "default";
186*4882a593Smuzhiyun	pinctrl-0 = <&uart2_pins>;
187*4882a593Smuzhiyun};
188*4882a593Smuzhiyun
189*4882a593Smuzhiyun&i2c0 {
190*4882a593Smuzhiyun	pinctrl-names = "default";
191*4882a593Smuzhiyun	pinctrl-0 = <&i2c0_pins>;
192*4882a593Smuzhiyun
193*4882a593Smuzhiyun	status = "okay";
194*4882a593Smuzhiyun	clock-frequency = <400000>;
195*4882a593Smuzhiyun
196*4882a593Smuzhiyun	tps: tps@2d {
197*4882a593Smuzhiyun		compatible = "ti,tps65910";
198*4882a593Smuzhiyun		reg = <0x2d>;
199*4882a593Smuzhiyun	};
200*4882a593Smuzhiyun
201*4882a593Smuzhiyun	eeprom: eeprom@50 {
202*4882a593Smuzhiyun		compatible = "atmel,24c16";
203*4882a593Smuzhiyun		pagesize = <16>;
204*4882a593Smuzhiyun		reg = <0x50>;
205*4882a593Smuzhiyun	};
206*4882a593Smuzhiyun
207*4882a593Smuzhiyun	rtc_wdt: rtc_wdt@68 {
208*4882a593Smuzhiyun		compatible = "dallas,ds1374";
209*4882a593Smuzhiyun		reg = <0x68>;
210*4882a593Smuzhiyun	};
211*4882a593Smuzhiyun};
212*4882a593Smuzhiyun
213*4882a593Smuzhiyun&i2c1 {
214*4882a593Smuzhiyun	pinctrl-names = "default";
215*4882a593Smuzhiyun	pinctrl-0 = <&i2c1_pins>;
216*4882a593Smuzhiyun
217*4882a593Smuzhiyun	status = "okay";
218*4882a593Smuzhiyun	clock-frequency = <400000>;
219*4882a593Smuzhiyun	gpio_xten: gpio_xten@27 {
220*4882a593Smuzhiyun		compatible = "nxp,pca9535";
221*4882a593Smuzhiyun		gpio-controller;
222*4882a593Smuzhiyun		#gpio-cells = <2>;
223*4882a593Smuzhiyun		reg = <0x27>;
224*4882a593Smuzhiyun	};
225*4882a593Smuzhiyun};
226*4882a593Smuzhiyun
227*4882a593Smuzhiyun&usb0 {
228*4882a593Smuzhiyun	dr_mode = "host";
229*4882a593Smuzhiyun};
230*4882a593Smuzhiyun
231*4882a593Smuzhiyun&usb1 {
232*4882a593Smuzhiyun	dr_mode = "host";
233*4882a593Smuzhiyun};
234*4882a593Smuzhiyun
235*4882a593Smuzhiyun
236*4882a593Smuzhiyun#include "tps65910.dtsi"
237*4882a593Smuzhiyun&tps {
238*4882a593Smuzhiyun	vcc1-supply = <&vbat>;
239*4882a593Smuzhiyun	vcc2-supply = <&vbat>;
240*4882a593Smuzhiyun	vcc3-supply = <&vbat>;
241*4882a593Smuzhiyun	vcc4-supply = <&vbat>;
242*4882a593Smuzhiyun	vcc5-supply = <&vbat>;
243*4882a593Smuzhiyun	vcc6-supply = <&vbat>;
244*4882a593Smuzhiyun	vcc7-supply = <&vbat>;
245*4882a593Smuzhiyun	vccio-supply = <&vbat>;
246*4882a593Smuzhiyun
247*4882a593Smuzhiyun	regulators {
248*4882a593Smuzhiyun		vrtc_reg: regulator@0 {
249*4882a593Smuzhiyun			regulator-always-on;
250*4882a593Smuzhiyun		};
251*4882a593Smuzhiyun
252*4882a593Smuzhiyun		vio_reg: regulator@1 {
253*4882a593Smuzhiyun			regulator-always-on;
254*4882a593Smuzhiyun		};
255*4882a593Smuzhiyun
256*4882a593Smuzhiyun		vdd1_reg: regulator@2 {
257*4882a593Smuzhiyun			regulator-always-on;
258*4882a593Smuzhiyun		};
259*4882a593Smuzhiyun
260*4882a593Smuzhiyun		vdd2_reg: regulator@3 {
261*4882a593Smuzhiyun			regulator-always-on;
262*4882a593Smuzhiyun		};
263*4882a593Smuzhiyun
264*4882a593Smuzhiyun		vdd3_reg: regulator@4 {
265*4882a593Smuzhiyun			regulator-always-on;
266*4882a593Smuzhiyun		};
267*4882a593Smuzhiyun
268*4882a593Smuzhiyun		vdig1_reg: regulator@5 {
269*4882a593Smuzhiyun			regulator-always-on;
270*4882a593Smuzhiyun		};
271*4882a593Smuzhiyun
272*4882a593Smuzhiyun		vdig2_reg: regulator@6 {
273*4882a593Smuzhiyun			regulator-always-on;
274*4882a593Smuzhiyun		};
275*4882a593Smuzhiyun
276*4882a593Smuzhiyun		vpll_reg: regulator@7 {
277*4882a593Smuzhiyun			regulator-always-on;
278*4882a593Smuzhiyun		};
279*4882a593Smuzhiyun
280*4882a593Smuzhiyun		vdac_reg: regulator@8 {
281*4882a593Smuzhiyun			regulator-always-on;
282*4882a593Smuzhiyun		};
283*4882a593Smuzhiyun
284*4882a593Smuzhiyun		vaux1_reg: regulator@9 {
285*4882a593Smuzhiyun			regulator-always-on;
286*4882a593Smuzhiyun		};
287*4882a593Smuzhiyun
288*4882a593Smuzhiyun		vaux2_reg: regulator@10 {
289*4882a593Smuzhiyun			regulator-always-on;
290*4882a593Smuzhiyun		};
291*4882a593Smuzhiyun
292*4882a593Smuzhiyun		vaux33_reg: regulator@11 {
293*4882a593Smuzhiyun			regulator-always-on;
294*4882a593Smuzhiyun		};
295*4882a593Smuzhiyun
296*4882a593Smuzhiyun		vmmc_reg: regulator@12 {
297*4882a593Smuzhiyun			compatible = "regulator-fixed";
298*4882a593Smuzhiyun			regulator-name = "vmmc_reg";
299*4882a593Smuzhiyun			regulator-min-microvolt = <3300000>;
300*4882a593Smuzhiyun			regulator-max-microvolt = <3300000>;
301*4882a593Smuzhiyun			regulator-always-on;
302*4882a593Smuzhiyun		};
303*4882a593Smuzhiyun	};
304*4882a593Smuzhiyun};
305*4882a593Smuzhiyun
306*4882a593Smuzhiyun/* Power */
307*4882a593Smuzhiyun&vbat {
308*4882a593Smuzhiyun	regulator-name = "vbat";
309*4882a593Smuzhiyun	regulator-min-microvolt = <5000000>;
310*4882a593Smuzhiyun	regulator-max-microvolt = <5000000>;
311*4882a593Smuzhiyun};
312*4882a593Smuzhiyun
313*4882a593Smuzhiyun&mac {
314*4882a593Smuzhiyun	pinctrl-names = "default";
315*4882a593Smuzhiyun	pinctrl-0 = <&cpsw_default>;
316*4882a593Smuzhiyun	dual_emac = <1>;
317*4882a593Smuzhiyun	status = "okay";
318*4882a593Smuzhiyun};
319*4882a593Smuzhiyun
320*4882a593Smuzhiyun&davinci_mdio {
321*4882a593Smuzhiyun	pinctrl-names = "default";
322*4882a593Smuzhiyun	pinctrl-0 = <&davinci_mdio_default>;
323*4882a593Smuzhiyun	status = "okay";
324*4882a593Smuzhiyun
325*4882a593Smuzhiyun	ethphy0: ethernet-phy@4 {
326*4882a593Smuzhiyun		reg = <4>;
327*4882a593Smuzhiyun	};
328*4882a593Smuzhiyun
329*4882a593Smuzhiyun	ethphy1: ethernet-phy@5 {
330*4882a593Smuzhiyun		reg = <5>;
331*4882a593Smuzhiyun	};
332*4882a593Smuzhiyun};
333*4882a593Smuzhiyun
334*4882a593Smuzhiyun&cpsw_emac0 {
335*4882a593Smuzhiyun	status = "okay";
336*4882a593Smuzhiyun	phy-handle = <&ethphy0>;
337*4882a593Smuzhiyun	phy-mode = "rmii";
338*4882a593Smuzhiyun	dual_emac_res_vlan = <1>;
339*4882a593Smuzhiyun};
340*4882a593Smuzhiyun
341*4882a593Smuzhiyun&cpsw_emac1 {
342*4882a593Smuzhiyun	status = "okay";
343*4882a593Smuzhiyun	phy-handle = <&ethphy1>;
344*4882a593Smuzhiyun	phy-mode = "rmii";
345*4882a593Smuzhiyun	dual_emac_res_vlan = <2>;
346*4882a593Smuzhiyun};
347*4882a593Smuzhiyun
348*4882a593Smuzhiyun&sham {
349*4882a593Smuzhiyun	status = "okay";
350*4882a593Smuzhiyun};
351*4882a593Smuzhiyun
352*4882a593Smuzhiyun&aes {
353*4882a593Smuzhiyun	status = "okay";
354*4882a593Smuzhiyun};
355*4882a593Smuzhiyun
356*4882a593Smuzhiyun&gpio0_target {
357*4882a593Smuzhiyun	ti,no-reset-on-init;
358*4882a593Smuzhiyun};
359*4882a593Smuzhiyun
360*4882a593Smuzhiyun&mmc1 {
361*4882a593Smuzhiyun	pinctrl-names = "default";
362*4882a593Smuzhiyun	vmmc-supply = <&vmmcsd_fixed>;
363*4882a593Smuzhiyun	bus-width = <4>;
364*4882a593Smuzhiyun	pinctrl-0 = <&mmc0_pins_default>;
365*4882a593Smuzhiyun	cd-gpios = <&gpio3 14 GPIO_ACTIVE_HIGH>;
366*4882a593Smuzhiyun	wp-gpios = <&gpio3 18 GPIO_ACTIVE_HIGH>;
367*4882a593Smuzhiyun	status = "okay";
368*4882a593Smuzhiyun};
369*4882a593Smuzhiyun
370*4882a593Smuzhiyun&mmc3 {
371*4882a593Smuzhiyun	dmas = <&edma_xbar 12 0 1
372*4882a593Smuzhiyun			&edma_xbar 13 0 2>;
373*4882a593Smuzhiyun	dma-names = "tx", "rx";
374*4882a593Smuzhiyun	pinctrl-names = "default";
375*4882a593Smuzhiyun	vmmc-supply = <&vmmcsd_fixed>;
376*4882a593Smuzhiyun	bus-width = <8>;
377*4882a593Smuzhiyun	pinctrl-0 = <&mmc2_pins_default>;
378*4882a593Smuzhiyun	ti,non-removable;
379*4882a593Smuzhiyun	status = "okay";
380*4882a593Smuzhiyun};
381*4882a593Smuzhiyun
382*4882a593Smuzhiyun&buttons {
383*4882a593Smuzhiyun	pinctrl-names = "default";
384*4882a593Smuzhiyun	pinctrl-0 = <&push_button_pins>;
385*4882a593Smuzhiyun	#address-cells = <1>;
386*4882a593Smuzhiyun	#size-cells = <0>;
387*4882a593Smuzhiyun
388*4882a593Smuzhiyun	button@0 {
389*4882a593Smuzhiyun		label = "push_button";
390*4882a593Smuzhiyun		linux,code = <0x100>;
391*4882a593Smuzhiyun		gpios = <&gpio3 21 GPIO_ACTIVE_LOW>;
392*4882a593Smuzhiyun	};
393*4882a593Smuzhiyun};
394*4882a593Smuzhiyun
395*4882a593Smuzhiyun/* SPI Busses */
396*4882a593Smuzhiyun&spi0 {
397*4882a593Smuzhiyun	status = "okay";
398*4882a593Smuzhiyun	pinctrl-names = "default";
399*4882a593Smuzhiyun	pinctrl-0 = <&spi0_pins>;
400*4882a593Smuzhiyun
401*4882a593Smuzhiyun	m25p80@0 {
402*4882a593Smuzhiyun		compatible = "mx25l6405d";
403*4882a593Smuzhiyun		spi-max-frequency = <40000000>;
404*4882a593Smuzhiyun
405*4882a593Smuzhiyun		reg = <0>;
406*4882a593Smuzhiyun		spi-cpol;
407*4882a593Smuzhiyun		spi-cpha;
408*4882a593Smuzhiyun		#address-cells = <1>;
409*4882a593Smuzhiyun		#size-cells = <1>;
410*4882a593Smuzhiyun
411*4882a593Smuzhiyun		/* reg : The partition's offset and size within the mtd bank. */
412*4882a593Smuzhiyun		partitions@0 {
413*4882a593Smuzhiyun			label = "MLO";
414*4882a593Smuzhiyun			reg = <0x0 0x80000>;
415*4882a593Smuzhiyun		};
416*4882a593Smuzhiyun
417*4882a593Smuzhiyun		partitions@1 {
418*4882a593Smuzhiyun			label = "U-Boot";
419*4882a593Smuzhiyun			reg = <0x80000 0x100000>;
420*4882a593Smuzhiyun		};
421*4882a593Smuzhiyun
422*4882a593Smuzhiyun		partitions@2 {
423*4882a593Smuzhiyun			label = "U-Boot Env";
424*4882a593Smuzhiyun			reg = <0x180000 0x20000>;
425*4882a593Smuzhiyun		};
426*4882a593Smuzhiyun	};
427*4882a593Smuzhiyun};
428