xref: /OK3568_Linux_fs/kernel/arch/arm/boot/dts/imx51-zii-rdu1.dts (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun// SPDX-License-Identifier: (GPL-2.0 OR MIT)
2*4882a593Smuzhiyun/*
3*4882a593Smuzhiyun * Copyright (C) 2017 Zodiac Inflight Innovations
4*4882a593Smuzhiyun */
5*4882a593Smuzhiyun
6*4882a593Smuzhiyun/dts-v1/;
7*4882a593Smuzhiyun#include "imx51.dtsi"
8*4882a593Smuzhiyun#include <dt-bindings/sound/fsl-imx-audmux.h>
9*4882a593Smuzhiyun
10*4882a593Smuzhiyun/ {
11*4882a593Smuzhiyun	model = "ZII RDU1 Board";
12*4882a593Smuzhiyun	compatible = "zii,imx51-rdu1", "fsl,imx51";
13*4882a593Smuzhiyun
14*4882a593Smuzhiyun	chosen {
15*4882a593Smuzhiyun		stdout-path = &uart1;
16*4882a593Smuzhiyun	};
17*4882a593Smuzhiyun
18*4882a593Smuzhiyun	/* Will be filled by the bootloader */
19*4882a593Smuzhiyun	memory@90000000 {
20*4882a593Smuzhiyun		device_type = "memory";
21*4882a593Smuzhiyun		reg = <0x90000000 0>;
22*4882a593Smuzhiyun	};
23*4882a593Smuzhiyun
24*4882a593Smuzhiyun	aliases {
25*4882a593Smuzhiyun		mdio-gpio0 = &mdio_gpio;
26*4882a593Smuzhiyun		rtc0 = &ds1341;
27*4882a593Smuzhiyun	};
28*4882a593Smuzhiyun
29*4882a593Smuzhiyun	clk_26M_osc: 26M_osc {
30*4882a593Smuzhiyun		compatible = "fixed-clock";
31*4882a593Smuzhiyun		#clock-cells = <0>;
32*4882a593Smuzhiyun		clock-frequency = <26000000>;
33*4882a593Smuzhiyun	};
34*4882a593Smuzhiyun
35*4882a593Smuzhiyun	clk_26M_osc_gate: 26M_gate {
36*4882a593Smuzhiyun		compatible = "gpio-gate-clock";
37*4882a593Smuzhiyun		pinctrl-names = "default";
38*4882a593Smuzhiyun		pinctrl-0 = <&pinctrl_clk26mhz>;
39*4882a593Smuzhiyun		clocks = <&clk_26M_osc>;
40*4882a593Smuzhiyun		#clock-cells = <0>;
41*4882a593Smuzhiyun		enable-gpios = <&gpio3 1 GPIO_ACTIVE_HIGH>;
42*4882a593Smuzhiyun	};
43*4882a593Smuzhiyun
44*4882a593Smuzhiyun	clk_26M_usb: usbhost_gate {
45*4882a593Smuzhiyun		compatible = "gpio-gate-clock";
46*4882a593Smuzhiyun		pinctrl-names = "default";
47*4882a593Smuzhiyun		pinctrl-0 = <&pinctrl_usbgate26mhz>;
48*4882a593Smuzhiyun		clocks = <&clk_26M_osc_gate>;
49*4882a593Smuzhiyun		#clock-cells = <0>;
50*4882a593Smuzhiyun		enable-gpios = <&gpio1 19 GPIO_ACTIVE_LOW>;
51*4882a593Smuzhiyun	};
52*4882a593Smuzhiyun
53*4882a593Smuzhiyun	clk_26M_snd: snd_gate {
54*4882a593Smuzhiyun		compatible = "gpio-gate-clock";
55*4882a593Smuzhiyun		pinctrl-names = "default";
56*4882a593Smuzhiyun		pinctrl-0 = <&pinctrl_sndgate26mhz>;
57*4882a593Smuzhiyun		clocks = <&clk_26M_osc_gate>;
58*4882a593Smuzhiyun		#clock-cells = <0>;
59*4882a593Smuzhiyun		enable-gpios = <&gpio4 26 GPIO_ACTIVE_LOW>;
60*4882a593Smuzhiyun	};
61*4882a593Smuzhiyun
62*4882a593Smuzhiyun	reg_5p0v_main: regulator-5p0v-main {
63*4882a593Smuzhiyun		compatible = "regulator-fixed";
64*4882a593Smuzhiyun		regulator-name = "5V_MAIN";
65*4882a593Smuzhiyun		regulator-min-microvolt = <5000000>;
66*4882a593Smuzhiyun		regulator-max-microvolt = <5000000>;
67*4882a593Smuzhiyun		regulator-always-on;
68*4882a593Smuzhiyun	};
69*4882a593Smuzhiyun
70*4882a593Smuzhiyun	reg_3p3v: regulator-3p3v {
71*4882a593Smuzhiyun		compatible = "regulator-fixed";
72*4882a593Smuzhiyun		regulator-name = "3.3V";
73*4882a593Smuzhiyun		regulator-min-microvolt = <3300000>;
74*4882a593Smuzhiyun		regulator-max-microvolt = <3300000>;
75*4882a593Smuzhiyun		regulator-always-on;
76*4882a593Smuzhiyun	};
77*4882a593Smuzhiyun
78*4882a593Smuzhiyun	disp0 {
79*4882a593Smuzhiyun		compatible = "fsl,imx-parallel-display";
80*4882a593Smuzhiyun		pinctrl-names = "default";
81*4882a593Smuzhiyun		pinctrl-0 = <&pinctrl_ipu_disp1>;
82*4882a593Smuzhiyun
83*4882a593Smuzhiyun		#address-cells = <1>;
84*4882a593Smuzhiyun		#size-cells = <0>;
85*4882a593Smuzhiyun
86*4882a593Smuzhiyun		port@0 {
87*4882a593Smuzhiyun			reg = <0>;
88*4882a593Smuzhiyun
89*4882a593Smuzhiyun			display_in: endpoint {
90*4882a593Smuzhiyun				remote-endpoint = <&ipu_di0_disp1>;
91*4882a593Smuzhiyun			};
92*4882a593Smuzhiyun		};
93*4882a593Smuzhiyun
94*4882a593Smuzhiyun		port@1 {
95*4882a593Smuzhiyun			reg = <1>;
96*4882a593Smuzhiyun
97*4882a593Smuzhiyun			display_out: endpoint {
98*4882a593Smuzhiyun				remote-endpoint = <&panel_in>;
99*4882a593Smuzhiyun			};
100*4882a593Smuzhiyun		};
101*4882a593Smuzhiyun	};
102*4882a593Smuzhiyun
103*4882a593Smuzhiyun	panel {
104*4882a593Smuzhiyun		/* no compatible here, bootloader will patch in correct one */
105*4882a593Smuzhiyun		pinctrl-names = "default";
106*4882a593Smuzhiyun		pinctrl-0 = <&pinctrl_panel>;
107*4882a593Smuzhiyun		power-supply = <&reg_3p3v>;
108*4882a593Smuzhiyun		enable-gpios = <&gpio3 3 GPIO_ACTIVE_HIGH>;
109*4882a593Smuzhiyun		status = "disabled";
110*4882a593Smuzhiyun
111*4882a593Smuzhiyun		port {
112*4882a593Smuzhiyun			panel_in: endpoint {
113*4882a593Smuzhiyun				remote-endpoint = <&display_out>;
114*4882a593Smuzhiyun			};
115*4882a593Smuzhiyun		};
116*4882a593Smuzhiyun	};
117*4882a593Smuzhiyun
118*4882a593Smuzhiyun	i2c_gpio: i2c-gpio {
119*4882a593Smuzhiyun		compatible = "i2c-gpio";
120*4882a593Smuzhiyun		pinctrl-names = "default";
121*4882a593Smuzhiyun		pinctrl-0 = <&pinctrl_swi2c>;
122*4882a593Smuzhiyun		gpios = <&gpio1 2 GPIO_ACTIVE_HIGH>, /* sda */
123*4882a593Smuzhiyun			<&gpio3 4 GPIO_ACTIVE_HIGH>; /* scl */
124*4882a593Smuzhiyun		i2c-gpio,delay-us = <50>;
125*4882a593Smuzhiyun		status = "okay";
126*4882a593Smuzhiyun
127*4882a593Smuzhiyun		#address-cells = <1>;
128*4882a593Smuzhiyun		#size-cells = <0>;
129*4882a593Smuzhiyun
130*4882a593Smuzhiyun		sgtl5000: codec@a {
131*4882a593Smuzhiyun			compatible = "fsl,sgtl5000";
132*4882a593Smuzhiyun			reg = <0x0a>;
133*4882a593Smuzhiyun			clocks = <&clk_26M_snd>;
134*4882a593Smuzhiyun			VDDA-supply = <&vdig_reg>;
135*4882a593Smuzhiyun			VDDIO-supply = <&vvideo_reg>;
136*4882a593Smuzhiyun			#sound-dai-cells = <0>;
137*4882a593Smuzhiyun		};
138*4882a593Smuzhiyun	};
139*4882a593Smuzhiyun
140*4882a593Smuzhiyun	spi_gpio: spi-gpio {
141*4882a593Smuzhiyun		compatible = "spi-gpio";
142*4882a593Smuzhiyun		#address-cells = <1>;
143*4882a593Smuzhiyun		#size-cells = <0>;
144*4882a593Smuzhiyun		pinctrl-names = "default";
145*4882a593Smuzhiyun		pinctrl-0 = <&pinctrl_gpiospi0>;
146*4882a593Smuzhiyun		status = "okay";
147*4882a593Smuzhiyun
148*4882a593Smuzhiyun		gpio-sck = <&gpio4 15 GPIO_ACTIVE_HIGH>;
149*4882a593Smuzhiyun		gpio-mosi = <&gpio4 12 GPIO_ACTIVE_HIGH>;
150*4882a593Smuzhiyun		gpio-miso = <&gpio4 11 GPIO_ACTIVE_HIGH>;
151*4882a593Smuzhiyun		num-chipselects = <1>;
152*4882a593Smuzhiyun		cs-gpios = <&gpio4 14 GPIO_ACTIVE_HIGH>;
153*4882a593Smuzhiyun
154*4882a593Smuzhiyun		eeprom@0 {
155*4882a593Smuzhiyun			compatible = "eeprom-93xx46";
156*4882a593Smuzhiyun			reg = <0>;
157*4882a593Smuzhiyun			spi-max-frequency = <1000000>;
158*4882a593Smuzhiyun			spi-cs-high;
159*4882a593Smuzhiyun			data-size = <8>;
160*4882a593Smuzhiyun		};
161*4882a593Smuzhiyun	};
162*4882a593Smuzhiyun
163*4882a593Smuzhiyun	mdio_gpio: mdio-gpio {
164*4882a593Smuzhiyun		compatible = "virtual,mdio-gpio";
165*4882a593Smuzhiyun		pinctrl-names = "default";
166*4882a593Smuzhiyun		pinctrl-0 = <&pinctrl_swmdio>;
167*4882a593Smuzhiyun		gpios = <&gpio3 26 GPIO_ACTIVE_HIGH>, /* mdc */
168*4882a593Smuzhiyun			<&gpio3 25 GPIO_ACTIVE_HIGH>; /* mdio */
169*4882a593Smuzhiyun
170*4882a593Smuzhiyun		#address-cells = <1>;
171*4882a593Smuzhiyun		#size-cells = <0>;
172*4882a593Smuzhiyun
173*4882a593Smuzhiyun		switch@0 {
174*4882a593Smuzhiyun			compatible = "marvell,mv88e6085";
175*4882a593Smuzhiyun			reg = <0>;
176*4882a593Smuzhiyun			dsa,member = <0 0>;
177*4882a593Smuzhiyun
178*4882a593Smuzhiyun			ports {
179*4882a593Smuzhiyun				#address-cells = <1>;
180*4882a593Smuzhiyun				#size-cells = <0>;
181*4882a593Smuzhiyun
182*4882a593Smuzhiyun				port@0 {
183*4882a593Smuzhiyun					reg = <0>;
184*4882a593Smuzhiyun					label = "cpu";
185*4882a593Smuzhiyun					ethernet = <&fec>;
186*4882a593Smuzhiyun
187*4882a593Smuzhiyun					fixed-link {
188*4882a593Smuzhiyun						speed = <100>;
189*4882a593Smuzhiyun						full-duplex;
190*4882a593Smuzhiyun					};
191*4882a593Smuzhiyun				};
192*4882a593Smuzhiyun
193*4882a593Smuzhiyun				port@1 {
194*4882a593Smuzhiyun					reg = <1>;
195*4882a593Smuzhiyun					label = "netaux";
196*4882a593Smuzhiyun				};
197*4882a593Smuzhiyun
198*4882a593Smuzhiyun				port@3 {
199*4882a593Smuzhiyun					reg = <3>;
200*4882a593Smuzhiyun					label = "netright";
201*4882a593Smuzhiyun				};
202*4882a593Smuzhiyun
203*4882a593Smuzhiyun				port@4 {
204*4882a593Smuzhiyun					reg = <4>;
205*4882a593Smuzhiyun					label = "netleft";
206*4882a593Smuzhiyun				};
207*4882a593Smuzhiyun			};
208*4882a593Smuzhiyun		};
209*4882a593Smuzhiyun	};
210*4882a593Smuzhiyun
211*4882a593Smuzhiyun	sound {
212*4882a593Smuzhiyun		compatible = "simple-audio-card";
213*4882a593Smuzhiyun		simple-audio-card,name = "Front";
214*4882a593Smuzhiyun		simple-audio-card,format = "i2s";
215*4882a593Smuzhiyun		simple-audio-card,bitclock-master = <&sound_codec>;
216*4882a593Smuzhiyun		simple-audio-card,frame-master = <&sound_codec>;
217*4882a593Smuzhiyun		simple-audio-card,widgets =
218*4882a593Smuzhiyun			"Headphone", "Headphone Jack";
219*4882a593Smuzhiyun		simple-audio-card,routing =
220*4882a593Smuzhiyun			"Headphone Jack", "TPA6130A2 HPLEFT",
221*4882a593Smuzhiyun			"Headphone Jack", "TPA6130A2 HPRIGHT";
222*4882a593Smuzhiyun		simple-audio-card,aux-devs = <&hpa1>;
223*4882a593Smuzhiyun
224*4882a593Smuzhiyun		sound_cpu: simple-audio-card,cpu {
225*4882a593Smuzhiyun			sound-dai = <&ssi2>;
226*4882a593Smuzhiyun		};
227*4882a593Smuzhiyun
228*4882a593Smuzhiyun		sound_codec: simple-audio-card,codec {
229*4882a593Smuzhiyun			sound-dai = <&sgtl5000>;
230*4882a593Smuzhiyun			clocks = <&clk_26M_snd>;
231*4882a593Smuzhiyun		};
232*4882a593Smuzhiyun	};
233*4882a593Smuzhiyun
234*4882a593Smuzhiyun	usbh1phy: usbphy1 {
235*4882a593Smuzhiyun		compatible = "usb-nop-xceiv";
236*4882a593Smuzhiyun		pinctrl-names = "default";
237*4882a593Smuzhiyun		pinctrl-0 = <&pinctrl_usbh1phy>;
238*4882a593Smuzhiyun		clocks = <&clk_26M_usb>;
239*4882a593Smuzhiyun		clock-names = "main_clk";
240*4882a593Smuzhiyun		reset-gpios = <&gpio4 8 GPIO_ACTIVE_LOW>;
241*4882a593Smuzhiyun		vcc-supply = <&vusb_reg>;
242*4882a593Smuzhiyun		#phy-cells = <0>;
243*4882a593Smuzhiyun	};
244*4882a593Smuzhiyun
245*4882a593Smuzhiyun	usbh2phy: usbphy2 {
246*4882a593Smuzhiyun		compatible = "usb-nop-xceiv";
247*4882a593Smuzhiyun		pinctrl-names = "default";
248*4882a593Smuzhiyun		pinctrl-0 = <&pinctrl_usbh2phy>;
249*4882a593Smuzhiyun		clocks = <&clk_26M_usb>;
250*4882a593Smuzhiyun		clock-names = "main_clk";
251*4882a593Smuzhiyun		reset-gpios = <&gpio4 7 GPIO_ACTIVE_LOW>;
252*4882a593Smuzhiyun		vcc-supply = <&vusb_reg>;
253*4882a593Smuzhiyun		#phy-cells = <0>;
254*4882a593Smuzhiyun	};
255*4882a593Smuzhiyun};
256*4882a593Smuzhiyun
257*4882a593Smuzhiyun&audmux {
258*4882a593Smuzhiyun	pinctrl-names = "default";
259*4882a593Smuzhiyun	pinctrl-0 = <&pinctrl_audmux>;
260*4882a593Smuzhiyun	status = "okay";
261*4882a593Smuzhiyun
262*4882a593Smuzhiyun	ssi2 {
263*4882a593Smuzhiyun		fsl,audmux-port = <1>;
264*4882a593Smuzhiyun		fsl,port-config = <
265*4882a593Smuzhiyun			(IMX_AUDMUX_V2_PTCR_SYN |
266*4882a593Smuzhiyun			 IMX_AUDMUX_V2_PTCR_TFSEL(2) |
267*4882a593Smuzhiyun			 IMX_AUDMUX_V2_PTCR_TCSEL(2) |
268*4882a593Smuzhiyun			 IMX_AUDMUX_V2_PTCR_TFSDIR |
269*4882a593Smuzhiyun			 IMX_AUDMUX_V2_PTCR_TCLKDIR)
270*4882a593Smuzhiyun			IMX_AUDMUX_V2_PDCR_RXDSEL(2)
271*4882a593Smuzhiyun		>;
272*4882a593Smuzhiyun	};
273*4882a593Smuzhiyun
274*4882a593Smuzhiyun	aud3 {
275*4882a593Smuzhiyun		fsl,audmux-port = <2>;
276*4882a593Smuzhiyun		fsl,port-config = <
277*4882a593Smuzhiyun			IMX_AUDMUX_V2_PTCR_SYN
278*4882a593Smuzhiyun			IMX_AUDMUX_V2_PDCR_RXDSEL(1)
279*4882a593Smuzhiyun		>;
280*4882a593Smuzhiyun	};
281*4882a593Smuzhiyun};
282*4882a593Smuzhiyun
283*4882a593Smuzhiyun&cpu {
284*4882a593Smuzhiyun	cpu-supply = <&sw1_reg>;
285*4882a593Smuzhiyun};
286*4882a593Smuzhiyun
287*4882a593Smuzhiyun&ecspi1 {
288*4882a593Smuzhiyun	pinctrl-names = "default";
289*4882a593Smuzhiyun	pinctrl-0 = <&pinctrl_ecspi1>;
290*4882a593Smuzhiyun	cs-gpios = <&gpio4 24 GPIO_ACTIVE_HIGH>,
291*4882a593Smuzhiyun		   <&gpio4 25 GPIO_ACTIVE_LOW>;
292*4882a593Smuzhiyun	status = "okay";
293*4882a593Smuzhiyun
294*4882a593Smuzhiyun	pmic@0 {
295*4882a593Smuzhiyun		compatible = "fsl,mc13892";
296*4882a593Smuzhiyun		pinctrl-names = "default";
297*4882a593Smuzhiyun		pinctrl-0 = <&pinctrl_pmic>;
298*4882a593Smuzhiyun		spi-max-frequency = <6000000>;
299*4882a593Smuzhiyun		spi-cs-high;
300*4882a593Smuzhiyun		reg = <0>;
301*4882a593Smuzhiyun		interrupt-parent = <&gpio1>;
302*4882a593Smuzhiyun		interrupts = <8 IRQ_TYPE_LEVEL_HIGH>;
303*4882a593Smuzhiyun		fsl,mc13xxx-uses-adc;
304*4882a593Smuzhiyun
305*4882a593Smuzhiyun		regulators {
306*4882a593Smuzhiyun			sw1_reg: sw1 {
307*4882a593Smuzhiyun				regulator-min-microvolt = <600000>;
308*4882a593Smuzhiyun				regulator-max-microvolt = <1375000>;
309*4882a593Smuzhiyun				regulator-boot-on;
310*4882a593Smuzhiyun				regulator-always-on;
311*4882a593Smuzhiyun			};
312*4882a593Smuzhiyun
313*4882a593Smuzhiyun			sw2_reg: sw2 {
314*4882a593Smuzhiyun				regulator-min-microvolt = <900000>;
315*4882a593Smuzhiyun				regulator-max-microvolt = <1850000>;
316*4882a593Smuzhiyun				regulator-boot-on;
317*4882a593Smuzhiyun				regulator-always-on;
318*4882a593Smuzhiyun			};
319*4882a593Smuzhiyun
320*4882a593Smuzhiyun			sw3_reg: sw3 {
321*4882a593Smuzhiyun				regulator-min-microvolt = <1100000>;
322*4882a593Smuzhiyun				regulator-max-microvolt = <1850000>;
323*4882a593Smuzhiyun				regulator-boot-on;
324*4882a593Smuzhiyun				regulator-always-on;
325*4882a593Smuzhiyun			};
326*4882a593Smuzhiyun
327*4882a593Smuzhiyun			sw4_reg: sw4 {
328*4882a593Smuzhiyun				regulator-min-microvolt = <1100000>;
329*4882a593Smuzhiyun				regulator-max-microvolt = <1850000>;
330*4882a593Smuzhiyun				regulator-boot-on;
331*4882a593Smuzhiyun				regulator-always-on;
332*4882a593Smuzhiyun			};
333*4882a593Smuzhiyun
334*4882a593Smuzhiyun			vpll_reg: vpll {
335*4882a593Smuzhiyun				regulator-min-microvolt = <1050000>;
336*4882a593Smuzhiyun				regulator-max-microvolt = <1800000>;
337*4882a593Smuzhiyun				regulator-boot-on;
338*4882a593Smuzhiyun				regulator-always-on;
339*4882a593Smuzhiyun			};
340*4882a593Smuzhiyun
341*4882a593Smuzhiyun			vdig_reg: vdig {
342*4882a593Smuzhiyun				regulator-min-microvolt = <1650000>;
343*4882a593Smuzhiyun				regulator-max-microvolt = <1650000>;
344*4882a593Smuzhiyun				regulator-boot-on;
345*4882a593Smuzhiyun			};
346*4882a593Smuzhiyun
347*4882a593Smuzhiyun			vsd_reg: vsd {
348*4882a593Smuzhiyun				regulator-min-microvolt = <1800000>;
349*4882a593Smuzhiyun				regulator-max-microvolt = <3150000>;
350*4882a593Smuzhiyun			};
351*4882a593Smuzhiyun
352*4882a593Smuzhiyun			vusb_reg: vusb {
353*4882a593Smuzhiyun				regulator-always-on;
354*4882a593Smuzhiyun			};
355*4882a593Smuzhiyun
356*4882a593Smuzhiyun			vusb2_reg: vusb2 {
357*4882a593Smuzhiyun				regulator-min-microvolt = <2400000>;
358*4882a593Smuzhiyun				regulator-max-microvolt = <2775000>;
359*4882a593Smuzhiyun				regulator-boot-on;
360*4882a593Smuzhiyun				regulator-always-on;
361*4882a593Smuzhiyun			};
362*4882a593Smuzhiyun
363*4882a593Smuzhiyun			vvideo_reg: vvideo {
364*4882a593Smuzhiyun				regulator-min-microvolt = <2775000>;
365*4882a593Smuzhiyun				regulator-max-microvolt = <2775000>;
366*4882a593Smuzhiyun			};
367*4882a593Smuzhiyun
368*4882a593Smuzhiyun			vaudio_reg: vaudio {
369*4882a593Smuzhiyun				regulator-min-microvolt = <2300000>;
370*4882a593Smuzhiyun				regulator-max-microvolt = <3000000>;
371*4882a593Smuzhiyun			};
372*4882a593Smuzhiyun
373*4882a593Smuzhiyun			vcam_reg: vcam {
374*4882a593Smuzhiyun				regulator-min-microvolt = <2500000>;
375*4882a593Smuzhiyun				regulator-max-microvolt = <3000000>;
376*4882a593Smuzhiyun			};
377*4882a593Smuzhiyun
378*4882a593Smuzhiyun			vgen1_reg: vgen1 {
379*4882a593Smuzhiyun				regulator-min-microvolt = <1200000>;
380*4882a593Smuzhiyun				regulator-max-microvolt = <1200000>;
381*4882a593Smuzhiyun			};
382*4882a593Smuzhiyun
383*4882a593Smuzhiyun			vgen2_reg: vgen2 {
384*4882a593Smuzhiyun				regulator-min-microvolt = <1200000>;
385*4882a593Smuzhiyun				regulator-max-microvolt = <3150000>;
386*4882a593Smuzhiyun				regulator-always-on;
387*4882a593Smuzhiyun			};
388*4882a593Smuzhiyun
389*4882a593Smuzhiyun			vgen3_reg: vgen3 {
390*4882a593Smuzhiyun				regulator-min-microvolt = <1800000>;
391*4882a593Smuzhiyun				regulator-max-microvolt = <2900000>;
392*4882a593Smuzhiyun				regulator-always-on;
393*4882a593Smuzhiyun			};
394*4882a593Smuzhiyun		};
395*4882a593Smuzhiyun
396*4882a593Smuzhiyun		leds {
397*4882a593Smuzhiyun			#address-cells = <1>;
398*4882a593Smuzhiyun			#size-cells = <0>;
399*4882a593Smuzhiyun			led-control = <0x0 0x0 0x3f83f8 0x0>;
400*4882a593Smuzhiyun
401*4882a593Smuzhiyun			sysled0@3 {
402*4882a593Smuzhiyun				reg = <3>;
403*4882a593Smuzhiyun				label = "system:green:status";
404*4882a593Smuzhiyun				linux,default-trigger = "default-on";
405*4882a593Smuzhiyun			};
406*4882a593Smuzhiyun
407*4882a593Smuzhiyun			sysled1@4 {
408*4882a593Smuzhiyun				reg = <4>;
409*4882a593Smuzhiyun				label = "system:green:act";
410*4882a593Smuzhiyun				linux,default-trigger = "heartbeat";
411*4882a593Smuzhiyun			};
412*4882a593Smuzhiyun		};
413*4882a593Smuzhiyun	};
414*4882a593Smuzhiyun
415*4882a593Smuzhiyun	flash@1 {
416*4882a593Smuzhiyun		#address-cells = <1>;
417*4882a593Smuzhiyun		#size-cells = <1>;
418*4882a593Smuzhiyun		compatible = "atmel,at45db642d", "atmel,at45", "atmel,dataflash";
419*4882a593Smuzhiyun		spi-max-frequency = <25000000>;
420*4882a593Smuzhiyun		reg = <1>;
421*4882a593Smuzhiyun	};
422*4882a593Smuzhiyun};
423*4882a593Smuzhiyun
424*4882a593Smuzhiyun&esdhc1 {
425*4882a593Smuzhiyun	pinctrl-names = "default";
426*4882a593Smuzhiyun	pinctrl-0 = <&pinctrl_esdhc1>;
427*4882a593Smuzhiyun	bus-width = <4>;
428*4882a593Smuzhiyun	no-1-8-v;
429*4882a593Smuzhiyun	non-removable;
430*4882a593Smuzhiyun	no-sdio;
431*4882a593Smuzhiyun	no-sd;
432*4882a593Smuzhiyun	status = "okay";
433*4882a593Smuzhiyun};
434*4882a593Smuzhiyun
435*4882a593Smuzhiyun&fec {
436*4882a593Smuzhiyun	pinctrl-names = "default";
437*4882a593Smuzhiyun	pinctrl-0 = <&pinctrl_fec>;
438*4882a593Smuzhiyun	phy-mode = "mii";
439*4882a593Smuzhiyun	phy-reset-gpios = <&gpio2 14 GPIO_ACTIVE_LOW>;
440*4882a593Smuzhiyun	phy-supply = <&vgen3_reg>;
441*4882a593Smuzhiyun	status = "okay";
442*4882a593Smuzhiyun};
443*4882a593Smuzhiyun
444*4882a593Smuzhiyun&gpio1 {
445*4882a593Smuzhiyun	gpio-line-names = "", "", "", "",
446*4882a593Smuzhiyun			  "", "", "", "",
447*4882a593Smuzhiyun			  "", "hp-amp-shutdown-b", "", "",
448*4882a593Smuzhiyun			  "", "", "", "",
449*4882a593Smuzhiyun			  "", "", "", "",
450*4882a593Smuzhiyun			  "", "", "", "",
451*4882a593Smuzhiyun			  "", "", "", "",
452*4882a593Smuzhiyun			  "", "", "", "";
453*4882a593Smuzhiyun
454*4882a593Smuzhiyun	unused-sd3-wp-gpio {
455*4882a593Smuzhiyun		/*
456*4882a593Smuzhiyun		 * See pinctrl_esdhc1 below for more details on this
457*4882a593Smuzhiyun		 */
458*4882a593Smuzhiyun		gpio-hog;
459*4882a593Smuzhiyun		gpios = <1 GPIO_ACTIVE_HIGH>;
460*4882a593Smuzhiyun		output-high;
461*4882a593Smuzhiyun	};
462*4882a593Smuzhiyun};
463*4882a593Smuzhiyun
464*4882a593Smuzhiyun&i2c2 {
465*4882a593Smuzhiyun	pinctrl-names = "default";
466*4882a593Smuzhiyun	pinctrl-0 = <&pinctrl_i2c2>;
467*4882a593Smuzhiyun	status = "okay";
468*4882a593Smuzhiyun
469*4882a593Smuzhiyun	hpa1: amp@60 {
470*4882a593Smuzhiyun		compatible = "ti,tpa6130a2";
471*4882a593Smuzhiyun		reg = <0x60>;
472*4882a593Smuzhiyun		Vdd-supply = <&reg_3p3v>;
473*4882a593Smuzhiyun		sound-name-prefix = "TPA6130A2";
474*4882a593Smuzhiyun	};
475*4882a593Smuzhiyun
476*4882a593Smuzhiyun	ds1341: rtc@68 {
477*4882a593Smuzhiyun		compatible = "dallas,ds1341";
478*4882a593Smuzhiyun		reg = <0x68>;
479*4882a593Smuzhiyun	};
480*4882a593Smuzhiyun
481*4882a593Smuzhiyun	/* touch nodes default disabled, bootloader will enable the right one */
482*4882a593Smuzhiyun
483*4882a593Smuzhiyun	touchscreen@4b {
484*4882a593Smuzhiyun		compatible = "atmel,maxtouch";
485*4882a593Smuzhiyun		reg = <0x4b>;
486*4882a593Smuzhiyun		pinctrl-names = "default";
487*4882a593Smuzhiyun		pinctrl-0 = <&pinctrl_ts>;
488*4882a593Smuzhiyun		interrupt-parent = <&gpio3>;
489*4882a593Smuzhiyun		interrupts = <12 IRQ_TYPE_LEVEL_LOW>;
490*4882a593Smuzhiyun		status = "disabled";
491*4882a593Smuzhiyun	};
492*4882a593Smuzhiyun
493*4882a593Smuzhiyun	touchscreen@4c {
494*4882a593Smuzhiyun		compatible = "atmel,maxtouch";
495*4882a593Smuzhiyun		reg = <0x4c>;
496*4882a593Smuzhiyun		pinctrl-names = "default";
497*4882a593Smuzhiyun		pinctrl-0 = <&pinctrl_ts>;
498*4882a593Smuzhiyun		interrupt-parent = <&gpio3>;
499*4882a593Smuzhiyun		interrupts = <12 IRQ_TYPE_LEVEL_LOW>;
500*4882a593Smuzhiyun		status = "disabled";
501*4882a593Smuzhiyun	};
502*4882a593Smuzhiyun
503*4882a593Smuzhiyun	touchscreen@20 {
504*4882a593Smuzhiyun		compatible = "syna,rmi4-i2c";
505*4882a593Smuzhiyun		reg = <0x20>;
506*4882a593Smuzhiyun		pinctrl-names = "default";
507*4882a593Smuzhiyun		pinctrl-0 = <&pinctrl_ts>;
508*4882a593Smuzhiyun		interrupt-parent = <&gpio3>;
509*4882a593Smuzhiyun		interrupts = <12 IRQ_TYPE_LEVEL_LOW>;
510*4882a593Smuzhiyun		status = "disabled";
511*4882a593Smuzhiyun
512*4882a593Smuzhiyun		#address-cells = <1>;
513*4882a593Smuzhiyun		#size-cells = <0>;
514*4882a593Smuzhiyun
515*4882a593Smuzhiyun		rmi4-f01@1 {
516*4882a593Smuzhiyun			reg = <0x1>;
517*4882a593Smuzhiyun			syna,nosleep-mode = <2>;
518*4882a593Smuzhiyun		};
519*4882a593Smuzhiyun
520*4882a593Smuzhiyun		rmi4-f11@11 {
521*4882a593Smuzhiyun			reg = <0x11>;
522*4882a593Smuzhiyun			touchscreen-inverted-x;
523*4882a593Smuzhiyun			touchscreen-swapped-x-y;
524*4882a593Smuzhiyun			syna,sensor-type = <1>;
525*4882a593Smuzhiyun		};
526*4882a593Smuzhiyun	};
527*4882a593Smuzhiyun
528*4882a593Smuzhiyun};
529*4882a593Smuzhiyun
530*4882a593Smuzhiyun&ipu_di0_disp1 {
531*4882a593Smuzhiyun	remote-endpoint = <&display_in>;
532*4882a593Smuzhiyun};
533*4882a593Smuzhiyun
534*4882a593Smuzhiyun&pmu {
535*4882a593Smuzhiyun	secure-reg-access;
536*4882a593Smuzhiyun};
537*4882a593Smuzhiyun
538*4882a593Smuzhiyun&ssi2 {
539*4882a593Smuzhiyun	status = "okay";
540*4882a593Smuzhiyun};
541*4882a593Smuzhiyun
542*4882a593Smuzhiyun&uart1 {
543*4882a593Smuzhiyun	pinctrl-names = "default";
544*4882a593Smuzhiyun	pinctrl-0 = <&pinctrl_uart1>;
545*4882a593Smuzhiyun	status = "okay";
546*4882a593Smuzhiyun};
547*4882a593Smuzhiyun
548*4882a593Smuzhiyun&uart2 {
549*4882a593Smuzhiyun	pinctrl-names = "default";
550*4882a593Smuzhiyun	pinctrl-0 = <&pinctrl_uart2>;
551*4882a593Smuzhiyun	status = "okay";
552*4882a593Smuzhiyun};
553*4882a593Smuzhiyun
554*4882a593Smuzhiyun&uart3 {
555*4882a593Smuzhiyun	pinctrl-names = "default";
556*4882a593Smuzhiyun	pinctrl-0 = <&pinctrl_uart3>;
557*4882a593Smuzhiyun	status = "okay";
558*4882a593Smuzhiyun
559*4882a593Smuzhiyun	rave-sp {
560*4882a593Smuzhiyun		compatible = "zii,rave-sp-rdu1";
561*4882a593Smuzhiyun		current-speed = <38400>;
562*4882a593Smuzhiyun		#address-cells = <1>;
563*4882a593Smuzhiyun		#size-cells = <1>;
564*4882a593Smuzhiyun
565*4882a593Smuzhiyun		watchdog {
566*4882a593Smuzhiyun			compatible = "zii,rave-sp-watchdog";
567*4882a593Smuzhiyun		};
568*4882a593Smuzhiyun
569*4882a593Smuzhiyun		backlight {
570*4882a593Smuzhiyun			compatible = "zii,rave-sp-backlight";
571*4882a593Smuzhiyun		};
572*4882a593Smuzhiyun
573*4882a593Smuzhiyun		pwrbutton {
574*4882a593Smuzhiyun			compatible = "zii,rave-sp-pwrbutton";
575*4882a593Smuzhiyun		};
576*4882a593Smuzhiyun
577*4882a593Smuzhiyun		eeprom@a3 {
578*4882a593Smuzhiyun			compatible = "zii,rave-sp-eeprom";
579*4882a593Smuzhiyun			reg = <0xa3 0x2000>;
580*4882a593Smuzhiyun			#address-cells = <1>;
581*4882a593Smuzhiyun			#size-cells = <1>;
582*4882a593Smuzhiyun			zii,eeprom-name = "dds-eeprom";
583*4882a593Smuzhiyun		};
584*4882a593Smuzhiyun
585*4882a593Smuzhiyun		eeprom@a4 {
586*4882a593Smuzhiyun			compatible = "zii,rave-sp-eeprom";
587*4882a593Smuzhiyun			reg = <0xa4 0x4000>;
588*4882a593Smuzhiyun			#address-cells = <1>;
589*4882a593Smuzhiyun			#size-cells = <1>;
590*4882a593Smuzhiyun			zii,eeprom-name = "main-eeprom";
591*4882a593Smuzhiyun		};
592*4882a593Smuzhiyun
593*4882a593Smuzhiyun		eeprom@ae {
594*4882a593Smuzhiyun			compatible = "zii,rave-sp-eeprom";
595*4882a593Smuzhiyun			reg = <0xae 0x200>;
596*4882a593Smuzhiyun			zii,eeprom-name = "switch-eeprom";
597*4882a593Smuzhiyun			/*
598*4882a593Smuzhiyun			 * Not all RDU1s have this functionality, so we
599*4882a593Smuzhiyun			 * rely on the bootloader to enable this
600*4882a593Smuzhiyun			 */
601*4882a593Smuzhiyun			status = "disabled";
602*4882a593Smuzhiyun		};
603*4882a593Smuzhiyun	};
604*4882a593Smuzhiyun};
605*4882a593Smuzhiyun
606*4882a593Smuzhiyun&usbh1 {
607*4882a593Smuzhiyun	pinctrl-names = "default";
608*4882a593Smuzhiyun	pinctrl-0 = <&pinctrl_usbh1>;
609*4882a593Smuzhiyun	dr_mode = "host";
610*4882a593Smuzhiyun	phy_type = "ulpi";
611*4882a593Smuzhiyun	fsl,usbphy = <&usbh1phy>;
612*4882a593Smuzhiyun	disable-over-current;
613*4882a593Smuzhiyun	maximum-speed = "full-speed";
614*4882a593Smuzhiyun	vbus-supply = <&reg_5p0v_main>;
615*4882a593Smuzhiyun	status = "okay";
616*4882a593Smuzhiyun};
617*4882a593Smuzhiyun
618*4882a593Smuzhiyun&usbh2 {
619*4882a593Smuzhiyun	pinctrl-names = "default";
620*4882a593Smuzhiyun	pinctrl-0 = <&pinctrl_usbh2>;
621*4882a593Smuzhiyun	dr_mode = "host";
622*4882a593Smuzhiyun	phy_type = "ulpi";
623*4882a593Smuzhiyun	fsl,usbphy = <&usbh2phy>;
624*4882a593Smuzhiyun	disable-over-current;
625*4882a593Smuzhiyun	vbus-supply = <&reg_5p0v_main>;
626*4882a593Smuzhiyun	status = "okay";
627*4882a593Smuzhiyun};
628*4882a593Smuzhiyun
629*4882a593Smuzhiyun&usbphy0 {
630*4882a593Smuzhiyun	vcc-supply = <&vusb_reg>;
631*4882a593Smuzhiyun};
632*4882a593Smuzhiyun
633*4882a593Smuzhiyun&usbotg {
634*4882a593Smuzhiyun	dr_mode = "host";
635*4882a593Smuzhiyun	disable-over-current;
636*4882a593Smuzhiyun	phy_type = "utmi_wide";
637*4882a593Smuzhiyun	vbus-supply = <&reg_5p0v_main>;
638*4882a593Smuzhiyun	status = "okay";
639*4882a593Smuzhiyun};
640*4882a593Smuzhiyun
641*4882a593Smuzhiyun&wdog1 {
642*4882a593Smuzhiyun	status = "disabled";
643*4882a593Smuzhiyun};
644*4882a593Smuzhiyun
645*4882a593Smuzhiyun&iomuxc {
646*4882a593Smuzhiyun	pinctrl-names = "default";
647*4882a593Smuzhiyun	pinctrl-0 = <&pinctrl_hog>;
648*4882a593Smuzhiyun
649*4882a593Smuzhiyun	pinctrl_hog: hoggrp {
650*4882a593Smuzhiyun		fsl,pins = <
651*4882a593Smuzhiyun			MX51_PAD_GPIO1_9__GPIO1_9		0x5e
652*4882a593Smuzhiyun		>;
653*4882a593Smuzhiyun	};
654*4882a593Smuzhiyun
655*4882a593Smuzhiyun	pinctrl_audmux: audmuxgrp {
656*4882a593Smuzhiyun		fsl,pins = <
657*4882a593Smuzhiyun			MX51_PAD_AUD3_BB_TXD__AUD3_TXD		0xa5
658*4882a593Smuzhiyun			MX51_PAD_AUD3_BB_RXD__AUD3_RXD		0x85
659*4882a593Smuzhiyun			MX51_PAD_AUD3_BB_CK__AUD3_TXC		0xa5
660*4882a593Smuzhiyun			MX51_PAD_AUD3_BB_FS__AUD3_TXFS		0x85
661*4882a593Smuzhiyun		>;
662*4882a593Smuzhiyun	};
663*4882a593Smuzhiyun
664*4882a593Smuzhiyun	pinctrl_clk26mhz: clk26mhzgrp {
665*4882a593Smuzhiyun		fsl,pins = <
666*4882a593Smuzhiyun			MX51_PAD_DI1_PIN12__GPIO3_1		0x85
667*4882a593Smuzhiyun		>;
668*4882a593Smuzhiyun	};
669*4882a593Smuzhiyun
670*4882a593Smuzhiyun	pinctrl_ecspi1: ecspi1grp {
671*4882a593Smuzhiyun		fsl,pins = <
672*4882a593Smuzhiyun			MX51_PAD_CSPI1_MISO__ECSPI1_MISO	0x185
673*4882a593Smuzhiyun			MX51_PAD_CSPI1_MOSI__ECSPI1_MOSI	0x185
674*4882a593Smuzhiyun			MX51_PAD_CSPI1_SCLK__ECSPI1_SCLK	0x185
675*4882a593Smuzhiyun			MX51_PAD_CSPI1_SS0__GPIO4_24		0x85
676*4882a593Smuzhiyun			MX51_PAD_CSPI1_SS1__GPIO4_25		0x85
677*4882a593Smuzhiyun		>;
678*4882a593Smuzhiyun	};
679*4882a593Smuzhiyun
680*4882a593Smuzhiyun	pinctrl_esdhc1: esdhc1grp {
681*4882a593Smuzhiyun		fsl,pins = <
682*4882a593Smuzhiyun			MX51_PAD_SD1_CMD__SD1_CMD		0x400020d5
683*4882a593Smuzhiyun			MX51_PAD_SD1_CLK__SD1_CLK		0x20d5
684*4882a593Smuzhiyun			MX51_PAD_SD1_DATA0__SD1_DATA0		0x20d5
685*4882a593Smuzhiyun			MX51_PAD_SD1_DATA1__SD1_DATA1		0x20d5
686*4882a593Smuzhiyun			MX51_PAD_SD1_DATA2__SD1_DATA2		0x20d5
687*4882a593Smuzhiyun			MX51_PAD_SD1_DATA3__SD1_DATA3		0x20d5
688*4882a593Smuzhiyun			/*
689*4882a593Smuzhiyun			 * GPIO1_1 is not directly used by eSDHC1 in
690*4882a593Smuzhiyun			 * any capacity, but earlier versions of RDU1
691*4882a593Smuzhiyun			 * used that pin as WP GPIO for eSDHC3 and
692*4882a593Smuzhiyun			 * because of that that pad has an external
693*4882a593Smuzhiyun			 * pull-up resistor. This is problematic
694*4882a593Smuzhiyun			 * because out of reset the pad is configured
695*4882a593Smuzhiyun			 * as ALT0 which serves as SD1_WP, which, when
696*4882a593Smuzhiyun			 * pulled high by and external pull-up, will
697*4882a593Smuzhiyun			 * inhibit execution of any write request to
698*4882a593Smuzhiyun			 * attached eMMC device.
699*4882a593Smuzhiyun			 *
700*4882a593Smuzhiyun			 * To avoid this problem we configure the pad
701*4882a593Smuzhiyun			 * to ALT1/GPIO and avoid driving SD1_WP
702*4882a593Smuzhiyun			 * signal high.
703*4882a593Smuzhiyun			 */
704*4882a593Smuzhiyun			MX51_PAD_GPIO1_1__GPIO1_1		0x0000
705*4882a593Smuzhiyun		>;
706*4882a593Smuzhiyun	};
707*4882a593Smuzhiyun
708*4882a593Smuzhiyun	pinctrl_fec: fecgrp {
709*4882a593Smuzhiyun		fsl,pins = <
710*4882a593Smuzhiyun			MX51_PAD_EIM_EB2__FEC_MDIO		0x1f5
711*4882a593Smuzhiyun			MX51_PAD_NANDF_D9__FEC_RDATA0		0x2180
712*4882a593Smuzhiyun			MX51_PAD_EIM_EB3__FEC_RDATA1		0x180
713*4882a593Smuzhiyun			MX51_PAD_EIM_CS2__FEC_RDATA2		0x180
714*4882a593Smuzhiyun			MX51_PAD_EIM_CS3__FEC_RDATA3		0x180
715*4882a593Smuzhiyun			MX51_PAD_EIM_CS4__FEC_RX_ER		0x180
716*4882a593Smuzhiyun			MX51_PAD_NANDF_D11__FEC_RX_DV		0x2084
717*4882a593Smuzhiyun			MX51_PAD_EIM_CS5__FEC_CRS		0x180
718*4882a593Smuzhiyun			MX51_PAD_NANDF_RB2__FEC_COL		0x2180
719*4882a593Smuzhiyun			MX51_PAD_NANDF_RB3__FEC_RX_CLK		0x2180
720*4882a593Smuzhiyun			MX51_PAD_NANDF_CS2__FEC_TX_ER		0x2004
721*4882a593Smuzhiyun			MX51_PAD_NANDF_CS3__FEC_MDC		0x2004
722*4882a593Smuzhiyun			MX51_PAD_NANDF_D8__FEC_TDATA0		0x2180
723*4882a593Smuzhiyun			MX51_PAD_NANDF_CS4__FEC_TDATA1		0x2004
724*4882a593Smuzhiyun			MX51_PAD_NANDF_CS5__FEC_TDATA2		0x2004
725*4882a593Smuzhiyun			MX51_PAD_NANDF_CS6__FEC_TDATA3		0x2004
726*4882a593Smuzhiyun			MX51_PAD_DISP2_DAT9__FEC_TX_EN		0x2004
727*4882a593Smuzhiyun			MX51_PAD_DISP2_DAT13__FEC_TX_CLK	0x2180
728*4882a593Smuzhiyun			MX51_PAD_EIM_A20__GPIO2_14		0x85
729*4882a593Smuzhiyun		>;
730*4882a593Smuzhiyun	};
731*4882a593Smuzhiyun
732*4882a593Smuzhiyun	pinctrl_gpiospi0: gpiospi0grp {
733*4882a593Smuzhiyun		fsl,pins = <
734*4882a593Smuzhiyun			MX51_PAD_CSI2_D18__GPIO4_11		0x85
735*4882a593Smuzhiyun			MX51_PAD_CSI2_D19__GPIO4_12		0x85
736*4882a593Smuzhiyun			MX51_PAD_CSI2_HSYNC__GPIO4_14		0x85
737*4882a593Smuzhiyun			MX51_PAD_CSI2_PIXCLK__GPIO4_15		0x85
738*4882a593Smuzhiyun		>;
739*4882a593Smuzhiyun	};
740*4882a593Smuzhiyun
741*4882a593Smuzhiyun	pinctrl_i2c2: i2c2grp {
742*4882a593Smuzhiyun		fsl,pins = <
743*4882a593Smuzhiyun			MX51_PAD_KEY_COL4__I2C2_SCL		0x400001ed
744*4882a593Smuzhiyun			MX51_PAD_KEY_COL5__I2C2_SDA		0x400001ed
745*4882a593Smuzhiyun		>;
746*4882a593Smuzhiyun	};
747*4882a593Smuzhiyun
748*4882a593Smuzhiyun	pinctrl_ipu_disp1: ipudisp1grp {
749*4882a593Smuzhiyun		fsl,pins = <
750*4882a593Smuzhiyun			MX51_PAD_DISP1_DAT0__DISP1_DAT0		0x5
751*4882a593Smuzhiyun			MX51_PAD_DISP1_DAT1__DISP1_DAT1		0x5
752*4882a593Smuzhiyun			MX51_PAD_DISP1_DAT2__DISP1_DAT2		0x5
753*4882a593Smuzhiyun			MX51_PAD_DISP1_DAT3__DISP1_DAT3		0x5
754*4882a593Smuzhiyun			MX51_PAD_DISP1_DAT4__DISP1_DAT4		0x5
755*4882a593Smuzhiyun			MX51_PAD_DISP1_DAT5__DISP1_DAT5		0x5
756*4882a593Smuzhiyun			MX51_PAD_DISP1_DAT6__DISP1_DAT6		0x5
757*4882a593Smuzhiyun			MX51_PAD_DISP1_DAT7__DISP1_DAT7		0x5
758*4882a593Smuzhiyun			MX51_PAD_DISP1_DAT8__DISP1_DAT8		0x5
759*4882a593Smuzhiyun			MX51_PAD_DISP1_DAT9__DISP1_DAT9		0x5
760*4882a593Smuzhiyun			MX51_PAD_DISP1_DAT10__DISP1_DAT10	0x5
761*4882a593Smuzhiyun			MX51_PAD_DISP1_DAT11__DISP1_DAT11	0x5
762*4882a593Smuzhiyun			MX51_PAD_DISP1_DAT12__DISP1_DAT12	0x5
763*4882a593Smuzhiyun			MX51_PAD_DISP1_DAT13__DISP1_DAT13	0x5
764*4882a593Smuzhiyun			MX51_PAD_DISP1_DAT14__DISP1_DAT14	0x5
765*4882a593Smuzhiyun			MX51_PAD_DISP1_DAT15__DISP1_DAT15	0x5
766*4882a593Smuzhiyun			MX51_PAD_DISP1_DAT16__DISP1_DAT16	0x5
767*4882a593Smuzhiyun			MX51_PAD_DISP1_DAT17__DISP1_DAT17	0x5
768*4882a593Smuzhiyun			MX51_PAD_DISP1_DAT18__DISP1_DAT18	0x5
769*4882a593Smuzhiyun			MX51_PAD_DISP1_DAT19__DISP1_DAT19	0x5
770*4882a593Smuzhiyun			MX51_PAD_DISP1_DAT20__DISP1_DAT20	0x5
771*4882a593Smuzhiyun			MX51_PAD_DISP1_DAT21__DISP1_DAT21	0x5
772*4882a593Smuzhiyun			MX51_PAD_DISP1_DAT22__DISP1_DAT22	0x5
773*4882a593Smuzhiyun			MX51_PAD_DISP1_DAT23__DISP1_DAT23	0x5
774*4882a593Smuzhiyun			MX51_PAD_DI1_PIN2__DI1_PIN2		0x5
775*4882a593Smuzhiyun			MX51_PAD_DI1_PIN3__DI1_PIN3		0x5
776*4882a593Smuzhiyun			MX51_PAD_DI2_DISP_CLK__DI2_DISP_CLK	0x5
777*4882a593Smuzhiyun		>;
778*4882a593Smuzhiyun	};
779*4882a593Smuzhiyun
780*4882a593Smuzhiyun	pinctrl_panel: panelgrp {
781*4882a593Smuzhiyun		fsl,pins = <
782*4882a593Smuzhiyun			MX51_PAD_DI1_D0_CS__GPIO3_3		0x85
783*4882a593Smuzhiyun		>;
784*4882a593Smuzhiyun	};
785*4882a593Smuzhiyun
786*4882a593Smuzhiyun	pinctrl_pmic: pmicgrp {
787*4882a593Smuzhiyun		fsl,pins = <
788*4882a593Smuzhiyun			MX51_PAD_GPIO1_4__GPIO1_4		0x1e0
789*4882a593Smuzhiyun			MX51_PAD_GPIO1_8__GPIO1_8		0x21e2
790*4882a593Smuzhiyun		>;
791*4882a593Smuzhiyun	};
792*4882a593Smuzhiyun
793*4882a593Smuzhiyun	pinctrl_sndgate26mhz: sndgate26mhzgrp {
794*4882a593Smuzhiyun		fsl,pins = <
795*4882a593Smuzhiyun			MX51_PAD_CSPI1_RDY__GPIO4_26		0x85
796*4882a593Smuzhiyun		>;
797*4882a593Smuzhiyun	};
798*4882a593Smuzhiyun
799*4882a593Smuzhiyun	pinctrl_swi2c: swi2cgrp {
800*4882a593Smuzhiyun		fsl,pins = <
801*4882a593Smuzhiyun			MX51_PAD_GPIO1_2__GPIO1_2		0xc5
802*4882a593Smuzhiyun			MX51_PAD_DI1_D1_CS__GPIO3_4		0x400001f5
803*4882a593Smuzhiyun		>;
804*4882a593Smuzhiyun	};
805*4882a593Smuzhiyun
806*4882a593Smuzhiyun	pinctrl_swmdio: swmdiogrp {
807*4882a593Smuzhiyun		fsl,pins = <
808*4882a593Smuzhiyun			MX51_PAD_NANDF_D14__GPIO3_26		0x21e6
809*4882a593Smuzhiyun			MX51_PAD_NANDF_D15__GPIO3_25		0x21e6
810*4882a593Smuzhiyun		>;
811*4882a593Smuzhiyun	};
812*4882a593Smuzhiyun
813*4882a593Smuzhiyun	pinctrl_ts: tsgrp {
814*4882a593Smuzhiyun		fsl,pins = <
815*4882a593Smuzhiyun			MX51_PAD_CSI1_D8__GPIO3_12		0x04
816*4882a593Smuzhiyun			MX51_PAD_CSI1_D9__GPIO3_13		0x85
817*4882a593Smuzhiyun		>;
818*4882a593Smuzhiyun	};
819*4882a593Smuzhiyun
820*4882a593Smuzhiyun	pinctrl_uart1: uart1grp {
821*4882a593Smuzhiyun		fsl,pins = <
822*4882a593Smuzhiyun			MX51_PAD_UART1_RXD__UART1_RXD		0x1c5
823*4882a593Smuzhiyun			MX51_PAD_UART1_TXD__UART1_TXD		0x1c5
824*4882a593Smuzhiyun			MX51_PAD_UART1_RTS__UART1_RTS		0x1c4
825*4882a593Smuzhiyun			MX51_PAD_UART1_CTS__UART1_CTS		0x1c4
826*4882a593Smuzhiyun		>;
827*4882a593Smuzhiyun	};
828*4882a593Smuzhiyun
829*4882a593Smuzhiyun	pinctrl_uart2: uart2grp {
830*4882a593Smuzhiyun		fsl,pins = <
831*4882a593Smuzhiyun			MX51_PAD_UART2_RXD__UART2_RXD		0xc5
832*4882a593Smuzhiyun			MX51_PAD_UART2_TXD__UART2_TXD		0xc5
833*4882a593Smuzhiyun		>;
834*4882a593Smuzhiyun	};
835*4882a593Smuzhiyun
836*4882a593Smuzhiyun	pinctrl_uart3: uart3grp {
837*4882a593Smuzhiyun		fsl,pins = <
838*4882a593Smuzhiyun			MX51_PAD_EIM_D25__UART3_RXD		0x1c5
839*4882a593Smuzhiyun			MX51_PAD_EIM_D26__UART3_TXD		0x1c5
840*4882a593Smuzhiyun		>;
841*4882a593Smuzhiyun	};
842*4882a593Smuzhiyun
843*4882a593Smuzhiyun	pinctrl_usbgate26mhz: usbgate26mhzgrp {
844*4882a593Smuzhiyun		fsl,pins = <
845*4882a593Smuzhiyun			MX51_PAD_DISP2_DAT6__GPIO1_19		0x85
846*4882a593Smuzhiyun		>;
847*4882a593Smuzhiyun	};
848*4882a593Smuzhiyun
849*4882a593Smuzhiyun	pinctrl_usbh1: usbh1grp {
850*4882a593Smuzhiyun		fsl,pins = <
851*4882a593Smuzhiyun			MX51_PAD_USBH1_STP__USBH1_STP		0x0
852*4882a593Smuzhiyun			MX51_PAD_USBH1_CLK__USBH1_CLK		0x0
853*4882a593Smuzhiyun			MX51_PAD_USBH1_DIR__USBH1_DIR		0x0
854*4882a593Smuzhiyun			MX51_PAD_USBH1_NXT__USBH1_NXT		0x0
855*4882a593Smuzhiyun			MX51_PAD_USBH1_DATA0__USBH1_DATA0	0x0
856*4882a593Smuzhiyun			MX51_PAD_USBH1_DATA1__USBH1_DATA1	0x0
857*4882a593Smuzhiyun			MX51_PAD_USBH1_DATA2__USBH1_DATA2	0x0
858*4882a593Smuzhiyun			MX51_PAD_USBH1_DATA3__USBH1_DATA3	0x0
859*4882a593Smuzhiyun			MX51_PAD_USBH1_DATA4__USBH1_DATA4	0x0
860*4882a593Smuzhiyun			MX51_PAD_USBH1_DATA5__USBH1_DATA5	0x0
861*4882a593Smuzhiyun			MX51_PAD_USBH1_DATA6__USBH1_DATA6	0x0
862*4882a593Smuzhiyun			MX51_PAD_USBH1_DATA7__USBH1_DATA7	0x0
863*4882a593Smuzhiyun		>;
864*4882a593Smuzhiyun	};
865*4882a593Smuzhiyun
866*4882a593Smuzhiyun	pinctrl_usbh1phy: usbh1phygrp {
867*4882a593Smuzhiyun		fsl,pins = <
868*4882a593Smuzhiyun			MX51_PAD_NANDF_D0__GPIO4_8		0x85
869*4882a593Smuzhiyun		>;
870*4882a593Smuzhiyun	};
871*4882a593Smuzhiyun
872*4882a593Smuzhiyun	pinctrl_usbh2: usbh2grp {
873*4882a593Smuzhiyun		fsl,pins = <
874*4882a593Smuzhiyun			MX51_PAD_EIM_A26__USBH2_STP		0x0
875*4882a593Smuzhiyun			MX51_PAD_EIM_A24__USBH2_CLK		0x0
876*4882a593Smuzhiyun			MX51_PAD_EIM_A25__USBH2_DIR		0x0
877*4882a593Smuzhiyun			MX51_PAD_EIM_A27__USBH2_NXT		0x0
878*4882a593Smuzhiyun			MX51_PAD_EIM_D16__USBH2_DATA0		0x0
879*4882a593Smuzhiyun			MX51_PAD_EIM_D17__USBH2_DATA1		0x0
880*4882a593Smuzhiyun			MX51_PAD_EIM_D18__USBH2_DATA2		0x0
881*4882a593Smuzhiyun			MX51_PAD_EIM_D19__USBH2_DATA3		0x0
882*4882a593Smuzhiyun			MX51_PAD_EIM_D20__USBH2_DATA4		0x0
883*4882a593Smuzhiyun			MX51_PAD_EIM_D21__USBH2_DATA5		0x0
884*4882a593Smuzhiyun			MX51_PAD_EIM_D22__USBH2_DATA6		0x0
885*4882a593Smuzhiyun			MX51_PAD_EIM_D23__USBH2_DATA7		0x0
886*4882a593Smuzhiyun		>;
887*4882a593Smuzhiyun	};
888*4882a593Smuzhiyun
889*4882a593Smuzhiyun	pinctrl_usbh2phy: usbh2phygrp {
890*4882a593Smuzhiyun		fsl,pins = <
891*4882a593Smuzhiyun			MX51_PAD_NANDF_D1__GPIO4_7		0x85
892*4882a593Smuzhiyun		>;
893*4882a593Smuzhiyun	};
894*4882a593Smuzhiyun};
895