xref: /linux/scripts/dtc/include-prefixes/arm/nxp/imx/imx6qdl-wandboard.dtsi (revision 3fd6c59042dbba50391e30862beac979491145fe)
1724ba675SRob Herring// SPDX-License-Identifier: GPL-2.0
2724ba675SRob Herring/*
3724ba675SRob Herring * Copyright 2013 Freescale Semiconductor, Inc.
4724ba675SRob Herring *
5724ba675SRob Herring * Author: Fabio Estevam <fabio.estevam@freescale.com>
6724ba675SRob Herring */
7724ba675SRob Herring
8724ba675SRob Herring#include <dt-bindings/gpio/gpio.h>
9724ba675SRob Herring
10724ba675SRob Herring/ {
11724ba675SRob Herring	chosen {
12724ba675SRob Herring		stdout-path = &uart1;
13724ba675SRob Herring	};
14724ba675SRob Herring
15724ba675SRob Herring	sound {
16724ba675SRob Herring		compatible = "fsl,imx6-wandboard-sgtl5000",
17724ba675SRob Herring			     "fsl,imx-audio-sgtl5000";
18724ba675SRob Herring		model = "imx6-wandboard-sgtl5000";
19724ba675SRob Herring		ssi-controller = <&ssi1>;
20724ba675SRob Herring		audio-codec = <&codec>;
21724ba675SRob Herring		audio-routing =
22724ba675SRob Herring			"MIC_IN", "Mic Jack",
23724ba675SRob Herring			"Mic Jack", "Mic Bias",
24724ba675SRob Herring			"Headphone Jack", "HP_OUT";
25724ba675SRob Herring		mux-int-port = <1>;
26724ba675SRob Herring		mux-ext-port = <3>;
27724ba675SRob Herring	};
28724ba675SRob Herring
29*d469b771SElinor Montmasson	spdif_out: spdif-out {
30*d469b771SElinor Montmasson		compatible = "linux,spdif-dit";
31*d469b771SElinor Montmasson		#sound-dai-cells = <0>;
32*d469b771SElinor Montmasson	};
33*d469b771SElinor Montmasson
34724ba675SRob Herring	sound-spdif {
35724ba675SRob Herring		compatible = "fsl,imx-audio-spdif";
36724ba675SRob Herring		model = "imx-spdif";
37*d469b771SElinor Montmasson		audio-cpu = <&spdif>;
38*d469b771SElinor Montmasson		audio-codec = <&spdif_out>;
39724ba675SRob Herring	};
40724ba675SRob Herring
41724ba675SRob Herring	reg_1p5v: regulator-1p5v {
42724ba675SRob Herring		compatible = "regulator-fixed";
43724ba675SRob Herring		regulator-name = "1P5V";
44724ba675SRob Herring		regulator-min-microvolt = <1500000>;
45724ba675SRob Herring		regulator-max-microvolt = <1500000>;
46724ba675SRob Herring		regulator-always-on;
47724ba675SRob Herring	};
48724ba675SRob Herring
49724ba675SRob Herring	reg_1p8v: regulator-1p8v {
50724ba675SRob Herring		compatible = "regulator-fixed";
51724ba675SRob Herring		regulator-name = "1P8V";
52724ba675SRob Herring		regulator-min-microvolt = <1800000>;
53724ba675SRob Herring		regulator-max-microvolt = <1800000>;
54724ba675SRob Herring		regulator-always-on;
55724ba675SRob Herring	};
56724ba675SRob Herring
57724ba675SRob Herring	reg_2p8v: regulator-2p8v {
58724ba675SRob Herring		compatible = "regulator-fixed";
59724ba675SRob Herring		regulator-name = "2P8V";
60724ba675SRob Herring		regulator-min-microvolt = <2800000>;
61724ba675SRob Herring		regulator-max-microvolt = <2800000>;
62724ba675SRob Herring		regulator-always-on;
63724ba675SRob Herring	};
64724ba675SRob Herring
65724ba675SRob Herring	reg_2p5v: regulator-2p5v {
66724ba675SRob Herring		compatible = "regulator-fixed";
67724ba675SRob Herring		regulator-name = "2P5V";
68724ba675SRob Herring		regulator-min-microvolt = <2500000>;
69724ba675SRob Herring		regulator-max-microvolt = <2500000>;
70724ba675SRob Herring		regulator-always-on;
71724ba675SRob Herring	};
72724ba675SRob Herring
73724ba675SRob Herring	reg_3p3v: regulator-3p3v {
74724ba675SRob Herring		compatible = "regulator-fixed";
75724ba675SRob Herring		regulator-name = "3P3V";
76724ba675SRob Herring		regulator-min-microvolt = <3300000>;
77724ba675SRob Herring		regulator-max-microvolt = <3300000>;
78724ba675SRob Herring		regulator-always-on;
79724ba675SRob Herring	};
80724ba675SRob Herring
81724ba675SRob Herring	reg_usb_otg_vbus: regulator-usbotgvbus {
82724ba675SRob Herring		compatible = "regulator-fixed";
83724ba675SRob Herring		regulator-name = "usb_otg_vbus";
84724ba675SRob Herring		regulator-min-microvolt = <5000000>;
85724ba675SRob Herring		regulator-max-microvolt = <5000000>;
86724ba675SRob Herring		pinctrl-names = "default";
87724ba675SRob Herring		pinctrl-0 = <&pinctrl_usbotgvbus>;
88724ba675SRob Herring		gpio = <&gpio3 22 GPIO_ACTIVE_LOW>;
89724ba675SRob Herring	};
90724ba675SRob Herring};
91724ba675SRob Herring
92724ba675SRob Herring&audmux {
93724ba675SRob Herring	pinctrl-names = "default";
94724ba675SRob Herring	pinctrl-0 = <&pinctrl_audmux>;
95724ba675SRob Herring	status = "okay";
96724ba675SRob Herring};
97724ba675SRob Herring
98724ba675SRob Herring&hdmi {
99724ba675SRob Herring	ddc-i2c-bus = <&i2c1>;
100724ba675SRob Herring	status = "okay";
101724ba675SRob Herring};
102724ba675SRob Herring
103724ba675SRob Herring&i2c1 {
104724ba675SRob Herring	clock-frequency = <100000>;
105724ba675SRob Herring	pinctrl-names = "default", "gpio";
106724ba675SRob Herring	pinctrl-0 = <&pinctrl_i2c1>;
107724ba675SRob Herring	pinctrl-1 = <&pinctrl_i2c1_gpio>;
108724ba675SRob Herring	scl-gpios = <&gpio3 21 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
109724ba675SRob Herring	sda-gpios = <&gpio3 28 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
110724ba675SRob Herring	status = "okay";
111724ba675SRob Herring};
112724ba675SRob Herring
113724ba675SRob Herring&i2c2 {
114724ba675SRob Herring	clock-frequency = <100000>;
115724ba675SRob Herring	pinctrl-names = "default", "gpio";
116724ba675SRob Herring	pinctrl-0 = <&pinctrl_i2c2>;
117724ba675SRob Herring	pinctrl-1 = <&pinctrl_i2c2_gpio>;
118724ba675SRob Herring	scl-gpios = <&gpio4 12 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
119724ba675SRob Herring	sda-gpios = <&gpio4 13 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
120724ba675SRob Herring	status = "okay";
121724ba675SRob Herring
122724ba675SRob Herring	codec: sgtl5000@a {
123724ba675SRob Herring		pinctrl-names = "default";
124724ba675SRob Herring		pinctrl-0 = <&pinctrl_mclk>;
125724ba675SRob Herring		compatible = "fsl,sgtl5000";
126724ba675SRob Herring		reg = <0x0a>;
127d54bcc3aSFabio Estevam		#sound-dai-cells = <0>;
128724ba675SRob Herring		clocks = <&clks IMX6QDL_CLK_CKO>;
129724ba675SRob Herring		VDDA-supply = <&reg_2p5v>;
130724ba675SRob Herring		VDDIO-supply = <&reg_3p3v>;
131724ba675SRob Herring		lrclk-strength = <3>;
132724ba675SRob Herring	};
133724ba675SRob Herring
134724ba675SRob Herring	camera@3c {
135724ba675SRob Herring		compatible = "ovti,ov5645";
136724ba675SRob Herring		pinctrl-names = "default";
137724ba675SRob Herring		pinctrl-0 = <&pinctrl_ov5645>;
138724ba675SRob Herring		reg = <0x3c>;
139724ba675SRob Herring		clocks = <&clks IMX6QDL_CLK_CKO2>;
140724ba675SRob Herring		clock-frequency = <24000000>;
141724ba675SRob Herring		vdddo-supply = <&reg_1p8v>;
142724ba675SRob Herring		vdda-supply = <&reg_2p8v>;
143724ba675SRob Herring		vddd-supply = <&reg_1p5v>;
144724ba675SRob Herring		enable-gpios = <&gpio1 6 GPIO_ACTIVE_HIGH>;
145724ba675SRob Herring		reset-gpios = <&gpio4 14 GPIO_ACTIVE_LOW>;
146724ba675SRob Herring
147724ba675SRob Herring		port {
148724ba675SRob Herring			ov5645_to_mipi_csi2: endpoint {
149724ba675SRob Herring				remote-endpoint = <&mipi_csi2_in>;
150724ba675SRob Herring				clock-lanes = <0>;
151724ba675SRob Herring				data-lanes = <1 2>;
152724ba675SRob Herring			};
153724ba675SRob Herring		};
154724ba675SRob Herring	};
155724ba675SRob Herring};
156724ba675SRob Herring
157724ba675SRob Herring&iomuxc {
158724ba675SRob Herring	pinctrl-names = "default";
159724ba675SRob Herring
160724ba675SRob Herring	pinctrl_audmux: audmuxgrp {
161724ba675SRob Herring		fsl,pins = <
162724ba675SRob Herring			MX6QDL_PAD_CSI0_DAT7__AUD3_RXD		0x130b0
163724ba675SRob Herring			MX6QDL_PAD_CSI0_DAT4__AUD3_TXC		0x130b0
164724ba675SRob Herring			MX6QDL_PAD_CSI0_DAT5__AUD3_TXD		0x110b0
165724ba675SRob Herring			MX6QDL_PAD_CSI0_DAT6__AUD3_TXFS		0x130b0
166724ba675SRob Herring		>;
167724ba675SRob Herring	};
168724ba675SRob Herring
169724ba675SRob Herring	pinctrl_enet: enetgrp {
170724ba675SRob Herring		fsl,pins = <
171724ba675SRob Herring			MX6QDL_PAD_ENET_MDIO__ENET_MDIO		0x1b0b0
172724ba675SRob Herring			MX6QDL_PAD_ENET_MDC__ENET_MDC		0x1b0b0
173724ba675SRob Herring			MX6QDL_PAD_RGMII_TXC__RGMII_TXC		0x1b030
174724ba675SRob Herring			MX6QDL_PAD_RGMII_TD0__RGMII_TD0		0x1b030
175724ba675SRob Herring			MX6QDL_PAD_RGMII_TD1__RGMII_TD1		0x1b030
176724ba675SRob Herring			MX6QDL_PAD_RGMII_TD2__RGMII_TD2		0x1b030
177724ba675SRob Herring			MX6QDL_PAD_RGMII_TD3__RGMII_TD3		0x1b030
178724ba675SRob Herring			MX6QDL_PAD_RGMII_TX_CTL__RGMII_TX_CTL	0x1b030
179724ba675SRob Herring			MX6QDL_PAD_ENET_REF_CLK__ENET_TX_CLK	0x1b0b0
180724ba675SRob Herring			MX6QDL_PAD_RGMII_RXC__RGMII_RXC		0x1b030
181724ba675SRob Herring			MX6QDL_PAD_RGMII_RD0__RGMII_RD0		0x1b030
182724ba675SRob Herring			MX6QDL_PAD_RGMII_RD1__RGMII_RD1		0x1b030
183724ba675SRob Herring			MX6QDL_PAD_RGMII_RD2__RGMII_RD2		0x1b030
184724ba675SRob Herring			MX6QDL_PAD_RGMII_RD3__RGMII_RD3		0x1b030
185724ba675SRob Herring			MX6QDL_PAD_RGMII_RX_CTL__RGMII_RX_CTL	0x1b030
186724ba675SRob Herring			MX6QDL_PAD_GPIO_16__ENET_REF_CLK	0x4001b0a8
187724ba675SRob Herring		>;
188724ba675SRob Herring	};
189724ba675SRob Herring
190724ba675SRob Herring	pinctrl_i2c1: i2c1grp {
191724ba675SRob Herring		fsl,pins = <
192724ba675SRob Herring			MX6QDL_PAD_EIM_D21__I2C1_SCL		0x4001b8b1
193724ba675SRob Herring			MX6QDL_PAD_EIM_D28__I2C1_SDA		0x4001b8b1
194724ba675SRob Herring		>;
195724ba675SRob Herring	};
196724ba675SRob Herring
197724ba675SRob Herring	pinctrl_i2c1_gpio: i2c1gpiogrp {
198724ba675SRob Herring		fsl,pins = <
199724ba675SRob Herring			MX6QDL_PAD_EIM_D21__GPIO3_IO21		0x4001b8b0
200724ba675SRob Herring			MX6QDL_PAD_EIM_D28__GPIO3_IO28		0x4001b8b0
201724ba675SRob Herring		>;
202724ba675SRob Herring	};
203724ba675SRob Herring
204724ba675SRob Herring	pinctrl_i2c2: i2c2grp {
205724ba675SRob Herring		fsl,pins = <
206724ba675SRob Herring			MX6QDL_PAD_KEY_COL3__I2C2_SCL		0x4001b8b1
207724ba675SRob Herring			MX6QDL_PAD_KEY_ROW3__I2C2_SDA		0x4001b8b1
208724ba675SRob Herring		>;
209724ba675SRob Herring	};
210724ba675SRob Herring
211724ba675SRob Herring	pinctrl_i2c2_gpio: i2c2gpiogrp {
212724ba675SRob Herring		fsl,pins = <
213724ba675SRob Herring			MX6QDL_PAD_KEY_COL3__GPIO4_IO12		0x4001b8b0
214724ba675SRob Herring			MX6QDL_PAD_KEY_ROW3__GPIO4_IO13		0x4001b8b0
215724ba675SRob Herring		>;
216724ba675SRob Herring	};
217724ba675SRob Herring
218724ba675SRob Herring	pinctrl_mclk: mclkgrp {
219724ba675SRob Herring		fsl,pins = <
220724ba675SRob Herring			MX6QDL_PAD_GPIO_0__CCM_CLKO1		0x130b0
221724ba675SRob Herring		>;
222724ba675SRob Herring	};
223724ba675SRob Herring
224724ba675SRob Herring	pinctrl_ov5645: ov5645grp {
225724ba675SRob Herring		fsl,pins = <
226724ba675SRob Herring			MX6QDL_PAD_GPIO_3__CCM_CLKO2		0x000b0
227724ba675SRob Herring			MX6QDL_PAD_GPIO_6__GPIO1_IO06		0x1b0b0
228724ba675SRob Herring			MX6QDL_PAD_KEY_COL4__GPIO4_IO14		0x1b0b0
229724ba675SRob Herring		>;
230724ba675SRob Herring	};
231724ba675SRob Herring
232724ba675SRob Herring	pinctrl_spdif: spdifgrp {
233724ba675SRob Herring		fsl,pins = <
234724ba675SRob Herring			MX6QDL_PAD_ENET_RXD0__SPDIF_OUT		0x1b0b0
235724ba675SRob Herring		>;
236724ba675SRob Herring	};
237724ba675SRob Herring
238724ba675SRob Herring	pinctrl_uart1: uart1grp {
239724ba675SRob Herring		fsl,pins = <
240724ba675SRob Herring			MX6QDL_PAD_CSI0_DAT10__UART1_TX_DATA	0x1b0b1
241724ba675SRob Herring			MX6QDL_PAD_CSI0_DAT11__UART1_RX_DATA	0x1b0b1
242724ba675SRob Herring		>;
243724ba675SRob Herring	};
244724ba675SRob Herring
245724ba675SRob Herring	pinctrl_uart3: uart3grp {
246724ba675SRob Herring		fsl,pins = <
247724ba675SRob Herring			MX6QDL_PAD_EIM_D24__UART3_TX_DATA	0x1b0b1
248724ba675SRob Herring			MX6QDL_PAD_EIM_D25__UART3_RX_DATA	0x1b0b1
249724ba675SRob Herring			MX6QDL_PAD_EIM_D23__UART3_CTS_B		0x1b0b1
250724ba675SRob Herring			MX6QDL_PAD_EIM_EB3__UART3_RTS_B		0x1b0b1
251724ba675SRob Herring		>;
252724ba675SRob Herring	};
253724ba675SRob Herring
254724ba675SRob Herring	pinctrl_usbotg: usbotggrp {
255724ba675SRob Herring		fsl,pins = <
256724ba675SRob Herring			MX6QDL_PAD_GPIO_1__USB_OTG_ID		0x17059
257724ba675SRob Herring		>;
258724ba675SRob Herring	};
259724ba675SRob Herring
260724ba675SRob Herring	pinctrl_usbotgvbus: usbotgvbusgrp {
261724ba675SRob Herring		fsl,pins = <
262724ba675SRob Herring			MX6QDL_PAD_EIM_D22__GPIO3_IO22		0x130b0
263724ba675SRob Herring		>;
264724ba675SRob Herring	};
265724ba675SRob Herring
266724ba675SRob Herring	pinctrl_usdhc1: usdhc1grp {
267724ba675SRob Herring		fsl,pins = <
268724ba675SRob Herring			MX6QDL_PAD_SD1_CMD__SD1_CMD		0x17059
269724ba675SRob Herring			MX6QDL_PAD_SD1_CLK__SD1_CLK		0x10059
270724ba675SRob Herring			MX6QDL_PAD_SD1_DAT0__SD1_DATA0		0x17059
271724ba675SRob Herring			MX6QDL_PAD_SD1_DAT1__SD1_DATA1		0x17059
272724ba675SRob Herring			MX6QDL_PAD_SD1_DAT2__SD1_DATA2		0x17059
273724ba675SRob Herring			MX6QDL_PAD_SD1_DAT3__SD1_DATA3		0x17059
274724ba675SRob Herring		>;
275724ba675SRob Herring	};
276724ba675SRob Herring
277724ba675SRob Herring	pinctrl_usdhc2: usdhc2grp {
278724ba675SRob Herring		fsl,pins = <
279724ba675SRob Herring			MX6QDL_PAD_SD2_CMD__SD2_CMD		0x17059
280724ba675SRob Herring			MX6QDL_PAD_SD2_CLK__SD2_CLK		0x10059
281724ba675SRob Herring			MX6QDL_PAD_SD2_DAT0__SD2_DATA0		0x17059
282724ba675SRob Herring			MX6QDL_PAD_SD2_DAT1__SD2_DATA1		0x17059
283724ba675SRob Herring			MX6QDL_PAD_SD2_DAT2__SD2_DATA2		0x17059
284724ba675SRob Herring			MX6QDL_PAD_SD2_DAT3__SD2_DATA3		0x17059
285724ba675SRob Herring		>;
286724ba675SRob Herring	};
287724ba675SRob Herring
288724ba675SRob Herring	pinctrl_usdhc3: usdhc3grp {
289724ba675SRob Herring		fsl,pins = <
290724ba675SRob Herring			MX6QDL_PAD_SD3_CMD__SD3_CMD		0x17059
291724ba675SRob Herring			MX6QDL_PAD_SD3_CLK__SD3_CLK		0x10059
292724ba675SRob Herring			MX6QDL_PAD_SD3_DAT0__SD3_DATA0		0x17059
293724ba675SRob Herring			MX6QDL_PAD_SD3_DAT1__SD3_DATA1		0x17059
294724ba675SRob Herring			MX6QDL_PAD_SD3_DAT2__SD3_DATA2		0x17059
295724ba675SRob Herring			MX6QDL_PAD_SD3_DAT3__SD3_DATA3		0x17059
296724ba675SRob Herring		>;
297724ba675SRob Herring	};
298724ba675SRob Herring};
299724ba675SRob Herring
300724ba675SRob Herring&fec {
301724ba675SRob Herring	pinctrl-names = "default";
302724ba675SRob Herring	pinctrl-0 = <&pinctrl_enet>;
303724ba675SRob Herring	phy-mode = "rgmii-id";
304724ba675SRob Herring	phy-handle = <&ethphy>;
305724ba675SRob Herring	phy-reset-gpios = <&gpio3 29 GPIO_ACTIVE_LOW>;
306724ba675SRob Herring	status = "okay";
307724ba675SRob Herring
308724ba675SRob Herring	mdio {
309724ba675SRob Herring		#address-cells = <1>;
310724ba675SRob Herring		#size-cells = <0>;
311724ba675SRob Herring
312724ba675SRob Herring		ethphy: ethernet-phy@1 {
313724ba675SRob Herring			reg = <1>;
314724ba675SRob Herring			qca,clk-out-frequency = <125000000>;
315724ba675SRob Herring		};
316724ba675SRob Herring	};
317724ba675SRob Herring};
318724ba675SRob Herring
319724ba675SRob Herring&mipi_csi {
320724ba675SRob Herring	status = "okay";
321724ba675SRob Herring
322724ba675SRob Herring	port@0 {
323724ba675SRob Herring		reg = <0>;
324724ba675SRob Herring
325724ba675SRob Herring		mipi_csi2_in: endpoint {
326724ba675SRob Herring			remote-endpoint = <&ov5645_to_mipi_csi2>;
327724ba675SRob Herring			clock-lanes = <0>;
328724ba675SRob Herring			data-lanes = <1 2>;
329724ba675SRob Herring		};
330724ba675SRob Herring	};
331724ba675SRob Herring};
332724ba675SRob Herring
333724ba675SRob Herring&spdif {
334724ba675SRob Herring	pinctrl-names = "default";
335724ba675SRob Herring	pinctrl-0 = <&pinctrl_spdif>;
336724ba675SRob Herring	status = "okay";
337724ba675SRob Herring};
338724ba675SRob Herring
339724ba675SRob Herring&ssi1 {
340724ba675SRob Herring	status = "okay";
341724ba675SRob Herring};
342724ba675SRob Herring
343724ba675SRob Herring&uart1 {
344724ba675SRob Herring	pinctrl-names = "default";
345724ba675SRob Herring	pinctrl-0 = <&pinctrl_uart1>;
346724ba675SRob Herring	status = "okay";
347724ba675SRob Herring};
348724ba675SRob Herring
349724ba675SRob Herring&uart3 {
350724ba675SRob Herring	pinctrl-names = "default";
351724ba675SRob Herring	pinctrl-0 = <&pinctrl_uart3>;
352724ba675SRob Herring	uart-has-rtscts;
353724ba675SRob Herring	status = "okay";
354724ba675SRob Herring};
355724ba675SRob Herring
356724ba675SRob Herring&usbh1 {
357724ba675SRob Herring	status = "okay";
358724ba675SRob Herring};
359724ba675SRob Herring
360724ba675SRob Herring&usbotg {
361724ba675SRob Herring	vbus-supply = <&reg_usb_otg_vbus>;
362724ba675SRob Herring	pinctrl-names = "default";
363724ba675SRob Herring	pinctrl-0 = <&pinctrl_usbotg>;
364724ba675SRob Herring	disable-over-current;
365724ba675SRob Herring	dr_mode = "otg";
366724ba675SRob Herring	status = "okay";
367724ba675SRob Herring};
368724ba675SRob Herring
369724ba675SRob Herring&usdhc1 {
370724ba675SRob Herring	pinctrl-names = "default";
371724ba675SRob Herring	pinctrl-0 = <&pinctrl_usdhc1>;
372724ba675SRob Herring	cd-gpios = <&gpio1 2 GPIO_ACTIVE_LOW>;
373724ba675SRob Herring	status = "okay";
374724ba675SRob Herring};
375724ba675SRob Herring
376724ba675SRob Herring&usdhc3 {
377724ba675SRob Herring	pinctrl-names = "default";
378724ba675SRob Herring	pinctrl-0 = <&pinctrl_usdhc3>;
379724ba675SRob Herring	cd-gpios = <&gpio3 9 GPIO_ACTIVE_LOW>;
380724ba675SRob Herring	status = "okay";
381724ba675SRob Herring};
382724ba675SRob Herring