xref: /freebsd-src/sys/contrib/device-tree/src/arm/nxp/imx/imx6q-prti6q.dts (revision b2d2a78ad80ec68d4a17f5aef97d21686cb1e29b)
1f126890aSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
2f126890aSEmmanuel Vadot/*
3f126890aSEmmanuel Vadot * Copyright (c) 2014 Protonic Holland
4f126890aSEmmanuel Vadot */
5f126890aSEmmanuel Vadot
6f126890aSEmmanuel Vadot/dts-v1/;
7f126890aSEmmanuel Vadot#include "imx6q.dtsi"
8f126890aSEmmanuel Vadot#include "imx6qdl-prti6q.dtsi"
9f126890aSEmmanuel Vadot#include <dt-bindings/leds/common.h>
10f126890aSEmmanuel Vadot#include <dt-bindings/sound/fsl-imx-audmux.h>
11f126890aSEmmanuel Vadot
12f126890aSEmmanuel Vadot/ {
13f126890aSEmmanuel Vadot	model = "Protonic PRTI6Q board";
14f126890aSEmmanuel Vadot	compatible = "prt,prti6q", "fsl,imx6q";
15f126890aSEmmanuel Vadot
16f126890aSEmmanuel Vadot	memory@10000000 {
17f126890aSEmmanuel Vadot		device_type = "memory";
18f126890aSEmmanuel Vadot		reg = <0x10000000 0xf0000000>;
19f126890aSEmmanuel Vadot	};
20f126890aSEmmanuel Vadot
21f126890aSEmmanuel Vadot	backlight_lcd: backlight-lcd {
22f126890aSEmmanuel Vadot		compatible = "pwm-backlight";
23f126890aSEmmanuel Vadot		pinctrl-names = "default";
24f126890aSEmmanuel Vadot		pinctrl-0 = <&pinctrl_backlight>;
257d0873ebSEmmanuel Vadot		pwms = <&pwm1 0 5000000 0>;
26f126890aSEmmanuel Vadot		brightness-levels = <0 16 64 255>;
27f126890aSEmmanuel Vadot		num-interpolated-steps = <16>;
28f126890aSEmmanuel Vadot		default-brightness-level = <1>;
29f126890aSEmmanuel Vadot		power-supply = <&reg_3v3>;
30f126890aSEmmanuel Vadot		enable-gpios = <&gpio4 28 GPIO_ACTIVE_HIGH>;
31f126890aSEmmanuel Vadot	};
32f126890aSEmmanuel Vadot
33f126890aSEmmanuel Vadot	can_osc: can-osc {
34f126890aSEmmanuel Vadot		compatible = "fixed-clock";
35f126890aSEmmanuel Vadot		#clock-cells = <0>;
36f126890aSEmmanuel Vadot		clock-frequency = <25000000>;
37f126890aSEmmanuel Vadot	};
38f126890aSEmmanuel Vadot
39f126890aSEmmanuel Vadot	leds {
40f126890aSEmmanuel Vadot		compatible = "gpio-leds";
41f126890aSEmmanuel Vadot		pinctrl-names = "default";
42f126890aSEmmanuel Vadot		pinctrl-0 = <&pinctrl_leds>;
43f126890aSEmmanuel Vadot
44f126890aSEmmanuel Vadot		led-debug0 {
45f126890aSEmmanuel Vadot			function = LED_FUNCTION_STATUS;
46f126890aSEmmanuel Vadot			gpios = <&gpio1 8 GPIO_ACTIVE_HIGH>;
47f126890aSEmmanuel Vadot			linux,default-trigger = "heartbeat";
48f126890aSEmmanuel Vadot		};
49f126890aSEmmanuel Vadot
50f126890aSEmmanuel Vadot		led-debug1 {
51f126890aSEmmanuel Vadot			function = LED_FUNCTION_SD;
52f126890aSEmmanuel Vadot			gpios = <&gpio1 9 GPIO_ACTIVE_HIGH>;
53f126890aSEmmanuel Vadot			linux,default-trigger = "disk-activity";
54f126890aSEmmanuel Vadot		};
55f126890aSEmmanuel Vadot	};
56f126890aSEmmanuel Vadot
57f126890aSEmmanuel Vadot	panel {
58f126890aSEmmanuel Vadot		compatible = "kyo,tcg121xglp";
59f126890aSEmmanuel Vadot		backlight = <&backlight_lcd>;
60f126890aSEmmanuel Vadot
61f126890aSEmmanuel Vadot		port {
62f126890aSEmmanuel Vadot			panel_in: endpoint {
63f126890aSEmmanuel Vadot				remote-endpoint = <&lvds0_out>;
64f126890aSEmmanuel Vadot			};
65f126890aSEmmanuel Vadot		};
66f126890aSEmmanuel Vadot	};
67f126890aSEmmanuel Vadot
68f126890aSEmmanuel Vadot	reg_1v8: regulator-1v8 {
69f126890aSEmmanuel Vadot		compatible = "regulator-fixed";
70f126890aSEmmanuel Vadot		regulator-name = "1v8";
71f126890aSEmmanuel Vadot		regulator-min-microvolt = <1800000>;
72f126890aSEmmanuel Vadot		regulator-max-microvolt = <1800000>;
73f126890aSEmmanuel Vadot	};
74f126890aSEmmanuel Vadot
75f126890aSEmmanuel Vadot	reg_wifi: regulator-wifi {
76f126890aSEmmanuel Vadot		compatible = "regulator-fixed";
77f126890aSEmmanuel Vadot		pinctrl-names = "default";
78f126890aSEmmanuel Vadot		pinctrl-0 = <&pinctrl_wifi_npd>;
79f126890aSEmmanuel Vadot		enable-active-high;
80f126890aSEmmanuel Vadot		gpio = <&gpio1 26 GPIO_ACTIVE_HIGH>;
81f126890aSEmmanuel Vadot		regulator-max-microvolt = <1800000>;
82f126890aSEmmanuel Vadot		regulator-min-microvolt = <1800000>;
83f126890aSEmmanuel Vadot		regulator-name = "regulator-WL12xx";
84f126890aSEmmanuel Vadot		startup-delay-us = <70000>;
85f126890aSEmmanuel Vadot	};
86f126890aSEmmanuel Vadot
87f126890aSEmmanuel Vadot	sound {
88f126890aSEmmanuel Vadot		compatible = "simple-audio-card";
89f126890aSEmmanuel Vadot		simple-audio-card,name = "prti6q-sgtl5000";
90f126890aSEmmanuel Vadot		simple-audio-card,format = "i2s";
91f126890aSEmmanuel Vadot		simple-audio-card,widgets =
92f126890aSEmmanuel Vadot			"Microphone", "Microphone Jack",
93f126890aSEmmanuel Vadot			"Line", "Line In Jack",
94f126890aSEmmanuel Vadot			"Headphone", "Headphone Jack",
95f126890aSEmmanuel Vadot			"Speaker", "External Speaker";
96f126890aSEmmanuel Vadot		simple-audio-card,routing =
97f126890aSEmmanuel Vadot			"MIC_IN", "Microphone Jack",
98f126890aSEmmanuel Vadot			"LINE_IN", "Line In Jack",
99f126890aSEmmanuel Vadot			"Headphone Jack", "HP_OUT",
100f126890aSEmmanuel Vadot			"External Speaker", "LINE_OUT";
101f126890aSEmmanuel Vadot
102f126890aSEmmanuel Vadot		simple-audio-card,cpu {
103f126890aSEmmanuel Vadot			sound-dai = <&ssi1>;
104f126890aSEmmanuel Vadot			system-clock-frequency = <0>;
105f126890aSEmmanuel Vadot		};
106f126890aSEmmanuel Vadot
107f126890aSEmmanuel Vadot		simple-audio-card,codec {
108f126890aSEmmanuel Vadot			sound-dai = <&sgtl5000>;
109f126890aSEmmanuel Vadot			bitclock-master;
110f126890aSEmmanuel Vadot			frame-master;
111f126890aSEmmanuel Vadot		};
112f126890aSEmmanuel Vadot	};
113f126890aSEmmanuel Vadot
114*b2d2a78aSEmmanuel Vadot	spdif_out: spdif-out {
115*b2d2a78aSEmmanuel Vadot		compatible = "linux,spdif-dit";
116*b2d2a78aSEmmanuel Vadot		#sound-dai-cells = <0>;
117*b2d2a78aSEmmanuel Vadot	};
118*b2d2a78aSEmmanuel Vadot
119*b2d2a78aSEmmanuel Vadot	spdif_in: spdif-in {
120*b2d2a78aSEmmanuel Vadot		compatible = "linux,spdif-dir";
121*b2d2a78aSEmmanuel Vadot		#sound-dai-cells = <0>;
122*b2d2a78aSEmmanuel Vadot	};
123*b2d2a78aSEmmanuel Vadot
124f126890aSEmmanuel Vadot	sound-spdif {
125f126890aSEmmanuel Vadot		compatible = "fsl,imx-audio-spdif";
126f126890aSEmmanuel Vadot		model = "imx-spdif";
127*b2d2a78aSEmmanuel Vadot		audio-cpu = <&spdif>;
128*b2d2a78aSEmmanuel Vadot		audio-codec = <&spdif_out>, <&spdif_in>;
129f126890aSEmmanuel Vadot	};
130f126890aSEmmanuel Vadot};
131f126890aSEmmanuel Vadot
132f126890aSEmmanuel Vadot&audmux {
133f126890aSEmmanuel Vadot	pinctrl-names = "default";
134f126890aSEmmanuel Vadot	pinctrl-0 = <&pinctrl_audmux>;
135f126890aSEmmanuel Vadot	status = "okay";
136f126890aSEmmanuel Vadot
137f126890aSEmmanuel Vadot	mux-ssi1 {
138f126890aSEmmanuel Vadot		fsl,audmux-port = <0>;
139f126890aSEmmanuel Vadot		fsl,port-config = <
140f126890aSEmmanuel Vadot			IMX_AUDMUX_V2_PTCR_SYN		0
141f126890aSEmmanuel Vadot			IMX_AUDMUX_V2_PTCR_TFSEL(2)	0
142f126890aSEmmanuel Vadot			IMX_AUDMUX_V2_PTCR_TCSEL(2)	0
143f126890aSEmmanuel Vadot			IMX_AUDMUX_V2_PTCR_TFSDIR	0
144f126890aSEmmanuel Vadot			IMX_AUDMUX_V2_PTCR_TCLKDIR IMX_AUDMUX_V2_PDCR_RXDSEL(2)
145f126890aSEmmanuel Vadot		>;
146f126890aSEmmanuel Vadot	};
147f126890aSEmmanuel Vadot
148f126890aSEmmanuel Vadot	mux-pins3 {
149f126890aSEmmanuel Vadot		fsl,audmux-port = <2>;
150f126890aSEmmanuel Vadot		fsl,port-config = <
151f126890aSEmmanuel Vadot			IMX_AUDMUX_V2_PTCR_SYN IMX_AUDMUX_V2_PDCR_RXDSEL(0)
152f126890aSEmmanuel Vadot			0		       IMX_AUDMUX_V2_PDCR_TXRXEN
153f126890aSEmmanuel Vadot		>;
154f126890aSEmmanuel Vadot	};
155f126890aSEmmanuel Vadot};
156f126890aSEmmanuel Vadot
157f126890aSEmmanuel Vadot&can1 {
158f126890aSEmmanuel Vadot	pinctrl-names = "default";
159f126890aSEmmanuel Vadot	pinctrl-0 = <&pinctrl_can1>;
160f126890aSEmmanuel Vadot	status = "okay";
161f126890aSEmmanuel Vadot};
162f126890aSEmmanuel Vadot
163f126890aSEmmanuel Vadot&can2 {
164f126890aSEmmanuel Vadot	pinctrl-names = "default";
165f126890aSEmmanuel Vadot	pinctrl-0 = <&pinctrl_can2>;
166f126890aSEmmanuel Vadot	status = "okay";
167f126890aSEmmanuel Vadot};
168f126890aSEmmanuel Vadot
169f126890aSEmmanuel Vadot&ecspi1 {
170f126890aSEmmanuel Vadot	cs-gpios = <&gpio3 19 GPIO_ACTIVE_LOW>;
171f126890aSEmmanuel Vadot	pinctrl-names = "default";
172f126890aSEmmanuel Vadot	pinctrl-0 = <&pinctrl_ecspi1>;
173f126890aSEmmanuel Vadot	status = "okay";
174f126890aSEmmanuel Vadot
175f126890aSEmmanuel Vadot	flash@0 {
176f126890aSEmmanuel Vadot		compatible = "jedec,spi-nor";
177f126890aSEmmanuel Vadot		reg = <0>;
178f126890aSEmmanuel Vadot		spi-max-frequency = <20000000>;
179f126890aSEmmanuel Vadot	};
180f126890aSEmmanuel Vadot};
181f126890aSEmmanuel Vadot
182f126890aSEmmanuel Vadot&ecspi2 {
183f126890aSEmmanuel Vadot	cs-gpios = <&gpio2 26 GPIO_ACTIVE_LOW>, <&gpio4 25 GPIO_ACTIVE_LOW>;
184f126890aSEmmanuel Vadot	pinctrl-names = "default";
185f126890aSEmmanuel Vadot	pinctrl-0 = <&pinctrl_ecspi2 &pinctrl_ecspi2_cs>;
186f126890aSEmmanuel Vadot	status = "okay";
187f126890aSEmmanuel Vadot
188f126890aSEmmanuel Vadot	can@0 {
189f126890aSEmmanuel Vadot		compatible = "microchip,mcp2515";
190f126890aSEmmanuel Vadot		reg = <0>;
191f126890aSEmmanuel Vadot		pinctrl-names = "default";
192f126890aSEmmanuel Vadot		pinctrl-0 = <&pinctrl_can3>;
193f126890aSEmmanuel Vadot		clocks = <&can_osc>;
194f126890aSEmmanuel Vadot		interrupts-extended = <&gpio3 20 IRQ_TYPE_LEVEL_LOW>;
195f126890aSEmmanuel Vadot		spi-max-frequency = <5000000>;
196f126890aSEmmanuel Vadot	};
197f126890aSEmmanuel Vadot
198f126890aSEmmanuel Vadot	adc@1 {
199f126890aSEmmanuel Vadot		compatible = "ti,adc128s052";
200f126890aSEmmanuel Vadot		reg = <1>;
201f126890aSEmmanuel Vadot		spi-max-frequency = <2000000>;
202f126890aSEmmanuel Vadot		vref-supply = <&reg_3v3>;
203f126890aSEmmanuel Vadot	};
204f126890aSEmmanuel Vadot};
205f126890aSEmmanuel Vadot
206f126890aSEmmanuel Vadot&ecspi3 {
207f126890aSEmmanuel Vadot	cs-gpios = <&gpio4 24 GPIO_ACTIVE_LOW>;
208f126890aSEmmanuel Vadot	pinctrl-names = "default";
209f126890aSEmmanuel Vadot	pinctrl-0 = <&pinctrl_ecspi3>;
210f126890aSEmmanuel Vadot	status = "okay";
211f126890aSEmmanuel Vadot};
212f126890aSEmmanuel Vadot
213f126890aSEmmanuel Vadot&fec {
214f126890aSEmmanuel Vadot	pinctrl-names = "default";
215f126890aSEmmanuel Vadot	pinctrl-0 = <&pinctrl_enet>;
216f126890aSEmmanuel Vadot	phy-mode = "rgmii-id";
217f126890aSEmmanuel Vadot	phy-handle = <&rgmii_phy>;
218f126890aSEmmanuel Vadot	status = "okay";
219f126890aSEmmanuel Vadot
220f126890aSEmmanuel Vadot	mdio {
221f126890aSEmmanuel Vadot		#address-cells = <1>;
222f126890aSEmmanuel Vadot		#size-cells = <0>;
223f126890aSEmmanuel Vadot
224f126890aSEmmanuel Vadot		/* Microchip KSZ9031RNX PHY */
225f126890aSEmmanuel Vadot		rgmii_phy: ethernet-phy@0 {
226f126890aSEmmanuel Vadot			reg = <0>;
227f126890aSEmmanuel Vadot			interrupts-extended = <&gpio1 28 IRQ_TYPE_LEVEL_LOW>;
228f126890aSEmmanuel Vadot			reset-gpios = <&gpio1 25 GPIO_ACTIVE_LOW>;
229f126890aSEmmanuel Vadot			reset-assert-us = <10000>;
230f126890aSEmmanuel Vadot			reset-deassert-us = <300>;
231f126890aSEmmanuel Vadot		};
232f126890aSEmmanuel Vadot	};
233f126890aSEmmanuel Vadot};
234f126890aSEmmanuel Vadot
235f126890aSEmmanuel Vadot&hdmi {
236f126890aSEmmanuel Vadot	pinctrl-names = "default";
237f126890aSEmmanuel Vadot	pinctrl-0 = <&pinctrl_hdmi>;
238f126890aSEmmanuel Vadot	ddc-i2c-bus = <&i2c2>;
239f126890aSEmmanuel Vadot	status = "okay";
240f126890aSEmmanuel Vadot};
241f126890aSEmmanuel Vadot
242f126890aSEmmanuel Vadot&i2c1 {
243f126890aSEmmanuel Vadot	sgtl5000: audio-codec@a {
244f126890aSEmmanuel Vadot		compatible = "fsl,sgtl5000";
245f126890aSEmmanuel Vadot		reg = <0xa>;
246f126890aSEmmanuel Vadot		#sound-dai-cells = <0>;
247f126890aSEmmanuel Vadot		clocks = <&clks 201>;
248f126890aSEmmanuel Vadot		VDDA-supply = <&reg_3v3>;
249f126890aSEmmanuel Vadot		VDDIO-supply = <&reg_3v3>;
250f126890aSEmmanuel Vadot		VDDD-supply = <&reg_1v8>;
251f126890aSEmmanuel Vadot	};
252f126890aSEmmanuel Vadot};
253f126890aSEmmanuel Vadot
254f126890aSEmmanuel Vadot/* DDC */
255f126890aSEmmanuel Vadot&i2c2 {
256f126890aSEmmanuel Vadot	clock-frequency = <100000>;
257f126890aSEmmanuel Vadot	pinctrl-names = "default";
258f126890aSEmmanuel Vadot	pinctrl-0 = <&pinctrl_i2c2>;
259f126890aSEmmanuel Vadot	status = "okay";
260f126890aSEmmanuel Vadot};
261f126890aSEmmanuel Vadot
262f126890aSEmmanuel Vadot&i2c3 {
263f126890aSEmmanuel Vadot	adc@49 {
264f126890aSEmmanuel Vadot		compatible = "ti,ads1015";
265f126890aSEmmanuel Vadot		reg = <0x49>;
266f126890aSEmmanuel Vadot		#address-cells = <1>;
267f126890aSEmmanuel Vadot		#size-cells = <0>;
268f126890aSEmmanuel Vadot
269f126890aSEmmanuel Vadot		/* can2_l */
270f126890aSEmmanuel Vadot		channel@4 {
271f126890aSEmmanuel Vadot			reg = <4>;
272f126890aSEmmanuel Vadot			ti,gain = <3>;
273f126890aSEmmanuel Vadot			ti,datarate = <3>;
274f126890aSEmmanuel Vadot		};
275f126890aSEmmanuel Vadot
276f126890aSEmmanuel Vadot		/* can2_h */
277f126890aSEmmanuel Vadot		channel@5 {
278f126890aSEmmanuel Vadot			reg = <5>;
279f126890aSEmmanuel Vadot			ti,gain = <3>;
280f126890aSEmmanuel Vadot			ti,datarate = <3>;
281f126890aSEmmanuel Vadot		};
282f126890aSEmmanuel Vadot
283f126890aSEmmanuel Vadot		/* can1_l */
284f126890aSEmmanuel Vadot		channel@6 {
285f126890aSEmmanuel Vadot			reg = <6>;
286f126890aSEmmanuel Vadot			ti,gain = <3>;
287f126890aSEmmanuel Vadot			ti,datarate = <3>;
288f126890aSEmmanuel Vadot		};
289f126890aSEmmanuel Vadot
290f126890aSEmmanuel Vadot		/* can1_h */
291f126890aSEmmanuel Vadot		channel@7 {
292f126890aSEmmanuel Vadot			reg = <7>;
293f126890aSEmmanuel Vadot			ti,gain = <3>;
294f126890aSEmmanuel Vadot			ti,datarate = <3>;
295f126890aSEmmanuel Vadot		};
296f126890aSEmmanuel Vadot	};
297f126890aSEmmanuel Vadot};
298f126890aSEmmanuel Vadot
299f126890aSEmmanuel Vadot&pcie {
300f126890aSEmmanuel Vadot	status = "okay";
301f126890aSEmmanuel Vadot};
302f126890aSEmmanuel Vadot
303f126890aSEmmanuel Vadot&pwm1 {
304f126890aSEmmanuel Vadot	pinctrl-names = "default";
305f126890aSEmmanuel Vadot	pinctrl-0 = <&pinctrl_pwm1>;
306f126890aSEmmanuel Vadot	status = "okay";
307f126890aSEmmanuel Vadot};
308f126890aSEmmanuel Vadot
309f126890aSEmmanuel Vadot&ldb {
310f126890aSEmmanuel Vadot	status = "okay";
311f126890aSEmmanuel Vadot
312f126890aSEmmanuel Vadot	lvds-channel@0 {
313f126890aSEmmanuel Vadot		status = "okay";
314f126890aSEmmanuel Vadot
315f126890aSEmmanuel Vadot		port@4 {
316f126890aSEmmanuel Vadot			reg = <4>;
317f126890aSEmmanuel Vadot
318f126890aSEmmanuel Vadot			lvds0_out: endpoint {
319f126890aSEmmanuel Vadot				remote-endpoint = <&panel_in>;
320f126890aSEmmanuel Vadot			};
321f126890aSEmmanuel Vadot		};
322f126890aSEmmanuel Vadot	};
323f126890aSEmmanuel Vadot};
324f126890aSEmmanuel Vadot
325f126890aSEmmanuel Vadot&sata {
326f126890aSEmmanuel Vadot	status = "okay";
327f126890aSEmmanuel Vadot};
328f126890aSEmmanuel Vadot
329f126890aSEmmanuel Vadot&snvs_poweroff {
330f126890aSEmmanuel Vadot	status = "okay";
331f126890aSEmmanuel Vadot};
332f126890aSEmmanuel Vadot
333f126890aSEmmanuel Vadot&spdif {
334f126890aSEmmanuel Vadot	pinctrl-names = "default";
335f126890aSEmmanuel Vadot	pinctrl-0 = <&pinctrl_spdif>;
336f126890aSEmmanuel Vadot	status = "okay";
337f126890aSEmmanuel Vadot};
338f126890aSEmmanuel Vadot
339f126890aSEmmanuel Vadot&ssi1 {
340f126890aSEmmanuel Vadot	#sound-dai-cells = <0>;
341f126890aSEmmanuel Vadot	fsl,mode = "ac97-slave";
342f126890aSEmmanuel Vadot	status = "okay";
343f126890aSEmmanuel Vadot};
344f126890aSEmmanuel Vadot
345f126890aSEmmanuel Vadot&uart2 {
346f126890aSEmmanuel Vadot	pinctrl-names = "default";
347f126890aSEmmanuel Vadot	pinctrl-0 = <&pinctrl_uart2>;
348f126890aSEmmanuel Vadot	status = "okay";
349f126890aSEmmanuel Vadot};
350f126890aSEmmanuel Vadot
351f126890aSEmmanuel Vadot&uart5 {
352f126890aSEmmanuel Vadot	pinctrl-names = "default";
353f126890aSEmmanuel Vadot	pinctrl-0 = <&pinctrl_uart5>;
354f126890aSEmmanuel Vadot	status = "okay";
355f126890aSEmmanuel Vadot};
356f126890aSEmmanuel Vadot
357f126890aSEmmanuel Vadot&usbotg {
358f126890aSEmmanuel Vadot	pinctrl-0 = <&pinctrl_usbotg &pinctrl_usbotg_id>;
359f126890aSEmmanuel Vadot};
360f126890aSEmmanuel Vadot
361f126890aSEmmanuel Vadot&usdhc2 {
362f126890aSEmmanuel Vadot	pinctrl-names = "default";
363f126890aSEmmanuel Vadot	pinctrl-0 = <&pinctrl_usdhc2>;
364f126890aSEmmanuel Vadot	non-removable;
365f126890aSEmmanuel Vadot	vmmc-supply = <&reg_wifi>;
366f126890aSEmmanuel Vadot	cap-power-off-card;
367f126890aSEmmanuel Vadot	keep-power-in-suspend;
368f126890aSEmmanuel Vadot	status = "okay";
369f126890aSEmmanuel Vadot
370aa1a8ff2SEmmanuel Vadot	#address-cells = <1>;
371aa1a8ff2SEmmanuel Vadot	#size-cells = <0>;
372aa1a8ff2SEmmanuel Vadot	wifi@2 {
373f126890aSEmmanuel Vadot		compatible = "ti,wl1271";
374aa1a8ff2SEmmanuel Vadot		reg = <2>;
375f126890aSEmmanuel Vadot		pinctrl-names = "default";
376f126890aSEmmanuel Vadot		pinctrl-0 = <&pinctrl_wifi>;
377f126890aSEmmanuel Vadot		interrupts-extended = <&gpio1 30 IRQ_TYPE_LEVEL_HIGH>;
378f126890aSEmmanuel Vadot		ref-clock-frequency = <38400000>;
379f126890aSEmmanuel Vadot		tcxo-clock-frequency = <19200000>;
380f126890aSEmmanuel Vadot	};
381f126890aSEmmanuel Vadot};
382f126890aSEmmanuel Vadot
383f126890aSEmmanuel Vadot&iomuxc {
384f126890aSEmmanuel Vadot	pinctrl_audmux: audmuxgrp {
385f126890aSEmmanuel Vadot		fsl,pins = <
386f126890aSEmmanuel Vadot			MX6QDL_PAD_CSI0_MCLK__CCM_CLKO1		0x030b0
387f126890aSEmmanuel Vadot			MX6QDL_PAD_CSI0_DAT7__AUD3_RXD		0x130b0
388f126890aSEmmanuel Vadot			MX6QDL_PAD_CSI0_DAT4__AUD3_TXC		0x130b0
389f126890aSEmmanuel Vadot			MX6QDL_PAD_CSI0_DAT5__AUD3_TXD		0x110b0
390f126890aSEmmanuel Vadot			MX6QDL_PAD_CSI0_DAT6__AUD3_TXFS		0x130b0
391f126890aSEmmanuel Vadot		>;
392f126890aSEmmanuel Vadot	};
393f126890aSEmmanuel Vadot
394f126890aSEmmanuel Vadot	pinctrl_backlight: backlightgrp {
395f126890aSEmmanuel Vadot		fsl,pins = <
396f126890aSEmmanuel Vadot			MX6QDL_PAD_DISP0_DAT7__GPIO4_IO28	0x1b0b0
397f126890aSEmmanuel Vadot		>;
398f126890aSEmmanuel Vadot	};
399f126890aSEmmanuel Vadot
400f126890aSEmmanuel Vadot	pinctrl_can2: can2grp {
401f126890aSEmmanuel Vadot		fsl,pins = <
402f126890aSEmmanuel Vadot			MX6QDL_PAD_KEY_COL4__FLEXCAN2_TX	0x1b008
403f126890aSEmmanuel Vadot			MX6QDL_PAD_KEY_ROW4__FLEXCAN2_RX	0x1b008
404f126890aSEmmanuel Vadot		>;
405f126890aSEmmanuel Vadot	};
406f126890aSEmmanuel Vadot
407f126890aSEmmanuel Vadot	pinctrl_can3: can3grp {
408f126890aSEmmanuel Vadot		fsl,pins = <
409f126890aSEmmanuel Vadot			MX6QDL_PAD_EIM_D20__GPIO3_IO20		0x1b0b1
410f126890aSEmmanuel Vadot		>;
411f126890aSEmmanuel Vadot	};
412f126890aSEmmanuel Vadot
413f126890aSEmmanuel Vadot	pinctrl_ecspi1: ecspi1grp {
414f126890aSEmmanuel Vadot		fsl,pins = <
415f126890aSEmmanuel Vadot			MX6QDL_PAD_EIM_D17__ECSPI1_MISO		0x100b1
416f126890aSEmmanuel Vadot			MX6QDL_PAD_EIM_D18__ECSPI1_MOSI		0x100b1
417f126890aSEmmanuel Vadot			MX6QDL_PAD_EIM_D16__ECSPI1_SCLK		0x100b1
418f126890aSEmmanuel Vadot			/* CS */
419f126890aSEmmanuel Vadot			MX6QDL_PAD_EIM_D19__GPIO3_IO19		0x000b1
420f126890aSEmmanuel Vadot		>;
421f126890aSEmmanuel Vadot	};
422f126890aSEmmanuel Vadot
423f126890aSEmmanuel Vadot	pinctrl_ecspi2: ecspi2grp {
424f126890aSEmmanuel Vadot		fsl,pins = <
425f126890aSEmmanuel Vadot			MX6QDL_PAD_EIM_OE__ECSPI2_MISO		0x100b1
426f126890aSEmmanuel Vadot			MX6QDL_PAD_EIM_CS0__ECSPI2_SCLK		0x100b1
427f126890aSEmmanuel Vadot			MX6QDL_PAD_EIM_CS1__ECSPI2_MOSI		0x100b1
428f126890aSEmmanuel Vadot			MX6QDL_PAD_EIM_RW__GPIO2_IO26		0x000b1
429f126890aSEmmanuel Vadot		>;
430f126890aSEmmanuel Vadot	};
431f126890aSEmmanuel Vadot
432f126890aSEmmanuel Vadot	pinctrl_ecspi2_cs: ecspi2csgrp {
433f126890aSEmmanuel Vadot		fsl,pins = <
434f126890aSEmmanuel Vadot			/* ADC128S022 CS */
435f126890aSEmmanuel Vadot			MX6QDL_PAD_DISP0_DAT4__GPIO4_IO25	0x1b0b1
436f126890aSEmmanuel Vadot		>;
437f126890aSEmmanuel Vadot	};
438f126890aSEmmanuel Vadot
439f126890aSEmmanuel Vadot	pinctrl_ecspi3: ecspi3grp {
440f126890aSEmmanuel Vadot		fsl,pins = <
441f126890aSEmmanuel Vadot			MX6QDL_PAD_DISP0_DAT0__ECSPI3_SCLK	0x100b1
442f126890aSEmmanuel Vadot			MX6QDL_PAD_DISP0_DAT1__ECSPI3_MOSI	0x100b1
443f126890aSEmmanuel Vadot			MX6QDL_PAD_DISP0_DAT2__ECSPI3_MISO	0x100b1
444f126890aSEmmanuel Vadot			MX6QDL_PAD_DISP0_DAT3__GPIO4_IO24	0x000b1
445f126890aSEmmanuel Vadot		>;
446f126890aSEmmanuel Vadot	};
447f126890aSEmmanuel Vadot
448f126890aSEmmanuel Vadot	pinctrl_enet: enetgrp {
449f126890aSEmmanuel Vadot		fsl,pins = <
450f126890aSEmmanuel Vadot			MX6QDL_PAD_RGMII_RXC__RGMII_RXC		0x1b030
451f126890aSEmmanuel Vadot			MX6QDL_PAD_RGMII_RD0__RGMII_RD0		0x1b030
452f126890aSEmmanuel Vadot			MX6QDL_PAD_RGMII_RD1__RGMII_RD1		0x1b030
453f126890aSEmmanuel Vadot			MX6QDL_PAD_RGMII_RD2__RGMII_RD2		0x1b030
454f126890aSEmmanuel Vadot			MX6QDL_PAD_RGMII_RD3__RGMII_RD3		0x1b030
455f126890aSEmmanuel Vadot			MX6QDL_PAD_RGMII_RX_CTL__RGMII_RX_CTL	0x1b030
456f126890aSEmmanuel Vadot			MX6QDL_PAD_RGMII_TXC__RGMII_TXC		0x10030
457f126890aSEmmanuel Vadot			MX6QDL_PAD_RGMII_TD0__RGMII_TD0		0x10030
458f126890aSEmmanuel Vadot			MX6QDL_PAD_RGMII_TD1__RGMII_TD1		0x10030
459f126890aSEmmanuel Vadot			MX6QDL_PAD_RGMII_TD2__RGMII_TD2		0x10030
460f126890aSEmmanuel Vadot			MX6QDL_PAD_RGMII_TD3__RGMII_TD3		0x10030
461f126890aSEmmanuel Vadot			MX6QDL_PAD_RGMII_TX_CTL__RGMII_TX_CTL	0x10030
462f126890aSEmmanuel Vadot			MX6QDL_PAD_ENET_REF_CLK__ENET_TX_CLK	0x10030
463f126890aSEmmanuel Vadot			MX6QDL_PAD_ENET_MDIO__ENET_MDIO		0x10030
464f126890aSEmmanuel Vadot			MX6QDL_PAD_ENET_MDC__ENET_MDC		0x10030
465f126890aSEmmanuel Vadot
466f126890aSEmmanuel Vadot			/* Phy reset */
467f126890aSEmmanuel Vadot			MX6QDL_PAD_ENET_CRS_DV__GPIO1_IO25	0x1b0b0
468f126890aSEmmanuel Vadot			MX6QDL_PAD_ENET_TX_EN__GPIO1_IO28	0x1b0b1
469f126890aSEmmanuel Vadot		>;
470f126890aSEmmanuel Vadot	};
471f126890aSEmmanuel Vadot
472f126890aSEmmanuel Vadot	pinctrl_hdmi: hdmigrp {
473f126890aSEmmanuel Vadot		fsl,pins = <
474f126890aSEmmanuel Vadot			/* NOTE: DDC is done via I2C2, so DON'T
475f126890aSEmmanuel Vadot			 * configure DDC pins for HDMI!
476f126890aSEmmanuel Vadot			 */
477f126890aSEmmanuel Vadot			MX6QDL_PAD_EIM_A25__HDMI_TX_CEC_LINE	0x1f8b0
478f126890aSEmmanuel Vadot		>;
479f126890aSEmmanuel Vadot	};
480f126890aSEmmanuel Vadot
481f126890aSEmmanuel Vadot	/* DDC */
482f126890aSEmmanuel Vadot	pinctrl_i2c2: i2c2grp {
483f126890aSEmmanuel Vadot		fsl,pins = <
484f126890aSEmmanuel Vadot			MX6QDL_PAD_KEY_COL3__I2C2_SCL	0x4001b8b1
485f126890aSEmmanuel Vadot			MX6QDL_PAD_KEY_ROW3__I2C2_SDA	0x4001b8b1
486f126890aSEmmanuel Vadot		>;
487f126890aSEmmanuel Vadot	};
488f126890aSEmmanuel Vadot
489f126890aSEmmanuel Vadot	pinctrl_leds: ledsgrp {
490f126890aSEmmanuel Vadot		fsl,pins = <
491f126890aSEmmanuel Vadot			MX6QDL_PAD_GPIO_8__GPIO1_IO08		0x1b0b0
492f126890aSEmmanuel Vadot			MX6QDL_PAD_GPIO_9__GPIO1_IO09		0x1b0b0
493f126890aSEmmanuel Vadot		>;
494f126890aSEmmanuel Vadot	};
495f126890aSEmmanuel Vadot
496f126890aSEmmanuel Vadot	pinctrl_pwm1: pwm1grp {
497f126890aSEmmanuel Vadot		fsl,pins = <
498f126890aSEmmanuel Vadot			MX6QDL_PAD_DISP0_DAT8__PWM1_OUT		0x1b0b0
499f126890aSEmmanuel Vadot		>;
500f126890aSEmmanuel Vadot	};
501f126890aSEmmanuel Vadot
502f126890aSEmmanuel Vadot	pinctrl_spdif: spdifgrp {
503f126890aSEmmanuel Vadot		fsl,pins = <
504f126890aSEmmanuel Vadot			MX6QDL_PAD_GPIO_16__SPDIF_IN		0x1b0b0
505f126890aSEmmanuel Vadot			MX6QDL_PAD_GPIO_19__SPDIF_OUT		0x1b0b0
506f126890aSEmmanuel Vadot		>;
507f126890aSEmmanuel Vadot	};
508f126890aSEmmanuel Vadot
509f126890aSEmmanuel Vadot	pinctrl_uart2: uart2grp {
510f126890aSEmmanuel Vadot		fsl,pins = <
511f126890aSEmmanuel Vadot			MX6QDL_PAD_EIM_D26__UART2_RX_DATA	0x1b0b1
512f126890aSEmmanuel Vadot			MX6QDL_PAD_EIM_D27__UART2_TX_DATA	0x1b0b1
513f126890aSEmmanuel Vadot			MX6QDL_PAD_EIM_D28__UART2_DTE_CTS_B	0x1b0b1
514f126890aSEmmanuel Vadot			MX6QDL_PAD_EIM_D29__UART2_DTE_RTS_B	0x1b0b1
515f126890aSEmmanuel Vadot		>;
516f126890aSEmmanuel Vadot	};
517f126890aSEmmanuel Vadot
518f126890aSEmmanuel Vadot	pinctrl_uart5: uart5grp {
519f126890aSEmmanuel Vadot		fsl,pins = <
520f126890aSEmmanuel Vadot			MX6QDL_PAD_KEY_COL1__UART5_TX_DATA	0x1b0b1
521f126890aSEmmanuel Vadot			MX6QDL_PAD_KEY_ROW1__UART5_RX_DATA	0x1b0b1
522f126890aSEmmanuel Vadot		>;
523f126890aSEmmanuel Vadot	};
524f126890aSEmmanuel Vadot
525f126890aSEmmanuel Vadot	pinctrl_usbotg_id: usbotgidgrp {
526f126890aSEmmanuel Vadot		fsl,pins = <
527f126890aSEmmanuel Vadot			MX6QDL_PAD_ENET_RX_ER__USB_OTG_ID	0x1f058
528f126890aSEmmanuel Vadot		>;
529f126890aSEmmanuel Vadot	};
530f126890aSEmmanuel Vadot
531f126890aSEmmanuel Vadot	pinctrl_usdhc2: usdhc2grp {
532f126890aSEmmanuel Vadot		fsl,pins = <
533f126890aSEmmanuel Vadot			MX6QDL_PAD_SD2_CMD__SD2_CMD		0x170b9
534f126890aSEmmanuel Vadot			MX6QDL_PAD_SD2_CLK__SD2_CLK		0x100b9
535f126890aSEmmanuel Vadot			MX6QDL_PAD_SD2_DAT0__SD2_DATA0		0x170b9
536f126890aSEmmanuel Vadot			MX6QDL_PAD_SD2_DAT1__SD2_DATA1		0x170b9
537f126890aSEmmanuel Vadot			MX6QDL_PAD_SD2_DAT2__SD2_DATA2		0x170b9
538f126890aSEmmanuel Vadot			MX6QDL_PAD_SD2_DAT3__SD2_DATA3		0x170b9
539f126890aSEmmanuel Vadot		>;
540f126890aSEmmanuel Vadot	};
541f126890aSEmmanuel Vadot
542f126890aSEmmanuel Vadot	pinctrl_wifi: wifigrp {
543f126890aSEmmanuel Vadot		fsl,pins = <
544f126890aSEmmanuel Vadot			/* WL12xx IRQ */
545f126890aSEmmanuel Vadot			MX6QDL_PAD_ENET_TXD0__GPIO1_IO30	0x10880
546f126890aSEmmanuel Vadot		>;
547f126890aSEmmanuel Vadot	};
548f126890aSEmmanuel Vadot
549f126890aSEmmanuel Vadot	pinctrl_wifi_npd: wifinpd {
550f126890aSEmmanuel Vadot		fsl,pins = <
551f126890aSEmmanuel Vadot			MX6QDL_PAD_ENET_RXD1__GPIO1_IO26	0x1b8b0
552f126890aSEmmanuel Vadot		>;
553f126890aSEmmanuel Vadot	};
554f126890aSEmmanuel Vadot};
555