xref: /openbmc/linux/arch/arm/boot/dts/nxp/imx/imx6qdl-nitrogen6_som2.dtsi (revision c900529f3d9161bfde5cca0754f83b4d3c3e0220)
1724ba675SRob Herring// SPDX-License-Identifier: GPL-2.0 OR X11
2724ba675SRob Herring/*
3724ba675SRob Herring * Copyright 2016 Boundary Devices, Inc.
4724ba675SRob Herring */
5724ba675SRob Herring#include <dt-bindings/gpio/gpio.h>
6724ba675SRob Herring#include <dt-bindings/input/input.h>
7724ba675SRob Herring
8724ba675SRob Herring/ {
9724ba675SRob Herring	chosen {
10724ba675SRob Herring		stdout-path = &uart2;
11724ba675SRob Herring	};
12724ba675SRob Herring
13724ba675SRob Herring	memory@10000000 {
14724ba675SRob Herring		device_type = "memory";
15724ba675SRob Herring		reg = <0x10000000 0x40000000>;
16724ba675SRob Herring	};
17724ba675SRob Herring
18724ba675SRob Herring	backlight_lcd: backlight-lcd {
19724ba675SRob Herring		compatible = "pwm-backlight";
20724ba675SRob Herring		pwms = <&pwm1 0 5000000>;
21724ba675SRob Herring		brightness-levels = <0 4 8 16 32 64 128 255>;
22724ba675SRob Herring		default-brightness-level = <7>;
23724ba675SRob Herring		power-supply = <&reg_3p3v>;
24724ba675SRob Herring		status = "okay";
25724ba675SRob Herring	};
26724ba675SRob Herring
27724ba675SRob Herring	backlight_lvds0: backlight-lvds0 {
28724ba675SRob Herring		compatible = "pwm-backlight";
29724ba675SRob Herring		pwms = <&pwm4 0 5000000>;
30724ba675SRob Herring		brightness-levels = <0 4 8 16 32 64 128 255>;
31724ba675SRob Herring		default-brightness-level = <7>;
32724ba675SRob Herring		power-supply = <&reg_3p3v>;
33724ba675SRob Herring		status = "okay";
34724ba675SRob Herring	};
35724ba675SRob Herring
36724ba675SRob Herring	backlight_lvds1: backlight-lvds1 {
37724ba675SRob Herring		compatible = "gpio-backlight";
38724ba675SRob Herring		pinctrl-names = "default";
39724ba675SRob Herring		pinctrl-0 = <&pinctrl_backlight_lvds1>;
40724ba675SRob Herring		gpios = <&gpio2 31 GPIO_ACTIVE_HIGH>;
41724ba675SRob Herring		default-on;
42724ba675SRob Herring		status = "okay";
43724ba675SRob Herring	};
44724ba675SRob Herring
45724ba675SRob Herring	gpio-keys {
46724ba675SRob Herring		compatible = "gpio-keys";
47724ba675SRob Herring		pinctrl-names = "default";
48724ba675SRob Herring		pinctrl-0 = <&pinctrl_gpio_keys>;
49724ba675SRob Herring
50724ba675SRob Herring		power {
51724ba675SRob Herring			label = "Power Button";
52724ba675SRob Herring			gpios = <&gpio2 3 GPIO_ACTIVE_LOW>;
53724ba675SRob Herring			linux,code = <KEY_POWER>;
54724ba675SRob Herring			wakeup-source;
55724ba675SRob Herring		};
56724ba675SRob Herring
57724ba675SRob Herring		menu {
58724ba675SRob Herring			label = "Menu";
59724ba675SRob Herring			gpios = <&gpio2 1 GPIO_ACTIVE_LOW>;
60724ba675SRob Herring			linux,code = <KEY_MENU>;
61724ba675SRob Herring		};
62724ba675SRob Herring
63724ba675SRob Herring		home {
64724ba675SRob Herring			label = "Home";
65724ba675SRob Herring			gpios = <&gpio2 4 GPIO_ACTIVE_LOW>;
66724ba675SRob Herring			linux,code = <KEY_HOME>;
67724ba675SRob Herring		};
68724ba675SRob Herring
69724ba675SRob Herring		back {
70724ba675SRob Herring			label = "Back";
71724ba675SRob Herring			gpios = <&gpio2 2 GPIO_ACTIVE_LOW>;
72724ba675SRob Herring			linux,code = <KEY_BACK>;
73724ba675SRob Herring		};
74724ba675SRob Herring
75724ba675SRob Herring		volume-up {
76724ba675SRob Herring			label = "Volume Up";
77724ba675SRob Herring			gpios = <&gpio7 13 GPIO_ACTIVE_LOW>;
78724ba675SRob Herring			linux,code = <KEY_VOLUMEUP>;
79724ba675SRob Herring		};
80724ba675SRob Herring
81724ba675SRob Herring		volume-down {
82724ba675SRob Herring			label = "Volume Down";
83724ba675SRob Herring			gpios = <&gpio7 1 GPIO_ACTIVE_LOW>;
84724ba675SRob Herring			linux,code = <KEY_VOLUMEDOWN>;
85724ba675SRob Herring		};
86724ba675SRob Herring	};
87724ba675SRob Herring
88724ba675SRob Herring	lcd_display: disp0 {
89724ba675SRob Herring		compatible = "fsl,imx-parallel-display";
90724ba675SRob Herring		#address-cells = <1>;
91724ba675SRob Herring		#size-cells = <0>;
92724ba675SRob Herring		interface-pix-fmt = "bgr666";
93724ba675SRob Herring		pinctrl-names = "default";
94724ba675SRob Herring		pinctrl-0 = <&pinctrl_j15>;
95724ba675SRob Herring		status = "okay";
96724ba675SRob Herring
97724ba675SRob Herring		port@0 {
98724ba675SRob Herring			reg = <0>;
99724ba675SRob Herring
100724ba675SRob Herring			lcd_display_in: endpoint {
101724ba675SRob Herring				remote-endpoint = <&ipu1_di0_disp0>;
102724ba675SRob Herring			};
103724ba675SRob Herring		};
104724ba675SRob Herring
105724ba675SRob Herring		port@1 {
106724ba675SRob Herring			reg = <1>;
107724ba675SRob Herring
108724ba675SRob Herring			lcd_display_out: endpoint {
109724ba675SRob Herring				remote-endpoint = <&lcd_panel_in>;
110724ba675SRob Herring			};
111724ba675SRob Herring		};
112724ba675SRob Herring	};
113724ba675SRob Herring
114724ba675SRob Herring	panel-lcd {
115724ba675SRob Herring		compatible = "okaya,rs800480t-7x0gp";
116724ba675SRob Herring		backlight = <&backlight_lcd>;
117724ba675SRob Herring
118724ba675SRob Herring		port {
119724ba675SRob Herring			lcd_panel_in: endpoint {
120724ba675SRob Herring				remote-endpoint = <&lcd_display_out>;
121724ba675SRob Herring			};
122724ba675SRob Herring		};
123724ba675SRob Herring	};
124724ba675SRob Herring
125724ba675SRob Herring	panel-lvds0 {
126724ba675SRob Herring		compatible = "hannstar,hsd100pxn1";
127724ba675SRob Herring		backlight = <&backlight_lvds0>;
128724ba675SRob Herring
129724ba675SRob Herring		port {
130724ba675SRob Herring			panel_in_lvds0: endpoint {
131724ba675SRob Herring				remote-endpoint = <&lvds0_out>;
132724ba675SRob Herring			};
133724ba675SRob Herring		};
134724ba675SRob Herring	};
135724ba675SRob Herring
136724ba675SRob Herring	panel-lvds1 {
137724ba675SRob Herring		compatible = "hannstar,hsd100pxn1";
138724ba675SRob Herring		backlight = <&backlight_lvds1>;
139724ba675SRob Herring
140724ba675SRob Herring		port {
141724ba675SRob Herring			panel_in_lvds1: endpoint {
142724ba675SRob Herring				remote-endpoint = <&lvds1_out>;
143724ba675SRob Herring			};
144724ba675SRob Herring		};
145724ba675SRob Herring	};
146724ba675SRob Herring
147724ba675SRob Herring	reg_1p8v: regulator-1v8 {
148724ba675SRob Herring		compatible = "regulator-fixed";
149724ba675SRob Herring		regulator-name = "1P8V";
150724ba675SRob Herring		regulator-min-microvolt = <1800000>;
151724ba675SRob Herring		regulator-max-microvolt = <1800000>;
152724ba675SRob Herring		regulator-always-on;
153724ba675SRob Herring	};
154724ba675SRob Herring
155724ba675SRob Herring	reg_2p5v: regulator-2v5 {
156724ba675SRob Herring		compatible = "regulator-fixed";
157724ba675SRob Herring		regulator-name = "2P5V";
158724ba675SRob Herring		regulator-min-microvolt = <2500000>;
159724ba675SRob Herring		regulator-max-microvolt = <2500000>;
160724ba675SRob Herring		regulator-always-on;
161724ba675SRob Herring	};
162724ba675SRob Herring
163724ba675SRob Herring	reg_3p3v: regulator-3v3 {
164724ba675SRob Herring		compatible = "regulator-fixed";
165724ba675SRob Herring		regulator-name = "3P3V";
166724ba675SRob Herring		regulator-min-microvolt = <3300000>;
167724ba675SRob Herring		regulator-max-microvolt = <3300000>;
168724ba675SRob Herring		regulator-always-on;
169724ba675SRob Herring	};
170724ba675SRob Herring
171724ba675SRob Herring	reg_can_xcvr: regulator-can-xcvr {
172724ba675SRob Herring		compatible = "regulator-fixed";
173724ba675SRob Herring		regulator-name = "CAN XCVR";
174724ba675SRob Herring		regulator-min-microvolt = <3300000>;
175724ba675SRob Herring		regulator-max-microvolt = <3300000>;
176724ba675SRob Herring		pinctrl-names = "default";
177724ba675SRob Herring		pinctrl-0 = <&pinctrl_can_xcvr>;
178724ba675SRob Herring		gpio = <&gpio1 2 GPIO_ACTIVE_LOW>;
179724ba675SRob Herring	};
180724ba675SRob Herring
181724ba675SRob Herring	reg_usb_h1_vbus: regulator-usb-h1-vbus {
182724ba675SRob Herring		compatible = "regulator-fixed";
183724ba675SRob Herring		pinctrl-names = "default";
184724ba675SRob Herring		pinctrl-0 = <&pinctrl_usbh1>;
185724ba675SRob Herring		regulator-name = "usb_h1_vbus";
186724ba675SRob Herring		regulator-min-microvolt = <3300000>;
187724ba675SRob Herring		regulator-max-microvolt = <3300000>;
188724ba675SRob Herring		gpio = <&gpio7 12 GPIO_ACTIVE_HIGH>;
189724ba675SRob Herring		enable-active-high;
190724ba675SRob Herring		regulator-always-on;
191724ba675SRob Herring	};
192724ba675SRob Herring
193724ba675SRob Herring	reg_usb_otg_vbus: regulator-usb-otg-vbus {
194724ba675SRob Herring		compatible = "regulator-fixed";
195724ba675SRob Herring		regulator-name = "usb_otg_vbus";
196724ba675SRob Herring		regulator-min-microvolt = <5000000>;
197724ba675SRob Herring		regulator-max-microvolt = <5000000>;
198724ba675SRob Herring		gpio = <&gpio3 22 GPIO_ACTIVE_HIGH>;
199724ba675SRob Herring		enable-active-high;
200724ba675SRob Herring	};
201724ba675SRob Herring
202724ba675SRob Herring	reg_wlan_vmmc: regulator-wlan-vmmc {
203724ba675SRob Herring		compatible = "regulator-fixed";
204724ba675SRob Herring		pinctrl-names = "default";
205724ba675SRob Herring		pinctrl-0 = <&pinctrl_wlan_vmmc>;
206724ba675SRob Herring		regulator-name = "reg_wlan_vmmc";
207724ba675SRob Herring		regulator-min-microvolt = <3300000>;
208724ba675SRob Herring		regulator-max-microvolt = <3300000>;
209724ba675SRob Herring		gpio = <&gpio6 15 GPIO_ACTIVE_HIGH>;
210724ba675SRob Herring		startup-delay-us = <70000>;
211724ba675SRob Herring		enable-active-high;
212724ba675SRob Herring	};
213724ba675SRob Herring
214724ba675SRob Herring	sound {
215724ba675SRob Herring		compatible = "fsl,imx6q-nitrogen6_som2-sgtl5000",
216724ba675SRob Herring			     "fsl,imx-audio-sgtl5000";
217724ba675SRob Herring		model = "imx6q-nitrogen6_som2-sgtl5000";
218724ba675SRob Herring		ssi-controller = <&ssi1>;
219724ba675SRob Herring		audio-codec = <&codec>;
220724ba675SRob Herring		audio-routing =
221724ba675SRob Herring			"MIC_IN", "Mic Jack",
222724ba675SRob Herring			"Mic Jack", "Mic Bias",
223724ba675SRob Herring			"Headphone Jack", "HP_OUT";
224724ba675SRob Herring		mux-int-port = <1>;
225724ba675SRob Herring		mux-ext-port = <3>;
226724ba675SRob Herring	};
227724ba675SRob Herring};
228724ba675SRob Herring
229724ba675SRob Herring&audmux {
230724ba675SRob Herring	pinctrl-names = "default";
231724ba675SRob Herring	pinctrl-0 = <&pinctrl_audmux>;
232724ba675SRob Herring	status = "okay";
233724ba675SRob Herring};
234724ba675SRob Herring
235724ba675SRob Herring&can1 {
236724ba675SRob Herring	pinctrl-names = "default";
237724ba675SRob Herring	pinctrl-0 = <&pinctrl_can1>;
238724ba675SRob Herring	xceiver-supply = <&reg_can_xcvr>;
239724ba675SRob Herring	status = "okay";
240724ba675SRob Herring};
241724ba675SRob Herring
242724ba675SRob Herring&clks {
243724ba675SRob Herring	assigned-clocks = <&clks IMX6QDL_CLK_LDB_DI0_SEL>,
244724ba675SRob Herring			  <&clks IMX6QDL_CLK_LDB_DI1_SEL>;
245724ba675SRob Herring	assigned-clock-parents = <&clks IMX6QDL_CLK_PLL3_USB_OTG>,
246724ba675SRob Herring				 <&clks IMX6QDL_CLK_PLL3_USB_OTG>;
247724ba675SRob Herring};
248724ba675SRob Herring
249724ba675SRob Herring&ecspi1 {
250724ba675SRob Herring	cs-gpios = <&gpio3 19 GPIO_ACTIVE_LOW>;
251724ba675SRob Herring	pinctrl-names = "default";
252724ba675SRob Herring	pinctrl-0 = <&pinctrl_ecspi1>;
253724ba675SRob Herring	status = "okay";
254724ba675SRob Herring
255724ba675SRob Herring	flash: flash@0 {
256724ba675SRob Herring		compatible = "microchip,sst25vf016b";
257724ba675SRob Herring		spi-max-frequency = <20000000>;
258724ba675SRob Herring		reg = <0>;
259724ba675SRob Herring	};
260724ba675SRob Herring};
261724ba675SRob Herring
262724ba675SRob Herring&fec {
263724ba675SRob Herring	pinctrl-names = "default";
264724ba675SRob Herring	pinctrl-0 = <&pinctrl_enet>;
265724ba675SRob Herring	phy-mode = "rgmii";
266724ba675SRob Herring	/delete-property/ interrupts;
267724ba675SRob Herring	interrupts-extended = <&gpio1 6 IRQ_TYPE_LEVEL_HIGH>,
268724ba675SRob Herring			      <&intc 0 119 IRQ_TYPE_LEVEL_HIGH>;
269724ba675SRob Herring	fsl,err006687-workaround-present;
270724ba675SRob Herring	status = "okay";
271724ba675SRob Herring};
272724ba675SRob Herring
273724ba675SRob Herring&hdmi {
274724ba675SRob Herring	ddc-i2c-bus = <&i2c2>;
275724ba675SRob Herring	status = "okay";
276724ba675SRob Herring};
277724ba675SRob Herring
278724ba675SRob Herring&i2c1 {
279724ba675SRob Herring	clock-frequency = <100000>;
280724ba675SRob Herring	pinctrl-names = "default";
281724ba675SRob Herring	pinctrl-0 = <&pinctrl_i2c1>;
282724ba675SRob Herring	status = "okay";
283724ba675SRob Herring
284724ba675SRob Herring	codec: sgtl5000@a {
285724ba675SRob Herring		compatible = "fsl,sgtl5000";
286724ba675SRob Herring		pinctrl-names = "default";
287724ba675SRob Herring		pinctrl-0 = <&pinctrl_sgtl5000>;
288724ba675SRob Herring		reg = <0x0a>;
289*d54bcc3aSFabio Estevam		#sound-dai-cells = <0>;
290724ba675SRob Herring		clocks = <&clks IMX6QDL_CLK_CKO>;
291724ba675SRob Herring		VDDA-supply = <&reg_2p5v>;
292724ba675SRob Herring		VDDIO-supply = <&reg_3p3v>;
293724ba675SRob Herring	};
294724ba675SRob Herring
295724ba675SRob Herring	rtc@68 {
296724ba675SRob Herring		compatible = "microcrystal,rv4162";
297724ba675SRob Herring		pinctrl-names = "default";
298724ba675SRob Herring		pinctrl-0 = <&pinctrl_rv4162>;
299724ba675SRob Herring		reg = <0x68>;
300724ba675SRob Herring		interrupts-extended = <&gpio6 7 IRQ_TYPE_LEVEL_LOW>;
301724ba675SRob Herring	};
302724ba675SRob Herring};
303724ba675SRob Herring
304724ba675SRob Herring&i2c2 {
305724ba675SRob Herring	clock-frequency = <100000>;
306724ba675SRob Herring	pinctrl-names = "default";
307724ba675SRob Herring	pinctrl-0 = <&pinctrl_i2c2>;
308724ba675SRob Herring	status = "okay";
309724ba675SRob Herring};
310724ba675SRob Herring
311724ba675SRob Herring&i2c3 {
312724ba675SRob Herring	clock-frequency = <100000>;
313724ba675SRob Herring	pinctrl-names = "default";
314724ba675SRob Herring	pinctrl-0 = <&pinctrl_i2c3>;
315724ba675SRob Herring	status = "okay";
316724ba675SRob Herring
317724ba675SRob Herring	touchscreen@4 {
318724ba675SRob Herring		compatible = "eeti,egalax_ts";
319724ba675SRob Herring		reg = <0x04>;
320724ba675SRob Herring		interrupt-parent = <&gpio1>;
321724ba675SRob Herring		interrupts = <9 IRQ_TYPE_EDGE_FALLING>;
322724ba675SRob Herring		wakeup-gpios = <&gpio1 9 GPIO_ACTIVE_LOW>;
323724ba675SRob Herring	};
324724ba675SRob Herring
325724ba675SRob Herring	touchscreen@38 {
326724ba675SRob Herring		compatible = "edt,edt-ft5x06";
327724ba675SRob Herring		reg = <0x38>;
328724ba675SRob Herring		interrupt-parent = <&gpio1>;
329724ba675SRob Herring		interrupts = <9 IRQ_TYPE_EDGE_FALLING>;
330724ba675SRob Herring		wakeup-source;
331724ba675SRob Herring	};
332724ba675SRob Herring};
333724ba675SRob Herring
334724ba675SRob Herring&iomuxc {
335724ba675SRob Herring	pinctrl_audmux: audmuxgrp {
336724ba675SRob Herring		fsl,pins = <
337724ba675SRob Herring			MX6QDL_PAD_CSI0_DAT7__AUD3_RXD		0x130b0
338724ba675SRob Herring			MX6QDL_PAD_CSI0_DAT4__AUD3_TXC		0x130b0
339724ba675SRob Herring			MX6QDL_PAD_CSI0_DAT5__AUD3_TXD		0x110b0
340724ba675SRob Herring			MX6QDL_PAD_CSI0_DAT6__AUD3_TXFS		0x130b0
341724ba675SRob Herring		>;
342724ba675SRob Herring	};
343724ba675SRob Herring
344724ba675SRob Herring	pinctrl_backlight_lvds1: backlight-lvds1grp {
345724ba675SRob Herring		fsl,pins = <
346724ba675SRob Herring			MX6QDL_PAD_EIM_EB3__GPIO2_IO31		0x0b0b0
347724ba675SRob Herring		>;
348724ba675SRob Herring	};
349724ba675SRob Herring
350724ba675SRob Herring	pinctrl_can1: can1grp {
351724ba675SRob Herring		fsl,pins = <
352724ba675SRob Herring			MX6QDL_PAD_KEY_COL2__FLEXCAN1_TX	0x1b0b0
353724ba675SRob Herring			MX6QDL_PAD_KEY_ROW2__FLEXCAN1_RX	0x1b0b0
354724ba675SRob Herring		>;
355724ba675SRob Herring	};
356724ba675SRob Herring
357724ba675SRob Herring	pinctrl_can_xcvr: can-xcvrgrp {
358724ba675SRob Herring		fsl,pins = <
359724ba675SRob Herring			/* Flexcan XCVR enable */
360724ba675SRob Herring			MX6QDL_PAD_GPIO_2__GPIO1_IO02		0x0b0b0
361724ba675SRob Herring		>;
362724ba675SRob Herring	};
363724ba675SRob Herring
364724ba675SRob Herring	pinctrl_ecspi1: ecspi1grp {
365724ba675SRob Herring		fsl,pins = <
366724ba675SRob Herring			MX6QDL_PAD_EIM_D17__ECSPI1_MISO		0x100b1
367724ba675SRob Herring			MX6QDL_PAD_EIM_D18__ECSPI1_MOSI		0x100b1
368724ba675SRob Herring			MX6QDL_PAD_EIM_D16__ECSPI1_SCLK		0x100b1
369724ba675SRob Herring			MX6QDL_PAD_EIM_D19__GPIO3_IO19		0x000b1
370724ba675SRob Herring		>;
371724ba675SRob Herring	};
372724ba675SRob Herring
373724ba675SRob Herring	pinctrl_enet: enetgrp {
374724ba675SRob Herring		fsl,pins = <
375724ba675SRob Herring			MX6QDL_PAD_ENET_MDIO__ENET_MDIO		0x1b0b0
376724ba675SRob Herring			MX6QDL_PAD_ENET_MDC__ENET_MDC		0x1b0b0
377724ba675SRob Herring			MX6QDL_PAD_RGMII_TXC__RGMII_TXC		0x100b0
378724ba675SRob Herring			MX6QDL_PAD_RGMII_TD0__RGMII_TD0		0x100b0
379724ba675SRob Herring			MX6QDL_PAD_RGMII_TD1__RGMII_TD1		0x100b0
380724ba675SRob Herring			MX6QDL_PAD_RGMII_TD2__RGMII_TD2		0x100b0
381724ba675SRob Herring			MX6QDL_PAD_RGMII_TD3__RGMII_TD3		0x100b0
382724ba675SRob Herring			MX6QDL_PAD_RGMII_TX_CTL__RGMII_TX_CTL	0x100b0
383724ba675SRob Herring			MX6QDL_PAD_ENET_REF_CLK__ENET_TX_CLK	0x100b0
384724ba675SRob Herring			MX6QDL_PAD_RGMII_RXC__RGMII_RXC		0x1b0b0
385724ba675SRob Herring			MX6QDL_PAD_RGMII_RD0__RGMII_RD0		0x130b0
386724ba675SRob Herring			MX6QDL_PAD_RGMII_RD1__RGMII_RD1		0x1b0b0
387724ba675SRob Herring			MX6QDL_PAD_RGMII_RD2__RGMII_RD2		0x130b0
388724ba675SRob Herring			MX6QDL_PAD_RGMII_RD3__RGMII_RD3		0x1b0b0
389724ba675SRob Herring			MX6QDL_PAD_RGMII_RX_CTL__RGMII_RX_CTL	0x130b0
390724ba675SRob Herring			MX6QDL_PAD_ENET_RXD0__GPIO1_IO27	0x030b0
391724ba675SRob Herring			MX6QDL_PAD_ENET_TX_EN__GPIO1_IO28	0x1b0b0
392724ba675SRob Herring			MX6QDL_PAD_GPIO_6__ENET_IRQ		0x000b1
393724ba675SRob Herring		>;
394724ba675SRob Herring	};
395724ba675SRob Herring
396724ba675SRob Herring	pinctrl_gpio_keys: gpio-keysgrp {
397724ba675SRob Herring		fsl,pins = <
398724ba675SRob Herring			/* Power Button */
399724ba675SRob Herring			MX6QDL_PAD_NANDF_D3__GPIO2_IO03		0x1b0b0
400724ba675SRob Herring			/* Menu Button */
401724ba675SRob Herring			MX6QDL_PAD_NANDF_D1__GPIO2_IO01		0x1b0b0
402724ba675SRob Herring			/* Home Button */
403724ba675SRob Herring			MX6QDL_PAD_NANDF_D4__GPIO2_IO04		0x1b0b0
404724ba675SRob Herring			/* Back Button */
405724ba675SRob Herring			MX6QDL_PAD_NANDF_D2__GPIO2_IO02		0x1b0b0
406724ba675SRob Herring			/* Volume Up Button */
407724ba675SRob Herring			MX6QDL_PAD_GPIO_18__GPIO7_IO13		0x1b0b0
408724ba675SRob Herring			/* Volume Down Button */
409724ba675SRob Herring			MX6QDL_PAD_SD3_DAT4__GPIO7_IO01		0x1b0b0
410724ba675SRob Herring		>;
411724ba675SRob Herring	};
412724ba675SRob Herring
413724ba675SRob Herring	pinctrl_i2c1: i2c1grp {
414724ba675SRob Herring		fsl,pins = <
415724ba675SRob Herring			MX6QDL_PAD_EIM_D21__I2C1_SCL	0x4001b8b1
416724ba675SRob Herring			MX6QDL_PAD_EIM_D28__I2C1_SDA	0x4001b8b1
417724ba675SRob Herring		>;
418724ba675SRob Herring	};
419724ba675SRob Herring
420724ba675SRob Herring	pinctrl_i2c2: i2c2grp {
421724ba675SRob Herring		fsl,pins = <
422724ba675SRob Herring			MX6QDL_PAD_KEY_COL3__I2C2_SCL	0x4001b8b1
423724ba675SRob Herring			MX6QDL_PAD_KEY_ROW3__I2C2_SDA	0x4001b8b1
424724ba675SRob Herring		>;
425724ba675SRob Herring	};
426724ba675SRob Herring
427724ba675SRob Herring	pinctrl_i2c3: i2c3grp {
428724ba675SRob Herring		fsl,pins = <
429724ba675SRob Herring			MX6QDL_PAD_GPIO_5__I2C3_SCL	0x4001b8b1
430724ba675SRob Herring			MX6QDL_PAD_GPIO_16__I2C3_SDA	0x4001b8b1
431724ba675SRob Herring			MX6QDL_PAD_GPIO_9__GPIO1_IO09	0x1b0b0
432724ba675SRob Herring		>;
433724ba675SRob Herring	};
434724ba675SRob Herring
435724ba675SRob Herring	pinctrl_i2c3mux: i2c3muxgrp {
436724ba675SRob Herring		fsl,pins = <
437724ba675SRob Herring			/* PCIe I2C enable */
438724ba675SRob Herring			MX6QDL_PAD_EIM_OE__GPIO2_IO25	0x000b0
439724ba675SRob Herring		>;
440724ba675SRob Herring	};
441724ba675SRob Herring
442724ba675SRob Herring	pinctrl_j15: j15grp {
443724ba675SRob Herring		fsl,pins = <
444724ba675SRob Herring			MX6QDL_PAD_DI0_DISP_CLK__IPU1_DI0_DISP_CLK 0x10
445724ba675SRob Herring			MX6QDL_PAD_DI0_PIN15__IPU1_DI0_PIN15       0x10
446724ba675SRob Herring			MX6QDL_PAD_DI0_PIN2__IPU1_DI0_PIN02        0x10
447724ba675SRob Herring			MX6QDL_PAD_DI0_PIN3__IPU1_DI0_PIN03        0x10
448724ba675SRob Herring			MX6QDL_PAD_DISP0_DAT0__IPU1_DISP0_DATA00   0x10
449724ba675SRob Herring			MX6QDL_PAD_DISP0_DAT1__IPU1_DISP0_DATA01   0x10
450724ba675SRob Herring			MX6QDL_PAD_DISP0_DAT2__IPU1_DISP0_DATA02   0x10
451724ba675SRob Herring			MX6QDL_PAD_DISP0_DAT3__IPU1_DISP0_DATA03   0x10
452724ba675SRob Herring			MX6QDL_PAD_DISP0_DAT4__IPU1_DISP0_DATA04   0x10
453724ba675SRob Herring			MX6QDL_PAD_DISP0_DAT5__IPU1_DISP0_DATA05   0x10
454724ba675SRob Herring			MX6QDL_PAD_DISP0_DAT6__IPU1_DISP0_DATA06   0x10
455724ba675SRob Herring			MX6QDL_PAD_DISP0_DAT7__IPU1_DISP0_DATA07   0x10
456724ba675SRob Herring			MX6QDL_PAD_DISP0_DAT8__IPU1_DISP0_DATA08   0x10
457724ba675SRob Herring			MX6QDL_PAD_DISP0_DAT9__IPU1_DISP0_DATA09   0x10
458724ba675SRob Herring			MX6QDL_PAD_DISP0_DAT10__IPU1_DISP0_DATA10  0x10
459724ba675SRob Herring			MX6QDL_PAD_DISP0_DAT11__IPU1_DISP0_DATA11  0x10
460724ba675SRob Herring			MX6QDL_PAD_DISP0_DAT12__IPU1_DISP0_DATA12  0x10
461724ba675SRob Herring			MX6QDL_PAD_DISP0_DAT13__IPU1_DISP0_DATA13  0x10
462724ba675SRob Herring			MX6QDL_PAD_DISP0_DAT14__IPU1_DISP0_DATA14  0x10
463724ba675SRob Herring			MX6QDL_PAD_DISP0_DAT15__IPU1_DISP0_DATA15  0x10
464724ba675SRob Herring			MX6QDL_PAD_DISP0_DAT16__IPU1_DISP0_DATA16  0x10
465724ba675SRob Herring			MX6QDL_PAD_DISP0_DAT17__IPU1_DISP0_DATA17  0x10
466724ba675SRob Herring			MX6QDL_PAD_DISP0_DAT18__IPU1_DISP0_DATA18  0x10
467724ba675SRob Herring			MX6QDL_PAD_DISP0_DAT19__IPU1_DISP0_DATA19  0x10
468724ba675SRob Herring			MX6QDL_PAD_DISP0_DAT20__IPU1_DISP0_DATA20  0x10
469724ba675SRob Herring			MX6QDL_PAD_DISP0_DAT21__IPU1_DISP0_DATA21  0x10
470724ba675SRob Herring			MX6QDL_PAD_DISP0_DAT22__IPU1_DISP0_DATA22  0x10
471724ba675SRob Herring			MX6QDL_PAD_DISP0_DAT23__IPU1_DISP0_DATA23  0x10
472724ba675SRob Herring		>;
473724ba675SRob Herring	};
474724ba675SRob Herring
475724ba675SRob Herring	pinctrl_pcie: pciegrp {
476724ba675SRob Herring		fsl,pins = <
477724ba675SRob Herring			/* PCIe reset */
478724ba675SRob Herring			MX6QDL_PAD_EIM_DA0__GPIO3_IO00	0x030b0
479724ba675SRob Herring			MX6QDL_PAD_EIM_DA4__GPIO3_IO04	0x030b0
480724ba675SRob Herring		>;
481724ba675SRob Herring	};
482724ba675SRob Herring
483724ba675SRob Herring	pinctrl_pwm1: pwm1grp {
484724ba675SRob Herring		fsl,pins = <
485724ba675SRob Herring			MX6QDL_PAD_SD1_DAT3__PWM1_OUT	0x030b1
486724ba675SRob Herring		>;
487724ba675SRob Herring	};
488724ba675SRob Herring
489724ba675SRob Herring	pinctrl_pwm3: pwm3grp {
490724ba675SRob Herring		fsl,pins = <
491724ba675SRob Herring			MX6QDL_PAD_SD1_DAT1__PWM3_OUT	0x030b1
492724ba675SRob Herring		>;
493724ba675SRob Herring	};
494724ba675SRob Herring
495724ba675SRob Herring	pinctrl_pwm4: pwm4grp {
496724ba675SRob Herring		fsl,pins = <
497724ba675SRob Herring			MX6QDL_PAD_SD1_CMD__PWM4_OUT	0x030b1
498724ba675SRob Herring		>;
499724ba675SRob Herring	};
500724ba675SRob Herring
501724ba675SRob Herring	pinctrl_rv4162: rv4162grp {
502724ba675SRob Herring		fsl,pins = <
503724ba675SRob Herring			MX6QDL_PAD_NANDF_CLE__GPIO6_IO07	0x1b0b0
504724ba675SRob Herring		>;
505724ba675SRob Herring	};
506724ba675SRob Herring
507724ba675SRob Herring	pinctrl_sgtl5000: sgtl5000grp {
508724ba675SRob Herring		fsl,pins = <
509724ba675SRob Herring			MX6QDL_PAD_GPIO_0__CCM_CLKO1		0x000b0
510724ba675SRob Herring			MX6QDL_PAD_EIM_D29__GPIO3_IO29		0x130b0
511724ba675SRob Herring			MX6QDL_PAD_EIM_DA2__GPIO3_IO02		0x130b0
512724ba675SRob Herring			MX6QDL_PAD_ENET_RX_ER__GPIO1_IO24	0x130b0
513724ba675SRob Herring		>;
514724ba675SRob Herring	};
515724ba675SRob Herring
516724ba675SRob Herring	pinctrl_uart1: uart1grp {
517724ba675SRob Herring		fsl,pins = <
518724ba675SRob Herring			MX6QDL_PAD_SD3_DAT7__UART1_TX_DATA	0x1b0b1
519724ba675SRob Herring			MX6QDL_PAD_SD3_DAT6__UART1_RX_DATA	0x1b0b1
520724ba675SRob Herring		>;
521724ba675SRob Herring	};
522724ba675SRob Herring
523724ba675SRob Herring	pinctrl_uart2: uart2grp {
524724ba675SRob Herring		fsl,pins = <
525724ba675SRob Herring			MX6QDL_PAD_EIM_D26__UART2_TX_DATA	0x1b0b1
526724ba675SRob Herring			MX6QDL_PAD_EIM_D27__UART2_RX_DATA	0x1b0b1
527724ba675SRob Herring		>;
528724ba675SRob Herring	};
529724ba675SRob Herring
530724ba675SRob Herring	pinctrl_uart3: uart3grp {
531724ba675SRob Herring		fsl,pins = <
532724ba675SRob Herring			MX6QDL_PAD_EIM_D24__UART3_TX_DATA	0x1b0b1
533724ba675SRob Herring			MX6QDL_PAD_EIM_D25__UART3_RX_DATA	0x1b0b1
534724ba675SRob Herring			MX6QDL_PAD_EIM_D23__UART3_CTS_B		0x1b0b1
535724ba675SRob Herring			MX6QDL_PAD_EIM_D31__UART3_RTS_B		0x1b0b1
536724ba675SRob Herring		>;
537724ba675SRob Herring	};
538724ba675SRob Herring
539724ba675SRob Herring	pinctrl_usbh1: usbh1grp {
540724ba675SRob Herring		fsl,pins = <
541724ba675SRob Herring			MX6QDL_PAD_GPIO_17__GPIO7_IO12		0x030b0
542724ba675SRob Herring		>;
543724ba675SRob Herring	};
544724ba675SRob Herring
545724ba675SRob Herring	pinctrl_usbotg: usbotggrp {
546724ba675SRob Herring		fsl,pins = <
547724ba675SRob Herring			MX6QDL_PAD_GPIO_1__USB_OTG_ID		0x17059
548724ba675SRob Herring			MX6QDL_PAD_KEY_COL4__USB_OTG_OC		0x1b0b0
549724ba675SRob Herring			/* power enable, high active */
550724ba675SRob Herring			MX6QDL_PAD_EIM_D22__GPIO3_IO22		0x030b0
551724ba675SRob Herring		>;
552724ba675SRob Herring	};
553724ba675SRob Herring
554724ba675SRob Herring	pinctrl_usdhc2: usdhc2grp {
555724ba675SRob Herring		fsl,pins = <
556724ba675SRob Herring			MX6QDL_PAD_SD2_CLK__SD2_CLK		0x10071
557724ba675SRob Herring			MX6QDL_PAD_SD2_CMD__SD2_CMD		0x17071
558724ba675SRob Herring			MX6QDL_PAD_SD2_DAT0__SD2_DATA0		0x17071
559724ba675SRob Herring			MX6QDL_PAD_SD2_DAT1__SD2_DATA1		0x17071
560724ba675SRob Herring			MX6QDL_PAD_SD2_DAT2__SD2_DATA2		0x17071
561724ba675SRob Herring			MX6QDL_PAD_SD2_DAT3__SD2_DATA3		0x17071
562724ba675SRob Herring		>;
563724ba675SRob Herring	};
564724ba675SRob Herring
565724ba675SRob Herring	pinctrl_usdhc3: usdhc3grp {
566724ba675SRob Herring		fsl,pins = <
567724ba675SRob Herring			MX6QDL_PAD_SD3_CLK__SD3_CLK		0x10071
568724ba675SRob Herring			MX6QDL_PAD_SD3_CMD__SD3_CMD		0x17071
569724ba675SRob Herring			MX6QDL_PAD_SD3_DAT0__SD3_DATA0		0x17071
570724ba675SRob Herring			MX6QDL_PAD_SD3_DAT1__SD3_DATA1		0x17071
571724ba675SRob Herring			MX6QDL_PAD_SD3_DAT2__SD3_DATA2		0x17071
572724ba675SRob Herring			MX6QDL_PAD_SD3_DAT3__SD3_DATA3		0x17071
573724ba675SRob Herring			MX6QDL_PAD_SD3_DAT5__GPIO7_IO00		0x1b0b0
574724ba675SRob Herring		>;
575724ba675SRob Herring	};
576724ba675SRob Herring
577724ba675SRob Herring	pinctrl_usdhc4: usdhc4grp {
578724ba675SRob Herring		fsl,pins = <
579724ba675SRob Herring			MX6QDL_PAD_SD4_CMD__SD4_CMD		0x17059
580724ba675SRob Herring			MX6QDL_PAD_SD4_CLK__SD4_CLK		0x10059
581724ba675SRob Herring			MX6QDL_PAD_SD4_DAT0__SD4_DATA0		0x17059
582724ba675SRob Herring			MX6QDL_PAD_SD4_DAT1__SD4_DATA1		0x17059
583724ba675SRob Herring			MX6QDL_PAD_SD4_DAT2__SD4_DATA2		0x17059
584724ba675SRob Herring			MX6QDL_PAD_SD4_DAT3__SD4_DATA3		0x17059
585724ba675SRob Herring			MX6QDL_PAD_SD4_DAT4__SD4_DATA4		0x17059
586724ba675SRob Herring			MX6QDL_PAD_SD4_DAT5__SD4_DATA5		0x17059
587724ba675SRob Herring			MX6QDL_PAD_SD4_DAT6__SD4_DATA6		0x17059
588724ba675SRob Herring			MX6QDL_PAD_SD4_DAT7__SD4_DATA7		0x17059
589724ba675SRob Herring		>;
590724ba675SRob Herring	};
591724ba675SRob Herring
592724ba675SRob Herring	pinctrl_wlan_vmmc: wlan-vmmcgrp {
593724ba675SRob Herring		fsl,pins = <
594724ba675SRob Herring			MX6QDL_PAD_NANDF_CS1__GPIO6_IO14	0x100b0
595724ba675SRob Herring			MX6QDL_PAD_NANDF_CS2__GPIO6_IO15	0x030b0
596724ba675SRob Herring			MX6QDL_PAD_NANDF_CS3__GPIO6_IO16	0x030b0
597724ba675SRob Herring			MX6QDL_PAD_SD1_CLK__OSC32K_32K_OUT	0x000b0
598724ba675SRob Herring		>;
599724ba675SRob Herring	};
600724ba675SRob Herring};
601724ba675SRob Herring
602724ba675SRob Herring&ipu1_di0_disp0 {
603724ba675SRob Herring	remote-endpoint = <&lcd_display_in>;
604724ba675SRob Herring};
605724ba675SRob Herring
606724ba675SRob Herring&ldb {
607724ba675SRob Herring	status = "okay";
608724ba675SRob Herring
609724ba675SRob Herring	lvds-channel@0 {
610724ba675SRob Herring		status = "okay";
611724ba675SRob Herring
612724ba675SRob Herring		port@4 {
613724ba675SRob Herring			reg = <4>;
614724ba675SRob Herring
615724ba675SRob Herring			lvds0_out: endpoint {
616724ba675SRob Herring				remote-endpoint = <&panel_in_lvds0>;
617724ba675SRob Herring			};
618724ba675SRob Herring		};
619724ba675SRob Herring	};
620724ba675SRob Herring
621724ba675SRob Herring	lvds-channel@1 {
622724ba675SRob Herring		fsl,data-mapping = "spwg";
623724ba675SRob Herring		fsl,data-width = <18>;
624724ba675SRob Herring		status = "okay";
625724ba675SRob Herring
626724ba675SRob Herring		port@4 {
627724ba675SRob Herring			reg = <4>;
628724ba675SRob Herring
629724ba675SRob Herring			lvds1_out: endpoint {
630724ba675SRob Herring				remote-endpoint = <&panel_in_lvds1>;
631724ba675SRob Herring			};
632724ba675SRob Herring		};
633724ba675SRob Herring	};
634724ba675SRob Herring};
635724ba675SRob Herring
636724ba675SRob Herring&pcie {
637724ba675SRob Herring	pinctrl-names = "default";
638724ba675SRob Herring	pinctrl-0 = <&pinctrl_pcie>;
639724ba675SRob Herring	reset-gpio = <&gpio3 0 GPIO_ACTIVE_LOW>;
640724ba675SRob Herring	status = "okay";
641724ba675SRob Herring};
642724ba675SRob Herring
643724ba675SRob Herring&pwm1 {
644724ba675SRob Herring	#pwm-cells = <2>;
645724ba675SRob Herring	pinctrl-names = "default";
646724ba675SRob Herring	pinctrl-0 = <&pinctrl_pwm1>;
647724ba675SRob Herring	status = "okay";
648724ba675SRob Herring};
649724ba675SRob Herring
650724ba675SRob Herring&pwm3 {
651724ba675SRob Herring	pinctrl-names = "default";
652724ba675SRob Herring	pinctrl-0 = <&pinctrl_pwm3>;
653724ba675SRob Herring	status = "okay";
654724ba675SRob Herring};
655724ba675SRob Herring
656724ba675SRob Herring&pwm4 {
657724ba675SRob Herring	#pwm-cells = <2>;
658724ba675SRob Herring	pinctrl-names = "default";
659724ba675SRob Herring	pinctrl-0 = <&pinctrl_pwm4>;
660724ba675SRob Herring	status = "okay";
661724ba675SRob Herring};
662724ba675SRob Herring
663724ba675SRob Herring&ssi1 {
664724ba675SRob Herring	status = "okay";
665724ba675SRob Herring};
666724ba675SRob Herring
667724ba675SRob Herring&uart1 {
668724ba675SRob Herring	pinctrl-names = "default";
669724ba675SRob Herring	pinctrl-0 = <&pinctrl_uart1>;
670724ba675SRob Herring	status = "okay";
671724ba675SRob Herring};
672724ba675SRob Herring
673724ba675SRob Herring&uart2 {
674724ba675SRob Herring	pinctrl-names = "default";
675724ba675SRob Herring	pinctrl-0 = <&pinctrl_uart2>;
676724ba675SRob Herring	status = "okay";
677724ba675SRob Herring};
678724ba675SRob Herring
679724ba675SRob Herring&uart3 {
680724ba675SRob Herring	pinctrl-names = "default";
681724ba675SRob Herring	pinctrl-0 = <&pinctrl_uart3>;
682724ba675SRob Herring	uart-has-rtscts;
683724ba675SRob Herring	status = "okay";
684724ba675SRob Herring};
685724ba675SRob Herring
686724ba675SRob Herring&usbh1 {
687724ba675SRob Herring	vbus-supply = <&reg_usb_h1_vbus>;
688724ba675SRob Herring	status = "okay";
689724ba675SRob Herring};
690724ba675SRob Herring
691724ba675SRob Herring&usbotg {
692724ba675SRob Herring	vbus-supply = <&reg_usb_otg_vbus>;
693724ba675SRob Herring	pinctrl-names = "default";
694724ba675SRob Herring	pinctrl-0 = <&pinctrl_usbotg>;
695724ba675SRob Herring	disable-over-current;
696724ba675SRob Herring	status = "okay";
697724ba675SRob Herring};
698724ba675SRob Herring
699724ba675SRob Herring&usdhc2 {
700724ba675SRob Herring	pinctrl-names = "default";
701724ba675SRob Herring	pinctrl-0 = <&pinctrl_usdhc2>;
702724ba675SRob Herring	bus-width = <4>;
703724ba675SRob Herring	non-removable;
704724ba675SRob Herring	vmmc-supply = <&reg_wlan_vmmc>;
705724ba675SRob Herring	cap-power-off-card;
706724ba675SRob Herring	keep-power-in-suspend;
707724ba675SRob Herring	status = "okay";
708724ba675SRob Herring
709724ba675SRob Herring	#address-cells = <1>;
710724ba675SRob Herring	#size-cells = <0>;
711724ba675SRob Herring	wlcore: wlcore@2 {
712724ba675SRob Herring		compatible = "ti,wl1271";
713724ba675SRob Herring		reg = <2>;
714724ba675SRob Herring		interrupt-parent = <&gpio6>;
715724ba675SRob Herring		interrupts = <14 IRQ_TYPE_LEVEL_HIGH>;
716724ba675SRob Herring		ref-clock-frequency = <38400000>;
717724ba675SRob Herring	};
718724ba675SRob Herring};
719724ba675SRob Herring
720724ba675SRob Herring&usdhc3 {
721724ba675SRob Herring	pinctrl-names = "default";
722724ba675SRob Herring	pinctrl-0 = <&pinctrl_usdhc3>;
723724ba675SRob Herring	cd-gpios = <&gpio7 0 GPIO_ACTIVE_LOW>;
724724ba675SRob Herring	bus-width = <4>;
725724ba675SRob Herring	vmmc-supply = <&reg_3p3v>;
726724ba675SRob Herring	status = "okay";
727724ba675SRob Herring};
728724ba675SRob Herring
729724ba675SRob Herring&usdhc4 {
730724ba675SRob Herring	pinctrl-names = "default";
731724ba675SRob Herring	pinctrl-0 = <&pinctrl_usdhc4>;
732724ba675SRob Herring	bus-width = <8>;
733724ba675SRob Herring	non-removable;
734724ba675SRob Herring	vmmc-supply = <&reg_1p8v>;
735724ba675SRob Herring	keep-power-in-suspend;
736724ba675SRob Herring	status = "okay";
737724ba675SRob Herring};
738