xref: /OK3568_Linux_fs/kernel/arch/arm/boot/dts/lpc4357-ea4357-devkit.dts (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun/*
2*4882a593Smuzhiyun * Embedded Artist LPC4357 Developer's Kit
3*4882a593Smuzhiyun *
4*4882a593Smuzhiyun * Copyright 2015 Joachim Eastwood <manabian@gmail.com>
5*4882a593Smuzhiyun *
6*4882a593Smuzhiyun * This code is released using a dual license strategy: BSD/GPL
7*4882a593Smuzhiyun * You can choose the licence that better fits your requirements.
8*4882a593Smuzhiyun *
9*4882a593Smuzhiyun * Released under the terms of 3-clause BSD License
10*4882a593Smuzhiyun * Released under the terms of GNU General Public License Version 2.0
11*4882a593Smuzhiyun *
12*4882a593Smuzhiyun */
13*4882a593Smuzhiyun/dts-v1/;
14*4882a593Smuzhiyun
15*4882a593Smuzhiyun#include "lpc18xx.dtsi"
16*4882a593Smuzhiyun#include "lpc4357.dtsi"
17*4882a593Smuzhiyun
18*4882a593Smuzhiyun#include "dt-bindings/input/input.h"
19*4882a593Smuzhiyun#include "dt-bindings/gpio/gpio.h"
20*4882a593Smuzhiyun
21*4882a593Smuzhiyun/ {
22*4882a593Smuzhiyun	model = "Embedded Artists' LPC4357 Developer's Kit";
23*4882a593Smuzhiyun	compatible = "ea,lpc4357-developers-kit", "nxp,lpc4357", "nxp,lpc4350";
24*4882a593Smuzhiyun
25*4882a593Smuzhiyun	aliases {
26*4882a593Smuzhiyun		serial0 = &uart0;
27*4882a593Smuzhiyun		serial1 = &uart1;
28*4882a593Smuzhiyun		serial2 = &uart2;
29*4882a593Smuzhiyun		serial3 = &uart3;
30*4882a593Smuzhiyun	};
31*4882a593Smuzhiyun
32*4882a593Smuzhiyun	chosen {
33*4882a593Smuzhiyun		stdout-path = &uart0;
34*4882a593Smuzhiyun	};
35*4882a593Smuzhiyun
36*4882a593Smuzhiyun	memory@28000000 {
37*4882a593Smuzhiyun		device_type = "memory";
38*4882a593Smuzhiyun		reg = <0x28000000 0x2000000>; /* 32 MB */
39*4882a593Smuzhiyun	};
40*4882a593Smuzhiyun
41*4882a593Smuzhiyun	vcc: vcc_fixed {
42*4882a593Smuzhiyun		compatible = "regulator-fixed";
43*4882a593Smuzhiyun		regulator-name = "3v3-supply";
44*4882a593Smuzhiyun		regulator-min-microvolt = <3300000>;
45*4882a593Smuzhiyun		regulator-max-microvolt = <3300000>;
46*4882a593Smuzhiyun	};
47*4882a593Smuzhiyun
48*4882a593Smuzhiyun	/* vmmc is controlled by sdmmc host internally */
49*4882a593Smuzhiyun	vmmc: vmmc_fixed {
50*4882a593Smuzhiyun		compatible = "regulator-fixed";
51*4882a593Smuzhiyun		regulator-name = "vmmc-supply";
52*4882a593Smuzhiyun		regulator-min-microvolt = <3300000>;
53*4882a593Smuzhiyun		regulator-max-microvolt = <3300000>;
54*4882a593Smuzhiyun	};
55*4882a593Smuzhiyun
56*4882a593Smuzhiyun	gpio_joystick {
57*4882a593Smuzhiyun		compatible = "gpio-keys-polled";
58*4882a593Smuzhiyun		pinctrl-names = "default";
59*4882a593Smuzhiyun		pinctrl-0 = <&gpio_joystick_pins>;
60*4882a593Smuzhiyun		poll-interval = <100>;
61*4882a593Smuzhiyun		autorepeat;
62*4882a593Smuzhiyun
63*4882a593Smuzhiyun		button0 {
64*4882a593Smuzhiyun			label = "joy_enter";
65*4882a593Smuzhiyun			linux,code = <KEY_ENTER>;
66*4882a593Smuzhiyun			gpios = <&gpio LPC_GPIO(4,8) GPIO_ACTIVE_LOW>;
67*4882a593Smuzhiyun		};
68*4882a593Smuzhiyun
69*4882a593Smuzhiyun		button1 {
70*4882a593Smuzhiyun			label = "joy_left";
71*4882a593Smuzhiyun			linux,code = <KEY_LEFT>;
72*4882a593Smuzhiyun			gpios = <&gpio LPC_GPIO(4,9) GPIO_ACTIVE_LOW>;
73*4882a593Smuzhiyun		};
74*4882a593Smuzhiyun
75*4882a593Smuzhiyun		button2 {
76*4882a593Smuzhiyun			label = "joy_up";
77*4882a593Smuzhiyun			linux,code = <KEY_UP>;
78*4882a593Smuzhiyun			gpios = <&gpio LPC_GPIO(4,10) GPIO_ACTIVE_LOW>;
79*4882a593Smuzhiyun		};
80*4882a593Smuzhiyun
81*4882a593Smuzhiyun		button3 {
82*4882a593Smuzhiyun			label = "joy_right";
83*4882a593Smuzhiyun			linux,code = <KEY_RIGHT>;
84*4882a593Smuzhiyun			gpios = <&gpio LPC_GPIO(4,12) GPIO_ACTIVE_LOW>;
85*4882a593Smuzhiyun		};
86*4882a593Smuzhiyun
87*4882a593Smuzhiyun		button4 {
88*4882a593Smuzhiyun			label = "joy_down";
89*4882a593Smuzhiyun			linux,code = <KEY_DOWN>;
90*4882a593Smuzhiyun			gpios = <&gpio LPC_GPIO(4,13) GPIO_ACTIVE_LOW>;
91*4882a593Smuzhiyun		};
92*4882a593Smuzhiyun	};
93*4882a593Smuzhiyun
94*4882a593Smuzhiyun	leds_mmio {
95*4882a593Smuzhiyun		compatible = "gpio-leds";
96*4882a593Smuzhiyun
97*4882a593Smuzhiyun		led1 {
98*4882a593Smuzhiyun			gpios = <&mmio_leds 15 GPIO_ACTIVE_HIGH>;
99*4882a593Smuzhiyun			linux,default-trigger = "heartbeat";
100*4882a593Smuzhiyun		};
101*4882a593Smuzhiyun
102*4882a593Smuzhiyun		led2 {
103*4882a593Smuzhiyun			gpios = <&mmio_leds 14 GPIO_ACTIVE_HIGH>;
104*4882a593Smuzhiyun		};
105*4882a593Smuzhiyun
106*4882a593Smuzhiyun		led3 {
107*4882a593Smuzhiyun			gpios = <&mmio_leds 13 GPIO_ACTIVE_HIGH>;
108*4882a593Smuzhiyun		};
109*4882a593Smuzhiyun
110*4882a593Smuzhiyun		led4 {
111*4882a593Smuzhiyun			gpios = <&mmio_leds 12 GPIO_ACTIVE_HIGH>;
112*4882a593Smuzhiyun		};
113*4882a593Smuzhiyun
114*4882a593Smuzhiyun		led5 {
115*4882a593Smuzhiyun			gpios = <&mmio_leds 11 GPIO_ACTIVE_HIGH>;
116*4882a593Smuzhiyun		};
117*4882a593Smuzhiyun
118*4882a593Smuzhiyun		led6 {
119*4882a593Smuzhiyun			gpios = <&mmio_leds 10 GPIO_ACTIVE_HIGH>;
120*4882a593Smuzhiyun		};
121*4882a593Smuzhiyun
122*4882a593Smuzhiyun		led7 {
123*4882a593Smuzhiyun			gpios = <&mmio_leds 9 GPIO_ACTIVE_HIGH>;
124*4882a593Smuzhiyun		};
125*4882a593Smuzhiyun
126*4882a593Smuzhiyun		led8 {
127*4882a593Smuzhiyun			gpios = <&mmio_leds 8 GPIO_ACTIVE_HIGH>;
128*4882a593Smuzhiyun		};
129*4882a593Smuzhiyun
130*4882a593Smuzhiyun		led9 {
131*4882a593Smuzhiyun			gpios = <&mmio_leds 7 GPIO_ACTIVE_HIGH>;
132*4882a593Smuzhiyun		};
133*4882a593Smuzhiyun
134*4882a593Smuzhiyun		led10 {
135*4882a593Smuzhiyun			gpios = <&mmio_leds 6 GPIO_ACTIVE_HIGH>;
136*4882a593Smuzhiyun		};
137*4882a593Smuzhiyun
138*4882a593Smuzhiyun		led11 {
139*4882a593Smuzhiyun			gpios = <&mmio_leds 5 GPIO_ACTIVE_HIGH>;
140*4882a593Smuzhiyun		};
141*4882a593Smuzhiyun
142*4882a593Smuzhiyun		led12 {
143*4882a593Smuzhiyun			gpios = <&mmio_leds 4 GPIO_ACTIVE_HIGH>;
144*4882a593Smuzhiyun		};
145*4882a593Smuzhiyun
146*4882a593Smuzhiyun		led13 {
147*4882a593Smuzhiyun			gpios = <&mmio_leds 3 GPIO_ACTIVE_HIGH>;
148*4882a593Smuzhiyun		};
149*4882a593Smuzhiyun
150*4882a593Smuzhiyun		led14 {
151*4882a593Smuzhiyun			gpios = <&mmio_leds 2 GPIO_ACTIVE_HIGH>;
152*4882a593Smuzhiyun		};
153*4882a593Smuzhiyun
154*4882a593Smuzhiyun		led15 {
155*4882a593Smuzhiyun			gpios = <&mmio_leds 1 GPIO_ACTIVE_HIGH>;
156*4882a593Smuzhiyun		};
157*4882a593Smuzhiyun
158*4882a593Smuzhiyun		led16 {
159*4882a593Smuzhiyun			gpios = <&mmio_leds 0 GPIO_ACTIVE_HIGH>;
160*4882a593Smuzhiyun		};
161*4882a593Smuzhiyun	};
162*4882a593Smuzhiyun};
163*4882a593Smuzhiyun
164*4882a593Smuzhiyun&pinctrl {
165*4882a593Smuzhiyun	emc_pins: emc-pins {
166*4882a593Smuzhiyun		emc_addr0_23_cfg {
167*4882a593Smuzhiyun			pins =	"p2_9",  "p2_10", "p2_11", "p2_12",
168*4882a593Smuzhiyun				"p2_13", "p1_0",  "p1_1",  "p1_2",
169*4882a593Smuzhiyun				"p2_8",  "p2_7",  "p2_6",  "p2_2",
170*4882a593Smuzhiyun				"p2_1",  "p2_0",  "p6_8",  "p6_7",
171*4882a593Smuzhiyun				"pd_16", "pd_15", "pe_0",  "pe_1",
172*4882a593Smuzhiyun				"pe_2",  "pe_3",  "pe_4",  "pa_4";
173*4882a593Smuzhiyun			function = "emc";
174*4882a593Smuzhiyun			slew-rate = <1>;
175*4882a593Smuzhiyun			bias-disable;
176*4882a593Smuzhiyun			input-enable;
177*4882a593Smuzhiyun			input-schmitt-disable;
178*4882a593Smuzhiyun		};
179*4882a593Smuzhiyun
180*4882a593Smuzhiyun		emc_data0_31_cfg {
181*4882a593Smuzhiyun			pins =	"p1_7",  "p1_8",  "p1_9",  "p1_10",
182*4882a593Smuzhiyun				"p1_11", "p1_12", "p1_13", "p1_14",
183*4882a593Smuzhiyun				"p5_4",  "p5_5",  "p5_6",  "p5_7",
184*4882a593Smuzhiyun				"p5_0",  "p5_1",  "p5_2",  "p5_3",
185*4882a593Smuzhiyun				"pd_2",  "pd_3",  "pd_4",  "pd_5",
186*4882a593Smuzhiyun				"pd_6",  "pd_7",  "pd_8",  "pd_9",
187*4882a593Smuzhiyun				"pe_5",  "pe_6",  "pe_7",  "pe_8",
188*4882a593Smuzhiyun				"pe_9",  "pe_10", "pe_11", "pe_12";
189*4882a593Smuzhiyun			function = "emc";
190*4882a593Smuzhiyun			slew-rate = <1>;
191*4882a593Smuzhiyun			bias-disable;
192*4882a593Smuzhiyun			input-enable;
193*4882a593Smuzhiyun			input-schmitt-disable;
194*4882a593Smuzhiyun		};
195*4882a593Smuzhiyun
196*4882a593Smuzhiyun		emc_we_oe_cfg {
197*4882a593Smuzhiyun			pins = "p1_6", "p1_3";
198*4882a593Smuzhiyun			function = "emc";
199*4882a593Smuzhiyun			slew-rate = <1>;
200*4882a593Smuzhiyun			bias-disable;
201*4882a593Smuzhiyun			input-enable;
202*4882a593Smuzhiyun			input-schmitt-disable;
203*4882a593Smuzhiyun		};
204*4882a593Smuzhiyun
205*4882a593Smuzhiyun		emc_bls0_3_cfg {
206*4882a593Smuzhiyun			pins = "p1_4", "p6_6", "pd_13", "pd_10";
207*4882a593Smuzhiyun			function = "emc";
208*4882a593Smuzhiyun			slew-rate = <1>;
209*4882a593Smuzhiyun			bias-disable;
210*4882a593Smuzhiyun			input-enable;
211*4882a593Smuzhiyun			input-schmitt-disable;
212*4882a593Smuzhiyun		};
213*4882a593Smuzhiyun
214*4882a593Smuzhiyun		emc_cs0_3_cfg {
215*4882a593Smuzhiyun			pins = "p1_5", "p6_3", "pd_12", "pd_11";
216*4882a593Smuzhiyun			function = "emc";
217*4882a593Smuzhiyun			slew-rate = <1>;
218*4882a593Smuzhiyun			bias-disable;
219*4882a593Smuzhiyun			input-enable;
220*4882a593Smuzhiyun			input-schmitt-disable;
221*4882a593Smuzhiyun		};
222*4882a593Smuzhiyun
223*4882a593Smuzhiyun		emc_sdram_dqm0_3_cfg {
224*4882a593Smuzhiyun			pins = "p6_12", "p6_10", "pd_0", "pe_13";
225*4882a593Smuzhiyun			function = "emc";
226*4882a593Smuzhiyun			slew-rate = <1>;
227*4882a593Smuzhiyun			bias-disable;
228*4882a593Smuzhiyun			input-enable;
229*4882a593Smuzhiyun			input-schmitt-disable;
230*4882a593Smuzhiyun		};
231*4882a593Smuzhiyun
232*4882a593Smuzhiyun		emc_sdram_ras_cas_cfg {
233*4882a593Smuzhiyun			pins = "p6_5", "p6_4";
234*4882a593Smuzhiyun			function = "emc";
235*4882a593Smuzhiyun			slew-rate = <1>;
236*4882a593Smuzhiyun			bias-disable;
237*4882a593Smuzhiyun			input-enable;
238*4882a593Smuzhiyun			input-schmitt-disable;
239*4882a593Smuzhiyun		};
240*4882a593Smuzhiyun
241*4882a593Smuzhiyun		emc_sdram_dycs0_cfg {
242*4882a593Smuzhiyun			pins = "p6_9";
243*4882a593Smuzhiyun			function = "emc";
244*4882a593Smuzhiyun			slew-rate = <1>;
245*4882a593Smuzhiyun			bias-disable;
246*4882a593Smuzhiyun			input-enable;
247*4882a593Smuzhiyun			input-schmitt-disable;
248*4882a593Smuzhiyun		};
249*4882a593Smuzhiyun
250*4882a593Smuzhiyun		emc_sdram_cke_cfg {
251*4882a593Smuzhiyun			pins = "p6_11";
252*4882a593Smuzhiyun			function = "emc";
253*4882a593Smuzhiyun			slew-rate = <1>;
254*4882a593Smuzhiyun			bias-disable;
255*4882a593Smuzhiyun			input-enable;
256*4882a593Smuzhiyun			input-schmitt-disable;
257*4882a593Smuzhiyun		};
258*4882a593Smuzhiyun
259*4882a593Smuzhiyun		emc_sdram_clock_cfg {
260*4882a593Smuzhiyun			pins = "clk0", "clk1", "clk2", "clk3";
261*4882a593Smuzhiyun			function = "emc";
262*4882a593Smuzhiyun			slew-rate = <1>;
263*4882a593Smuzhiyun			bias-disable;
264*4882a593Smuzhiyun			input-enable;
265*4882a593Smuzhiyun			input-schmitt-disable;
266*4882a593Smuzhiyun		};
267*4882a593Smuzhiyun	};
268*4882a593Smuzhiyun
269*4882a593Smuzhiyun	enet_rmii_pins: enet-rmii-pins {
270*4882a593Smuzhiyun		enet_rmii_rxd_cfg {
271*4882a593Smuzhiyun			pins = "p1_15", "p0_0";
272*4882a593Smuzhiyun			function = "enet";
273*4882a593Smuzhiyun			slew-rate = <1>;
274*4882a593Smuzhiyun			bias-disable;
275*4882a593Smuzhiyun			input-enable;
276*4882a593Smuzhiyun			input-schmitt-disable;
277*4882a593Smuzhiyun		};
278*4882a593Smuzhiyun
279*4882a593Smuzhiyun		enet_rmii_txd_cfg {
280*4882a593Smuzhiyun			pins = "p1_18", "p1_20";
281*4882a593Smuzhiyun			function = "enet";
282*4882a593Smuzhiyun			slew-rate = <1>;
283*4882a593Smuzhiyun			bias-disable;
284*4882a593Smuzhiyun			input-enable;
285*4882a593Smuzhiyun			input-schmitt-disable;
286*4882a593Smuzhiyun		};
287*4882a593Smuzhiyun
288*4882a593Smuzhiyun		enet_rmii_rx_dv_cfg {
289*4882a593Smuzhiyun			pins = "p1_16";
290*4882a593Smuzhiyun			function = "enet";
291*4882a593Smuzhiyun			bias-disable;
292*4882a593Smuzhiyun			input-enable;
293*4882a593Smuzhiyun			input-schmitt-disable;
294*4882a593Smuzhiyun		};
295*4882a593Smuzhiyun
296*4882a593Smuzhiyun		enet_rmii_tx_en_cfg {
297*4882a593Smuzhiyun			pins = "p0_1";
298*4882a593Smuzhiyun			function = "enet";
299*4882a593Smuzhiyun			bias-disable;
300*4882a593Smuzhiyun			input-enable;
301*4882a593Smuzhiyun			input-schmitt-disable;
302*4882a593Smuzhiyun		};
303*4882a593Smuzhiyun
304*4882a593Smuzhiyun		enet_ref_clk_cfg {
305*4882a593Smuzhiyun			pins = "p1_19";
306*4882a593Smuzhiyun			function = "enet";
307*4882a593Smuzhiyun			slew-rate = <1>;
308*4882a593Smuzhiyun			bias-disable;
309*4882a593Smuzhiyun			input-enable;
310*4882a593Smuzhiyun			input-schmitt-disable;
311*4882a593Smuzhiyun		};
312*4882a593Smuzhiyun
313*4882a593Smuzhiyun		enet_mdio_cfg {
314*4882a593Smuzhiyun			pins = "p1_17";
315*4882a593Smuzhiyun			function = "enet";
316*4882a593Smuzhiyun			bias-disable;
317*4882a593Smuzhiyun			input-enable;
318*4882a593Smuzhiyun			input-schmitt-disable;
319*4882a593Smuzhiyun		};
320*4882a593Smuzhiyun
321*4882a593Smuzhiyun		enet_mdc_cfg {
322*4882a593Smuzhiyun			pins = "pc_1";
323*4882a593Smuzhiyun			function = "enet";
324*4882a593Smuzhiyun			slew-rate = <1>;
325*4882a593Smuzhiyun			bias-disable;
326*4882a593Smuzhiyun			input-enable;
327*4882a593Smuzhiyun			input-schmitt-disable;
328*4882a593Smuzhiyun		};
329*4882a593Smuzhiyun	};
330*4882a593Smuzhiyun
331*4882a593Smuzhiyun	gpio_joystick_pins: gpio-joystick-pins {
332*4882a593Smuzhiyun		gpio_joystick_cfg {
333*4882a593Smuzhiyun			pins =	"p9_0", "p9_1", "pa_1", "pa_2", "pa_3";
334*4882a593Smuzhiyun			function = "gpio";
335*4882a593Smuzhiyun			input-enable;
336*4882a593Smuzhiyun			bias-disable;
337*4882a593Smuzhiyun		};
338*4882a593Smuzhiyun	};
339*4882a593Smuzhiyun
340*4882a593Smuzhiyun	i2c0_pins: i2c0-pins {
341*4882a593Smuzhiyun		i2c0_pins_cfg {
342*4882a593Smuzhiyun			pins = "i2c0_scl", "i2c0_sda";
343*4882a593Smuzhiyun			function = "i2c0";
344*4882a593Smuzhiyun			input-enable;
345*4882a593Smuzhiyun		};
346*4882a593Smuzhiyun	};
347*4882a593Smuzhiyun
348*4882a593Smuzhiyun	sdmmc_pins: sdmmc-pins {
349*4882a593Smuzhiyun		sdmmc_clk_cfg {
350*4882a593Smuzhiyun			pins = "pc_0";
351*4882a593Smuzhiyun			function = "sdmmc";
352*4882a593Smuzhiyun			slew-rate = <1>;
353*4882a593Smuzhiyun			bias-pull-down;
354*4882a593Smuzhiyun		};
355*4882a593Smuzhiyun
356*4882a593Smuzhiyun		sdmmc_cmd_dat0_3_cfg {
357*4882a593Smuzhiyun			pins = "pc_4", "pc_5", "pc_6", "pc_7", "pc_10";
358*4882a593Smuzhiyun			function = "sdmmc";
359*4882a593Smuzhiyun			slew-rate = <1>;
360*4882a593Smuzhiyun			bias-disable;
361*4882a593Smuzhiyun			input-enable;
362*4882a593Smuzhiyun			input-schmitt-disable;
363*4882a593Smuzhiyun		};
364*4882a593Smuzhiyun
365*4882a593Smuzhiyun		sdmmc_cd_cfg {
366*4882a593Smuzhiyun			pins = "pc_8";
367*4882a593Smuzhiyun			function = "sdmmc";
368*4882a593Smuzhiyun			bias-pull-down;
369*4882a593Smuzhiyun			input-enable;
370*4882a593Smuzhiyun		};
371*4882a593Smuzhiyun
372*4882a593Smuzhiyun		sdmmc_pow_cfg {
373*4882a593Smuzhiyun			pins = "pc_9";
374*4882a593Smuzhiyun			function = "sdmmc";
375*4882a593Smuzhiyun			bias-pull-down;
376*4882a593Smuzhiyun		};
377*4882a593Smuzhiyun	};
378*4882a593Smuzhiyun
379*4882a593Smuzhiyun	spifi_pins: spifi-pins {
380*4882a593Smuzhiyun		spifi_clk_cfg {
381*4882a593Smuzhiyun			pins = "p3_3";
382*4882a593Smuzhiyun			function = "spifi";
383*4882a593Smuzhiyun			slew-rate = <1>;
384*4882a593Smuzhiyun			bias-disable;
385*4882a593Smuzhiyun			input-enable;
386*4882a593Smuzhiyun			input-schmitt-disable;
387*4882a593Smuzhiyun		};
388*4882a593Smuzhiyun
389*4882a593Smuzhiyun		spifi_mosi_miso_sio2_3_cfg {
390*4882a593Smuzhiyun			pins = "p3_7", "p3_6", "p3_5", "p3_4";
391*4882a593Smuzhiyun			function = "spifi";
392*4882a593Smuzhiyun			slew-rate = <0>;
393*4882a593Smuzhiyun			bias-disable;
394*4882a593Smuzhiyun			input-enable;
395*4882a593Smuzhiyun			input-schmitt-disable;
396*4882a593Smuzhiyun		};
397*4882a593Smuzhiyun
398*4882a593Smuzhiyun		spifi_cs_cfg {
399*4882a593Smuzhiyun			pins = "p3_8";
400*4882a593Smuzhiyun			function = "spifi";
401*4882a593Smuzhiyun			bias-disable;
402*4882a593Smuzhiyun		};
403*4882a593Smuzhiyun	};
404*4882a593Smuzhiyun
405*4882a593Smuzhiyun	ssp0_pins: ssp0-pins {
406*4882a593Smuzhiyun		ssp0_sck_miso_mosi {
407*4882a593Smuzhiyun			pins = "pf_0", "pf_2", "pf_3";
408*4882a593Smuzhiyun			function = "ssp0";
409*4882a593Smuzhiyun			slew-rate = <1>;
410*4882a593Smuzhiyun			bias-pull-down;
411*4882a593Smuzhiyun			input-enable;
412*4882a593Smuzhiyun			input-schmitt-disable;
413*4882a593Smuzhiyun		};
414*4882a593Smuzhiyun
415*4882a593Smuzhiyun		ssp0_ssel {
416*4882a593Smuzhiyun			pins = "pf_1";
417*4882a593Smuzhiyun			function = "ssp0";
418*4882a593Smuzhiyun			bias-pull-up;
419*4882a593Smuzhiyun		};
420*4882a593Smuzhiyun	};
421*4882a593Smuzhiyun
422*4882a593Smuzhiyun	uart0_pins: uart0-pins {
423*4882a593Smuzhiyun		uart0_rx_cfg {
424*4882a593Smuzhiyun			pins = "pf_11";
425*4882a593Smuzhiyun			function = "uart0";
426*4882a593Smuzhiyun			input-schmitt-disable;
427*4882a593Smuzhiyun			bias-disable;
428*4882a593Smuzhiyun			input-enable;
429*4882a593Smuzhiyun		};
430*4882a593Smuzhiyun
431*4882a593Smuzhiyun		uart0_tx_cfg {
432*4882a593Smuzhiyun			pins = "pf_10";
433*4882a593Smuzhiyun			function = "uart0";
434*4882a593Smuzhiyun			bias-pull-down;
435*4882a593Smuzhiyun		};
436*4882a593Smuzhiyun	};
437*4882a593Smuzhiyun
438*4882a593Smuzhiyun	uart3_pins: uart3-pins {
439*4882a593Smuzhiyun		uart3_rx_cfg {
440*4882a593Smuzhiyun			pins = "p2_4";
441*4882a593Smuzhiyun			function = "uart3";
442*4882a593Smuzhiyun			input-schmitt-disable;
443*4882a593Smuzhiyun			bias-disable;
444*4882a593Smuzhiyun			input-enable;
445*4882a593Smuzhiyun		};
446*4882a593Smuzhiyun
447*4882a593Smuzhiyun		uart3_tx_cfg {
448*4882a593Smuzhiyun			pins = "p9_3";
449*4882a593Smuzhiyun			function = "uart3";
450*4882a593Smuzhiyun			bias-pull-down;
451*4882a593Smuzhiyun		};
452*4882a593Smuzhiyun	};
453*4882a593Smuzhiyun
454*4882a593Smuzhiyun	usb0_pins: usb0-pins {
455*4882a593Smuzhiyun		usb0_pwr_enable {
456*4882a593Smuzhiyun			pins = "p2_3";
457*4882a593Smuzhiyun			function = "usb0";
458*4882a593Smuzhiyun		};
459*4882a593Smuzhiyun
460*4882a593Smuzhiyun		usb0_pwr_fault {
461*4882a593Smuzhiyun			pins = "p8_0";
462*4882a593Smuzhiyun			function = "usb0";
463*4882a593Smuzhiyun			bias-disable;
464*4882a593Smuzhiyun			input-enable;
465*4882a593Smuzhiyun		};
466*4882a593Smuzhiyun	};
467*4882a593Smuzhiyun};
468*4882a593Smuzhiyun
469*4882a593Smuzhiyun&adc0 {
470*4882a593Smuzhiyun	status = "okay";
471*4882a593Smuzhiyun	vref-supply = <&vcc>;
472*4882a593Smuzhiyun};
473*4882a593Smuzhiyun
474*4882a593Smuzhiyun&i2c0 {
475*4882a593Smuzhiyun	status = "okay";
476*4882a593Smuzhiyun	pinctrl-names = "default";
477*4882a593Smuzhiyun	pinctrl-0 = <&i2c0_pins>;
478*4882a593Smuzhiyun	clock-frequency = <400000>;
479*4882a593Smuzhiyun
480*4882a593Smuzhiyun	mma7455@1d {
481*4882a593Smuzhiyun		compatible = "fsl,mma7455";
482*4882a593Smuzhiyun		reg = <0x1d>;
483*4882a593Smuzhiyun	};
484*4882a593Smuzhiyun
485*4882a593Smuzhiyun	lm75@48 {
486*4882a593Smuzhiyun		compatible = "nxp,lm75";
487*4882a593Smuzhiyun		reg = <0x48>;
488*4882a593Smuzhiyun	};
489*4882a593Smuzhiyun
490*4882a593Smuzhiyun	eeprom@57 {
491*4882a593Smuzhiyun		compatible = "microchip,24c64", "atmel,24c64";
492*4882a593Smuzhiyun		reg = <0x57>;
493*4882a593Smuzhiyun	};
494*4882a593Smuzhiyun};
495*4882a593Smuzhiyun
496*4882a593Smuzhiyun&dac {
497*4882a593Smuzhiyun	status = "okay";
498*4882a593Smuzhiyun	vref-supply = <&vcc>;
499*4882a593Smuzhiyun};
500*4882a593Smuzhiyun
501*4882a593Smuzhiyun&emc {
502*4882a593Smuzhiyun	status = "okay";
503*4882a593Smuzhiyun	pinctrl-names = "default";
504*4882a593Smuzhiyun	pinctrl-0 = <&emc_pins>;
505*4882a593Smuzhiyun
506*4882a593Smuzhiyun	cs0 {
507*4882a593Smuzhiyun		#address-cells = <2>;
508*4882a593Smuzhiyun		#size-cells = <1>;
509*4882a593Smuzhiyun		ranges;
510*4882a593Smuzhiyun
511*4882a593Smuzhiyun		mpmc,cs = <0>;
512*4882a593Smuzhiyun		mpmc,memory-width = <16>;
513*4882a593Smuzhiyun		mpmc,byte-lane-low;
514*4882a593Smuzhiyun		mpmc,write-enable-delay = <0>;
515*4882a593Smuzhiyun		mpmc,output-enable-delay = <0>;
516*4882a593Smuzhiyun		mpmc,read-access-delay = <70>;
517*4882a593Smuzhiyun		mpmc,page-mode-read-delay = <70>;
518*4882a593Smuzhiyun
519*4882a593Smuzhiyun		flash@0,0 {
520*4882a593Smuzhiyun			compatible = "sst,sst39vf320", "cfi-flash";
521*4882a593Smuzhiyun			reg = <0 0 0x400000>;
522*4882a593Smuzhiyun			bank-width = <2>;
523*4882a593Smuzhiyun			#address-cells = <1>;
524*4882a593Smuzhiyun			#size-cells = <1>;
525*4882a593Smuzhiyun
526*4882a593Smuzhiyun			partition@0 {
527*4882a593Smuzhiyun				label = "bootloader";
528*4882a593Smuzhiyun				reg = <0x000000 0x040000>; /* 256 KiB */
529*4882a593Smuzhiyun			};
530*4882a593Smuzhiyun
531*4882a593Smuzhiyun			partition@1 {
532*4882a593Smuzhiyun				label = "kernel";
533*4882a593Smuzhiyun				reg = <0x040000 0x2c0000>; /* 2.75 MiB */
534*4882a593Smuzhiyun			};
535*4882a593Smuzhiyun
536*4882a593Smuzhiyun			partition@2 {
537*4882a593Smuzhiyun				label = "rootfs";
538*4882a593Smuzhiyun				reg = <0x300000 0x100000>; /* 1 MiB */
539*4882a593Smuzhiyun			};
540*4882a593Smuzhiyun		};
541*4882a593Smuzhiyun	};
542*4882a593Smuzhiyun
543*4882a593Smuzhiyun	cs2 {
544*4882a593Smuzhiyun		#address-cells = <2>;
545*4882a593Smuzhiyun		#size-cells = <1>;
546*4882a593Smuzhiyun		ranges;
547*4882a593Smuzhiyun
548*4882a593Smuzhiyun		mpmc,cs = <2>;
549*4882a593Smuzhiyun		mpmc,memory-width = <16>;
550*4882a593Smuzhiyun
551*4882a593Smuzhiyun		mmio_leds: gpio@2,0 {
552*4882a593Smuzhiyun			compatible = "ti,7416374";
553*4882a593Smuzhiyun			reg = <2 0 0x2>;
554*4882a593Smuzhiyun			gpio-controller;
555*4882a593Smuzhiyun			#gpio-cells = <2>;
556*4882a593Smuzhiyun		};
557*4882a593Smuzhiyun
558*4882a593Smuzhiyun	};
559*4882a593Smuzhiyun};
560*4882a593Smuzhiyun
561*4882a593Smuzhiyun&enet_tx_clk {
562*4882a593Smuzhiyun	clock-frequency = <50000000>;
563*4882a593Smuzhiyun};
564*4882a593Smuzhiyun
565*4882a593Smuzhiyun&mac {
566*4882a593Smuzhiyun	status = "okay";
567*4882a593Smuzhiyun	phy-mode = "rmii";
568*4882a593Smuzhiyun	pinctrl-names = "default";
569*4882a593Smuzhiyun	pinctrl-0 = <&enet_rmii_pins>;
570*4882a593Smuzhiyun};
571*4882a593Smuzhiyun
572*4882a593Smuzhiyun&mmcsd {
573*4882a593Smuzhiyun	status = "okay";
574*4882a593Smuzhiyun	bus-width = <4>;
575*4882a593Smuzhiyun	vmmc-supply = <&vmmc>;
576*4882a593Smuzhiyun	pinctrl-names = "default";
577*4882a593Smuzhiyun	pinctrl-0 = <&sdmmc_pins>;
578*4882a593Smuzhiyun};
579*4882a593Smuzhiyun
580*4882a593Smuzhiyun&spifi {
581*4882a593Smuzhiyun	status = "okay";
582*4882a593Smuzhiyun	pinctrl-names = "default";
583*4882a593Smuzhiyun	pinctrl-0 = <&spifi_pins>;
584*4882a593Smuzhiyun
585*4882a593Smuzhiyun	flash {
586*4882a593Smuzhiyun		compatible = "jedec,spi-nor";
587*4882a593Smuzhiyun		spi-cpol;
588*4882a593Smuzhiyun		spi-cpha;
589*4882a593Smuzhiyun		spi-rx-bus-width = <4>;
590*4882a593Smuzhiyun		#address-cells = <1>;
591*4882a593Smuzhiyun		#size-cells = <1>;
592*4882a593Smuzhiyun
593*4882a593Smuzhiyun		partition@0 {
594*4882a593Smuzhiyun			label = "data";
595*4882a593Smuzhiyun			reg = <0 0x200000>;
596*4882a593Smuzhiyun		};
597*4882a593Smuzhiyun	};
598*4882a593Smuzhiyun};
599*4882a593Smuzhiyun
600*4882a593Smuzhiyun&ssp0 {
601*4882a593Smuzhiyun	status = "okay";
602*4882a593Smuzhiyun	pinctrl-names = "default";
603*4882a593Smuzhiyun	pinctrl-0 = <&ssp0_pins>;
604*4882a593Smuzhiyun	num-cs = <1>;
605*4882a593Smuzhiyun};
606*4882a593Smuzhiyun
607*4882a593Smuzhiyun&uart0 {
608*4882a593Smuzhiyun	status = "okay";
609*4882a593Smuzhiyun	pinctrl-names = "default";
610*4882a593Smuzhiyun	pinctrl-0 = <&uart0_pins>;
611*4882a593Smuzhiyun};
612*4882a593Smuzhiyun
613*4882a593Smuzhiyun&uart3 {
614*4882a593Smuzhiyun	status = "okay";
615*4882a593Smuzhiyun	pinctrl-names = "default";
616*4882a593Smuzhiyun	pinctrl-0 = <&uart3_pins>;
617*4882a593Smuzhiyun};
618*4882a593Smuzhiyun
619*4882a593Smuzhiyun&usb0 {
620*4882a593Smuzhiyun	status = "okay";
621*4882a593Smuzhiyun	pinctrl-names = "default";
622*4882a593Smuzhiyun	pinctrl-0 = <&usb0_pins>;
623*4882a593Smuzhiyun};
624