xref: /OK3568_Linux_fs/kernel/arch/arm/boot/dts/imx7d-sdb.dts (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun// SPDX-License-Identifier: GPL-2.0+ OR MIT
2*4882a593Smuzhiyun//
3*4882a593Smuzhiyun// Copyright (C) 2015 Freescale Semiconductor, Inc.
4*4882a593Smuzhiyun
5*4882a593Smuzhiyun/dts-v1/;
6*4882a593Smuzhiyun
7*4882a593Smuzhiyun#include "imx7d.dtsi"
8*4882a593Smuzhiyun
9*4882a593Smuzhiyun/ {
10*4882a593Smuzhiyun	model = "Freescale i.MX7 SabreSD Board";
11*4882a593Smuzhiyun	compatible = "fsl,imx7d-sdb", "fsl,imx7d";
12*4882a593Smuzhiyun
13*4882a593Smuzhiyun	chosen {
14*4882a593Smuzhiyun		stdout-path = &uart1;
15*4882a593Smuzhiyun	};
16*4882a593Smuzhiyun
17*4882a593Smuzhiyun	memory@80000000 {
18*4882a593Smuzhiyun		device_type = "memory";
19*4882a593Smuzhiyun		reg = <0x80000000 0x80000000>;
20*4882a593Smuzhiyun	};
21*4882a593Smuzhiyun
22*4882a593Smuzhiyun	gpio-keys {
23*4882a593Smuzhiyun		compatible = "gpio-keys";
24*4882a593Smuzhiyun		pinctrl-names = "default";
25*4882a593Smuzhiyun		pinctrl-0 = <&pinctrl_gpio_keys>;
26*4882a593Smuzhiyun
27*4882a593Smuzhiyun		volume-up {
28*4882a593Smuzhiyun			label = "Volume Up";
29*4882a593Smuzhiyun			gpios = <&gpio5 11 GPIO_ACTIVE_LOW>;
30*4882a593Smuzhiyun			linux,code = <KEY_VOLUMEUP>;
31*4882a593Smuzhiyun			wakeup-source;
32*4882a593Smuzhiyun		};
33*4882a593Smuzhiyun
34*4882a593Smuzhiyun		volume-down {
35*4882a593Smuzhiyun			label = "Volume Down";
36*4882a593Smuzhiyun			gpios = <&gpio5 10 GPIO_ACTIVE_LOW>;
37*4882a593Smuzhiyun			linux,code = <KEY_VOLUMEDOWN>;
38*4882a593Smuzhiyun			wakeup-source;
39*4882a593Smuzhiyun		};
40*4882a593Smuzhiyun	};
41*4882a593Smuzhiyun
42*4882a593Smuzhiyun	spi4 {
43*4882a593Smuzhiyun		compatible = "spi-gpio";
44*4882a593Smuzhiyun		pinctrl-names = "default";
45*4882a593Smuzhiyun		pinctrl-0 = <&pinctrl_spi4>;
46*4882a593Smuzhiyun		gpio-sck = <&gpio1 13 GPIO_ACTIVE_HIGH>;
47*4882a593Smuzhiyun		gpio-mosi = <&gpio1 9 GPIO_ACTIVE_HIGH>;
48*4882a593Smuzhiyun		cs-gpios = <&gpio1 12 GPIO_ACTIVE_HIGH>;
49*4882a593Smuzhiyun		num-chipselects = <1>;
50*4882a593Smuzhiyun		#address-cells = <1>;
51*4882a593Smuzhiyun		#size-cells = <0>;
52*4882a593Smuzhiyun
53*4882a593Smuzhiyun		extended_io: gpio-expander@0 {
54*4882a593Smuzhiyun			compatible = "fairchild,74hc595";
55*4882a593Smuzhiyun			gpio-controller;
56*4882a593Smuzhiyun			#gpio-cells = <2>;
57*4882a593Smuzhiyun			reg = <0>;
58*4882a593Smuzhiyun			registers-number = <1>;
59*4882a593Smuzhiyun			spi-max-frequency = <100000>;
60*4882a593Smuzhiyun		};
61*4882a593Smuzhiyun	};
62*4882a593Smuzhiyun
63*4882a593Smuzhiyun	reg_usb_otg1_vbus: regulator-usb-otg1-vbus {
64*4882a593Smuzhiyun		compatible = "regulator-fixed";
65*4882a593Smuzhiyun		regulator-name = "usb_otg1_vbus";
66*4882a593Smuzhiyun		regulator-min-microvolt = <5000000>;
67*4882a593Smuzhiyun		regulator-max-microvolt = <5000000>;
68*4882a593Smuzhiyun		gpio = <&gpio1 5 GPIO_ACTIVE_HIGH>;
69*4882a593Smuzhiyun		enable-active-high;
70*4882a593Smuzhiyun	};
71*4882a593Smuzhiyun
72*4882a593Smuzhiyun	reg_usb_otg2_vbus: regulator-usb-otg2-vbus {
73*4882a593Smuzhiyun		compatible = "regulator-fixed";
74*4882a593Smuzhiyun		regulator-name = "usb_otg2_vbus";
75*4882a593Smuzhiyun		pinctrl-names = "default";
76*4882a593Smuzhiyun		pinctrl-0 = <&pinctrl_usb_otg2_vbus_reg>;
77*4882a593Smuzhiyun		regulator-min-microvolt = <5000000>;
78*4882a593Smuzhiyun		regulator-max-microvolt = <5000000>;
79*4882a593Smuzhiyun		gpio = <&gpio1 7 GPIO_ACTIVE_HIGH>;
80*4882a593Smuzhiyun		enable-active-high;
81*4882a593Smuzhiyun	};
82*4882a593Smuzhiyun
83*4882a593Smuzhiyun	reg_vref_1v8: regulator-vref-1v8 {
84*4882a593Smuzhiyun		compatible = "regulator-fixed";
85*4882a593Smuzhiyun		regulator-name = "vref-1v8";
86*4882a593Smuzhiyun		regulator-min-microvolt = <1800000>;
87*4882a593Smuzhiyun		regulator-max-microvolt = <1800000>;
88*4882a593Smuzhiyun	};
89*4882a593Smuzhiyun
90*4882a593Smuzhiyun	reg_brcm: regulator-brcm {
91*4882a593Smuzhiyun		compatible = "regulator-fixed";
92*4882a593Smuzhiyun		gpio = <&gpio4 21 GPIO_ACTIVE_HIGH>;
93*4882a593Smuzhiyun		enable-active-high;
94*4882a593Smuzhiyun		regulator-name = "brcm_reg";
95*4882a593Smuzhiyun		pinctrl-names = "default";
96*4882a593Smuzhiyun		pinctrl-0 = <&pinctrl_brcm_reg>;
97*4882a593Smuzhiyun		regulator-min-microvolt = <3300000>;
98*4882a593Smuzhiyun		regulator-max-microvolt = <3300000>;
99*4882a593Smuzhiyun		startup-delay-us = <200000>;
100*4882a593Smuzhiyun	};
101*4882a593Smuzhiyun
102*4882a593Smuzhiyun	reg_lcd_3v3: regulator-lcd-3v3 {
103*4882a593Smuzhiyun		compatible = "regulator-fixed";
104*4882a593Smuzhiyun		regulator-name = "lcd-3v3";
105*4882a593Smuzhiyun		regulator-min-microvolt = <3300000>;
106*4882a593Smuzhiyun		regulator-max-microvolt = <3300000>;
107*4882a593Smuzhiyun		gpio = <&extended_io 7 GPIO_ACTIVE_LOW>;
108*4882a593Smuzhiyun	};
109*4882a593Smuzhiyun
110*4882a593Smuzhiyun	reg_can2_3v3: regulator-can2-3v3 {
111*4882a593Smuzhiyun		compatible = "regulator-fixed";
112*4882a593Smuzhiyun		regulator-name = "can2-3v3";
113*4882a593Smuzhiyun		pinctrl-names = "default";
114*4882a593Smuzhiyun		pinctrl-0 = <&pinctrl_flexcan2_reg>;
115*4882a593Smuzhiyun		regulator-min-microvolt = <3300000>;
116*4882a593Smuzhiyun		regulator-max-microvolt = <3300000>;
117*4882a593Smuzhiyun		gpio = <&gpio2 14 GPIO_ACTIVE_LOW>;
118*4882a593Smuzhiyun	};
119*4882a593Smuzhiyun
120*4882a593Smuzhiyun	reg_fec2_3v3: regulator-fec2-3v3 {
121*4882a593Smuzhiyun		compatible = "regulator-fixed";
122*4882a593Smuzhiyun		regulator-name = "fec2-3v3";
123*4882a593Smuzhiyun		pinctrl-names = "default";
124*4882a593Smuzhiyun		pinctrl-0 = <&pinctrl_enet2_reg>;
125*4882a593Smuzhiyun		regulator-min-microvolt = <3300000>;
126*4882a593Smuzhiyun		regulator-max-microvolt = <3300000>;
127*4882a593Smuzhiyun		gpio = <&gpio1 4 GPIO_ACTIVE_LOW>;
128*4882a593Smuzhiyun	};
129*4882a593Smuzhiyun
130*4882a593Smuzhiyun	backlight: backlight {
131*4882a593Smuzhiyun		compatible = "pwm-backlight";
132*4882a593Smuzhiyun		pwms = <&pwm1 0 5000000 0>;
133*4882a593Smuzhiyun		brightness-levels = <0 4 8 16 32 64 128 255>;
134*4882a593Smuzhiyun		default-brightness-level = <6>;
135*4882a593Smuzhiyun		status = "okay";
136*4882a593Smuzhiyun	};
137*4882a593Smuzhiyun
138*4882a593Smuzhiyun	panel {
139*4882a593Smuzhiyun		compatible = "innolux,at043tn24";
140*4882a593Smuzhiyun		backlight = <&backlight>;
141*4882a593Smuzhiyun		power-supply = <&reg_lcd_3v3>;
142*4882a593Smuzhiyun
143*4882a593Smuzhiyun		port {
144*4882a593Smuzhiyun			panel_in: endpoint {
145*4882a593Smuzhiyun				remote-endpoint = <&display_out>;
146*4882a593Smuzhiyun			};
147*4882a593Smuzhiyun		};
148*4882a593Smuzhiyun	};
149*4882a593Smuzhiyun
150*4882a593Smuzhiyun	sound {
151*4882a593Smuzhiyun		compatible = "fsl,imx7d-evk-wm8960",
152*4882a593Smuzhiyun			     "fsl,imx-audio-wm8960";
153*4882a593Smuzhiyun		model = "wm8960-audio";
154*4882a593Smuzhiyun		audio-cpu = <&sai1>;
155*4882a593Smuzhiyun		audio-codec = <&codec>;
156*4882a593Smuzhiyun		hp-det-gpio = <&gpio2 28 GPIO_ACTIVE_HIGH>;
157*4882a593Smuzhiyun		audio-routing =
158*4882a593Smuzhiyun			"Headphone Jack", "HP_L",
159*4882a593Smuzhiyun			"Headphone Jack", "HP_R",
160*4882a593Smuzhiyun			"Ext Spk", "SPK_LP",
161*4882a593Smuzhiyun			"Ext Spk", "SPK_LN",
162*4882a593Smuzhiyun			"Ext Spk", "SPK_RP",
163*4882a593Smuzhiyun			"Ext Spk", "SPK_RN",
164*4882a593Smuzhiyun			"LINPUT1", "AMIC",
165*4882a593Smuzhiyun			"AMIC", "MICB";
166*4882a593Smuzhiyun	};
167*4882a593Smuzhiyun};
168*4882a593Smuzhiyun
169*4882a593Smuzhiyun&adc1 {
170*4882a593Smuzhiyun	vref-supply = <&reg_vref_1v8>;
171*4882a593Smuzhiyun	status = "okay";
172*4882a593Smuzhiyun};
173*4882a593Smuzhiyun
174*4882a593Smuzhiyun&adc2 {
175*4882a593Smuzhiyun	vref-supply = <&reg_vref_1v8>;
176*4882a593Smuzhiyun	status = "okay";
177*4882a593Smuzhiyun};
178*4882a593Smuzhiyun
179*4882a593Smuzhiyun&cpu0 {
180*4882a593Smuzhiyun	cpu-supply = <&sw1a_reg>;
181*4882a593Smuzhiyun};
182*4882a593Smuzhiyun
183*4882a593Smuzhiyun&cpu1 {
184*4882a593Smuzhiyun	cpu-supply = <&sw1a_reg>;
185*4882a593Smuzhiyun};
186*4882a593Smuzhiyun
187*4882a593Smuzhiyun&ecspi3 {
188*4882a593Smuzhiyun	pinctrl-names = "default";
189*4882a593Smuzhiyun	pinctrl-0 = <&pinctrl_ecspi3>;
190*4882a593Smuzhiyun	cs-gpios = <&gpio5 9 GPIO_ACTIVE_LOW>;
191*4882a593Smuzhiyun	status = "okay";
192*4882a593Smuzhiyun
193*4882a593Smuzhiyun	tsc2046@0 {
194*4882a593Smuzhiyun		compatible = "ti,tsc2046";
195*4882a593Smuzhiyun		reg = <0>;
196*4882a593Smuzhiyun		spi-max-frequency = <1000000>;
197*4882a593Smuzhiyun		pinctrl-names ="default";
198*4882a593Smuzhiyun		pinctrl-0 = <&pinctrl_tsc2046_pendown>;
199*4882a593Smuzhiyun		interrupt-parent = <&gpio2>;
200*4882a593Smuzhiyun		interrupts = <29 0>;
201*4882a593Smuzhiyun		pendown-gpio = <&gpio2 29 GPIO_ACTIVE_HIGH>;
202*4882a593Smuzhiyun		touchscreen-max-pressure = <255>;
203*4882a593Smuzhiyun		wakeup-source;
204*4882a593Smuzhiyun	};
205*4882a593Smuzhiyun};
206*4882a593Smuzhiyun
207*4882a593Smuzhiyun&fec1 {
208*4882a593Smuzhiyun	pinctrl-names = "default";
209*4882a593Smuzhiyun	pinctrl-0 = <&pinctrl_enet1>;
210*4882a593Smuzhiyun	assigned-clocks = <&clks IMX7D_ENET1_TIME_ROOT_SRC>,
211*4882a593Smuzhiyun			  <&clks IMX7D_ENET1_TIME_ROOT_CLK>;
212*4882a593Smuzhiyun	assigned-clock-parents = <&clks IMX7D_PLL_ENET_MAIN_100M_CLK>;
213*4882a593Smuzhiyun	assigned-clock-rates = <0>, <100000000>;
214*4882a593Smuzhiyun	phy-mode = "rgmii";
215*4882a593Smuzhiyun	phy-handle = <&ethphy0>;
216*4882a593Smuzhiyun	fsl,magic-packet;
217*4882a593Smuzhiyun	phy-reset-gpios = <&extended_io 5 GPIO_ACTIVE_LOW>;
218*4882a593Smuzhiyun	status = "okay";
219*4882a593Smuzhiyun
220*4882a593Smuzhiyun	mdio {
221*4882a593Smuzhiyun		#address-cells = <1>;
222*4882a593Smuzhiyun		#size-cells = <0>;
223*4882a593Smuzhiyun
224*4882a593Smuzhiyun		ethphy0: ethernet-phy@0 {
225*4882a593Smuzhiyun			reg = <0>;
226*4882a593Smuzhiyun		};
227*4882a593Smuzhiyun
228*4882a593Smuzhiyun		ethphy1: ethernet-phy@1 {
229*4882a593Smuzhiyun			reg = <1>;
230*4882a593Smuzhiyun		};
231*4882a593Smuzhiyun	};
232*4882a593Smuzhiyun};
233*4882a593Smuzhiyun
234*4882a593Smuzhiyun&fec2 {
235*4882a593Smuzhiyun	pinctrl-names = "default";
236*4882a593Smuzhiyun	pinctrl-0 = <&pinctrl_enet2>;
237*4882a593Smuzhiyun	assigned-clocks = <&clks IMX7D_ENET2_TIME_ROOT_SRC>,
238*4882a593Smuzhiyun			  <&clks IMX7D_ENET2_TIME_ROOT_CLK>;
239*4882a593Smuzhiyun	assigned-clock-parents = <&clks IMX7D_PLL_ENET_MAIN_100M_CLK>;
240*4882a593Smuzhiyun	assigned-clock-rates = <0>, <100000000>;
241*4882a593Smuzhiyun	phy-mode = "rgmii";
242*4882a593Smuzhiyun	phy-handle = <&ethphy1>;
243*4882a593Smuzhiyun	phy-supply = <&reg_fec2_3v3>;
244*4882a593Smuzhiyun	fsl,magic-packet;
245*4882a593Smuzhiyun	status = "okay";
246*4882a593Smuzhiyun};
247*4882a593Smuzhiyun
248*4882a593Smuzhiyun&flexcan2 {
249*4882a593Smuzhiyun	pinctrl-names = "default";
250*4882a593Smuzhiyun	pinctrl-0 = <&pinctrl_flexcan2>;
251*4882a593Smuzhiyun	xceiver-supply = <&reg_can2_3v3>;
252*4882a593Smuzhiyun	status = "okay";
253*4882a593Smuzhiyun};
254*4882a593Smuzhiyun
255*4882a593Smuzhiyun&i2c1 {
256*4882a593Smuzhiyun	pinctrl-names = "default";
257*4882a593Smuzhiyun	pinctrl-0 = <&pinctrl_i2c1>;
258*4882a593Smuzhiyun	status = "okay";
259*4882a593Smuzhiyun
260*4882a593Smuzhiyun	pmic: pfuze3000@8 {
261*4882a593Smuzhiyun		compatible = "fsl,pfuze3000";
262*4882a593Smuzhiyun		reg = <0x08>;
263*4882a593Smuzhiyun
264*4882a593Smuzhiyun		regulators {
265*4882a593Smuzhiyun			sw1a_reg: sw1a {
266*4882a593Smuzhiyun				regulator-min-microvolt = <700000>;
267*4882a593Smuzhiyun				regulator-max-microvolt = <1475000>;
268*4882a593Smuzhiyun				regulator-boot-on;
269*4882a593Smuzhiyun				regulator-always-on;
270*4882a593Smuzhiyun				regulator-ramp-delay = <6250>;
271*4882a593Smuzhiyun			};
272*4882a593Smuzhiyun
273*4882a593Smuzhiyun			/* use sw1c_reg to align with pfuze100/pfuze200 */
274*4882a593Smuzhiyun			sw1c_reg: sw1b {
275*4882a593Smuzhiyun				regulator-min-microvolt = <700000>;
276*4882a593Smuzhiyun				regulator-max-microvolt = <1475000>;
277*4882a593Smuzhiyun				regulator-boot-on;
278*4882a593Smuzhiyun				regulator-always-on;
279*4882a593Smuzhiyun				regulator-ramp-delay = <6250>;
280*4882a593Smuzhiyun			};
281*4882a593Smuzhiyun
282*4882a593Smuzhiyun			sw2_reg: sw2 {
283*4882a593Smuzhiyun				regulator-min-microvolt = <1800000>;
284*4882a593Smuzhiyun				regulator-max-microvolt = <1800000>;
285*4882a593Smuzhiyun				regulator-boot-on;
286*4882a593Smuzhiyun				regulator-always-on;
287*4882a593Smuzhiyun			};
288*4882a593Smuzhiyun
289*4882a593Smuzhiyun			sw3a_reg: sw3 {
290*4882a593Smuzhiyun				regulator-min-microvolt = <900000>;
291*4882a593Smuzhiyun				regulator-max-microvolt = <1650000>;
292*4882a593Smuzhiyun				regulator-boot-on;
293*4882a593Smuzhiyun				regulator-always-on;
294*4882a593Smuzhiyun			};
295*4882a593Smuzhiyun
296*4882a593Smuzhiyun			swbst_reg: swbst {
297*4882a593Smuzhiyun				regulator-min-microvolt = <5000000>;
298*4882a593Smuzhiyun				regulator-max-microvolt = <5150000>;
299*4882a593Smuzhiyun			};
300*4882a593Smuzhiyun
301*4882a593Smuzhiyun			snvs_reg: vsnvs {
302*4882a593Smuzhiyun				regulator-min-microvolt = <1000000>;
303*4882a593Smuzhiyun				regulator-max-microvolt = <3000000>;
304*4882a593Smuzhiyun				regulator-boot-on;
305*4882a593Smuzhiyun				regulator-always-on;
306*4882a593Smuzhiyun			};
307*4882a593Smuzhiyun
308*4882a593Smuzhiyun			vref_reg: vrefddr {
309*4882a593Smuzhiyun				regulator-boot-on;
310*4882a593Smuzhiyun				regulator-always-on;
311*4882a593Smuzhiyun			};
312*4882a593Smuzhiyun
313*4882a593Smuzhiyun			vgen1_reg: vldo1 {
314*4882a593Smuzhiyun				regulator-min-microvolt = <1800000>;
315*4882a593Smuzhiyun				regulator-max-microvolt = <3300000>;
316*4882a593Smuzhiyun				regulator-always-on;
317*4882a593Smuzhiyun			};
318*4882a593Smuzhiyun
319*4882a593Smuzhiyun			vgen2_reg: vldo2 {
320*4882a593Smuzhiyun				regulator-min-microvolt = <800000>;
321*4882a593Smuzhiyun				regulator-max-microvolt = <1550000>;
322*4882a593Smuzhiyun			};
323*4882a593Smuzhiyun
324*4882a593Smuzhiyun			vgen3_reg: vccsd {
325*4882a593Smuzhiyun				regulator-min-microvolt = <2850000>;
326*4882a593Smuzhiyun				regulator-max-microvolt = <3300000>;
327*4882a593Smuzhiyun				regulator-always-on;
328*4882a593Smuzhiyun			};
329*4882a593Smuzhiyun
330*4882a593Smuzhiyun			vgen4_reg: v33 {
331*4882a593Smuzhiyun				regulator-min-microvolt = <2850000>;
332*4882a593Smuzhiyun				regulator-max-microvolt = <3300000>;
333*4882a593Smuzhiyun				regulator-always-on;
334*4882a593Smuzhiyun			};
335*4882a593Smuzhiyun
336*4882a593Smuzhiyun			vgen5_reg: vldo3 {
337*4882a593Smuzhiyun				regulator-min-microvolt = <1800000>;
338*4882a593Smuzhiyun				regulator-max-microvolt = <3300000>;
339*4882a593Smuzhiyun				regulator-always-on;
340*4882a593Smuzhiyun			};
341*4882a593Smuzhiyun
342*4882a593Smuzhiyun			vgen6_reg: vldo4 {
343*4882a593Smuzhiyun				regulator-min-microvolt = <2800000>;
344*4882a593Smuzhiyun				regulator-max-microvolt = <2800000>;
345*4882a593Smuzhiyun				regulator-always-on;
346*4882a593Smuzhiyun			};
347*4882a593Smuzhiyun		};
348*4882a593Smuzhiyun	};
349*4882a593Smuzhiyun};
350*4882a593Smuzhiyun
351*4882a593Smuzhiyun&i2c2 {
352*4882a593Smuzhiyun	pinctrl-names = "default";
353*4882a593Smuzhiyun	pinctrl-0 = <&pinctrl_i2c2>;
354*4882a593Smuzhiyun	status = "okay";
355*4882a593Smuzhiyun
356*4882a593Smuzhiyun	mpl3115@60 {
357*4882a593Smuzhiyun		compatible = "fsl,mpl3115";
358*4882a593Smuzhiyun		reg = <0x60>;
359*4882a593Smuzhiyun	};
360*4882a593Smuzhiyun};
361*4882a593Smuzhiyun
362*4882a593Smuzhiyun&i2c3 {
363*4882a593Smuzhiyun	pinctrl-names = "default";
364*4882a593Smuzhiyun	pinctrl-0 = <&pinctrl_i2c3>;
365*4882a593Smuzhiyun	status = "okay";
366*4882a593Smuzhiyun};
367*4882a593Smuzhiyun
368*4882a593Smuzhiyun&i2c4 {
369*4882a593Smuzhiyun	pinctrl-names = "default";
370*4882a593Smuzhiyun	pinctrl-0 = <&pinctrl_i2c4>;
371*4882a593Smuzhiyun	status = "okay";
372*4882a593Smuzhiyun
373*4882a593Smuzhiyun	codec: wm8960@1a {
374*4882a593Smuzhiyun		compatible = "wlf,wm8960";
375*4882a593Smuzhiyun		reg = <0x1a>;
376*4882a593Smuzhiyun		clocks = <&clks IMX7D_AUDIO_MCLK_ROOT_DIV>;
377*4882a593Smuzhiyun		clock-names = "mclk";
378*4882a593Smuzhiyun		wlf,shared-lrclk;
379*4882a593Smuzhiyun		wlf,hp-cfg = <2 2 3>;
380*4882a593Smuzhiyun		wlf,gpio-cfg = <1 3>;
381*4882a593Smuzhiyun		assigned-clocks = <&clks IMX7D_AUDIO_MCLK_ROOT_SRC>,
382*4882a593Smuzhiyun				  <&clks IMX7D_PLL_AUDIO_POST_DIV>,
383*4882a593Smuzhiyun				  <&clks IMX7D_AUDIO_MCLK_ROOT_DIV>;
384*4882a593Smuzhiyun		assigned-clock-parents = <&clks IMX7D_PLL_AUDIO_POST_DIV>;
385*4882a593Smuzhiyun		assigned-clock-rates = <0>, <884736000>, <12288000>;
386*4882a593Smuzhiyun	};
387*4882a593Smuzhiyun};
388*4882a593Smuzhiyun
389*4882a593Smuzhiyun&lcdif {
390*4882a593Smuzhiyun	pinctrl-names = "default";
391*4882a593Smuzhiyun	pinctrl-0 = <&pinctrl_lcdif>;
392*4882a593Smuzhiyun	status = "okay";
393*4882a593Smuzhiyun
394*4882a593Smuzhiyun	port {
395*4882a593Smuzhiyun		display_out: endpoint {
396*4882a593Smuzhiyun			remote-endpoint = <&panel_in>;
397*4882a593Smuzhiyun		};
398*4882a593Smuzhiyun	};
399*4882a593Smuzhiyun};
400*4882a593Smuzhiyun
401*4882a593Smuzhiyun&pcie {
402*4882a593Smuzhiyun	reset-gpio = <&extended_io 1 GPIO_ACTIVE_LOW>;
403*4882a593Smuzhiyun	status = "okay";
404*4882a593Smuzhiyun};
405*4882a593Smuzhiyun
406*4882a593Smuzhiyun&reg_1p0d {
407*4882a593Smuzhiyun	vin-supply = <&sw2_reg>;
408*4882a593Smuzhiyun};
409*4882a593Smuzhiyun
410*4882a593Smuzhiyun&reg_1p2 {
411*4882a593Smuzhiyun	vin-supply = <&sw2_reg>;
412*4882a593Smuzhiyun};
413*4882a593Smuzhiyun
414*4882a593Smuzhiyun&sai1 {
415*4882a593Smuzhiyun	pinctrl-names = "default";
416*4882a593Smuzhiyun	pinctrl-0 = <&pinctrl_sai1>;
417*4882a593Smuzhiyun	assigned-clocks = <&clks IMX7D_SAI1_ROOT_SRC>,
418*4882a593Smuzhiyun			  <&clks IMX7D_PLL_AUDIO_POST_DIV>,
419*4882a593Smuzhiyun			  <&clks IMX7D_SAI1_ROOT_CLK>;
420*4882a593Smuzhiyun	assigned-clock-parents = <&clks IMX7D_PLL_AUDIO_POST_DIV>;
421*4882a593Smuzhiyun	assigned-clock-rates = <0>, <884736000>, <36864000>;
422*4882a593Smuzhiyun	status = "okay";
423*4882a593Smuzhiyun};
424*4882a593Smuzhiyun
425*4882a593Smuzhiyun&sai3 {
426*4882a593Smuzhiyun	pinctrl-names = "default";
427*4882a593Smuzhiyun	pinctrl-0 = <&pinctrl_sai3 &pinctrl_sai3_mclk>;
428*4882a593Smuzhiyun	assigned-clocks = <&clks IMX7D_SAI3_ROOT_SRC>,
429*4882a593Smuzhiyun			  <&clks IMX7D_PLL_AUDIO_POST_DIV>,
430*4882a593Smuzhiyun			  <&clks IMX7D_SAI3_ROOT_CLK>;
431*4882a593Smuzhiyun	assigned-clock-parents = <&clks IMX7D_PLL_AUDIO_POST_DIV>;
432*4882a593Smuzhiyun	assigned-clock-rates = <0>, <884736000>, <36864000>;
433*4882a593Smuzhiyun	status = "okay";
434*4882a593Smuzhiyun};
435*4882a593Smuzhiyun
436*4882a593Smuzhiyun&snvs_pwrkey {
437*4882a593Smuzhiyun	status = "okay";
438*4882a593Smuzhiyun};
439*4882a593Smuzhiyun
440*4882a593Smuzhiyun&uart1 {
441*4882a593Smuzhiyun	pinctrl-names = "default";
442*4882a593Smuzhiyun	pinctrl-0 = <&pinctrl_uart1>;
443*4882a593Smuzhiyun	assigned-clocks = <&clks IMX7D_UART1_ROOT_SRC>;
444*4882a593Smuzhiyun	assigned-clock-parents = <&clks IMX7D_PLL_SYS_MAIN_240M_CLK>;
445*4882a593Smuzhiyun	status = "okay";
446*4882a593Smuzhiyun};
447*4882a593Smuzhiyun
448*4882a593Smuzhiyun&uart6 {
449*4882a593Smuzhiyun	pinctrl-names = "default";
450*4882a593Smuzhiyun	pinctrl-0 = <&pinctrl_uart6>;
451*4882a593Smuzhiyun	assigned-clocks = <&clks IMX7D_UART6_ROOT_SRC>;
452*4882a593Smuzhiyun	assigned-clock-parents = <&clks IMX7D_PLL_SYS_MAIN_240M_CLK>;
453*4882a593Smuzhiyun	uart-has-rtscts;
454*4882a593Smuzhiyun	status = "okay";
455*4882a593Smuzhiyun};
456*4882a593Smuzhiyun
457*4882a593Smuzhiyun&usbotg1 {
458*4882a593Smuzhiyun	vbus-supply = <&reg_usb_otg1_vbus>;
459*4882a593Smuzhiyun	status = "okay";
460*4882a593Smuzhiyun};
461*4882a593Smuzhiyun
462*4882a593Smuzhiyun&usbotg2 {
463*4882a593Smuzhiyun	vbus-supply = <&reg_usb_otg2_vbus>;
464*4882a593Smuzhiyun	dr_mode = "host";
465*4882a593Smuzhiyun	status = "okay";
466*4882a593Smuzhiyun};
467*4882a593Smuzhiyun
468*4882a593Smuzhiyun&usdhc1 {
469*4882a593Smuzhiyun	pinctrl-names = "default";
470*4882a593Smuzhiyun	pinctrl-0 = <&pinctrl_usdhc1>;
471*4882a593Smuzhiyun	cd-gpios = <&gpio5 0 GPIO_ACTIVE_LOW>;
472*4882a593Smuzhiyun	wp-gpios = <&gpio5 1 GPIO_ACTIVE_HIGH>;
473*4882a593Smuzhiyun	wakeup-source;
474*4882a593Smuzhiyun	keep-power-in-suspend;
475*4882a593Smuzhiyun	status = "okay";
476*4882a593Smuzhiyun};
477*4882a593Smuzhiyun
478*4882a593Smuzhiyun&usdhc2 {
479*4882a593Smuzhiyun	pinctrl-names = "default", "state_100mhz", "state_200mhz";
480*4882a593Smuzhiyun	pinctrl-0 = <&pinctrl_usdhc2>;
481*4882a593Smuzhiyun	pinctrl-1 = <&pinctrl_usdhc2_100mhz>;
482*4882a593Smuzhiyun	pinctrl-2 = <&pinctrl_usdhc2_200mhz>;
483*4882a593Smuzhiyun	wakeup-source;
484*4882a593Smuzhiyun	keep-power-in-suspend;
485*4882a593Smuzhiyun	non-removable;
486*4882a593Smuzhiyun	vmmc-supply = <&reg_brcm>;
487*4882a593Smuzhiyun	fsl,tuning-step = <2>;
488*4882a593Smuzhiyun	status = "okay";
489*4882a593Smuzhiyun};
490*4882a593Smuzhiyun
491*4882a593Smuzhiyun&usdhc3 {
492*4882a593Smuzhiyun	pinctrl-names = "default", "state_100mhz", "state_200mhz";
493*4882a593Smuzhiyun	pinctrl-0 = <&pinctrl_usdhc3>;
494*4882a593Smuzhiyun	pinctrl-1 = <&pinctrl_usdhc3_100mhz>;
495*4882a593Smuzhiyun	pinctrl-2 = <&pinctrl_usdhc3_200mhz>;
496*4882a593Smuzhiyun	assigned-clocks = <&clks IMX7D_USDHC3_ROOT_CLK>;
497*4882a593Smuzhiyun	assigned-clock-rates = <400000000>;
498*4882a593Smuzhiyun	bus-width = <8>;
499*4882a593Smuzhiyun	fsl,tuning-step = <2>;
500*4882a593Smuzhiyun	non-removable;
501*4882a593Smuzhiyun	status = "okay";
502*4882a593Smuzhiyun};
503*4882a593Smuzhiyun
504*4882a593Smuzhiyun&wdog1 {
505*4882a593Smuzhiyun	pinctrl-names = "default";
506*4882a593Smuzhiyun	pinctrl-0 = <&pinctrl_wdog>;
507*4882a593Smuzhiyun	fsl,ext-reset-output;
508*4882a593Smuzhiyun};
509*4882a593Smuzhiyun
510*4882a593Smuzhiyun&iomuxc {
511*4882a593Smuzhiyun	pinctrl-names = "default";
512*4882a593Smuzhiyun	pinctrl-0 = <&pinctrl_hog>;
513*4882a593Smuzhiyun
514*4882a593Smuzhiyun	imx7d-sdb {
515*4882a593Smuzhiyun		pinctrl_brcm_reg: brcmreggrp {
516*4882a593Smuzhiyun			fsl,pins = <
517*4882a593Smuzhiyun				MX7D_PAD_ECSPI2_MOSI__GPIO4_IO21	0x14
518*4882a593Smuzhiyun			>;
519*4882a593Smuzhiyun		};
520*4882a593Smuzhiyun
521*4882a593Smuzhiyun		pinctrl_ecspi3: ecspi3grp {
522*4882a593Smuzhiyun			fsl,pins = <
523*4882a593Smuzhiyun				MX7D_PAD_SAI2_TX_SYNC__ECSPI3_MISO	0x2
524*4882a593Smuzhiyun				MX7D_PAD_SAI2_TX_BCLK__ECSPI3_MOSI	0x2
525*4882a593Smuzhiyun				MX7D_PAD_SAI2_RX_DATA__ECSPI3_SCLK	0x2
526*4882a593Smuzhiyun				MX7D_PAD_SD2_CD_B__GPIO5_IO9		0x59
527*4882a593Smuzhiyun			>;
528*4882a593Smuzhiyun		};
529*4882a593Smuzhiyun
530*4882a593Smuzhiyun		pinctrl_enet1: enet1grp {
531*4882a593Smuzhiyun			fsl,pins = <
532*4882a593Smuzhiyun				MX7D_PAD_GPIO1_IO10__ENET1_MDIO			0x3
533*4882a593Smuzhiyun				MX7D_PAD_GPIO1_IO11__ENET1_MDC			0x3
534*4882a593Smuzhiyun				MX7D_PAD_ENET1_RGMII_TXC__ENET1_RGMII_TXC	0x1
535*4882a593Smuzhiyun				MX7D_PAD_ENET1_RGMII_TD0__ENET1_RGMII_TD0	0x1
536*4882a593Smuzhiyun				MX7D_PAD_ENET1_RGMII_TD1__ENET1_RGMII_TD1	0x1
537*4882a593Smuzhiyun				MX7D_PAD_ENET1_RGMII_TD2__ENET1_RGMII_TD2	0x1
538*4882a593Smuzhiyun				MX7D_PAD_ENET1_RGMII_TD3__ENET1_RGMII_TD3	0x1
539*4882a593Smuzhiyun				MX7D_PAD_ENET1_RGMII_TX_CTL__ENET1_RGMII_TX_CTL	0x1
540*4882a593Smuzhiyun				MX7D_PAD_ENET1_RGMII_RXC__ENET1_RGMII_RXC	0x1
541*4882a593Smuzhiyun				MX7D_PAD_ENET1_RGMII_RD0__ENET1_RGMII_RD0	0x1
542*4882a593Smuzhiyun				MX7D_PAD_ENET1_RGMII_RD1__ENET1_RGMII_RD1	0x1
543*4882a593Smuzhiyun				MX7D_PAD_ENET1_RGMII_RD2__ENET1_RGMII_RD2	0x1
544*4882a593Smuzhiyun				MX7D_PAD_ENET1_RGMII_RD3__ENET1_RGMII_RD3	0x1
545*4882a593Smuzhiyun				MX7D_PAD_ENET1_RGMII_RX_CTL__ENET1_RGMII_RX_CTL	0x1
546*4882a593Smuzhiyun			>;
547*4882a593Smuzhiyun		};
548*4882a593Smuzhiyun
549*4882a593Smuzhiyun		pinctrl_enet2: enet2grp {
550*4882a593Smuzhiyun			fsl,pins = <
551*4882a593Smuzhiyun				MX7D_PAD_EPDC_GDSP__ENET2_RGMII_TXC		0x1
552*4882a593Smuzhiyun				MX7D_PAD_EPDC_SDCE2__ENET2_RGMII_TD0		0x1
553*4882a593Smuzhiyun				MX7D_PAD_EPDC_SDCE3__ENET2_RGMII_TD1		0x1
554*4882a593Smuzhiyun				MX7D_PAD_EPDC_GDCLK__ENET2_RGMII_TD2		0x1
555*4882a593Smuzhiyun				MX7D_PAD_EPDC_GDOE__ENET2_RGMII_TD3		0x1
556*4882a593Smuzhiyun				MX7D_PAD_EPDC_GDRL__ENET2_RGMII_TX_CTL		0x1
557*4882a593Smuzhiyun				MX7D_PAD_EPDC_SDCE1__ENET2_RGMII_RXC		0x1
558*4882a593Smuzhiyun				MX7D_PAD_EPDC_SDCLK__ENET2_RGMII_RD0		0x1
559*4882a593Smuzhiyun				MX7D_PAD_EPDC_SDLE__ENET2_RGMII_RD1		0x1
560*4882a593Smuzhiyun				MX7D_PAD_EPDC_SDOE__ENET2_RGMII_RD2		0x1
561*4882a593Smuzhiyun				MX7D_PAD_EPDC_SDSHR__ENET2_RGMII_RD3		0x1
562*4882a593Smuzhiyun				MX7D_PAD_EPDC_SDCE0__ENET2_RGMII_RX_CTL		0x1
563*4882a593Smuzhiyun			>;
564*4882a593Smuzhiyun		};
565*4882a593Smuzhiyun
566*4882a593Smuzhiyun		pinctrl_enet2_reg: enet2reggrp {
567*4882a593Smuzhiyun			fsl,pins = <
568*4882a593Smuzhiyun				MX7D_PAD_LPSR_GPIO1_IO04__GPIO1_IO4	0x14
569*4882a593Smuzhiyun			>;
570*4882a593Smuzhiyun		};
571*4882a593Smuzhiyun
572*4882a593Smuzhiyun		pinctrl_flexcan2: flexcan2grp {
573*4882a593Smuzhiyun			fsl,pins = <
574*4882a593Smuzhiyun				MX7D_PAD_GPIO1_IO14__FLEXCAN2_RX	0x59
575*4882a593Smuzhiyun				MX7D_PAD_GPIO1_IO15__FLEXCAN2_TX	0x59
576*4882a593Smuzhiyun			>;
577*4882a593Smuzhiyun		};
578*4882a593Smuzhiyun
579*4882a593Smuzhiyun		pinctrl_flexcan2_reg: flexcan2reggrp {
580*4882a593Smuzhiyun			fsl,pins = <
581*4882a593Smuzhiyun				MX7D_PAD_EPDC_DATA14__GPIO2_IO14	0x59	/* CAN_STBY */
582*4882a593Smuzhiyun			>;
583*4882a593Smuzhiyun		};
584*4882a593Smuzhiyun
585*4882a593Smuzhiyun		pinctrl_gpio_keys: gpio_keysgrp {
586*4882a593Smuzhiyun			fsl,pins = <
587*4882a593Smuzhiyun				MX7D_PAD_SD2_RESET_B__GPIO5_IO11	0x59
588*4882a593Smuzhiyun				MX7D_PAD_SD2_WP__GPIO5_IO10		0x59
589*4882a593Smuzhiyun			>;
590*4882a593Smuzhiyun		};
591*4882a593Smuzhiyun
592*4882a593Smuzhiyun		pinctrl_hog: hoggrp {
593*4882a593Smuzhiyun			fsl,pins = <
594*4882a593Smuzhiyun				MX7D_PAD_ECSPI2_SS0__GPIO4_IO23		0x34  /* bt reg on */
595*4882a593Smuzhiyun				MX7D_PAD_EPDC_BDR0__GPIO2_IO28		0x59  /* headphone detect */
596*4882a593Smuzhiyun			>;
597*4882a593Smuzhiyun		};
598*4882a593Smuzhiyun
599*4882a593Smuzhiyun		pinctrl_i2c1: i2c1grp {
600*4882a593Smuzhiyun			fsl,pins = <
601*4882a593Smuzhiyun				MX7D_PAD_I2C1_SDA__I2C1_SDA		0x4000007f
602*4882a593Smuzhiyun				MX7D_PAD_I2C1_SCL__I2C1_SCL		0x4000007f
603*4882a593Smuzhiyun			>;
604*4882a593Smuzhiyun		};
605*4882a593Smuzhiyun
606*4882a593Smuzhiyun		pinctrl_i2c2: i2c2grp {
607*4882a593Smuzhiyun			fsl,pins = <
608*4882a593Smuzhiyun				MX7D_PAD_I2C2_SDA__I2C2_SDA		0x4000007f
609*4882a593Smuzhiyun				MX7D_PAD_I2C2_SCL__I2C2_SCL		0x4000007f
610*4882a593Smuzhiyun			>;
611*4882a593Smuzhiyun		};
612*4882a593Smuzhiyun
613*4882a593Smuzhiyun		pinctrl_i2c3: i2c3grp {
614*4882a593Smuzhiyun			fsl,pins = <
615*4882a593Smuzhiyun				MX7D_PAD_I2C3_SDA__I2C3_SDA		0x4000007f
616*4882a593Smuzhiyun				MX7D_PAD_I2C3_SCL__I2C3_SCL		0x4000007f
617*4882a593Smuzhiyun			>;
618*4882a593Smuzhiyun		};
619*4882a593Smuzhiyun
620*4882a593Smuzhiyun		pinctrl_i2c4: i2c4grp {
621*4882a593Smuzhiyun			fsl,pins = <
622*4882a593Smuzhiyun				MX7D_PAD_SAI1_RX_BCLK__I2C4_SDA		0x4000007f
623*4882a593Smuzhiyun				MX7D_PAD_SAI1_RX_SYNC__I2C4_SCL		0x4000007f
624*4882a593Smuzhiyun			>;
625*4882a593Smuzhiyun		};
626*4882a593Smuzhiyun
627*4882a593Smuzhiyun		pinctrl_lcdif: lcdifgrp {
628*4882a593Smuzhiyun			fsl,pins = <
629*4882a593Smuzhiyun				MX7D_PAD_LCD_DATA00__LCD_DATA0		0x79
630*4882a593Smuzhiyun				MX7D_PAD_LCD_DATA01__LCD_DATA1		0x79
631*4882a593Smuzhiyun				MX7D_PAD_LCD_DATA02__LCD_DATA2		0x79
632*4882a593Smuzhiyun				MX7D_PAD_LCD_DATA03__LCD_DATA3		0x79
633*4882a593Smuzhiyun				MX7D_PAD_LCD_DATA04__LCD_DATA4		0x79
634*4882a593Smuzhiyun				MX7D_PAD_LCD_DATA05__LCD_DATA5		0x79
635*4882a593Smuzhiyun				MX7D_PAD_LCD_DATA06__LCD_DATA6		0x79
636*4882a593Smuzhiyun				MX7D_PAD_LCD_DATA07__LCD_DATA7		0x79
637*4882a593Smuzhiyun				MX7D_PAD_LCD_DATA08__LCD_DATA8		0x79
638*4882a593Smuzhiyun				MX7D_PAD_LCD_DATA09__LCD_DATA9		0x79
639*4882a593Smuzhiyun				MX7D_PAD_LCD_DATA10__LCD_DATA10		0x79
640*4882a593Smuzhiyun				MX7D_PAD_LCD_DATA11__LCD_DATA11		0x79
641*4882a593Smuzhiyun				MX7D_PAD_LCD_DATA12__LCD_DATA12		0x79
642*4882a593Smuzhiyun				MX7D_PAD_LCD_DATA13__LCD_DATA13		0x79
643*4882a593Smuzhiyun				MX7D_PAD_LCD_DATA14__LCD_DATA14		0x79
644*4882a593Smuzhiyun				MX7D_PAD_LCD_DATA15__LCD_DATA15		0x79
645*4882a593Smuzhiyun				MX7D_PAD_LCD_DATA16__LCD_DATA16		0x79
646*4882a593Smuzhiyun				MX7D_PAD_LCD_DATA17__LCD_DATA17		0x79
647*4882a593Smuzhiyun				MX7D_PAD_LCD_DATA18__LCD_DATA18		0x79
648*4882a593Smuzhiyun				MX7D_PAD_LCD_DATA19__LCD_DATA19		0x79
649*4882a593Smuzhiyun				MX7D_PAD_LCD_DATA20__LCD_DATA20		0x79
650*4882a593Smuzhiyun				MX7D_PAD_LCD_DATA21__LCD_DATA21		0x79
651*4882a593Smuzhiyun				MX7D_PAD_LCD_DATA22__LCD_DATA22		0x79
652*4882a593Smuzhiyun				MX7D_PAD_LCD_DATA23__LCD_DATA23		0x79
653*4882a593Smuzhiyun				MX7D_PAD_LCD_CLK__LCD_CLK		0x79
654*4882a593Smuzhiyun				MX7D_PAD_LCD_ENABLE__LCD_ENABLE		0x79
655*4882a593Smuzhiyun				MX7D_PAD_LCD_VSYNC__LCD_VSYNC		0x79
656*4882a593Smuzhiyun				MX7D_PAD_LCD_HSYNC__LCD_HSYNC		0x79
657*4882a593Smuzhiyun				MX7D_PAD_LCD_RESET__LCD_RESET		0x79
658*4882a593Smuzhiyun			>;
659*4882a593Smuzhiyun		};
660*4882a593Smuzhiyun
661*4882a593Smuzhiyun		pinctrl_sai1: sai1grp {
662*4882a593Smuzhiyun			fsl,pins = <
663*4882a593Smuzhiyun				MX7D_PAD_SAI1_MCLK__SAI1_MCLK           0x1f
664*4882a593Smuzhiyun				MX7D_PAD_ENET1_RX_CLK__SAI1_TX_BCLK     0x1f
665*4882a593Smuzhiyun				MX7D_PAD_ENET1_CRS__SAI1_TX_SYNC	0x1f
666*4882a593Smuzhiyun				MX7D_PAD_ENET1_COL__SAI1_TX_DATA0	0x30
667*4882a593Smuzhiyun				MX7D_PAD_ENET1_TX_CLK__SAI1_RX_DATA0	0x1f
668*4882a593Smuzhiyun			>;
669*4882a593Smuzhiyun		};
670*4882a593Smuzhiyun
671*4882a593Smuzhiyun		pinctrl_sai2: sai2grp {
672*4882a593Smuzhiyun			fsl,pins = <
673*4882a593Smuzhiyun				MX7D_PAD_SAI2_TX_BCLK__SAI2_TX_BCLK     0x1f
674*4882a593Smuzhiyun				MX7D_PAD_SAI2_TX_SYNC__SAI2_TX_SYNC     0x1f
675*4882a593Smuzhiyun				MX7D_PAD_SAI2_TX_DATA__SAI2_TX_DATA0    0x30
676*4882a593Smuzhiyun				MX7D_PAD_SAI2_RX_DATA__SAI2_RX_DATA0    0x1f
677*4882a593Smuzhiyun			>;
678*4882a593Smuzhiyun		};
679*4882a593Smuzhiyun
680*4882a593Smuzhiyun		pinctrl_sai3: sai3grp {
681*4882a593Smuzhiyun			fsl,pins = <
682*4882a593Smuzhiyun				MX7D_PAD_UART3_TX_DATA__SAI3_TX_BCLK   0x1f
683*4882a593Smuzhiyun				MX7D_PAD_UART3_CTS_B__SAI3_TX_SYNC     0x1f
684*4882a593Smuzhiyun				MX7D_PAD_UART3_RTS_B__SAI3_TX_DATA0    0x30
685*4882a593Smuzhiyun			>;
686*4882a593Smuzhiyun		};
687*4882a593Smuzhiyun
688*4882a593Smuzhiyun		pinctrl_spi4: spi4grp {
689*4882a593Smuzhiyun			fsl,pins = <
690*4882a593Smuzhiyun				MX7D_PAD_GPIO1_IO09__GPIO1_IO9	0x59
691*4882a593Smuzhiyun				MX7D_PAD_GPIO1_IO12__GPIO1_IO12	0x59
692*4882a593Smuzhiyun				MX7D_PAD_GPIO1_IO13__GPIO1_IO13	0x59
693*4882a593Smuzhiyun			>;
694*4882a593Smuzhiyun		};
695*4882a593Smuzhiyun
696*4882a593Smuzhiyun		pinctrl_tsc2046_pendown: tsc2046_pendown {
697*4882a593Smuzhiyun			fsl,pins = <
698*4882a593Smuzhiyun				MX7D_PAD_EPDC_BDR1__GPIO2_IO29		0x59
699*4882a593Smuzhiyun			>;
700*4882a593Smuzhiyun		};
701*4882a593Smuzhiyun
702*4882a593Smuzhiyun		pinctrl_uart1: uart1grp {
703*4882a593Smuzhiyun			fsl,pins = <
704*4882a593Smuzhiyun				MX7D_PAD_UART1_TX_DATA__UART1_DCE_TX	0x79
705*4882a593Smuzhiyun				MX7D_PAD_UART1_RX_DATA__UART1_DCE_RX	0x79
706*4882a593Smuzhiyun			>;
707*4882a593Smuzhiyun		};
708*4882a593Smuzhiyun
709*4882a593Smuzhiyun		pinctrl_uart5: uart5grp {
710*4882a593Smuzhiyun			fsl,pins = <
711*4882a593Smuzhiyun				MX7D_PAD_SAI1_TX_BCLK__UART5_DCE_TX	0x79
712*4882a593Smuzhiyun				MX7D_PAD_SAI1_RX_DATA__UART5_DCE_RX	0x79
713*4882a593Smuzhiyun				MX7D_PAD_SAI1_TX_SYNC__UART5_DCE_CTS	0x79
714*4882a593Smuzhiyun				MX7D_PAD_SAI1_TX_DATA__UART5_DCE_RTS	0x79
715*4882a593Smuzhiyun			>;
716*4882a593Smuzhiyun		};
717*4882a593Smuzhiyun
718*4882a593Smuzhiyun		pinctrl_uart6: uart6grp {
719*4882a593Smuzhiyun			fsl,pins = <
720*4882a593Smuzhiyun				MX7D_PAD_ECSPI1_MOSI__UART6_DCE_TX	0x79
721*4882a593Smuzhiyun				MX7D_PAD_ECSPI1_SCLK__UART6_DCE_RX	0x79
722*4882a593Smuzhiyun				MX7D_PAD_ECSPI1_SS0__UART6_DCE_CTS	0x79
723*4882a593Smuzhiyun				MX7D_PAD_ECSPI1_MISO__UART6_DCE_RTS	0x79
724*4882a593Smuzhiyun			>;
725*4882a593Smuzhiyun		};
726*4882a593Smuzhiyun
727*4882a593Smuzhiyun		pinctrl_usdhc1: usdhc1grp {
728*4882a593Smuzhiyun			fsl,pins = <
729*4882a593Smuzhiyun				MX7D_PAD_SD1_CMD__SD1_CMD		0x59
730*4882a593Smuzhiyun				MX7D_PAD_SD1_CLK__SD1_CLK		0x19
731*4882a593Smuzhiyun				MX7D_PAD_SD1_DATA0__SD1_DATA0		0x59
732*4882a593Smuzhiyun				MX7D_PAD_SD1_DATA1__SD1_DATA1		0x59
733*4882a593Smuzhiyun				MX7D_PAD_SD1_DATA2__SD1_DATA2		0x59
734*4882a593Smuzhiyun				MX7D_PAD_SD1_DATA3__SD1_DATA3		0x59
735*4882a593Smuzhiyun				MX7D_PAD_SD1_CD_B__GPIO5_IO0		0x59 /* CD */
736*4882a593Smuzhiyun				MX7D_PAD_SD1_WP__GPIO5_IO1		0x59 /* WP */
737*4882a593Smuzhiyun				MX7D_PAD_SD1_RESET_B__GPIO5_IO2		0x59 /* vmmc */
738*4882a593Smuzhiyun			>;
739*4882a593Smuzhiyun		};
740*4882a593Smuzhiyun
741*4882a593Smuzhiyun		pinctrl_usdhc2: usdhc2grp {
742*4882a593Smuzhiyun			fsl,pins = <
743*4882a593Smuzhiyun				MX7D_PAD_SD2_CMD__SD2_CMD		0x59
744*4882a593Smuzhiyun				MX7D_PAD_SD2_CLK__SD2_CLK		0x19
745*4882a593Smuzhiyun				MX7D_PAD_SD2_DATA0__SD2_DATA0		0x59
746*4882a593Smuzhiyun				MX7D_PAD_SD2_DATA1__SD2_DATA1		0x59
747*4882a593Smuzhiyun				MX7D_PAD_SD2_DATA2__SD2_DATA2		0x59
748*4882a593Smuzhiyun				MX7D_PAD_SD2_DATA3__SD2_DATA3		0x59
749*4882a593Smuzhiyun			>;
750*4882a593Smuzhiyun		};
751*4882a593Smuzhiyun
752*4882a593Smuzhiyun		pinctrl_usdhc2_100mhz: usdhc2grp_100mhz {
753*4882a593Smuzhiyun			fsl,pins = <
754*4882a593Smuzhiyun				MX7D_PAD_SD2_CMD__SD2_CMD		0x5a
755*4882a593Smuzhiyun				MX7D_PAD_SD2_CLK__SD2_CLK		0x1a
756*4882a593Smuzhiyun				MX7D_PAD_SD2_DATA0__SD2_DATA0		0x5a
757*4882a593Smuzhiyun				MX7D_PAD_SD2_DATA1__SD2_DATA1		0x5a
758*4882a593Smuzhiyun				MX7D_PAD_SD2_DATA2__SD2_DATA2		0x5a
759*4882a593Smuzhiyun				MX7D_PAD_SD2_DATA3__SD2_DATA3		0x5a
760*4882a593Smuzhiyun			>;
761*4882a593Smuzhiyun		};
762*4882a593Smuzhiyun
763*4882a593Smuzhiyun		pinctrl_usdhc2_200mhz: usdhc2grp_200mhz {
764*4882a593Smuzhiyun			fsl,pins = <
765*4882a593Smuzhiyun				MX7D_PAD_SD2_CMD__SD2_CMD		0x5b
766*4882a593Smuzhiyun				MX7D_PAD_SD2_CLK__SD2_CLK		0x1b
767*4882a593Smuzhiyun				MX7D_PAD_SD2_DATA0__SD2_DATA0		0x5b
768*4882a593Smuzhiyun				MX7D_PAD_SD2_DATA1__SD2_DATA1		0x5b
769*4882a593Smuzhiyun				MX7D_PAD_SD2_DATA2__SD2_DATA2		0x5b
770*4882a593Smuzhiyun				MX7D_PAD_SD2_DATA3__SD2_DATA3		0x5b
771*4882a593Smuzhiyun			>;
772*4882a593Smuzhiyun		};
773*4882a593Smuzhiyun
774*4882a593Smuzhiyun
775*4882a593Smuzhiyun		pinctrl_usdhc3: usdhc3grp {
776*4882a593Smuzhiyun			fsl,pins = <
777*4882a593Smuzhiyun				MX7D_PAD_SD3_CMD__SD3_CMD		0x59
778*4882a593Smuzhiyun				MX7D_PAD_SD3_CLK__SD3_CLK		0x19
779*4882a593Smuzhiyun				MX7D_PAD_SD3_DATA0__SD3_DATA0		0x59
780*4882a593Smuzhiyun				MX7D_PAD_SD3_DATA1__SD3_DATA1		0x59
781*4882a593Smuzhiyun				MX7D_PAD_SD3_DATA2__SD3_DATA2		0x59
782*4882a593Smuzhiyun				MX7D_PAD_SD3_DATA3__SD3_DATA3		0x59
783*4882a593Smuzhiyun				MX7D_PAD_SD3_DATA4__SD3_DATA4		0x59
784*4882a593Smuzhiyun				MX7D_PAD_SD3_DATA5__SD3_DATA5		0x59
785*4882a593Smuzhiyun				MX7D_PAD_SD3_DATA6__SD3_DATA6		0x59
786*4882a593Smuzhiyun				MX7D_PAD_SD3_DATA7__SD3_DATA7		0x59
787*4882a593Smuzhiyun				MX7D_PAD_SD3_STROBE__SD3_STROBE		0x19
788*4882a593Smuzhiyun			>;
789*4882a593Smuzhiyun		};
790*4882a593Smuzhiyun
791*4882a593Smuzhiyun		pinctrl_usdhc3_100mhz: usdhc3grp_100mhz {
792*4882a593Smuzhiyun			fsl,pins = <
793*4882a593Smuzhiyun				MX7D_PAD_SD3_CMD__SD3_CMD		0x5a
794*4882a593Smuzhiyun				MX7D_PAD_SD3_CLK__SD3_CLK		0x1a
795*4882a593Smuzhiyun				MX7D_PAD_SD3_DATA0__SD3_DATA0		0x5a
796*4882a593Smuzhiyun				MX7D_PAD_SD3_DATA1__SD3_DATA1		0x5a
797*4882a593Smuzhiyun				MX7D_PAD_SD3_DATA2__SD3_DATA2		0x5a
798*4882a593Smuzhiyun				MX7D_PAD_SD3_DATA3__SD3_DATA3		0x5a
799*4882a593Smuzhiyun				MX7D_PAD_SD3_DATA4__SD3_DATA4		0x5a
800*4882a593Smuzhiyun				MX7D_PAD_SD3_DATA5__SD3_DATA5		0x5a
801*4882a593Smuzhiyun				MX7D_PAD_SD3_DATA6__SD3_DATA6		0x5a
802*4882a593Smuzhiyun				MX7D_PAD_SD3_DATA7__SD3_DATA7		0x5a
803*4882a593Smuzhiyun				MX7D_PAD_SD3_STROBE__SD3_STROBE		0x1a
804*4882a593Smuzhiyun			>;
805*4882a593Smuzhiyun		};
806*4882a593Smuzhiyun
807*4882a593Smuzhiyun		pinctrl_usdhc3_200mhz: usdhc3grp_200mhz {
808*4882a593Smuzhiyun			fsl,pins = <
809*4882a593Smuzhiyun				MX7D_PAD_SD3_CMD__SD3_CMD		0x5b
810*4882a593Smuzhiyun				MX7D_PAD_SD3_CLK__SD3_CLK		0x1b
811*4882a593Smuzhiyun				MX7D_PAD_SD3_DATA0__SD3_DATA0		0x5b
812*4882a593Smuzhiyun				MX7D_PAD_SD3_DATA1__SD3_DATA1		0x5b
813*4882a593Smuzhiyun				MX7D_PAD_SD3_DATA2__SD3_DATA2		0x5b
814*4882a593Smuzhiyun				MX7D_PAD_SD3_DATA3__SD3_DATA3		0x5b
815*4882a593Smuzhiyun				MX7D_PAD_SD3_DATA4__SD3_DATA4		0x5b
816*4882a593Smuzhiyun				MX7D_PAD_SD3_DATA5__SD3_DATA5		0x5b
817*4882a593Smuzhiyun				MX7D_PAD_SD3_DATA6__SD3_DATA6		0x5b
818*4882a593Smuzhiyun				MX7D_PAD_SD3_DATA7__SD3_DATA7		0x5b
819*4882a593Smuzhiyun				MX7D_PAD_SD3_STROBE__SD3_STROBE		0x1b
820*4882a593Smuzhiyun			>;
821*4882a593Smuzhiyun		};
822*4882a593Smuzhiyun	};
823*4882a593Smuzhiyun};
824*4882a593Smuzhiyun
825*4882a593Smuzhiyun&pwm1 {
826*4882a593Smuzhiyun	pinctrl-names = "default";
827*4882a593Smuzhiyun	pinctrl-0 = <&pinctrl_pwm1>;
828*4882a593Smuzhiyun	status = "okay";
829*4882a593Smuzhiyun};
830*4882a593Smuzhiyun
831*4882a593Smuzhiyun&iomuxc_lpsr {
832*4882a593Smuzhiyun	pinctrl_wdog: wdoggrp {
833*4882a593Smuzhiyun		fsl,pins = <
834*4882a593Smuzhiyun			MX7D_PAD_LPSR_GPIO1_IO00__WDOG1_WDOG_B		0x74
835*4882a593Smuzhiyun		>;
836*4882a593Smuzhiyun	};
837*4882a593Smuzhiyun
838*4882a593Smuzhiyun	pinctrl_pwm1: pwm1grp {
839*4882a593Smuzhiyun		fsl,pins = <
840*4882a593Smuzhiyun			MX7D_PAD_LPSR_GPIO1_IO01__PWM1_OUT		0x30
841*4882a593Smuzhiyun		>;
842*4882a593Smuzhiyun	};
843*4882a593Smuzhiyun
844*4882a593Smuzhiyun	pinctrl_usb_otg2_vbus_reg: usbotg2vbusreggrp {
845*4882a593Smuzhiyun		fsl,pins = <
846*4882a593Smuzhiyun			MX7D_PAD_LPSR_GPIO1_IO07__GPIO1_IO7	  0x14
847*4882a593Smuzhiyun		>;
848*4882a593Smuzhiyun	};
849*4882a593Smuzhiyun
850*4882a593Smuzhiyun	pinctrl_sai3_mclk: sai3grp_mclk {
851*4882a593Smuzhiyun		fsl,pins = <
852*4882a593Smuzhiyun			MX7D_PAD_LPSR_GPIO1_IO03__SAI3_MCLK	0x1f
853*4882a593Smuzhiyun		>;
854*4882a593Smuzhiyun	};
855*4882a593Smuzhiyun};
856