xref: /freebsd-src/sys/contrib/device-tree/src/arm/nxp/imx/imx6dl-prtvt7.dts (revision f126890ac5386406dadf7c4cfa9566cbb56537c5)
1*f126890aSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
2*f126890aSEmmanuel Vadot/*
3*f126890aSEmmanuel Vadot * Copyright (c) 2016 Protonic Holland
4*f126890aSEmmanuel Vadot */
5*f126890aSEmmanuel Vadot
6*f126890aSEmmanuel Vadot/dts-v1/;
7*f126890aSEmmanuel Vadot#include "imx6dl.dtsi"
8*f126890aSEmmanuel Vadot#include "imx6qdl-prti6q.dtsi"
9*f126890aSEmmanuel Vadot#include <dt-bindings/display/sdtv-standards.h>
10*f126890aSEmmanuel Vadot#include <dt-bindings/input/input.h>
11*f126890aSEmmanuel Vadot#include <dt-bindings/leds/common.h>
12*f126890aSEmmanuel Vadot#include <dt-bindings/sound/fsl-imx-audmux.h>
13*f126890aSEmmanuel Vadot
14*f126890aSEmmanuel Vadot/ {
15*f126890aSEmmanuel Vadot	model = "Protonic VT7";
16*f126890aSEmmanuel Vadot	compatible = "prt,prtvt7", "fsl,imx6dl";
17*f126890aSEmmanuel Vadot
18*f126890aSEmmanuel Vadot	memory@10000000 {
19*f126890aSEmmanuel Vadot		device_type = "memory";
20*f126890aSEmmanuel Vadot		reg = <0x10000000 0x20000000>;
21*f126890aSEmmanuel Vadot	};
22*f126890aSEmmanuel Vadot
23*f126890aSEmmanuel Vadot	backlight_lcd: backlight-lcd {
24*f126890aSEmmanuel Vadot		compatible = "pwm-backlight";
25*f126890aSEmmanuel Vadot		pwms = <&pwm1 0 500000 0>;
26*f126890aSEmmanuel Vadot		brightness-levels = <0 20 81 248 1000>;
27*f126890aSEmmanuel Vadot		default-brightness-level = <65>;
28*f126890aSEmmanuel Vadot		num-interpolated-steps = <21>;
29*f126890aSEmmanuel Vadot		power-supply = <&reg_bl_12v0>;
30*f126890aSEmmanuel Vadot	};
31*f126890aSEmmanuel Vadot
32*f126890aSEmmanuel Vadot	display {
33*f126890aSEmmanuel Vadot		compatible = "fsl,imx-parallel-display";
34*f126890aSEmmanuel Vadot		pinctrl-0 = <&pinctrl_ipu1_disp>;
35*f126890aSEmmanuel Vadot		pinctrl-names = "default";
36*f126890aSEmmanuel Vadot		#address-cells = <1>;
37*f126890aSEmmanuel Vadot		#size-cells = <0>;
38*f126890aSEmmanuel Vadot
39*f126890aSEmmanuel Vadot		port@0 {
40*f126890aSEmmanuel Vadot			reg = <0>;
41*f126890aSEmmanuel Vadot
42*f126890aSEmmanuel Vadot			display_in: endpoint {
43*f126890aSEmmanuel Vadot				remote-endpoint = <&ipu1_di0_disp0>;
44*f126890aSEmmanuel Vadot			};
45*f126890aSEmmanuel Vadot		};
46*f126890aSEmmanuel Vadot
47*f126890aSEmmanuel Vadot		port@1 {
48*f126890aSEmmanuel Vadot			reg = <1>;
49*f126890aSEmmanuel Vadot
50*f126890aSEmmanuel Vadot			display_out: endpoint {
51*f126890aSEmmanuel Vadot				remote-endpoint = <&panel_in>;
52*f126890aSEmmanuel Vadot			};
53*f126890aSEmmanuel Vadot		};
54*f126890aSEmmanuel Vadot	};
55*f126890aSEmmanuel Vadot
56*f126890aSEmmanuel Vadot	iio-hwmon {
57*f126890aSEmmanuel Vadot		compatible = "iio-hwmon";
58*f126890aSEmmanuel Vadot		io-channels = <&vdiv_vaccu>;
59*f126890aSEmmanuel Vadot	};
60*f126890aSEmmanuel Vadot
61*f126890aSEmmanuel Vadot	keys {
62*f126890aSEmmanuel Vadot		compatible = "gpio-keys";
63*f126890aSEmmanuel Vadot		autorepeat;
64*f126890aSEmmanuel Vadot
65*f126890aSEmmanuel Vadot		key-esc {
66*f126890aSEmmanuel Vadot			label = "GPIO Key ESC";
67*f126890aSEmmanuel Vadot			linux,code = <KEY_ESC>;
68*f126890aSEmmanuel Vadot			gpios = <&gpio_pca 0 GPIO_ACTIVE_LOW>;
69*f126890aSEmmanuel Vadot		};
70*f126890aSEmmanuel Vadot
71*f126890aSEmmanuel Vadot		key-up {
72*f126890aSEmmanuel Vadot			label = "GPIO Key UP";
73*f126890aSEmmanuel Vadot			linux,code = <KEY_UP>;
74*f126890aSEmmanuel Vadot			gpios = <&gpio_pca 1 GPIO_ACTIVE_LOW>;
75*f126890aSEmmanuel Vadot		};
76*f126890aSEmmanuel Vadot
77*f126890aSEmmanuel Vadot		key-down {
78*f126890aSEmmanuel Vadot			label = "GPIO Key DOWN";
79*f126890aSEmmanuel Vadot			linux,code = <KEY_DOWN>;
80*f126890aSEmmanuel Vadot			gpios = <&gpio_pca 4 GPIO_ACTIVE_LOW>;
81*f126890aSEmmanuel Vadot		};
82*f126890aSEmmanuel Vadot
83*f126890aSEmmanuel Vadot		key-enter {
84*f126890aSEmmanuel Vadot			label = "GPIO Key Enter";
85*f126890aSEmmanuel Vadot			linux,code = <KEY_ENTER>;
86*f126890aSEmmanuel Vadot			gpios = <&gpio_pca 3 GPIO_ACTIVE_LOW>;
87*f126890aSEmmanuel Vadot		};
88*f126890aSEmmanuel Vadot
89*f126890aSEmmanuel Vadot		key-cycle {
90*f126890aSEmmanuel Vadot			label = "GPIO Key CYCLE";
91*f126890aSEmmanuel Vadot			linux,code = <KEY_CYCLEWINDOWS>;
92*f126890aSEmmanuel Vadot			gpios = <&gpio_pca 2 GPIO_ACTIVE_LOW>;
93*f126890aSEmmanuel Vadot		};
94*f126890aSEmmanuel Vadot
95*f126890aSEmmanuel Vadot		key-f1 {
96*f126890aSEmmanuel Vadot			label = "GPIO Key F1";
97*f126890aSEmmanuel Vadot			linux,code = <KEY_F1>;
98*f126890aSEmmanuel Vadot			gpios = <&gpio_pca 14 GPIO_ACTIVE_LOW>;
99*f126890aSEmmanuel Vadot		};
100*f126890aSEmmanuel Vadot
101*f126890aSEmmanuel Vadot		key-f2 {
102*f126890aSEmmanuel Vadot			label = "GPIO Key F2";
103*f126890aSEmmanuel Vadot			linux,code = <KEY_F2>;
104*f126890aSEmmanuel Vadot			gpios = <&gpio_pca 13 GPIO_ACTIVE_LOW>;
105*f126890aSEmmanuel Vadot		};
106*f126890aSEmmanuel Vadot
107*f126890aSEmmanuel Vadot		key-f3 {
108*f126890aSEmmanuel Vadot			label = "GPIO Key F3";
109*f126890aSEmmanuel Vadot			linux,code = <KEY_F3>;
110*f126890aSEmmanuel Vadot			gpios = <&gpio_pca 12 GPIO_ACTIVE_LOW>;
111*f126890aSEmmanuel Vadot		};
112*f126890aSEmmanuel Vadot
113*f126890aSEmmanuel Vadot		key-f4 {
114*f126890aSEmmanuel Vadot			label = "GPIO Key F4";
115*f126890aSEmmanuel Vadot			linux,code = <KEY_F4>;
116*f126890aSEmmanuel Vadot			gpios = <&gpio_pca 11 GPIO_ACTIVE_LOW>;
117*f126890aSEmmanuel Vadot		};
118*f126890aSEmmanuel Vadot
119*f126890aSEmmanuel Vadot		key-f5 {
120*f126890aSEmmanuel Vadot			label = "GPIO Key F5";
121*f126890aSEmmanuel Vadot			linux,code = <KEY_F5>;
122*f126890aSEmmanuel Vadot			gpios = <&gpio_pca 10 GPIO_ACTIVE_LOW>;
123*f126890aSEmmanuel Vadot		};
124*f126890aSEmmanuel Vadot
125*f126890aSEmmanuel Vadot		key-f6 {
126*f126890aSEmmanuel Vadot			label = "GPIO Key F6";
127*f126890aSEmmanuel Vadot			linux,code = <KEY_F6>;
128*f126890aSEmmanuel Vadot			gpios = <&gpio_pca 5 GPIO_ACTIVE_LOW>;
129*f126890aSEmmanuel Vadot		};
130*f126890aSEmmanuel Vadot
131*f126890aSEmmanuel Vadot		key-f7 {
132*f126890aSEmmanuel Vadot			label = "GPIO Key F7";
133*f126890aSEmmanuel Vadot			linux,code = <KEY_F7>;
134*f126890aSEmmanuel Vadot			gpios = <&gpio_pca 6 GPIO_ACTIVE_LOW>;
135*f126890aSEmmanuel Vadot		};
136*f126890aSEmmanuel Vadot
137*f126890aSEmmanuel Vadot		key-f8 {
138*f126890aSEmmanuel Vadot			label = "GPIO Key F8";
139*f126890aSEmmanuel Vadot			linux,code = <KEY_F8>;
140*f126890aSEmmanuel Vadot			gpios = <&gpio_pca 7 GPIO_ACTIVE_LOW>;
141*f126890aSEmmanuel Vadot		};
142*f126890aSEmmanuel Vadot
143*f126890aSEmmanuel Vadot		key-f9 {
144*f126890aSEmmanuel Vadot			label = "GPIO Key F9";
145*f126890aSEmmanuel Vadot			linux,code = <KEY_F9>;
146*f126890aSEmmanuel Vadot			gpios = <&gpio_pca 8 GPIO_ACTIVE_LOW>;
147*f126890aSEmmanuel Vadot		};
148*f126890aSEmmanuel Vadot
149*f126890aSEmmanuel Vadot		key-f10 {
150*f126890aSEmmanuel Vadot			label = "GPIO Key F10";
151*f126890aSEmmanuel Vadot			linux,code = <KEY_F10>;
152*f126890aSEmmanuel Vadot			gpios = <&gpio_pca 9 GPIO_ACTIVE_LOW>;
153*f126890aSEmmanuel Vadot		};
154*f126890aSEmmanuel Vadot	};
155*f126890aSEmmanuel Vadot
156*f126890aSEmmanuel Vadot	leds {
157*f126890aSEmmanuel Vadot		compatible = "gpio-leds";
158*f126890aSEmmanuel Vadot		pinctrl-names = "default";
159*f126890aSEmmanuel Vadot		pinctrl-0 = <&pinctrl_leds>;
160*f126890aSEmmanuel Vadot
161*f126890aSEmmanuel Vadot		led-debug0 {
162*f126890aSEmmanuel Vadot			function = LED_FUNCTION_STATUS;
163*f126890aSEmmanuel Vadot			gpios = <&gpio1 8 GPIO_ACTIVE_HIGH>;
164*f126890aSEmmanuel Vadot			linux,default-trigger = "heartbeat";
165*f126890aSEmmanuel Vadot		};
166*f126890aSEmmanuel Vadot	};
167*f126890aSEmmanuel Vadot
168*f126890aSEmmanuel Vadot	panel {
169*f126890aSEmmanuel Vadot		compatible = "innolux,g070y2-t02";
170*f126890aSEmmanuel Vadot		backlight = <&backlight_lcd>;
171*f126890aSEmmanuel Vadot		power-supply = <&reg_3v3>;
172*f126890aSEmmanuel Vadot
173*f126890aSEmmanuel Vadot		port {
174*f126890aSEmmanuel Vadot			panel_in: endpoint {
175*f126890aSEmmanuel Vadot				remote-endpoint = <&display_out>;
176*f126890aSEmmanuel Vadot			};
177*f126890aSEmmanuel Vadot		};
178*f126890aSEmmanuel Vadot	};
179*f126890aSEmmanuel Vadot
180*f126890aSEmmanuel Vadot	connector {
181*f126890aSEmmanuel Vadot		compatible = "composite-video-connector";
182*f126890aSEmmanuel Vadot		label = "Composite0";
183*f126890aSEmmanuel Vadot		sdtv-standards = <SDTV_STD_PAL_B>;
184*f126890aSEmmanuel Vadot
185*f126890aSEmmanuel Vadot		port {
186*f126890aSEmmanuel Vadot			comp0_out: endpoint {
187*f126890aSEmmanuel Vadot				remote-endpoint = <&tvp5150_comp0_in>;
188*f126890aSEmmanuel Vadot			};
189*f126890aSEmmanuel Vadot		};
190*f126890aSEmmanuel Vadot	};
191*f126890aSEmmanuel Vadot
192*f126890aSEmmanuel Vadot	reg_bl_12v0: regulator-bl-12v0 {
193*f126890aSEmmanuel Vadot		compatible = "regulator-fixed";
194*f126890aSEmmanuel Vadot		pinctrl-names = "default";
195*f126890aSEmmanuel Vadot		pinctrl-0 = <&pinctrl_reg_bl_12v0>;
196*f126890aSEmmanuel Vadot		regulator-name = "bl-12v0";
197*f126890aSEmmanuel Vadot		regulator-min-microvolt = <12000000>;
198*f126890aSEmmanuel Vadot		regulator-max-microvolt = <12000000>;
199*f126890aSEmmanuel Vadot		gpio = <&gpio1 7 GPIO_ACTIVE_HIGH>;
200*f126890aSEmmanuel Vadot		enable-active-high;
201*f126890aSEmmanuel Vadot	};
202*f126890aSEmmanuel Vadot
203*f126890aSEmmanuel Vadot	reg_3v3: regulator-3v3 {
204*f126890aSEmmanuel Vadot		compatible = "regulator-fixed";
205*f126890aSEmmanuel Vadot		regulator-name = "3v3";
206*f126890aSEmmanuel Vadot		regulator-min-microvolt = <3300000>;
207*f126890aSEmmanuel Vadot		regulator-max-microvolt = <3300000>;
208*f126890aSEmmanuel Vadot	};
209*f126890aSEmmanuel Vadot
210*f126890aSEmmanuel Vadot	reg_1v8: regulator-1v8 {
211*f126890aSEmmanuel Vadot		compatible = "regulator-fixed";
212*f126890aSEmmanuel Vadot		regulator-name = "1v8";
213*f126890aSEmmanuel Vadot		regulator-min-microvolt = <1800000>;
214*f126890aSEmmanuel Vadot		regulator-max-microvolt = <1800000>;
215*f126890aSEmmanuel Vadot	};
216*f126890aSEmmanuel Vadot
217*f126890aSEmmanuel Vadot	sound {
218*f126890aSEmmanuel Vadot		compatible = "simple-audio-card";
219*f126890aSEmmanuel Vadot		simple-audio-card,name = "prti6q-sgtl5000";
220*f126890aSEmmanuel Vadot		simple-audio-card,format = "i2s";
221*f126890aSEmmanuel Vadot		simple-audio-card,widgets =
222*f126890aSEmmanuel Vadot			"Microphone", "Microphone Jack",
223*f126890aSEmmanuel Vadot			"Line", "Line In Jack",
224*f126890aSEmmanuel Vadot			"Headphone", "Headphone Jack",
225*f126890aSEmmanuel Vadot			"Speaker", "External Speaker";
226*f126890aSEmmanuel Vadot		simple-audio-card,routing =
227*f126890aSEmmanuel Vadot			"MIC_IN", "Microphone Jack",
228*f126890aSEmmanuel Vadot			"LINE_IN", "Line In Jack",
229*f126890aSEmmanuel Vadot			"Headphone Jack", "HP_OUT",
230*f126890aSEmmanuel Vadot			"External Speaker", "LINE_OUT";
231*f126890aSEmmanuel Vadot
232*f126890aSEmmanuel Vadot		simple-audio-card,cpu {
233*f126890aSEmmanuel Vadot			sound-dai = <&ssi1>;
234*f126890aSEmmanuel Vadot			system-clock-frequency = <0>;
235*f126890aSEmmanuel Vadot		};
236*f126890aSEmmanuel Vadot
237*f126890aSEmmanuel Vadot		simple-audio-card,codec {
238*f126890aSEmmanuel Vadot			sound-dai = <&sgtl5000>;
239*f126890aSEmmanuel Vadot			bitclock-master;
240*f126890aSEmmanuel Vadot			frame-master;
241*f126890aSEmmanuel Vadot		};
242*f126890aSEmmanuel Vadot	};
243*f126890aSEmmanuel Vadot
244*f126890aSEmmanuel Vadot	thermal-zones {
245*f126890aSEmmanuel Vadot		chassis-thermal {
246*f126890aSEmmanuel Vadot			polling-delay = <20000>;
247*f126890aSEmmanuel Vadot			polling-delay-passive = <0>;
248*f126890aSEmmanuel Vadot			thermal-sensors = <&tsens0>;
249*f126890aSEmmanuel Vadot
250*f126890aSEmmanuel Vadot			trips {
251*f126890aSEmmanuel Vadot				alert {
252*f126890aSEmmanuel Vadot					temperature = <105000>; /* millicelsius */
253*f126890aSEmmanuel Vadot					hysteresis = <2000>; /* millicelsius */
254*f126890aSEmmanuel Vadot					type = "passive";
255*f126890aSEmmanuel Vadot				};
256*f126890aSEmmanuel Vadot			};
257*f126890aSEmmanuel Vadot		};
258*f126890aSEmmanuel Vadot
259*f126890aSEmmanuel Vadot		touch-thermal0 {
260*f126890aSEmmanuel Vadot			polling-delay = <20000>;
261*f126890aSEmmanuel Vadot			polling-delay-passive = <0>;
262*f126890aSEmmanuel Vadot			thermal-sensors = <&touch_temp0>;
263*f126890aSEmmanuel Vadot
264*f126890aSEmmanuel Vadot			trips {
265*f126890aSEmmanuel Vadot				alert {
266*f126890aSEmmanuel Vadot					temperature = <105000>; /* millicelsius */
267*f126890aSEmmanuel Vadot					hysteresis = <2000>; /* millicelsius */
268*f126890aSEmmanuel Vadot					type = "passive";
269*f126890aSEmmanuel Vadot				};
270*f126890aSEmmanuel Vadot			};
271*f126890aSEmmanuel Vadot		};
272*f126890aSEmmanuel Vadot
273*f126890aSEmmanuel Vadot		touch-thermal1 {
274*f126890aSEmmanuel Vadot			polling-delay = <20000>;
275*f126890aSEmmanuel Vadot			polling-delay-passive = <0>;
276*f126890aSEmmanuel Vadot			thermal-sensors = <&touch_temp1>;
277*f126890aSEmmanuel Vadot
278*f126890aSEmmanuel Vadot			trips {
279*f126890aSEmmanuel Vadot				alert {
280*f126890aSEmmanuel Vadot					temperature = <105000>; /* millicelsius */
281*f126890aSEmmanuel Vadot					hysteresis = <2000>; /* millicelsius */
282*f126890aSEmmanuel Vadot					type = "passive";
283*f126890aSEmmanuel Vadot				};
284*f126890aSEmmanuel Vadot			};
285*f126890aSEmmanuel Vadot		};
286*f126890aSEmmanuel Vadot	};
287*f126890aSEmmanuel Vadot
288*f126890aSEmmanuel Vadot	touchscreen {
289*f126890aSEmmanuel Vadot		compatible = "resistive-adc-touch";
290*f126890aSEmmanuel Vadot		io-channels = <&adc_ts 1>, <&adc_ts 3>, <&adc_ts 4>,
291*f126890aSEmmanuel Vadot                              <&adc_ts 5>;
292*f126890aSEmmanuel Vadot		io-channel-names = "y", "z1", "z2", "x";
293*f126890aSEmmanuel Vadot		touchscreen-min-pressure = <64687>;
294*f126890aSEmmanuel Vadot		touchscreen-x-plate-ohms = <300>;
295*f126890aSEmmanuel Vadot		touchscreen-y-plate-ohms = <800>;
296*f126890aSEmmanuel Vadot	};
297*f126890aSEmmanuel Vadot
298*f126890aSEmmanuel Vadot	touch_temp0: touch-temperature-sensor0 {
299*f126890aSEmmanuel Vadot		compatible = "generic-adc-thermal";
300*f126890aSEmmanuel Vadot		#thermal-sensor-cells = <0>;
301*f126890aSEmmanuel Vadot		io-channels = <&adc_ts 0>;
302*f126890aSEmmanuel Vadot		io-channel-names = "sensor-channel";
303*f126890aSEmmanuel Vadot		temperature-lookup-table = <    (-40000) 736
304*f126890aSEmmanuel Vadot						85000 474>;
305*f126890aSEmmanuel Vadot	};
306*f126890aSEmmanuel Vadot
307*f126890aSEmmanuel Vadot	touch_temp1: touch-temperature-sensor1 {
308*f126890aSEmmanuel Vadot		compatible = "generic-adc-thermal";
309*f126890aSEmmanuel Vadot		#thermal-sensor-cells = <0>;
310*f126890aSEmmanuel Vadot		io-channels = <&adc_ts 7>;
311*f126890aSEmmanuel Vadot		io-channel-names = "sensor-channel";
312*f126890aSEmmanuel Vadot		temperature-lookup-table = <    (-40000) 826
313*f126890aSEmmanuel Vadot						85000 609>;
314*f126890aSEmmanuel Vadot	};
315*f126890aSEmmanuel Vadot
316*f126890aSEmmanuel Vadot	vdiv_vaccu: voltage-divider-vaccu {
317*f126890aSEmmanuel Vadot		compatible = "voltage-divider";
318*f126890aSEmmanuel Vadot		io-channels = <&adc_ts 2>;
319*f126890aSEmmanuel Vadot		output-ohms = <2500>;
320*f126890aSEmmanuel Vadot		full-ohms = <64000>;
321*f126890aSEmmanuel Vadot		#io-channel-cells = <0>;
322*f126890aSEmmanuel Vadot	};
323*f126890aSEmmanuel Vadot};
324*f126890aSEmmanuel Vadot
325*f126890aSEmmanuel Vadot&audmux {
326*f126890aSEmmanuel Vadot	pinctrl-names = "default";
327*f126890aSEmmanuel Vadot	pinctrl-0 = <&pinctrl_audmux>;
328*f126890aSEmmanuel Vadot	status = "okay";
329*f126890aSEmmanuel Vadot
330*f126890aSEmmanuel Vadot	mux-ssi1 {
331*f126890aSEmmanuel Vadot		fsl,audmux-port = <0>;
332*f126890aSEmmanuel Vadot		fsl,port-config = <
333*f126890aSEmmanuel Vadot			IMX_AUDMUX_V2_PTCR_SYN		0
334*f126890aSEmmanuel Vadot			IMX_AUDMUX_V2_PTCR_TFSEL(2)	0
335*f126890aSEmmanuel Vadot			IMX_AUDMUX_V2_PTCR_TCSEL(2)	0
336*f126890aSEmmanuel Vadot			IMX_AUDMUX_V2_PTCR_TFSDIR	0
337*f126890aSEmmanuel Vadot			IMX_AUDMUX_V2_PTCR_TCLKDIR IMX_AUDMUX_V2_PDCR_RXDSEL(2)
338*f126890aSEmmanuel Vadot		>;
339*f126890aSEmmanuel Vadot	};
340*f126890aSEmmanuel Vadot
341*f126890aSEmmanuel Vadot	mux-pins3 {
342*f126890aSEmmanuel Vadot		fsl,audmux-port = <2>;
343*f126890aSEmmanuel Vadot		fsl,port-config = <
344*f126890aSEmmanuel Vadot			IMX_AUDMUX_V2_PTCR_SYN IMX_AUDMUX_V2_PDCR_RXDSEL(0)
345*f126890aSEmmanuel Vadot			0		       IMX_AUDMUX_V2_PDCR_TXRXEN
346*f126890aSEmmanuel Vadot		>;
347*f126890aSEmmanuel Vadot	};
348*f126890aSEmmanuel Vadot};
349*f126890aSEmmanuel Vadot
350*f126890aSEmmanuel Vadot&can1 {
351*f126890aSEmmanuel Vadot	pinctrl-0 = <&pinctrl_can1 &pinctrl_can1phy>;
352*f126890aSEmmanuel Vadot};
353*f126890aSEmmanuel Vadot
354*f126890aSEmmanuel Vadot&clks {
355*f126890aSEmmanuel Vadot	assigned-clocks = <&clks IMX6QDL_CLK_LDB_DI0_SEL>;
356*f126890aSEmmanuel Vadot	assigned-clock-parents = <&clks IMX6QDL_CLK_PLL5_VIDEO_DIV>;
357*f126890aSEmmanuel Vadot};
358*f126890aSEmmanuel Vadot
359*f126890aSEmmanuel Vadot&ecspi2 {
360*f126890aSEmmanuel Vadot	cs-gpios = <&gpio2 26 GPIO_ACTIVE_LOW>;
361*f126890aSEmmanuel Vadot	pinctrl-names = "default";
362*f126890aSEmmanuel Vadot	pinctrl-0 = <&pinctrl_ecspi2>;
363*f126890aSEmmanuel Vadot	status = "okay";
364*f126890aSEmmanuel Vadot
365*f126890aSEmmanuel Vadot	adc_ts: adc@0 {
366*f126890aSEmmanuel Vadot		compatible = "ti,tsc2046e-adc";
367*f126890aSEmmanuel Vadot		reg = <0>;
368*f126890aSEmmanuel Vadot		pinctrl-0 = <&pinctrl_tsc>;
369*f126890aSEmmanuel Vadot		pinctrl-names = "default";
370*f126890aSEmmanuel Vadot		spi-max-frequency = <1000000>;
371*f126890aSEmmanuel Vadot		interrupts-extended = <&gpio3 20 IRQ_TYPE_LEVEL_LOW>;
372*f126890aSEmmanuel Vadot		#io-channel-cells = <1>;
373*f126890aSEmmanuel Vadot
374*f126890aSEmmanuel Vadot		#address-cells = <1>;
375*f126890aSEmmanuel Vadot		#size-cells = <0>;
376*f126890aSEmmanuel Vadot
377*f126890aSEmmanuel Vadot		channel@1 {
378*f126890aSEmmanuel Vadot			reg = <1>;
379*f126890aSEmmanuel Vadot			settling-time-us = <700>;
380*f126890aSEmmanuel Vadot			oversampling-ratio = <5>;
381*f126890aSEmmanuel Vadot		};
382*f126890aSEmmanuel Vadot
383*f126890aSEmmanuel Vadot		channel@3 {
384*f126890aSEmmanuel Vadot			reg = <3>;
385*f126890aSEmmanuel Vadot			settling-time-us = <700>;
386*f126890aSEmmanuel Vadot			oversampling-ratio = <5>;
387*f126890aSEmmanuel Vadot		};
388*f126890aSEmmanuel Vadot
389*f126890aSEmmanuel Vadot		channel@4 {
390*f126890aSEmmanuel Vadot			reg = <4>;
391*f126890aSEmmanuel Vadot			settling-time-us = <700>;
392*f126890aSEmmanuel Vadot			oversampling-ratio = <5>;
393*f126890aSEmmanuel Vadot		};
394*f126890aSEmmanuel Vadot
395*f126890aSEmmanuel Vadot		channel@5 {
396*f126890aSEmmanuel Vadot			reg = <5>;
397*f126890aSEmmanuel Vadot			settling-time-us = <700>;
398*f126890aSEmmanuel Vadot			oversampling-ratio = <5>;
399*f126890aSEmmanuel Vadot		};
400*f126890aSEmmanuel Vadot	};
401*f126890aSEmmanuel Vadot};
402*f126890aSEmmanuel Vadot
403*f126890aSEmmanuel Vadot&i2c1 {
404*f126890aSEmmanuel Vadot	sgtl5000: audio-codec@a {
405*f126890aSEmmanuel Vadot		compatible = "fsl,sgtl5000";
406*f126890aSEmmanuel Vadot		reg = <0xa>;
407*f126890aSEmmanuel Vadot		pinctrl-names = "default";
408*f126890aSEmmanuel Vadot		pinctrl-0 = <&pinctrl_codec>;
409*f126890aSEmmanuel Vadot		#sound-dai-cells = <0>;
410*f126890aSEmmanuel Vadot		clocks = <&clks 201>;
411*f126890aSEmmanuel Vadot		VDDA-supply = <&reg_3v3>;
412*f126890aSEmmanuel Vadot		VDDIO-supply = <&reg_3v3>;
413*f126890aSEmmanuel Vadot		VDDD-supply = <&reg_1v8>;
414*f126890aSEmmanuel Vadot	};
415*f126890aSEmmanuel Vadot
416*f126890aSEmmanuel Vadot	video@5c {
417*f126890aSEmmanuel Vadot		compatible = "ti,tvp5150";
418*f126890aSEmmanuel Vadot		reg = <0x5c>;
419*f126890aSEmmanuel Vadot
420*f126890aSEmmanuel Vadot		#address-cells = <1>;
421*f126890aSEmmanuel Vadot		#size-cells = <0>;
422*f126890aSEmmanuel Vadot
423*f126890aSEmmanuel Vadot		port@0 {
424*f126890aSEmmanuel Vadot			reg = <0>;
425*f126890aSEmmanuel Vadot
426*f126890aSEmmanuel Vadot			tvp5150_comp0_in: endpoint {
427*f126890aSEmmanuel Vadot				remote-endpoint = <&comp0_out>;
428*f126890aSEmmanuel Vadot			};
429*f126890aSEmmanuel Vadot		};
430*f126890aSEmmanuel Vadot
431*f126890aSEmmanuel Vadot		/* Output port 2 is video output pad */
432*f126890aSEmmanuel Vadot		port@2 {
433*f126890aSEmmanuel Vadot			reg = <2>;
434*f126890aSEmmanuel Vadot
435*f126890aSEmmanuel Vadot			tvp5151_to_ipu1_csi0_mux: endpoint {
436*f126890aSEmmanuel Vadot				remote-endpoint = <&ipu1_csi0_mux_from_parallel_sensor>;
437*f126890aSEmmanuel Vadot			};
438*f126890aSEmmanuel Vadot		};
439*f126890aSEmmanuel Vadot	};
440*f126890aSEmmanuel Vadot};
441*f126890aSEmmanuel Vadot
442*f126890aSEmmanuel Vadot&i2c3 {
443*f126890aSEmmanuel Vadot	rtc@51 {
444*f126890aSEmmanuel Vadot		compatible = "nxp,pcf8563";
445*f126890aSEmmanuel Vadot		reg = <0x51>;
446*f126890aSEmmanuel Vadot	};
447*f126890aSEmmanuel Vadot
448*f126890aSEmmanuel Vadot	tsens0: temperature-sensor@70 {
449*f126890aSEmmanuel Vadot		compatible = "ti,tmp103";
450*f126890aSEmmanuel Vadot		reg = <0x70>;
451*f126890aSEmmanuel Vadot		#thermal-sensor-cells = <0>;
452*f126890aSEmmanuel Vadot	};
453*f126890aSEmmanuel Vadot
454*f126890aSEmmanuel Vadot	gpio_pca: gpio@74 {
455*f126890aSEmmanuel Vadot		compatible = "nxp,pca9539";
456*f126890aSEmmanuel Vadot		reg = <0x74>;
457*f126890aSEmmanuel Vadot		interrupts-extended = <&gpio4 5 IRQ_TYPE_LEVEL_LOW>;
458*f126890aSEmmanuel Vadot		#gpio-cells = <2>;
459*f126890aSEmmanuel Vadot		gpio-controller;
460*f126890aSEmmanuel Vadot	};
461*f126890aSEmmanuel Vadot};
462*f126890aSEmmanuel Vadot
463*f126890aSEmmanuel Vadot&ipu1 {
464*f126890aSEmmanuel Vadot	pinctrl-names = "default";
465*f126890aSEmmanuel Vadot	pinctrl-0 = <&pinctrl_ipu1_csi0>;
466*f126890aSEmmanuel Vadot	status = "okay";
467*f126890aSEmmanuel Vadot};
468*f126890aSEmmanuel Vadot
469*f126890aSEmmanuel Vadot&ipu1_di0_disp0 {
470*f126890aSEmmanuel Vadot	remote-endpoint = <&display_in>;
471*f126890aSEmmanuel Vadot};
472*f126890aSEmmanuel Vadot
473*f126890aSEmmanuel Vadot&ipu1_csi0_mux_from_parallel_sensor {
474*f126890aSEmmanuel Vadot	remote-endpoint = <&tvp5151_to_ipu1_csi0_mux>;
475*f126890aSEmmanuel Vadot};
476*f126890aSEmmanuel Vadot
477*f126890aSEmmanuel Vadot&pwm1 {
478*f126890aSEmmanuel Vadot	pinctrl-names = "default";
479*f126890aSEmmanuel Vadot	pinctrl-0 = <&pinctrl_pwm1>;
480*f126890aSEmmanuel Vadot	status = "okay";
481*f126890aSEmmanuel Vadot};
482*f126890aSEmmanuel Vadot
483*f126890aSEmmanuel Vadot&snvs_poweroff {
484*f126890aSEmmanuel Vadot	status = "okay";
485*f126890aSEmmanuel Vadot};
486*f126890aSEmmanuel Vadot
487*f126890aSEmmanuel Vadot&snvs_pwrkey {
488*f126890aSEmmanuel Vadot	status = "okay";
489*f126890aSEmmanuel Vadot};
490*f126890aSEmmanuel Vadot
491*f126890aSEmmanuel Vadot&ssi1 {
492*f126890aSEmmanuel Vadot	status = "okay";
493*f126890aSEmmanuel Vadot};
494*f126890aSEmmanuel Vadot
495*f126890aSEmmanuel Vadot&usbh1 {
496*f126890aSEmmanuel Vadot	status = "disabled";
497*f126890aSEmmanuel Vadot};
498*f126890aSEmmanuel Vadot
499*f126890aSEmmanuel Vadot&iomuxc {
500*f126890aSEmmanuel Vadot	pinctrl_audmux: audmuxgrp {
501*f126890aSEmmanuel Vadot		fsl,pins = <
502*f126890aSEmmanuel Vadot			MX6QDL_PAD_CSI0_MCLK__CCM_CLKO1		0x030b0
503*f126890aSEmmanuel Vadot			MX6QDL_PAD_CSI0_DAT7__AUD3_RXD		0x130b0
504*f126890aSEmmanuel Vadot			MX6QDL_PAD_CSI0_DAT4__AUD3_TXC		0x130b0
505*f126890aSEmmanuel Vadot			MX6QDL_PAD_CSI0_DAT5__AUD3_TXD		0x110b0
506*f126890aSEmmanuel Vadot			MX6QDL_PAD_CSI0_DAT6__AUD3_TXFS		0x130b0
507*f126890aSEmmanuel Vadot		>;
508*f126890aSEmmanuel Vadot	};
509*f126890aSEmmanuel Vadot
510*f126890aSEmmanuel Vadot	pinctrl_can1phy: can1phy {
511*f126890aSEmmanuel Vadot		fsl,pins = <
512*f126890aSEmmanuel Vadot			/* CAN1_SR */
513*f126890aSEmmanuel Vadot			MX6QDL_PAD_KEY_COL3__GPIO4_IO12		0x13070
514*f126890aSEmmanuel Vadot			/* CAN1_TERM */
515*f126890aSEmmanuel Vadot			MX6QDL_PAD_GPIO_0__GPIO1_IO00		0x1b0b0
516*f126890aSEmmanuel Vadot		>;
517*f126890aSEmmanuel Vadot	};
518*f126890aSEmmanuel Vadot
519*f126890aSEmmanuel Vadot	pinctrl_codec: codecgrp {
520*f126890aSEmmanuel Vadot		fsl,pins = <
521*f126890aSEmmanuel Vadot			/* AUDIO_nRESET */
522*f126890aSEmmanuel Vadot			MX6QDL_PAD_CSI0_VSYNC__GPIO5_IO21	0x1f0b0
523*f126890aSEmmanuel Vadot		>;
524*f126890aSEmmanuel Vadot	};
525*f126890aSEmmanuel Vadot
526*f126890aSEmmanuel Vadot	pinctrl_ecspi2: ecspi2grp {
527*f126890aSEmmanuel Vadot		fsl,pins = <
528*f126890aSEmmanuel Vadot			MX6QDL_PAD_EIM_OE__ECSPI2_MISO		0x100b1
529*f126890aSEmmanuel Vadot			MX6QDL_PAD_EIM_CS0__ECSPI2_SCLK		0x100b1
530*f126890aSEmmanuel Vadot			MX6QDL_PAD_EIM_CS1__ECSPI2_MOSI		0x100b1
531*f126890aSEmmanuel Vadot			MX6QDL_PAD_EIM_RW__GPIO2_IO26		0x000b1
532*f126890aSEmmanuel Vadot		>;
533*f126890aSEmmanuel Vadot	};
534*f126890aSEmmanuel Vadot
535*f126890aSEmmanuel Vadot	pinctrl_ipu1_csi0: ipu1csi0grp {
536*f126890aSEmmanuel Vadot		fsl,pins = <
537*f126890aSEmmanuel Vadot			MX6QDL_PAD_CSI0_DAT12__IPU1_CSI0_DATA12	0x1b0b0
538*f126890aSEmmanuel Vadot			MX6QDL_PAD_CSI0_DAT13__IPU1_CSI0_DATA13	0x1b0b0
539*f126890aSEmmanuel Vadot			MX6QDL_PAD_CSI0_DAT14__IPU1_CSI0_DATA14	0x1b0b0
540*f126890aSEmmanuel Vadot			MX6QDL_PAD_CSI0_DAT15__IPU1_CSI0_DATA15	0x1b0b0
541*f126890aSEmmanuel Vadot			MX6QDL_PAD_CSI0_DAT16__IPU1_CSI0_DATA16	0x1b0b0
542*f126890aSEmmanuel Vadot			MX6QDL_PAD_CSI0_DAT17__IPU1_CSI0_DATA17	0x1b0b0
543*f126890aSEmmanuel Vadot			MX6QDL_PAD_CSI0_DAT18__IPU1_CSI0_DATA18	0x1b0b0
544*f126890aSEmmanuel Vadot			MX6QDL_PAD_CSI0_DAT19__IPU1_CSI0_DATA19	0x1b0b0
545*f126890aSEmmanuel Vadot			MX6QDL_PAD_CSI0_PIXCLK__IPU1_CSI0_PIXCLK 0x1b0b0
546*f126890aSEmmanuel Vadot			/* ITU656_nRESET */
547*f126890aSEmmanuel Vadot			MX6QDL_PAD_GPIO_2__GPIO1_IO02		0x1b0b0
548*f126890aSEmmanuel Vadot			/* ITU656_nPDN */
549*f126890aSEmmanuel Vadot			MX6QDL_PAD_CSI0_DATA_EN__GPIO5_IO20	0x1b0b0
550*f126890aSEmmanuel Vadot		>;
551*f126890aSEmmanuel Vadot	};
552*f126890aSEmmanuel Vadot
553*f126890aSEmmanuel Vadot	pinctrl_ipu1_disp: ipudisp1grp {
554*f126890aSEmmanuel Vadot		fsl,pins = <
555*f126890aSEmmanuel Vadot			MX6QDL_PAD_DI0_DISP_CLK__IPU1_DI0_DISP_CLK 0xb0
556*f126890aSEmmanuel Vadot			MX6QDL_PAD_DI0_PIN15__IPU1_DI0_PIN15	   0xb0
557*f126890aSEmmanuel Vadot
558*f126890aSEmmanuel Vadot			MX6QDL_PAD_DISP0_DAT0__IPU1_DISP0_DATA00 0xb0
559*f126890aSEmmanuel Vadot			MX6QDL_PAD_DISP0_DAT1__IPU1_DISP0_DATA01 0xb0
560*f126890aSEmmanuel Vadot			MX6QDL_PAD_DISP0_DAT2__IPU1_DISP0_DATA02 0xb0
561*f126890aSEmmanuel Vadot			MX6QDL_PAD_DISP0_DAT3__IPU1_DISP0_DATA03 0xb0
562*f126890aSEmmanuel Vadot			MX6QDL_PAD_DISP0_DAT4__IPU1_DISP0_DATA04 0xb0
563*f126890aSEmmanuel Vadot			MX6QDL_PAD_DISP0_DAT5__IPU1_DISP0_DATA05 0xb0
564*f126890aSEmmanuel Vadot			MX6QDL_PAD_DISP0_DAT6__IPU1_DISP0_DATA06 0xb0
565*f126890aSEmmanuel Vadot			MX6QDL_PAD_DISP0_DAT7__IPU1_DISP0_DATA07 0xb0
566*f126890aSEmmanuel Vadot
567*f126890aSEmmanuel Vadot			MX6QDL_PAD_DISP0_DAT8__IPU1_DISP0_DATA08 0xb0
568*f126890aSEmmanuel Vadot			MX6QDL_PAD_DISP0_DAT9__IPU1_DISP0_DATA09 0xb0
569*f126890aSEmmanuel Vadot			MX6QDL_PAD_DISP0_DAT10__IPU1_DISP0_DATA10 0xb0
570*f126890aSEmmanuel Vadot			MX6QDL_PAD_DISP0_DAT11__IPU1_DISP0_DATA11 0xb0
571*f126890aSEmmanuel Vadot			MX6QDL_PAD_DISP0_DAT12__IPU1_DISP0_DATA12 0xb0
572*f126890aSEmmanuel Vadot			MX6QDL_PAD_DISP0_DAT13__IPU1_DISP0_DATA13 0xb0
573*f126890aSEmmanuel Vadot			MX6QDL_PAD_DISP0_DAT14__IPU1_DISP0_DATA14 0xb0
574*f126890aSEmmanuel Vadot			MX6QDL_PAD_DISP0_DAT15__IPU1_DISP0_DATA15 0xb0
575*f126890aSEmmanuel Vadot
576*f126890aSEmmanuel Vadot			MX6QDL_PAD_DISP0_DAT16__IPU1_DISP0_DATA16 0xb0
577*f126890aSEmmanuel Vadot			MX6QDL_PAD_DISP0_DAT17__IPU1_DISP0_DATA17 0xb0
578*f126890aSEmmanuel Vadot			MX6QDL_PAD_DISP0_DAT18__IPU1_DISP0_DATA18 0xb0
579*f126890aSEmmanuel Vadot			MX6QDL_PAD_DISP0_DAT19__IPU1_DISP0_DATA19 0xb0
580*f126890aSEmmanuel Vadot			MX6QDL_PAD_DISP0_DAT20__IPU1_DISP0_DATA20 0xb0
581*f126890aSEmmanuel Vadot			MX6QDL_PAD_DISP0_DAT21__IPU1_DISP0_DATA21 0xb0
582*f126890aSEmmanuel Vadot			MX6QDL_PAD_DISP0_DAT22__IPU1_DISP0_DATA22 0xb0
583*f126890aSEmmanuel Vadot			MX6QDL_PAD_DISP0_DAT23__IPU1_DISP0_DATA23 0xb0
584*f126890aSEmmanuel Vadot		>;
585*f126890aSEmmanuel Vadot	};
586*f126890aSEmmanuel Vadot
587*f126890aSEmmanuel Vadot	pinctrl_leds: ledsgrp {
588*f126890aSEmmanuel Vadot		fsl,pins = <
589*f126890aSEmmanuel Vadot			MX6QDL_PAD_GPIO_8__GPIO1_IO08		0x1b0b0
590*f126890aSEmmanuel Vadot		>;
591*f126890aSEmmanuel Vadot	};
592*f126890aSEmmanuel Vadot
593*f126890aSEmmanuel Vadot	pinctrl_pwm1: pwm1grp {
594*f126890aSEmmanuel Vadot		fsl,pins = <
595*f126890aSEmmanuel Vadot			MX6QDL_PAD_GPIO_9__PWM1_OUT		0x1b0b0
596*f126890aSEmmanuel Vadot		>;
597*f126890aSEmmanuel Vadot	};
598*f126890aSEmmanuel Vadot
599*f126890aSEmmanuel Vadot	pinctrl_reg_bl_12v0: 12blgrp {
600*f126890aSEmmanuel Vadot		fsl,pins = <
601*f126890aSEmmanuel Vadot			MX6QDL_PAD_GPIO_7__GPIO1_IO07		0x1b0b0
602*f126890aSEmmanuel Vadot		>;
603*f126890aSEmmanuel Vadot	};
604*f126890aSEmmanuel Vadot
605*f126890aSEmmanuel Vadot	pinctrl_tsc: tscgrp {
606*f126890aSEmmanuel Vadot
607*f126890aSEmmanuel Vadot		fsl,pins = <
608*f126890aSEmmanuel Vadot			MX6QDL_PAD_EIM_D20__GPIO3_IO20		0x1b0b0
609*f126890aSEmmanuel Vadot			MX6QDL_PAD_EIM_EB2__GPIO2_IO30		0x1b0b0
610*f126890aSEmmanuel Vadot		>;
611*f126890aSEmmanuel Vadot	};
612*f126890aSEmmanuel Vadot};
613