xref: /OK3568_Linux_fs/kernel/arch/arm/boot/dts/am335x-evm.dts (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun// SPDX-License-Identifier: GPL-2.0-only
2*4882a593Smuzhiyun/*
3*4882a593Smuzhiyun * Copyright (C) 2012 Texas Instruments Incorporated - https://www.ti.com/
4*4882a593Smuzhiyun */
5*4882a593Smuzhiyun/dts-v1/;
6*4882a593Smuzhiyun
7*4882a593Smuzhiyun#include "am33xx.dtsi"
8*4882a593Smuzhiyun#include <dt-bindings/interrupt-controller/irq.h>
9*4882a593Smuzhiyun
10*4882a593Smuzhiyun/ {
11*4882a593Smuzhiyun	model = "TI AM335x EVM";
12*4882a593Smuzhiyun	compatible = "ti,am335x-evm", "ti,am33xx";
13*4882a593Smuzhiyun
14*4882a593Smuzhiyun	cpus {
15*4882a593Smuzhiyun		cpu@0 {
16*4882a593Smuzhiyun			cpu0-supply = <&vdd1_reg>;
17*4882a593Smuzhiyun		};
18*4882a593Smuzhiyun	};
19*4882a593Smuzhiyun
20*4882a593Smuzhiyun	memory@80000000 {
21*4882a593Smuzhiyun		device_type = "memory";
22*4882a593Smuzhiyun		reg = <0x80000000 0x10000000>; /* 256 MB */
23*4882a593Smuzhiyun	};
24*4882a593Smuzhiyun
25*4882a593Smuzhiyun	chosen {
26*4882a593Smuzhiyun		stdout-path = &uart0;
27*4882a593Smuzhiyun	};
28*4882a593Smuzhiyun
29*4882a593Smuzhiyun	vbat: fixedregulator0 {
30*4882a593Smuzhiyun		compatible = "regulator-fixed";
31*4882a593Smuzhiyun		regulator-name = "vbat";
32*4882a593Smuzhiyun		regulator-min-microvolt = <5000000>;
33*4882a593Smuzhiyun		regulator-max-microvolt = <5000000>;
34*4882a593Smuzhiyun		regulator-boot-on;
35*4882a593Smuzhiyun	};
36*4882a593Smuzhiyun
37*4882a593Smuzhiyun	lis3_reg: fixedregulator1 {
38*4882a593Smuzhiyun		compatible = "regulator-fixed";
39*4882a593Smuzhiyun		regulator-name = "lis3_reg";
40*4882a593Smuzhiyun		regulator-boot-on;
41*4882a593Smuzhiyun	};
42*4882a593Smuzhiyun
43*4882a593Smuzhiyun	wlan_en_reg: fixedregulator2 {
44*4882a593Smuzhiyun		compatible = "regulator-fixed";
45*4882a593Smuzhiyun		regulator-name = "wlan-en-regulator";
46*4882a593Smuzhiyun		regulator-min-microvolt = <1800000>;
47*4882a593Smuzhiyun		regulator-max-microvolt = <1800000>;
48*4882a593Smuzhiyun
49*4882a593Smuzhiyun		/* WLAN_EN GPIO for this board - Bank1, pin16 */
50*4882a593Smuzhiyun		gpio = <&gpio1 16 0>;
51*4882a593Smuzhiyun
52*4882a593Smuzhiyun		/* WLAN card specific delay */
53*4882a593Smuzhiyun		startup-delay-us = <70000>;
54*4882a593Smuzhiyun		enable-active-high;
55*4882a593Smuzhiyun	};
56*4882a593Smuzhiyun
57*4882a593Smuzhiyun	/* TPS79501 */
58*4882a593Smuzhiyun	v1_8d_reg: fixedregulator-v1_8d {
59*4882a593Smuzhiyun		compatible = "regulator-fixed";
60*4882a593Smuzhiyun		regulator-name = "v1_8d";
61*4882a593Smuzhiyun		vin-supply = <&vbat>;
62*4882a593Smuzhiyun		regulator-min-microvolt = <1800000>;
63*4882a593Smuzhiyun		regulator-max-microvolt = <1800000>;
64*4882a593Smuzhiyun	};
65*4882a593Smuzhiyun
66*4882a593Smuzhiyun	/* TPS79501 */
67*4882a593Smuzhiyun	v3_3d_reg: fixedregulator-v3_3d {
68*4882a593Smuzhiyun		compatible = "regulator-fixed";
69*4882a593Smuzhiyun		regulator-name = "v3_3d";
70*4882a593Smuzhiyun		vin-supply = <&vbat>;
71*4882a593Smuzhiyun		regulator-min-microvolt = <3300000>;
72*4882a593Smuzhiyun		regulator-max-microvolt = <3300000>;
73*4882a593Smuzhiyun	};
74*4882a593Smuzhiyun
75*4882a593Smuzhiyun	matrix_keypad: matrix_keypad0 {
76*4882a593Smuzhiyun		compatible = "gpio-matrix-keypad";
77*4882a593Smuzhiyun		debounce-delay-ms = <5>;
78*4882a593Smuzhiyun		col-scan-delay-us = <2>;
79*4882a593Smuzhiyun
80*4882a593Smuzhiyun		row-gpios = <&gpio1 25 GPIO_ACTIVE_HIGH		/* Bank1, pin25 */
81*4882a593Smuzhiyun			     &gpio1 26 GPIO_ACTIVE_HIGH		/* Bank1, pin26 */
82*4882a593Smuzhiyun			     &gpio1 27 GPIO_ACTIVE_HIGH>;	/* Bank1, pin27 */
83*4882a593Smuzhiyun
84*4882a593Smuzhiyun		col-gpios = <&gpio1 21 GPIO_ACTIVE_HIGH		/* Bank1, pin21 */
85*4882a593Smuzhiyun			     &gpio1 22 GPIO_ACTIVE_HIGH>;	/* Bank1, pin22 */
86*4882a593Smuzhiyun
87*4882a593Smuzhiyun		linux,keymap = <0x0000008b	/* MENU */
88*4882a593Smuzhiyun				0x0100009e	/* BACK */
89*4882a593Smuzhiyun				0x02000069	/* LEFT */
90*4882a593Smuzhiyun				0x0001006a	/* RIGHT */
91*4882a593Smuzhiyun				0x0101001c	/* ENTER */
92*4882a593Smuzhiyun				0x0201006c>;	/* DOWN */
93*4882a593Smuzhiyun	};
94*4882a593Smuzhiyun
95*4882a593Smuzhiyun	gpio_keys: volume_keys0 {
96*4882a593Smuzhiyun		compatible = "gpio-keys";
97*4882a593Smuzhiyun		#address-cells = <1>;
98*4882a593Smuzhiyun		#size-cells = <0>;
99*4882a593Smuzhiyun		autorepeat;
100*4882a593Smuzhiyun
101*4882a593Smuzhiyun		switch9 {
102*4882a593Smuzhiyun			label = "volume-up";
103*4882a593Smuzhiyun			linux,code = <115>;
104*4882a593Smuzhiyun			gpios = <&gpio0 2 GPIO_ACTIVE_LOW>;
105*4882a593Smuzhiyun			wakeup-source;
106*4882a593Smuzhiyun		};
107*4882a593Smuzhiyun
108*4882a593Smuzhiyun		switch10 {
109*4882a593Smuzhiyun			label = "volume-down";
110*4882a593Smuzhiyun			linux,code = <114>;
111*4882a593Smuzhiyun			gpios = <&gpio0 3 GPIO_ACTIVE_LOW>;
112*4882a593Smuzhiyun			wakeup-source;
113*4882a593Smuzhiyun		};
114*4882a593Smuzhiyun	};
115*4882a593Smuzhiyun
116*4882a593Smuzhiyun	backlight: backlight {
117*4882a593Smuzhiyun		compatible = "pwm-backlight";
118*4882a593Smuzhiyun		pwms = <&ecap0 0 50000 0>;
119*4882a593Smuzhiyun		brightness-levels = <0 51 53 56 62 75 101 152 255>;
120*4882a593Smuzhiyun		default-brightness-level = <8>;
121*4882a593Smuzhiyun	};
122*4882a593Smuzhiyun
123*4882a593Smuzhiyun	panel {
124*4882a593Smuzhiyun		compatible = "tfc,s9700rtwv43tr-01b";
125*4882a593Smuzhiyun
126*4882a593Smuzhiyun		pinctrl-names = "default";
127*4882a593Smuzhiyun		pinctrl-0 = <&lcd_pins_s0>;
128*4882a593Smuzhiyun		backlight = <&backlight>;
129*4882a593Smuzhiyun
130*4882a593Smuzhiyun		port {
131*4882a593Smuzhiyun			panel_0: endpoint@0 {
132*4882a593Smuzhiyun				remote-endpoint = <&lcdc_0>;
133*4882a593Smuzhiyun			};
134*4882a593Smuzhiyun		};
135*4882a593Smuzhiyun	};
136*4882a593Smuzhiyun
137*4882a593Smuzhiyun	sound {
138*4882a593Smuzhiyun		compatible = "simple-audio-card";
139*4882a593Smuzhiyun		simple-audio-card,name = "AM335x-EVM";
140*4882a593Smuzhiyun		simple-audio-card,widgets =
141*4882a593Smuzhiyun			"Headphone", "Headphone Jack",
142*4882a593Smuzhiyun			"Line", "Line In";
143*4882a593Smuzhiyun		simple-audio-card,routing =
144*4882a593Smuzhiyun			"Headphone Jack",	"HPLOUT",
145*4882a593Smuzhiyun			"Headphone Jack",	"HPROUT",
146*4882a593Smuzhiyun			"LINE1L",		"Line In",
147*4882a593Smuzhiyun			"LINE1R",		"Line In";
148*4882a593Smuzhiyun		simple-audio-card,format = "dsp_b";
149*4882a593Smuzhiyun		simple-audio-card,bitclock-master = <&sound_master>;
150*4882a593Smuzhiyun		simple-audio-card,frame-master = <&sound_master>;
151*4882a593Smuzhiyun		simple-audio-card,bitclock-inversion;
152*4882a593Smuzhiyun
153*4882a593Smuzhiyun		simple-audio-card,cpu {
154*4882a593Smuzhiyun			sound-dai = <&mcasp1>;
155*4882a593Smuzhiyun		};
156*4882a593Smuzhiyun
157*4882a593Smuzhiyun		sound_master: simple-audio-card,codec {
158*4882a593Smuzhiyun			sound-dai = <&tlv320aic3106>;
159*4882a593Smuzhiyun			system-clock-frequency = <12000000>;
160*4882a593Smuzhiyun		};
161*4882a593Smuzhiyun	};
162*4882a593Smuzhiyun};
163*4882a593Smuzhiyun
164*4882a593Smuzhiyun&am33xx_pinmux {
165*4882a593Smuzhiyun	pinctrl-names = "default";
166*4882a593Smuzhiyun	pinctrl-0 = <&matrix_keypad_s0 &volume_keys_s0 &clkout2_pin>;
167*4882a593Smuzhiyun
168*4882a593Smuzhiyun	matrix_keypad_s0: matrix_keypad_s0 {
169*4882a593Smuzhiyun		pinctrl-single,pins = <
170*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_GPMC_A5, PIN_OUTPUT_PULLDOWN, MUX_MODE7)	/* gpmc_a5.gpio1_21 */
171*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_GPMC_A6, PIN_OUTPUT_PULLDOWN, MUX_MODE7)	/* gpmc_a6.gpio1_22 */
172*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_GPMC_A9, PIN_INPUT_PULLDOWN, MUX_MODE7)	/* gpmc_a9.gpio1_25 */
173*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_GPMC_A10, PIN_INPUT_PULLDOWN, MUX_MODE7)	/* gpmc_a10.gpio1_26 */
174*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_GPMC_A11, PIN_INPUT_PULLDOWN, MUX_MODE7)	/* gpmc_a11.gpio1_27 */
175*4882a593Smuzhiyun		>;
176*4882a593Smuzhiyun	};
177*4882a593Smuzhiyun
178*4882a593Smuzhiyun	volume_keys_s0: volume_keys_s0 {
179*4882a593Smuzhiyun		pinctrl-single,pins = <
180*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_SPI0_SCLK, PIN_INPUT_PULLDOWN, MUX_MODE7)	/* spi0_sclk.gpio0_2 */
181*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_SPI0_D0, PIN_INPUT_PULLDOWN, MUX_MODE7)	/* spi0_d0.gpio0_3 */
182*4882a593Smuzhiyun		>;
183*4882a593Smuzhiyun	};
184*4882a593Smuzhiyun
185*4882a593Smuzhiyun	i2c0_pins: pinmux_i2c0_pins {
186*4882a593Smuzhiyun		pinctrl-single,pins = <
187*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_I2C0_SDA, PIN_INPUT_PULLUP, MUX_MODE0)	/* i2c0_sda.i2c0_sda */
188*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_I2C0_SCL, PIN_INPUT_PULLUP, MUX_MODE0)	/* i2c0_scl.i2c0_scl */
189*4882a593Smuzhiyun		>;
190*4882a593Smuzhiyun	};
191*4882a593Smuzhiyun
192*4882a593Smuzhiyun	i2c1_pins: pinmux_i2c1_pins {
193*4882a593Smuzhiyun		pinctrl-single,pins = <
194*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_SPI0_D1, PIN_INPUT_PULLUP, MUX_MODE2)	/* spi0_d1.i2c1_sda */
195*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_SPI0_CS0, PIN_INPUT_PULLUP, MUX_MODE2)	/* spi0_cs0.i2c1_scl */
196*4882a593Smuzhiyun		>;
197*4882a593Smuzhiyun	};
198*4882a593Smuzhiyun
199*4882a593Smuzhiyun	uart0_pins: pinmux_uart0_pins {
200*4882a593Smuzhiyun		pinctrl-single,pins = <
201*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_UART0_RXD, PIN_INPUT_PULLUP, MUX_MODE0)
202*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_UART0_TXD, PIN_OUTPUT_PULLDOWN, MUX_MODE0)
203*4882a593Smuzhiyun		>;
204*4882a593Smuzhiyun	};
205*4882a593Smuzhiyun
206*4882a593Smuzhiyun	uart1_pins: pinmux_uart1_pins {
207*4882a593Smuzhiyun		pinctrl-single,pins = <
208*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_UART1_CTSN, PIN_INPUT, MUX_MODE0)
209*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_UART1_RTSN, PIN_OUTPUT_PULLDOWN, MUX_MODE0)
210*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_UART1_RXD, PIN_INPUT_PULLUP, MUX_MODE0)
211*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_UART1_TXD, PIN_OUTPUT_PULLDOWN, MUX_MODE0)
212*4882a593Smuzhiyun		>;
213*4882a593Smuzhiyun	};
214*4882a593Smuzhiyun
215*4882a593Smuzhiyun	clkout2_pin: pinmux_clkout2_pin {
216*4882a593Smuzhiyun		pinctrl-single,pins = <
217*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_XDMA_EVENT_INTR1, PIN_OUTPUT_PULLDOWN, MUX_MODE3)	/* xdma_event_intr1.clkout2 */
218*4882a593Smuzhiyun		>;
219*4882a593Smuzhiyun	};
220*4882a593Smuzhiyun
221*4882a593Smuzhiyun	nandflash_pins_s0: nandflash_pins_s0 {
222*4882a593Smuzhiyun		pinctrl-single,pins = <
223*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_GPMC_AD0, PIN_INPUT_PULLUP, MUX_MODE0)
224*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_GPMC_AD1, PIN_INPUT_PULLUP, MUX_MODE0)
225*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_GPMC_AD2, PIN_INPUT_PULLUP, MUX_MODE0)
226*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_GPMC_AD3, PIN_INPUT_PULLUP, MUX_MODE0)
227*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_GPMC_AD4, PIN_INPUT_PULLUP, MUX_MODE0)
228*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_GPMC_AD5, PIN_INPUT_PULLUP, MUX_MODE0)
229*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_GPMC_AD6, PIN_INPUT_PULLUP, MUX_MODE0)
230*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_GPMC_AD7, PIN_INPUT_PULLUP, MUX_MODE0)
231*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_GPMC_WAIT0, PIN_INPUT_PULLUP, MUX_MODE0)
232*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_GPMC_WPN, PIN_INPUT_PULLUP, MUX_MODE7)	/* gpmc_wpn.gpio0_30 */
233*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_GPMC_CSN0, PIN_OUTPUT, MUX_MODE0)
234*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_GPMC_ADVN_ALE, PIN_OUTPUT, MUX_MODE0)
235*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_GPMC_OEN_REN, PIN_OUTPUT, MUX_MODE0)
236*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_GPMC_WEN, PIN_OUTPUT, MUX_MODE0)
237*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_GPMC_BEN0_CLE, PIN_OUTPUT, MUX_MODE0)
238*4882a593Smuzhiyun		>;
239*4882a593Smuzhiyun	};
240*4882a593Smuzhiyun
241*4882a593Smuzhiyun	ecap0_pins: backlight_pins {
242*4882a593Smuzhiyun		pinctrl-single,pins = <
243*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_ECAP0_IN_PWM0_OUT, 0x0, MUX_MODE0)
244*4882a593Smuzhiyun		>;
245*4882a593Smuzhiyun	};
246*4882a593Smuzhiyun
247*4882a593Smuzhiyun	cpsw_default: cpsw_default {
248*4882a593Smuzhiyun		pinctrl-single,pins = <
249*4882a593Smuzhiyun			/* Slave 1 */
250*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_MII1_TX_EN, PIN_OUTPUT_PULLDOWN, MUX_MODE2)	/* mii1_txen.rgmii1_tctl */
251*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_MII1_RX_DV, PIN_INPUT_PULLDOWN, MUX_MODE2)	/* mii1_rxdv.rgmii1_rctl */
252*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_MII1_TXD3, PIN_OUTPUT_PULLDOWN, MUX_MODE2)	/* mii1_txd3.rgmii1_td3 */
253*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_MII1_TXD2, PIN_OUTPUT_PULLDOWN, MUX_MODE2)	/* mii1_txd2.rgmii1_td2 */
254*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_MII1_TXD1, PIN_OUTPUT_PULLDOWN, MUX_MODE2)	/* mii1_txd1.rgmii1_td1 */
255*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_MII1_TXD0, PIN_OUTPUT_PULLDOWN, MUX_MODE2)	/* mii1_txd0.rgmii1_td0 */
256*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_MII1_TX_CLK, PIN_OUTPUT_PULLDOWN, MUX_MODE2)	/* mii1_txclk.rgmii1_tclk */
257*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_MII1_RX_CLK, PIN_INPUT_PULLDOWN, MUX_MODE2)	/* mii1_rxclk.rgmii1_rclk */
258*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_MII1_RXD3, PIN_INPUT_PULLDOWN, MUX_MODE2)	/* mii1_rxd3.rgmii1_rd3 */
259*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_MII1_RXD2, PIN_INPUT_PULLDOWN, MUX_MODE2)	/* mii1_rxd2.rgmii1_rd2 */
260*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_MII1_RXD1, PIN_INPUT_PULLDOWN, MUX_MODE2)	/* mii1_rxd1.rgmii1_rd1 */
261*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_MII1_RXD0, PIN_INPUT_PULLDOWN, MUX_MODE2)	/* mii1_rxd0.rgmii1_rd0 */
262*4882a593Smuzhiyun		>;
263*4882a593Smuzhiyun	};
264*4882a593Smuzhiyun
265*4882a593Smuzhiyun	cpsw_sleep: cpsw_sleep {
266*4882a593Smuzhiyun		pinctrl-single,pins = <
267*4882a593Smuzhiyun			/* Slave 1 reset value */
268*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_MII1_TX_EN, PIN_INPUT_PULLDOWN, MUX_MODE7)
269*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_MII1_RX_DV, PIN_INPUT_PULLDOWN, MUX_MODE7)
270*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_MII1_TXD3, PIN_INPUT_PULLDOWN, MUX_MODE7)
271*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_MII1_TXD2, PIN_INPUT_PULLDOWN, MUX_MODE7)
272*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_MII1_TXD1, PIN_INPUT_PULLDOWN, MUX_MODE7)
273*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_MII1_TXD0, PIN_INPUT_PULLDOWN, MUX_MODE7)
274*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_MII1_TX_CLK, PIN_INPUT_PULLDOWN, MUX_MODE7)
275*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_MII1_RX_CLK, PIN_INPUT_PULLDOWN, MUX_MODE7)
276*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_MII1_RXD3, PIN_INPUT_PULLDOWN, MUX_MODE7)
277*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_MII1_RXD2, PIN_INPUT_PULLDOWN, MUX_MODE7)
278*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_MII1_RXD1, PIN_INPUT_PULLDOWN, MUX_MODE7)
279*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_MII1_RXD0, PIN_INPUT_PULLDOWN, MUX_MODE7)
280*4882a593Smuzhiyun		>;
281*4882a593Smuzhiyun	};
282*4882a593Smuzhiyun
283*4882a593Smuzhiyun	davinci_mdio_default: davinci_mdio_default {
284*4882a593Smuzhiyun		pinctrl-single,pins = <
285*4882a593Smuzhiyun			/* MDIO */
286*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_MDIO, PIN_INPUT_PULLUP | SLEWCTRL_FAST, MUX_MODE0)
287*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_MDC, PIN_OUTPUT_PULLUP, MUX_MODE0)
288*4882a593Smuzhiyun		>;
289*4882a593Smuzhiyun	};
290*4882a593Smuzhiyun
291*4882a593Smuzhiyun	davinci_mdio_sleep: davinci_mdio_sleep {
292*4882a593Smuzhiyun		pinctrl-single,pins = <
293*4882a593Smuzhiyun			/* MDIO reset value */
294*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_MDIO, PIN_INPUT_PULLDOWN, MUX_MODE7)
295*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_MDC, PIN_INPUT_PULLDOWN, MUX_MODE7)
296*4882a593Smuzhiyun		>;
297*4882a593Smuzhiyun	};
298*4882a593Smuzhiyun
299*4882a593Smuzhiyun	mmc1_pins: pinmux_mmc1_pins {
300*4882a593Smuzhiyun		pinctrl-single,pins = <
301*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_SPI0_CS1, PIN_INPUT, MUX_MODE7)		/* spi0_cs1.gpio0_6 */
302*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_MMC0_DAT0, PIN_INPUT_PULLUP, MUX_MODE0)
303*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_MMC0_DAT1, PIN_INPUT_PULLUP, MUX_MODE0)
304*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_MMC0_DAT2, PIN_INPUT_PULLUP, MUX_MODE0)
305*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_MMC0_DAT3, PIN_INPUT_PULLUP, MUX_MODE0)
306*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_MMC0_CMD, PIN_INPUT_PULLUP, MUX_MODE0)
307*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_MMC0_CLK, PIN_INPUT_PULLUP, MUX_MODE0)
308*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_MCASP0_ACLKR, PIN_INPUT, MUX_MODE4)		/* mcasp0_aclkr.mmc0_sdwp */
309*4882a593Smuzhiyun		>;
310*4882a593Smuzhiyun	};
311*4882a593Smuzhiyun
312*4882a593Smuzhiyun	mmc3_pins: pinmux_mmc3_pins {
313*4882a593Smuzhiyun		pinctrl-single,pins = <
314*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_GPMC_A1, PIN_INPUT_PULLUP, MUX_MODE3)	/* gpmc_a1.mmc2_dat0, INPUT_PULLUP | MODE3 */
315*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_GPMC_A2, PIN_INPUT_PULLUP, MUX_MODE3)	/* gpmc_a2.mmc2_dat1, INPUT_PULLUP | MODE3 */
316*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_GPMC_A3, PIN_INPUT_PULLUP, MUX_MODE3)	/* gpmc_a3.mmc2_dat2, INPUT_PULLUP | MODE3 */
317*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_GPMC_BEN1, PIN_INPUT_PULLUP, MUX_MODE3)	/* gpmc_ben1.mmc2_dat3, INPUT_PULLUP | MODE3 */
318*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_GPMC_CSN3, PIN_INPUT_PULLUP, MUX_MODE3)	/* gpmc_csn3.mmc2_cmd, INPUT_PULLUP | MODE3 */
319*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_GPMC_CLK, PIN_INPUT_PULLUP, MUX_MODE3)	/* gpmc_clk.mmc2_clk, INPUT_PULLUP | MODE3 */
320*4882a593Smuzhiyun		>;
321*4882a593Smuzhiyun	};
322*4882a593Smuzhiyun
323*4882a593Smuzhiyun	wlan_pins: pinmux_wlan_pins {
324*4882a593Smuzhiyun		pinctrl-single,pins = <
325*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_GPMC_A0, PIN_OUTPUT_PULLDOWN, MUX_MODE7)	/* gpmc_a0.gpio1_16 */
326*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_MCASP0_AHCLKR, PIN_INPUT, MUX_MODE7)		/* mcasp0_ahclkr.gpio3_17 */
327*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_MCASP0_AHCLKX, PIN_OUTPUT_PULLDOWN, MUX_MODE7)	/* mcasp0_ahclkx.gpio3_21 */
328*4882a593Smuzhiyun		>;
329*4882a593Smuzhiyun	};
330*4882a593Smuzhiyun
331*4882a593Smuzhiyun	lcd_pins_s0: lcd_pins_s0 {
332*4882a593Smuzhiyun		pinctrl-single,pins = <
333*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_GPMC_AD8, PIN_OUTPUT, MUX_MODE1)		/* gpmc_ad8.lcd_data23 */
334*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_GPMC_AD9, PIN_OUTPUT, MUX_MODE1)		/* gpmc_ad9.lcd_data22 */
335*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_GPMC_AD10, PIN_OUTPUT, MUX_MODE1)		/* gpmc_ad10.lcd_data21 */
336*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_GPMC_AD11, PIN_OUTPUT, MUX_MODE1)		/* gpmc_ad11.lcd_data20 */
337*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_GPMC_AD12, PIN_OUTPUT, MUX_MODE1)		/* gpmc_ad12.lcd_data19 */
338*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_GPMC_AD13, PIN_OUTPUT, MUX_MODE1)		/* gpmc_ad13.lcd_data18 */
339*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_GPMC_AD14, PIN_OUTPUT, MUX_MODE1)		/* gpmc_ad14.lcd_data17 */
340*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_GPMC_AD15, PIN_OUTPUT, MUX_MODE1)		/* gpmc_ad15.lcd_data16 */
341*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_LCD_DATA0, PIN_OUTPUT, MUX_MODE0)
342*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_LCD_DATA1, PIN_OUTPUT, MUX_MODE0)
343*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_LCD_DATA2, PIN_OUTPUT, MUX_MODE0)
344*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_LCD_DATA3, PIN_OUTPUT, MUX_MODE0)
345*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_LCD_DATA4, PIN_OUTPUT, MUX_MODE0)
346*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_LCD_DATA5, PIN_OUTPUT, MUX_MODE0)
347*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_LCD_DATA6, PIN_OUTPUT, MUX_MODE0)
348*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_LCD_DATA7, PIN_OUTPUT, MUX_MODE0)
349*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_LCD_DATA8, PIN_OUTPUT, MUX_MODE0)
350*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_LCD_DATA9, PIN_OUTPUT, MUX_MODE0)
351*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_LCD_DATA10, PIN_OUTPUT, MUX_MODE0)
352*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_LCD_DATA11, PIN_OUTPUT, MUX_MODE0)
353*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_LCD_DATA12, PIN_OUTPUT, MUX_MODE0)
354*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_LCD_DATA13, PIN_OUTPUT, MUX_MODE0)
355*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_LCD_DATA14, PIN_OUTPUT, MUX_MODE0)
356*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_LCD_DATA15, PIN_OUTPUT, MUX_MODE0)
357*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_LCD_VSYNC, PIN_OUTPUT, MUX_MODE0)
358*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_LCD_HSYNC, PIN_OUTPUT, MUX_MODE0)
359*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_LCD_PCLK, PIN_OUTPUT, MUX_MODE0)
360*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_LCD_AC_BIAS_EN, PIN_OUTPUT, MUX_MODE0)
361*4882a593Smuzhiyun		>;
362*4882a593Smuzhiyun	};
363*4882a593Smuzhiyun
364*4882a593Smuzhiyun	mcasp1_pins: mcasp1_pins {
365*4882a593Smuzhiyun		pinctrl-single,pins = <
366*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_MII1_CRS, PIN_INPUT_PULLDOWN, MUX_MODE4) /* mii1_crs.mcasp1_aclkx */
367*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_MII1_RX_ER, PIN_INPUT_PULLDOWN, MUX_MODE4) /* mii1_rxerr.mcasp1_fsx */
368*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_MII1_COL, PIN_OUTPUT_PULLDOWN, MUX_MODE4) /* mii1_col.mcasp1_axr2 */
369*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_RMII1_REF_CLK, PIN_INPUT_PULLDOWN, MUX_MODE4) /* rmii1_ref_clk.mcasp1_axr3 */
370*4882a593Smuzhiyun		>;
371*4882a593Smuzhiyun	};
372*4882a593Smuzhiyun
373*4882a593Smuzhiyun	mcasp1_pins_sleep: mcasp1_pins_sleep {
374*4882a593Smuzhiyun		pinctrl-single,pins = <
375*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_MII1_CRS, PIN_INPUT_PULLDOWN, MUX_MODE7)
376*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_MII1_RX_ER, PIN_INPUT_PULLDOWN, MUX_MODE7)
377*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_MII1_COL, PIN_INPUT_PULLDOWN, MUX_MODE7)
378*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_RMII1_REF_CLK, PIN_INPUT_PULLDOWN, MUX_MODE7)
379*4882a593Smuzhiyun		>;
380*4882a593Smuzhiyun	};
381*4882a593Smuzhiyun
382*4882a593Smuzhiyun	dcan1_pins_default: dcan1_pins_default {
383*4882a593Smuzhiyun		pinctrl-single,pins = <
384*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_UART0_CTSN, PIN_OUTPUT, MUX_MODE2) /* uart0_ctsn.d_can1_tx */
385*4882a593Smuzhiyun			AM33XX_PADCONF(AM335X_PIN_UART0_RTSN, PIN_INPUT_PULLDOWN, MUX_MODE2) /* uart0_rtsn.d_can1_rx */
386*4882a593Smuzhiyun		>;
387*4882a593Smuzhiyun	};
388*4882a593Smuzhiyun};
389*4882a593Smuzhiyun
390*4882a593Smuzhiyun&uart0 {
391*4882a593Smuzhiyun	pinctrl-names = "default";
392*4882a593Smuzhiyun	pinctrl-0 = <&uart0_pins>;
393*4882a593Smuzhiyun
394*4882a593Smuzhiyun	status = "okay";
395*4882a593Smuzhiyun};
396*4882a593Smuzhiyun
397*4882a593Smuzhiyun&uart1 {
398*4882a593Smuzhiyun	pinctrl-names = "default";
399*4882a593Smuzhiyun	pinctrl-0 = <&uart1_pins>;
400*4882a593Smuzhiyun
401*4882a593Smuzhiyun	status = "okay";
402*4882a593Smuzhiyun};
403*4882a593Smuzhiyun
404*4882a593Smuzhiyun&i2c0 {
405*4882a593Smuzhiyun	pinctrl-names = "default";
406*4882a593Smuzhiyun	pinctrl-0 = <&i2c0_pins>;
407*4882a593Smuzhiyun
408*4882a593Smuzhiyun	status = "okay";
409*4882a593Smuzhiyun	clock-frequency = <400000>;
410*4882a593Smuzhiyun
411*4882a593Smuzhiyun	tps: tps@2d {
412*4882a593Smuzhiyun		reg = <0x2d>;
413*4882a593Smuzhiyun	};
414*4882a593Smuzhiyun};
415*4882a593Smuzhiyun
416*4882a593Smuzhiyun&usb1 {
417*4882a593Smuzhiyun	dr_mode = "host";
418*4882a593Smuzhiyun};
419*4882a593Smuzhiyun
420*4882a593Smuzhiyun&i2c1 {
421*4882a593Smuzhiyun	pinctrl-names = "default";
422*4882a593Smuzhiyun	pinctrl-0 = <&i2c1_pins>;
423*4882a593Smuzhiyun
424*4882a593Smuzhiyun	status = "okay";
425*4882a593Smuzhiyun	clock-frequency = <100000>;
426*4882a593Smuzhiyun
427*4882a593Smuzhiyun	lis331dlh: lis331dlh@18 {
428*4882a593Smuzhiyun		compatible = "st,lis331dlh", "st,lis3lv02d";
429*4882a593Smuzhiyun		reg = <0x18>;
430*4882a593Smuzhiyun		Vdd-supply = <&lis3_reg>;
431*4882a593Smuzhiyun		Vdd_IO-supply = <&lis3_reg>;
432*4882a593Smuzhiyun
433*4882a593Smuzhiyun		st,click-single-x;
434*4882a593Smuzhiyun		st,click-single-y;
435*4882a593Smuzhiyun		st,click-single-z;
436*4882a593Smuzhiyun		st,click-thresh-x = <10>;
437*4882a593Smuzhiyun		st,click-thresh-y = <10>;
438*4882a593Smuzhiyun		st,click-thresh-z = <10>;
439*4882a593Smuzhiyun		st,irq1-click;
440*4882a593Smuzhiyun		st,irq2-click;
441*4882a593Smuzhiyun		st,wakeup-x-lo;
442*4882a593Smuzhiyun		st,wakeup-x-hi;
443*4882a593Smuzhiyun		st,wakeup-y-lo;
444*4882a593Smuzhiyun		st,wakeup-y-hi;
445*4882a593Smuzhiyun		st,wakeup-z-lo;
446*4882a593Smuzhiyun		st,wakeup-z-hi;
447*4882a593Smuzhiyun		st,min-limit-x = <120>;
448*4882a593Smuzhiyun		st,min-limit-y = <120>;
449*4882a593Smuzhiyun		st,min-limit-z = <140>;
450*4882a593Smuzhiyun		st,max-limit-x = <550>;
451*4882a593Smuzhiyun		st,max-limit-y = <550>;
452*4882a593Smuzhiyun		st,max-limit-z = <750>;
453*4882a593Smuzhiyun	};
454*4882a593Smuzhiyun
455*4882a593Smuzhiyun	tsl2550: tsl2550@39 {
456*4882a593Smuzhiyun		compatible = "taos,tsl2550";
457*4882a593Smuzhiyun		reg = <0x39>;
458*4882a593Smuzhiyun	};
459*4882a593Smuzhiyun
460*4882a593Smuzhiyun	tmp275: tmp275@48 {
461*4882a593Smuzhiyun		compatible = "ti,tmp275";
462*4882a593Smuzhiyun		reg = <0x48>;
463*4882a593Smuzhiyun	};
464*4882a593Smuzhiyun
465*4882a593Smuzhiyun	tlv320aic3106: tlv320aic3106@1b {
466*4882a593Smuzhiyun		#sound-dai-cells = <0>;
467*4882a593Smuzhiyun		compatible = "ti,tlv320aic3106";
468*4882a593Smuzhiyun		reg = <0x1b>;
469*4882a593Smuzhiyun		status = "okay";
470*4882a593Smuzhiyun
471*4882a593Smuzhiyun		/* Regulators */
472*4882a593Smuzhiyun		AVDD-supply = <&v3_3d_reg>;
473*4882a593Smuzhiyun		IOVDD-supply = <&v3_3d_reg>;
474*4882a593Smuzhiyun		DRVDD-supply = <&v3_3d_reg>;
475*4882a593Smuzhiyun		DVDD-supply = <&v1_8d_reg>;
476*4882a593Smuzhiyun	};
477*4882a593Smuzhiyun};
478*4882a593Smuzhiyun
479*4882a593Smuzhiyun&lcdc {
480*4882a593Smuzhiyun	status = "okay";
481*4882a593Smuzhiyun
482*4882a593Smuzhiyun	blue-and-red-wiring = "crossed";
483*4882a593Smuzhiyun
484*4882a593Smuzhiyun	port {
485*4882a593Smuzhiyun		lcdc_0: endpoint@0 {
486*4882a593Smuzhiyun			remote-endpoint = <&panel_0>;
487*4882a593Smuzhiyun		};
488*4882a593Smuzhiyun	};
489*4882a593Smuzhiyun};
490*4882a593Smuzhiyun
491*4882a593Smuzhiyun&elm {
492*4882a593Smuzhiyun	status = "okay";
493*4882a593Smuzhiyun};
494*4882a593Smuzhiyun
495*4882a593Smuzhiyun&epwmss0 {
496*4882a593Smuzhiyun	status = "okay";
497*4882a593Smuzhiyun
498*4882a593Smuzhiyun	ecap0: ecap@100 {
499*4882a593Smuzhiyun		status = "okay";
500*4882a593Smuzhiyun		pinctrl-names = "default";
501*4882a593Smuzhiyun		pinctrl-0 = <&ecap0_pins>;
502*4882a593Smuzhiyun	};
503*4882a593Smuzhiyun};
504*4882a593Smuzhiyun
505*4882a593Smuzhiyun&gpmc {
506*4882a593Smuzhiyun	status = "okay";
507*4882a593Smuzhiyun	pinctrl-names = "default";
508*4882a593Smuzhiyun	pinctrl-0 = <&nandflash_pins_s0>;
509*4882a593Smuzhiyun	ranges = <0 0 0x08000000 0x1000000>;	/* CS0: 16MB for NAND */
510*4882a593Smuzhiyun	nand@0,0 {
511*4882a593Smuzhiyun		compatible = "ti,omap2-nand";
512*4882a593Smuzhiyun		reg = <0 0 4>; /* CS0, offset 0, IO size 4 */
513*4882a593Smuzhiyun		interrupt-parent = <&gpmc>;
514*4882a593Smuzhiyun		interrupts = <0 IRQ_TYPE_NONE>, /* fifoevent */
515*4882a593Smuzhiyun			     <1 IRQ_TYPE_NONE>;	/* termcount */
516*4882a593Smuzhiyun		rb-gpios = <&gpmc 0 GPIO_ACTIVE_HIGH>; /* gpmc_wait0 */
517*4882a593Smuzhiyun		ti,nand-xfer-type = "prefetch-dma";
518*4882a593Smuzhiyun		ti,nand-ecc-opt = "bch8";
519*4882a593Smuzhiyun		ti,elm-id = <&elm>;
520*4882a593Smuzhiyun		nand-bus-width = <8>;
521*4882a593Smuzhiyun		gpmc,device-width = <1>;
522*4882a593Smuzhiyun		gpmc,sync-clk-ps = <0>;
523*4882a593Smuzhiyun		gpmc,cs-on-ns = <0>;
524*4882a593Smuzhiyun		gpmc,cs-rd-off-ns = <44>;
525*4882a593Smuzhiyun		gpmc,cs-wr-off-ns = <44>;
526*4882a593Smuzhiyun		gpmc,adv-on-ns = <6>;
527*4882a593Smuzhiyun		gpmc,adv-rd-off-ns = <34>;
528*4882a593Smuzhiyun		gpmc,adv-wr-off-ns = <44>;
529*4882a593Smuzhiyun		gpmc,we-on-ns = <0>;
530*4882a593Smuzhiyun		gpmc,we-off-ns = <40>;
531*4882a593Smuzhiyun		gpmc,oe-on-ns = <0>;
532*4882a593Smuzhiyun		gpmc,oe-off-ns = <54>;
533*4882a593Smuzhiyun		gpmc,access-ns = <64>;
534*4882a593Smuzhiyun		gpmc,rd-cycle-ns = <82>;
535*4882a593Smuzhiyun		gpmc,wr-cycle-ns = <82>;
536*4882a593Smuzhiyun		gpmc,bus-turnaround-ns = <0>;
537*4882a593Smuzhiyun		gpmc,cycle2cycle-delay-ns = <0>;
538*4882a593Smuzhiyun		gpmc,clk-activation-ns = <0>;
539*4882a593Smuzhiyun		gpmc,wr-access-ns = <40>;
540*4882a593Smuzhiyun		gpmc,wr-data-mux-bus-ns = <0>;
541*4882a593Smuzhiyun		/* MTD partition table */
542*4882a593Smuzhiyun		/* All SPL-* partitions are sized to minimal length
543*4882a593Smuzhiyun		 * which can be independently programmable. For
544*4882a593Smuzhiyun		 * NAND flash this is equal to size of erase-block */
545*4882a593Smuzhiyun		#address-cells = <1>;
546*4882a593Smuzhiyun		#size-cells = <1>;
547*4882a593Smuzhiyun		partition@0 {
548*4882a593Smuzhiyun			label = "NAND.SPL";
549*4882a593Smuzhiyun			reg = <0x00000000 0x000020000>;
550*4882a593Smuzhiyun		};
551*4882a593Smuzhiyun		partition@1 {
552*4882a593Smuzhiyun			label = "NAND.SPL.backup1";
553*4882a593Smuzhiyun			reg = <0x00020000 0x00020000>;
554*4882a593Smuzhiyun		};
555*4882a593Smuzhiyun		partition@2 {
556*4882a593Smuzhiyun			label = "NAND.SPL.backup2";
557*4882a593Smuzhiyun			reg = <0x00040000 0x00020000>;
558*4882a593Smuzhiyun		};
559*4882a593Smuzhiyun		partition@3 {
560*4882a593Smuzhiyun			label = "NAND.SPL.backup3";
561*4882a593Smuzhiyun			reg = <0x00060000 0x00020000>;
562*4882a593Smuzhiyun		};
563*4882a593Smuzhiyun		partition@4 {
564*4882a593Smuzhiyun			label = "NAND.u-boot-spl-os";
565*4882a593Smuzhiyun			reg = <0x00080000 0x00040000>;
566*4882a593Smuzhiyun		};
567*4882a593Smuzhiyun		partition@5 {
568*4882a593Smuzhiyun			label = "NAND.u-boot";
569*4882a593Smuzhiyun			reg = <0x000C0000 0x00100000>;
570*4882a593Smuzhiyun		};
571*4882a593Smuzhiyun		partition@6 {
572*4882a593Smuzhiyun			label = "NAND.u-boot-env";
573*4882a593Smuzhiyun			reg = <0x001C0000 0x00020000>;
574*4882a593Smuzhiyun		};
575*4882a593Smuzhiyun		partition@7 {
576*4882a593Smuzhiyun			label = "NAND.u-boot-env.backup1";
577*4882a593Smuzhiyun			reg = <0x001E0000 0x00020000>;
578*4882a593Smuzhiyun		};
579*4882a593Smuzhiyun		partition@8 {
580*4882a593Smuzhiyun			label = "NAND.kernel";
581*4882a593Smuzhiyun			reg = <0x00200000 0x00800000>;
582*4882a593Smuzhiyun		};
583*4882a593Smuzhiyun		partition@9 {
584*4882a593Smuzhiyun			label = "NAND.file-system";
585*4882a593Smuzhiyun			reg = <0x00A00000 0x0F600000>;
586*4882a593Smuzhiyun		};
587*4882a593Smuzhiyun	};
588*4882a593Smuzhiyun};
589*4882a593Smuzhiyun
590*4882a593Smuzhiyun#include "tps65910.dtsi"
591*4882a593Smuzhiyun
592*4882a593Smuzhiyun&mcasp1 {
593*4882a593Smuzhiyun	#sound-dai-cells = <0>;
594*4882a593Smuzhiyun	pinctrl-names = "default", "sleep";
595*4882a593Smuzhiyun	pinctrl-0 = <&mcasp1_pins>;
596*4882a593Smuzhiyun	pinctrl-1 = <&mcasp1_pins_sleep>;
597*4882a593Smuzhiyun
598*4882a593Smuzhiyun	status = "okay";
599*4882a593Smuzhiyun
600*4882a593Smuzhiyun	op-mode = <0>;          /* MCASP_IIS_MODE */
601*4882a593Smuzhiyun	tdm-slots = <2>;
602*4882a593Smuzhiyun	/* 4 serializers */
603*4882a593Smuzhiyun	serial-dir = <  /* 0: INACTIVE, 1: TX, 2: RX */
604*4882a593Smuzhiyun		0 0 1 2
605*4882a593Smuzhiyun	>;
606*4882a593Smuzhiyun	tx-num-evt = <32>;
607*4882a593Smuzhiyun	rx-num-evt = <32>;
608*4882a593Smuzhiyun};
609*4882a593Smuzhiyun
610*4882a593Smuzhiyun&tps {
611*4882a593Smuzhiyun	vcc1-supply = <&vbat>;
612*4882a593Smuzhiyun	vcc2-supply = <&vbat>;
613*4882a593Smuzhiyun	vcc3-supply = <&vbat>;
614*4882a593Smuzhiyun	vcc4-supply = <&vbat>;
615*4882a593Smuzhiyun	vcc5-supply = <&vbat>;
616*4882a593Smuzhiyun	vcc6-supply = <&vbat>;
617*4882a593Smuzhiyun	vcc7-supply = <&vbat>;
618*4882a593Smuzhiyun	vccio-supply = <&vbat>;
619*4882a593Smuzhiyun
620*4882a593Smuzhiyun	regulators {
621*4882a593Smuzhiyun		vrtc_reg: regulator@0 {
622*4882a593Smuzhiyun			regulator-always-on;
623*4882a593Smuzhiyun		};
624*4882a593Smuzhiyun
625*4882a593Smuzhiyun		vio_reg: regulator@1 {
626*4882a593Smuzhiyun			regulator-always-on;
627*4882a593Smuzhiyun		};
628*4882a593Smuzhiyun
629*4882a593Smuzhiyun		vdd1_reg: regulator@2 {
630*4882a593Smuzhiyun			/* VDD_MPU voltage limits 0.95V - 1.26V with +/-4% tolerance */
631*4882a593Smuzhiyun			regulator-name = "vdd_mpu";
632*4882a593Smuzhiyun			regulator-min-microvolt = <912500>;
633*4882a593Smuzhiyun			regulator-max-microvolt = <1351500>;
634*4882a593Smuzhiyun			regulator-boot-on;
635*4882a593Smuzhiyun			regulator-always-on;
636*4882a593Smuzhiyun		};
637*4882a593Smuzhiyun
638*4882a593Smuzhiyun		vdd2_reg: regulator@3 {
639*4882a593Smuzhiyun			/* VDD_CORE voltage limits 0.95V - 1.1V with +/-4% tolerance */
640*4882a593Smuzhiyun			regulator-name = "vdd_core";
641*4882a593Smuzhiyun			regulator-min-microvolt = <912500>;
642*4882a593Smuzhiyun			regulator-max-microvolt = <1150000>;
643*4882a593Smuzhiyun			regulator-boot-on;
644*4882a593Smuzhiyun			regulator-always-on;
645*4882a593Smuzhiyun		};
646*4882a593Smuzhiyun
647*4882a593Smuzhiyun		vdd3_reg: regulator@4 {
648*4882a593Smuzhiyun			regulator-always-on;
649*4882a593Smuzhiyun		};
650*4882a593Smuzhiyun
651*4882a593Smuzhiyun		vdig1_reg: regulator@5 {
652*4882a593Smuzhiyun			regulator-always-on;
653*4882a593Smuzhiyun		};
654*4882a593Smuzhiyun
655*4882a593Smuzhiyun		vdig2_reg: regulator@6 {
656*4882a593Smuzhiyun			regulator-always-on;
657*4882a593Smuzhiyun		};
658*4882a593Smuzhiyun
659*4882a593Smuzhiyun		vpll_reg: regulator@7 {
660*4882a593Smuzhiyun			regulator-always-on;
661*4882a593Smuzhiyun		};
662*4882a593Smuzhiyun
663*4882a593Smuzhiyun		vdac_reg: regulator@8 {
664*4882a593Smuzhiyun			regulator-always-on;
665*4882a593Smuzhiyun		};
666*4882a593Smuzhiyun
667*4882a593Smuzhiyun		vaux1_reg: regulator@9 {
668*4882a593Smuzhiyun			regulator-always-on;
669*4882a593Smuzhiyun		};
670*4882a593Smuzhiyun
671*4882a593Smuzhiyun		vaux2_reg: regulator@10 {
672*4882a593Smuzhiyun			regulator-always-on;
673*4882a593Smuzhiyun		};
674*4882a593Smuzhiyun
675*4882a593Smuzhiyun		vaux33_reg: regulator@11 {
676*4882a593Smuzhiyun			regulator-always-on;
677*4882a593Smuzhiyun		};
678*4882a593Smuzhiyun
679*4882a593Smuzhiyun		vmmc_reg: regulator@12 {
680*4882a593Smuzhiyun			regulator-min-microvolt = <1800000>;
681*4882a593Smuzhiyun			regulator-max-microvolt = <3300000>;
682*4882a593Smuzhiyun			regulator-always-on;
683*4882a593Smuzhiyun		};
684*4882a593Smuzhiyun	};
685*4882a593Smuzhiyun};
686*4882a593Smuzhiyun
687*4882a593Smuzhiyun&mac {
688*4882a593Smuzhiyun	pinctrl-names = "default", "sleep";
689*4882a593Smuzhiyun	pinctrl-0 = <&cpsw_default>;
690*4882a593Smuzhiyun	pinctrl-1 = <&cpsw_sleep>;
691*4882a593Smuzhiyun	status = "okay";
692*4882a593Smuzhiyun	slaves = <1>;
693*4882a593Smuzhiyun};
694*4882a593Smuzhiyun
695*4882a593Smuzhiyun&davinci_mdio {
696*4882a593Smuzhiyun	pinctrl-names = "default", "sleep";
697*4882a593Smuzhiyun	pinctrl-0 = <&davinci_mdio_default>;
698*4882a593Smuzhiyun	pinctrl-1 = <&davinci_mdio_sleep>;
699*4882a593Smuzhiyun	status = "okay";
700*4882a593Smuzhiyun
701*4882a593Smuzhiyun	ethphy0: ethernet-phy@0 {
702*4882a593Smuzhiyun		reg = <0>;
703*4882a593Smuzhiyun	};
704*4882a593Smuzhiyun};
705*4882a593Smuzhiyun
706*4882a593Smuzhiyun&cpsw_emac0 {
707*4882a593Smuzhiyun	phy-handle = <&ethphy0>;
708*4882a593Smuzhiyun	phy-mode = "rgmii-id";
709*4882a593Smuzhiyun};
710*4882a593Smuzhiyun
711*4882a593Smuzhiyun&tscadc {
712*4882a593Smuzhiyun	status = "okay";
713*4882a593Smuzhiyun	tsc {
714*4882a593Smuzhiyun		ti,wires = <4>;
715*4882a593Smuzhiyun		ti,x-plate-resistance = <200>;
716*4882a593Smuzhiyun		ti,coordinate-readouts = <5>;
717*4882a593Smuzhiyun		ti,wire-config = <0x00 0x11 0x22 0x33>;
718*4882a593Smuzhiyun		ti,charge-delay = <0x400>;
719*4882a593Smuzhiyun	};
720*4882a593Smuzhiyun
721*4882a593Smuzhiyun	adc {
722*4882a593Smuzhiyun		ti,adc-channels = <4 5 6 7>;
723*4882a593Smuzhiyun	};
724*4882a593Smuzhiyun};
725*4882a593Smuzhiyun
726*4882a593Smuzhiyun&mmc1 {
727*4882a593Smuzhiyun	status = "okay";
728*4882a593Smuzhiyun	vmmc-supply = <&vmmc_reg>;
729*4882a593Smuzhiyun	bus-width = <4>;
730*4882a593Smuzhiyun	pinctrl-names = "default";
731*4882a593Smuzhiyun	pinctrl-0 = <&mmc1_pins>;
732*4882a593Smuzhiyun	cd-gpios = <&gpio0 6 GPIO_ACTIVE_LOW>;
733*4882a593Smuzhiyun};
734*4882a593Smuzhiyun
735*4882a593Smuzhiyun&mmc3 {
736*4882a593Smuzhiyun	/* these are on the crossbar and are outlined in the
737*4882a593Smuzhiyun	   xbar-event-map element */
738*4882a593Smuzhiyun	dmas = <&edma_xbar 12 0 1
739*4882a593Smuzhiyun		&edma_xbar 13 0 2>;
740*4882a593Smuzhiyun	dma-names = "tx", "rx";
741*4882a593Smuzhiyun	status = "okay";
742*4882a593Smuzhiyun	vmmc-supply = <&wlan_en_reg>;
743*4882a593Smuzhiyun	bus-width = <4>;
744*4882a593Smuzhiyun	pinctrl-names = "default";
745*4882a593Smuzhiyun	pinctrl-0 = <&mmc3_pins &wlan_pins>;
746*4882a593Smuzhiyun	non-removable;
747*4882a593Smuzhiyun	cap-power-off-card;
748*4882a593Smuzhiyun	keep-power-in-suspend;
749*4882a593Smuzhiyun
750*4882a593Smuzhiyun	#address-cells = <1>;
751*4882a593Smuzhiyun	#size-cells = <0>;
752*4882a593Smuzhiyun	wlcore: wlcore@0 {
753*4882a593Smuzhiyun		compatible = "ti,wl1835";
754*4882a593Smuzhiyun		reg = <2>;
755*4882a593Smuzhiyun		interrupt-parent = <&gpio3>;
756*4882a593Smuzhiyun		interrupts = <17 IRQ_TYPE_EDGE_RISING>;
757*4882a593Smuzhiyun	};
758*4882a593Smuzhiyun};
759*4882a593Smuzhiyun
760*4882a593Smuzhiyun&sham {
761*4882a593Smuzhiyun	status = "okay";
762*4882a593Smuzhiyun};
763*4882a593Smuzhiyun
764*4882a593Smuzhiyun&aes {
765*4882a593Smuzhiyun	status = "okay";
766*4882a593Smuzhiyun};
767*4882a593Smuzhiyun
768*4882a593Smuzhiyun&dcan1 {
769*4882a593Smuzhiyun	status = "disabled";	/* Enable only if Profile 1 is selected */
770*4882a593Smuzhiyun	pinctrl-names = "default";
771*4882a593Smuzhiyun	pinctrl-0 = <&dcan1_pins_default>;
772*4882a593Smuzhiyun};
773*4882a593Smuzhiyun
774*4882a593Smuzhiyun&rtc {
775*4882a593Smuzhiyun	clocks = <&clk_32768_ck>, <&clk_24mhz_clkctrl AM3_CLK_24MHZ_CLKDIV32K_CLKCTRL 0>;
776*4882a593Smuzhiyun	clock-names = "ext-clk", "int-clk";
777*4882a593Smuzhiyun};
778