blob: 1368a476203721f473adfac6fa682bc51c8c55c9 [file] [log] [blame]
Abel Vesaf4897e52019-02-01 16:40:16 +00001// SPDX-License-Identifier: GPL-2.0+
2//
3// Copyright 2012 Freescale Semiconductor, Inc.
4// Copyright 2011 Linaro Ltd.
5
6#include <dt-bindings/gpio/gpio.h>
7#include <dt-bindings/input/input.h>
8
9/ {
10 chosen {
11 stdout-path = &uart4;
12 };
13
14 memory@10000000 {
Marcel Ziswiler5d4bcee2022-07-21 15:27:26 +020015 device_type = "memory";
Abel Vesaf4897e52019-02-01 16:40:16 +000016 reg = <0x10000000 0x80000000>;
17 };
18
19 leds {
20 compatible = "gpio-leds";
21 pinctrl-names = "default";
22 pinctrl-0 = <&pinctrl_gpio_leds>;
23
24 user {
25 label = "debug";
26 gpios = <&gpio5 15 GPIO_ACTIVE_HIGH>;
27 };
28 };
29
30 gpio-keys {
31 compatible = "gpio-keys";
32 pinctrl-names = "default";
33 pinctrl-0 = <&pinctrl_gpio_keys>;
34
35 home {
36 label = "Home";
37 gpios = <&gpio1 11 GPIO_ACTIVE_LOW>;
38 linux,code = <KEY_HOME>;
39 wakeup-source;
40 };
41
42 back {
43 label = "Back";
44 gpios = <&gpio1 12 GPIO_ACTIVE_LOW>;
45 linux,code = <KEY_BACK>;
46 wakeup-source;
47 };
48
49 program {
50 label = "Program";
51 gpios = <&gpio2 12 GPIO_ACTIVE_LOW>;
52 linux,code = <KEY_PROGRAM>;
53 wakeup-source;
54 };
55
56 volume-up {
57 label = "Volume Up";
58 gpios = <&gpio2 15 GPIO_ACTIVE_LOW>;
59 linux,code = <KEY_VOLUMEUP>;
60 wakeup-source;
61 };
62
63 volume-down {
64 label = "Volume Down";
65 gpios = <&gpio5 14 GPIO_ACTIVE_LOW>;
66 linux,code = <KEY_VOLUMEDOWN>;
67 wakeup-source;
68 };
69 };
70
71 clocks {
72 codec_osc: anaclk2 {
73 compatible = "fixed-clock";
74 #clock-cells = <0>;
75 clock-frequency = <24576000>;
76 };
77 };
78
Marcel Ziswiler5d4bcee2022-07-21 15:27:26 +020079 reg_audio: regulator-audio {
80 compatible = "regulator-fixed";
81 regulator-name = "cs42888_supply";
82 regulator-min-microvolt = <3300000>;
83 regulator-max-microvolt = <3300000>;
84 regulator-always-on;
85 };
Abel Vesaf4897e52019-02-01 16:40:16 +000086
Marcel Ziswiler5d4bcee2022-07-21 15:27:26 +020087 reg_usb_h1_vbus: regulator-usb-h1-vbus {
88 compatible = "regulator-fixed";
89 regulator-name = "usb_h1_vbus";
90 regulator-min-microvolt = <5000000>;
91 regulator-max-microvolt = <5000000>;
92 gpio = <&max7310_b 7 GPIO_ACTIVE_HIGH>;
93 enable-active-high;
94 };
Abel Vesaf4897e52019-02-01 16:40:16 +000095
Marcel Ziswiler5d4bcee2022-07-21 15:27:26 +020096 reg_usb_otg_vbus: regulator-usb-otg-vbus {
97 compatible = "regulator-fixed";
98 regulator-name = "usb_otg_vbus";
99 regulator-min-microvolt = <5000000>;
100 regulator-max-microvolt = <5000000>;
101 gpio = <&max7310_c 1 GPIO_ACTIVE_HIGH>;
102 enable-active-high;
103 };
Abel Vesaf4897e52019-02-01 16:40:16 +0000104
Marcel Ziswiler5d4bcee2022-07-21 15:27:26 +0200105 reg_can_en: regulator-can-en {
106 compatible = "regulator-fixed";
107 regulator-name = "can-en";
108 regulator-min-microvolt = <3300000>;
109 regulator-max-microvolt = <3300000>;
110 gpio = <&max7310_b 6 GPIO_ACTIVE_HIGH>;
111 enable-active-high;
Abel Vesaf4897e52019-02-01 16:40:16 +0000112 };
113
Marcel Ziswiler5d4bcee2022-07-21 15:27:26 +0200114 reg_can_stby: regulator-can-stby {
115 compatible = "regulator-fixed";
116 regulator-name = "can-stby";
117 regulator-min-microvolt = <3300000>;
118 regulator-max-microvolt = <3300000>;
119 gpio = <&max7310_b 5 GPIO_ACTIVE_HIGH>;
120 enable-active-high;
121 vin-supply = <&reg_can_en>;
122 };
123
Abel Vesaf4897e52019-02-01 16:40:16 +0000124 sound-cs42888 {
125 compatible = "fsl,imx6-sabreauto-cs42888",
126 "fsl,imx-audio-cs42888";
127 model = "imx-cs42888";
128 audio-cpu = <&esai>;
129 audio-asrc = <&asrc>;
130 audio-codec = <&codec>;
131 audio-routing =
132 "Line Out Jack", "AOUT1L",
133 "Line Out Jack", "AOUT1R",
134 "Line Out Jack", "AOUT2L",
135 "Line Out Jack", "AOUT2R",
136 "Line Out Jack", "AOUT3L",
137 "Line Out Jack", "AOUT3R",
138 "Line Out Jack", "AOUT4L",
139 "Line Out Jack", "AOUT4R",
140 "AIN1L", "Line In Jack",
141 "AIN1R", "Line In Jack",
142 "AIN2L", "Line In Jack",
143 "AIN2R", "Line In Jack";
144 };
145
146 sound-spdif {
147 compatible = "fsl,imx-audio-spdif",
148 "fsl,imx-sabreauto-spdif";
149 model = "imx-spdif";
150 spdif-controller = <&spdif>;
151 spdif-in;
152 };
153
154 backlight {
155 compatible = "pwm-backlight";
156 pwms = <&pwm3 0 5000000>;
157 brightness-levels = <0 4 8 16 32 64 128 255>;
158 default-brightness-level = <7>;
159 status = "okay";
160 };
161
162 i2cmux {
163 compatible = "i2c-mux-gpio";
164 #address-cells = <1>;
165 #size-cells = <0>;
166 pinctrl-names = "default";
167 pinctrl-0 = <&pinctrl_i2c3mux>;
168 mux-gpios = <&gpio5 4 0>;
169 i2c-parent = <&i2c3>;
170 idle-state = <0>;
171
172 i2c@1 {
173 #address-cells = <1>;
174 #size-cells = <0>;
175 reg = <1>;
176
177 adv7180: camera@21 {
178 compatible = "adi,adv7180";
179 reg = <0x21>;
180 powerdown-gpios = <&max7310_b 2 GPIO_ACTIVE_LOW>;
181 interrupt-parent = <&gpio1>;
182 interrupts = <27 IRQ_TYPE_LEVEL_LOW>;
183
184 port {
185 adv7180_to_ipu1_csi0_mux: endpoint {
186 remote-endpoint = <&ipu1_csi0_mux_from_parallel_sensor>;
187 bus-width = <8>;
188 };
189 };
190 };
191
192 max7310_a: gpio@30 {
193 compatible = "maxim,max7310";
194 reg = <0x30>;
195 gpio-controller;
196 #gpio-cells = <2>;
197 };
198
199 max7310_b: gpio@32 {
200 compatible = "maxim,max7310";
201 reg = <0x32>;
202 gpio-controller;
203 #gpio-cells = <2>;
204 pinctrl-names = "default";
205 pinctrl-0 = <&pinctrl_max7310>;
206 reset-gpios = <&gpio1 15 GPIO_ACTIVE_LOW>;
207 };
208
209 max7310_c: gpio@34 {
210 compatible = "maxim,max7310";
211 reg = <0x34>;
212 gpio-controller;
213 #gpio-cells = <2>;
214 };
215
216 light-sensor@44 {
217 compatible = "isil,isl29023";
218 reg = <0x44>;
219 interrupt-parent = <&gpio5>;
220 interrupts = <17 IRQ_TYPE_EDGE_FALLING>;
221 };
222
223 magnetometer@e {
224 compatible = "fsl,mag3110";
225 reg = <0x0e>;
226 interrupt-parent = <&gpio2>;
227 interrupts = <29 IRQ_TYPE_EDGE_RISING>;
228 };
229
230 accelerometer@1c {
231 compatible = "fsl,mma8451";
232 reg = <0x1c>;
Marcel Ziswiler5d4bcee2022-07-21 15:27:26 +0200233 pinctrl-names = "default";
234 pinctrl-0 = <&pinctrl_mma8451_int>;
Abel Vesaf4897e52019-02-01 16:40:16 +0000235 interrupt-parent = <&gpio6>;
236 interrupts = <31 IRQ_TYPE_LEVEL_LOW>;
237 };
238 };
239 };
240};
241
242&ipu1_csi0_from_ipu1_csi0_mux {
243 bus-width = <8>;
244};
245
246&ipu1_csi0_mux_from_parallel_sensor {
247 remote-endpoint = <&adv7180_to_ipu1_csi0_mux>;
248 bus-width = <8>;
249};
250
251&ipu1_csi0 {
252 pinctrl-names = "default";
253 pinctrl-0 = <&pinctrl_ipu1_csi0>;
254};
255
256&clks {
257 assigned-clocks = <&clks IMX6QDL_PLL4_BYPASS_SRC>,
258 <&clks IMX6QDL_PLL4_BYPASS>,
259 <&clks IMX6QDL_CLK_LDB_DI0_SEL>,
260 <&clks IMX6QDL_CLK_LDB_DI1_SEL>,
261 <&clks IMX6QDL_CLK_PLL4_POST_DIV>;
262 assigned-clock-parents = <&clks IMX6QDL_CLK_LVDS2_IN>,
263 <&clks IMX6QDL_PLL4_BYPASS_SRC>,
264 <&clks IMX6QDL_CLK_PLL3_USB_OTG>,
265 <&clks IMX6QDL_CLK_PLL3_USB_OTG>;
266 assigned-clock-rates = <0>, <0>, <0>, <0>, <24576000>;
267};
268
269&ecspi1 {
Marcel Ziswiler5d4bcee2022-07-21 15:27:26 +0200270 cs-gpios = <&gpio3 19 GPIO_ACTIVE_LOW>;
Abel Vesaf4897e52019-02-01 16:40:16 +0000271 pinctrl-names = "default";
272 pinctrl-0 = <&pinctrl_ecspi1 &pinctrl_ecspi1_cs>;
273 status = "disabled"; /* pin conflict with WEIM NOR */
274
Marcel Ziswiler5d4bcee2022-07-21 15:27:26 +0200275 flash: flash@0 {
Abel Vesaf4897e52019-02-01 16:40:16 +0000276 #address-cells = <1>;
277 #size-cells = <1>;
278 compatible = "st,m25p32", "jedec,spi-nor";
279 spi-max-frequency = <20000000>;
280 reg = <0>;
281 };
282};
283
284&esai {
285 pinctrl-names = "default";
286 pinctrl-0 = <&pinctrl_esai>;
287 assigned-clocks = <&clks IMX6QDL_CLK_ESAI_SEL>,
288 <&clks IMX6QDL_CLK_ESAI_EXTAL>;
289 assigned-clock-parents = <&clks IMX6QDL_CLK_PLL4_AUDIO_DIV>;
290 assigned-clock-rates = <0>, <24576000>;
291 status = "okay";
292};
293
294&fec {
295 pinctrl-names = "default";
296 pinctrl-0 = <&pinctrl_enet>;
Fabio Estevam305a4ca2020-06-18 22:14:42 -0300297 phy-mode = "rgmii-id";
Abel Vesaf4897e52019-02-01 16:40:16 +0000298 interrupts-extended = <&gpio1 6 IRQ_TYPE_LEVEL_HIGH>,
299 <&intc 0 119 IRQ_TYPE_LEVEL_HIGH>;
300 fsl,err006687-workaround-present;
Marcel Ziswiler5d4bcee2022-07-21 15:27:26 +0200301 fsl,magic-packet;
302 status = "okay";
303};
304
305&can1 {
306 pinctrl-names = "default";
307 pinctrl-0 = <&pinctrl_flexcan1>;
308 xceiver-supply = <&reg_can_stby>;
309 status = "disabled"; /* pin conflict with fec */
310};
311
312&can2 {
313 pinctrl-names = "default";
314 pinctrl-0 = <&pinctrl_flexcan2>;
315 xceiver-supply = <&reg_can_stby>;
Abel Vesaf4897e52019-02-01 16:40:16 +0000316 status = "okay";
317};
318
319&gpmi {
320 pinctrl-names = "default";
321 pinctrl-0 = <&pinctrl_gpmi_nand>;
322 status = "okay";
323};
324
325&hdmi {
326 pinctrl-names = "default";
327 pinctrl-0 = <&pinctrl_hdmi_cec>;
328 ddc-i2c-bus = <&i2c2>;
329 status = "okay";
330};
331
332&i2c2 {
333 clock-frequency = <100000>;
334 pinctrl-names = "default";
335 pinctrl-0 = <&pinctrl_i2c2>;
336 status = "okay";
337
338 pmic: pfuze100@8 {
339 compatible = "fsl,pfuze100";
340 reg = <0x08>;
341
342 regulators {
343 sw1a_reg: sw1ab {
344 regulator-min-microvolt = <300000>;
345 regulator-max-microvolt = <1875000>;
346 regulator-boot-on;
347 regulator-always-on;
348 regulator-ramp-delay = <6250>;
349 };
350
351 sw1c_reg: sw1c {
352 regulator-min-microvolt = <300000>;
353 regulator-max-microvolt = <1875000>;
354 regulator-boot-on;
355 regulator-always-on;
356 regulator-ramp-delay = <6250>;
357 };
358
359 sw2_reg: sw2 {
360 regulator-min-microvolt = <800000>;
361 regulator-max-microvolt = <3300000>;
362 regulator-boot-on;
363 regulator-always-on;
364 };
365
366 sw3a_reg: sw3a {
367 regulator-min-microvolt = <400000>;
368 regulator-max-microvolt = <1975000>;
369 regulator-boot-on;
370 regulator-always-on;
371 };
372
373 sw3b_reg: sw3b {
374 regulator-min-microvolt = <400000>;
375 regulator-max-microvolt = <1975000>;
376 regulator-boot-on;
377 regulator-always-on;
378 };
379
380 sw4_reg: sw4 {
381 regulator-min-microvolt = <800000>;
382 regulator-max-microvolt = <3300000>;
383 };
384
385 swbst_reg: swbst {
386 regulator-min-microvolt = <5000000>;
387 regulator-max-microvolt = <5150000>;
388 };
389
390 snvs_reg: vsnvs {
391 regulator-min-microvolt = <1000000>;
392 regulator-max-microvolt = <3000000>;
393 regulator-boot-on;
394 regulator-always-on;
395 };
396
397 vref_reg: vrefddr {
398 regulator-boot-on;
399 regulator-always-on;
400 };
401
402 vgen1_reg: vgen1 {
403 regulator-min-microvolt = <800000>;
404 regulator-max-microvolt = <1550000>;
405 };
406
407 vgen2_reg: vgen2 {
408 regulator-min-microvolt = <800000>;
409 regulator-max-microvolt = <1550000>;
410 };
411
412 vgen3_reg: vgen3 {
413 regulator-min-microvolt = <1800000>;
414 regulator-max-microvolt = <3300000>;
415 };
416
417 vgen4_reg: vgen4 {
418 regulator-min-microvolt = <1800000>;
419 regulator-max-microvolt = <3300000>;
420 regulator-always-on;
421 };
422
423 vgen5_reg: vgen5 {
424 regulator-min-microvolt = <1800000>;
425 regulator-max-microvolt = <3300000>;
426 regulator-always-on;
427 };
428
429 vgen6_reg: vgen6 {
430 regulator-min-microvolt = <1800000>;
431 regulator-max-microvolt = <3300000>;
432 regulator-always-on;
433 };
434 };
435 };
436
437 codec: cs42888@48 {
438 compatible = "cirrus,cs42888";
439 reg = <0x48>;
440 clocks = <&codec_osc>;
441 clock-names = "mclk";
442 VA-supply = <&reg_audio>;
443 VD-supply = <&reg_audio>;
444 VLS-supply = <&reg_audio>;
445 VLC-supply = <&reg_audio>;
446 };
447
448 touchscreen@4 {
449 compatible = "eeti,egalax_ts";
450 reg = <0x04>;
451 pinctrl-names = "default";
452 pinctrl-0 = <&pinctrl_egalax_int>;
453 interrupt-parent = <&gpio2>;
454 interrupts = <28 IRQ_TYPE_EDGE_FALLING>;
455 wakeup-gpios = <&gpio2 28 GPIO_ACTIVE_HIGH>;
456 };
457};
458
459&i2c3 {
460 pinctrl-names = "default";
461 pinctrl-0 = <&pinctrl_i2c3>;
462 status = "okay";
463};
464
465&iomuxc {
466 pinctrl-names = "default";
467 pinctrl-0 = <&pinctrl_hog>;
468
469 imx6qdl-sabreauto {
470 pinctrl_hog: hoggrp {
471 fsl,pins = <
472 MX6QDL_PAD_NANDF_CS2__GPIO6_IO15 0x80000000
473 MX6QDL_PAD_SD2_DAT2__GPIO1_IO13 0x80000000
474 MX6QDL_PAD_GPIO_18__SD3_VSELECT 0x17059
475 >;
476 };
477
478 pinctrl_ecspi1: ecspi1grp {
479 fsl,pins = <
480 MX6QDL_PAD_EIM_D17__ECSPI1_MISO 0x100b1
481 MX6QDL_PAD_EIM_D18__ECSPI1_MOSI 0x100b1
482 MX6QDL_PAD_EIM_D16__ECSPI1_SCLK 0x100b1
483 >;
484 };
485
486 pinctrl_ecspi1_cs: ecspi1cs {
487 fsl,pins = <
488 MX6QDL_PAD_EIM_D19__GPIO3_IO19 0x80000000
489 >;
490 };
491
492 pinctrl_egalax_int: egalax-intgrp {
493 fsl,pins = <
494 MX6QDL_PAD_EIM_EB0__GPIO2_IO28 0xb0b1
495 >;
496 };
497
498 pinctrl_enet: enetgrp {
499 fsl,pins = <
500 MX6QDL_PAD_KEY_COL1__ENET_MDIO 0x1b0b0
501 MX6QDL_PAD_KEY_COL2__ENET_MDC 0x1b0b0
502 MX6QDL_PAD_RGMII_TXC__RGMII_TXC 0x1b030
503 MX6QDL_PAD_RGMII_TD0__RGMII_TD0 0x1b030
504 MX6QDL_PAD_RGMII_TD1__RGMII_TD1 0x1b030
505 MX6QDL_PAD_RGMII_TD2__RGMII_TD2 0x1b030
506 MX6QDL_PAD_RGMII_TD3__RGMII_TD3 0x1b030
507 MX6QDL_PAD_RGMII_TX_CTL__RGMII_TX_CTL 0x1b030
508 MX6QDL_PAD_ENET_REF_CLK__ENET_TX_CLK 0x1b0b0
509 MX6QDL_PAD_RGMII_RXC__RGMII_RXC 0x1b030
510 MX6QDL_PAD_RGMII_RD0__RGMII_RD0 0x1b030
511 MX6QDL_PAD_RGMII_RD1__RGMII_RD1 0x1b030
512 MX6QDL_PAD_RGMII_RD2__RGMII_RD2 0x1b030
513 MX6QDL_PAD_RGMII_RD3__RGMII_RD3 0x1b030
514 MX6QDL_PAD_RGMII_RX_CTL__RGMII_RX_CTL 0x1b030
515 MX6QDL_PAD_GPIO_6__ENET_IRQ 0x000b1
516 >;
517 };
518
519 pinctrl_esai: esaigrp {
520 fsl,pins = <
521 MX6QDL_PAD_ENET_CRS_DV__ESAI_TX_CLK 0x1b030
522 MX6QDL_PAD_ENET_RXD1__ESAI_TX_FS 0x1b030
523 MX6QDL_PAD_ENET_TX_EN__ESAI_TX3_RX2 0x1b030
524 MX6QDL_PAD_GPIO_5__ESAI_TX2_RX3 0x1b030
525 MX6QDL_PAD_ENET_TXD0__ESAI_TX4_RX1 0x1b030
526 MX6QDL_PAD_ENET_MDC__ESAI_TX5_RX0 0x1b030
527 MX6QDL_PAD_GPIO_17__ESAI_TX0 0x1b030
528 MX6QDL_PAD_NANDF_CS3__ESAI_TX1 0x1b030
529 MX6QDL_PAD_ENET_MDIO__ESAI_RX_CLK 0x1b030
530 MX6QDL_PAD_GPIO_9__ESAI_RX_FS 0x1b030
531 >;
532 };
533
Marcel Ziswiler5d4bcee2022-07-21 15:27:26 +0200534 pinctrl_flexcan1: flexcan1grp {
535 fsl,pins = <
536 MX6QDL_PAD_KEY_ROW2__FLEXCAN1_RX 0x17059
537 MX6QDL_PAD_KEY_COL2__FLEXCAN1_TX 0x17059
538 >;
539 };
540
541 pinctrl_flexcan2: flexcan2grp {
542 fsl,pins = <
543 MX6QDL_PAD_KEY_COL4__FLEXCAN2_TX 0x17059
544 MX6QDL_PAD_KEY_ROW4__FLEXCAN2_RX 0x17059
545 >;
546 };
547
Abel Vesaf4897e52019-02-01 16:40:16 +0000548 pinctrl_gpio_keys: gpiokeysgrp {
549 fsl,pins = <
550 MX6QDL_PAD_SD2_CMD__GPIO1_IO11 0x1b0b0
551 MX6QDL_PAD_SD2_DAT3__GPIO1_IO12 0x1b0b0
552 MX6QDL_PAD_SD4_DAT4__GPIO2_IO12 0x1b0b0
553 MX6QDL_PAD_SD4_DAT7__GPIO2_IO15 0x1b0b0
554 MX6QDL_PAD_DISP0_DAT20__GPIO5_IO14 0x1b0b0
555 >;
556 };
557
558 pinctrl_gpio_leds: gpioledsgrp {
559 fsl,pins = <
560 MX6QDL_PAD_DISP0_DAT21__GPIO5_IO15 0x80000000
561 >;
562 };
563
564 pinctrl_gpmi_nand: gpminandgrp {
565 fsl,pins = <
566 MX6QDL_PAD_NANDF_CLE__NAND_CLE 0xb0b1
567 MX6QDL_PAD_NANDF_ALE__NAND_ALE 0xb0b1
568 MX6QDL_PAD_NANDF_WP_B__NAND_WP_B 0xb0b1
569 MX6QDL_PAD_NANDF_RB0__NAND_READY_B 0xb000
570 MX6QDL_PAD_NANDF_CS0__NAND_CE0_B 0xb0b1
571 MX6QDL_PAD_NANDF_CS1__NAND_CE1_B 0xb0b1
572 MX6QDL_PAD_SD4_CMD__NAND_RE_B 0xb0b1
573 MX6QDL_PAD_SD4_CLK__NAND_WE_B 0xb0b1
574 MX6QDL_PAD_NANDF_D0__NAND_DATA00 0xb0b1
575 MX6QDL_PAD_NANDF_D1__NAND_DATA01 0xb0b1
576 MX6QDL_PAD_NANDF_D2__NAND_DATA02 0xb0b1
577 MX6QDL_PAD_NANDF_D3__NAND_DATA03 0xb0b1
578 MX6QDL_PAD_NANDF_D4__NAND_DATA04 0xb0b1
579 MX6QDL_PAD_NANDF_D5__NAND_DATA05 0xb0b1
580 MX6QDL_PAD_NANDF_D6__NAND_DATA06 0xb0b1
581 MX6QDL_PAD_NANDF_D7__NAND_DATA07 0xb0b1
582 MX6QDL_PAD_SD4_DAT0__NAND_DQS 0x00b1
583 >;
584 };
585
586 pinctrl_hdmi_cec: hdmicecgrp {
587 fsl,pins = <
588 MX6QDL_PAD_EIM_A25__HDMI_TX_CEC_LINE 0x1f8b0
589 >;
590 };
591
592 pinctrl_i2c2: i2c2grp {
593 fsl,pins = <
594 MX6QDL_PAD_EIM_EB2__I2C2_SCL 0x4001b8b1
595 MX6QDL_PAD_KEY_ROW3__I2C2_SDA 0x4001b8b1
596 >;
597 };
598
599 pinctrl_i2c3: i2c3grp {
600 fsl,pins = <
601 MX6QDL_PAD_GPIO_3__I2C3_SCL 0x4001b8b1
602 MX6QDL_PAD_EIM_D18__I2C3_SDA 0x4001b8b1
603 >;
604 };
605
606 pinctrl_i2c3mux: i2c3muxgrp {
607 fsl,pins = <
608 MX6QDL_PAD_EIM_A24__GPIO5_IO04 0x0b0b1
609 >;
610 };
611
612 pinctrl_ipu1_csi0: ipu1csi0grp {
613 fsl,pins = <
614 MX6QDL_PAD_CSI0_DAT12__IPU1_CSI0_DATA12 0x1b0b0
615 MX6QDL_PAD_CSI0_DAT13__IPU1_CSI0_DATA13 0x1b0b0
616 MX6QDL_PAD_CSI0_DAT14__IPU1_CSI0_DATA14 0x1b0b0
617 MX6QDL_PAD_CSI0_DAT15__IPU1_CSI0_DATA15 0x1b0b0
618 MX6QDL_PAD_CSI0_DAT16__IPU1_CSI0_DATA16 0x1b0b0
619 MX6QDL_PAD_CSI0_DAT17__IPU1_CSI0_DATA17 0x1b0b0
620 MX6QDL_PAD_CSI0_DAT18__IPU1_CSI0_DATA18 0x1b0b0
621 MX6QDL_PAD_CSI0_DAT19__IPU1_CSI0_DATA19 0x1b0b0
622 MX6QDL_PAD_CSI0_PIXCLK__IPU1_CSI0_PIXCLK 0x1b0b0
623 MX6QDL_PAD_CSI0_MCLK__IPU1_CSI0_HSYNC 0x1b0b0
624 MX6QDL_PAD_CSI0_VSYNC__IPU1_CSI0_VSYNC 0x1b0b0
625 >;
626 };
627
628 pinctrl_max7310: max7310grp {
629 fsl,pins = <
630 MX6QDL_PAD_SD2_DAT0__GPIO1_IO15 0x1b0b0
631 >;
632 };
633
Marcel Ziswiler5d4bcee2022-07-21 15:27:26 +0200634 pinctrl_mma8451_int: mma8451intgrp {
635 fsl,pins = <
636 MX6QDL_PAD_EIM_BCLK__GPIO6_IO31 0xb0b1
637 >;
638 };
639
Abel Vesaf4897e52019-02-01 16:40:16 +0000640 pinctrl_pwm3: pwm1grp {
641 fsl,pins = <
642 MX6QDL_PAD_SD4_DAT1__PWM3_OUT 0x1b0b1
643 >;
644 };
645
646 pinctrl_gpt_input_capture0: gptinputcapture0grp {
647 fsl,pins = <
648 MX6QDL_PAD_SD1_DAT0__GPT_CAPTURE1 0x1b0b0
649 >;
650 };
651
652 pinctrl_gpt_input_capture1: gptinputcapture1grp {
653 fsl,pins = <
654 MX6QDL_PAD_SD1_DAT1__GPT_CAPTURE2 0x1b0b0
655 >;
656 };
657
658 pinctrl_spdif: spdifgrp {
659 fsl,pins = <
660 MX6QDL_PAD_KEY_COL3__SPDIF_IN 0x1b0b0
661 >;
662 };
663
664 pinctrl_uart4: uart4grp {
665 fsl,pins = <
666 MX6QDL_PAD_KEY_COL0__UART4_TX_DATA 0x1b0b1
667 MX6QDL_PAD_KEY_ROW0__UART4_RX_DATA 0x1b0b1
668 >;
669 };
670
671 pinctrl_usbotg: usbotggrp {
672 fsl,pins = <
673 MX6QDL_PAD_ENET_RX_ER__USB_OTG_ID 0x17059
674 >;
675 };
676
677 pinctrl_usdhc3: usdhc3grp {
678 fsl,pins = <
679 MX6QDL_PAD_SD3_CMD__SD3_CMD 0x17059
680 MX6QDL_PAD_SD3_CLK__SD3_CLK 0x10059
681 MX6QDL_PAD_SD3_DAT0__SD3_DATA0 0x17059
682 MX6QDL_PAD_SD3_DAT1__SD3_DATA1 0x17059
683 MX6QDL_PAD_SD3_DAT2__SD3_DATA2 0x17059
684 MX6QDL_PAD_SD3_DAT3__SD3_DATA3 0x17059
685 MX6QDL_PAD_SD3_DAT4__SD3_DATA4 0x17059
686 MX6QDL_PAD_SD3_DAT5__SD3_DATA5 0x17059
687 MX6QDL_PAD_SD3_DAT6__SD3_DATA6 0x17059
688 MX6QDL_PAD_SD3_DAT7__SD3_DATA7 0x17059
689 >;
690 };
691
692 pinctrl_usdhc3_100mhz: usdhc3grp100mhz {
693 fsl,pins = <
694 MX6QDL_PAD_SD3_CMD__SD3_CMD 0x170b9
695 MX6QDL_PAD_SD3_CLK__SD3_CLK 0x100b9
696 MX6QDL_PAD_SD3_DAT0__SD3_DATA0 0x170b9
697 MX6QDL_PAD_SD3_DAT1__SD3_DATA1 0x170b9
698 MX6QDL_PAD_SD3_DAT2__SD3_DATA2 0x170b9
699 MX6QDL_PAD_SD3_DAT3__SD3_DATA3 0x170b9
700 MX6QDL_PAD_SD3_DAT4__SD3_DATA4 0x170b9
701 MX6QDL_PAD_SD3_DAT5__SD3_DATA5 0x170b9
702 MX6QDL_PAD_SD3_DAT6__SD3_DATA6 0x170b9
703 MX6QDL_PAD_SD3_DAT7__SD3_DATA7 0x170b9
704 >;
705 };
706
707 pinctrl_usdhc3_200mhz: usdhc3grp200mhz {
708 fsl,pins = <
709 MX6QDL_PAD_SD3_CMD__SD3_CMD 0x170f9
710 MX6QDL_PAD_SD3_CLK__SD3_CLK 0x100f9
711 MX6QDL_PAD_SD3_DAT0__SD3_DATA0 0x170f9
712 MX6QDL_PAD_SD3_DAT1__SD3_DATA1 0x170f9
713 MX6QDL_PAD_SD3_DAT2__SD3_DATA2 0x170f9
714 MX6QDL_PAD_SD3_DAT3__SD3_DATA3 0x170f9
715 MX6QDL_PAD_SD3_DAT4__SD3_DATA4 0x170f9
716 MX6QDL_PAD_SD3_DAT5__SD3_DATA5 0x170f9
717 MX6QDL_PAD_SD3_DAT6__SD3_DATA6 0x170f9
718 MX6QDL_PAD_SD3_DAT7__SD3_DATA7 0x170f9
719 >;
720 };
721
722 pinctrl_weim_cs0: weimcs0grp {
723 fsl,pins = <
724 MX6QDL_PAD_EIM_CS0__EIM_CS0_B 0xb0b1
725 >;
726 };
727
728 pinctrl_weim_nor: weimnorgrp {
729 fsl,pins = <
730 MX6QDL_PAD_EIM_OE__EIM_OE_B 0xb0b1
731 MX6QDL_PAD_EIM_RW__EIM_RW 0xb0b1
732 MX6QDL_PAD_EIM_WAIT__EIM_WAIT_B 0xb060
733 MX6QDL_PAD_EIM_D16__EIM_DATA16 0x1b0b0
734 MX6QDL_PAD_EIM_D17__EIM_DATA17 0x1b0b0
735 MX6QDL_PAD_EIM_D18__EIM_DATA18 0x1b0b0
736 MX6QDL_PAD_EIM_D19__EIM_DATA19 0x1b0b0
737 MX6QDL_PAD_EIM_D20__EIM_DATA20 0x1b0b0
738 MX6QDL_PAD_EIM_D21__EIM_DATA21 0x1b0b0
739 MX6QDL_PAD_EIM_D22__EIM_DATA22 0x1b0b0
740 MX6QDL_PAD_EIM_D23__EIM_DATA23 0x1b0b0
741 MX6QDL_PAD_EIM_D24__EIM_DATA24 0x1b0b0
742 MX6QDL_PAD_EIM_D25__EIM_DATA25 0x1b0b0
743 MX6QDL_PAD_EIM_D26__EIM_DATA26 0x1b0b0
744 MX6QDL_PAD_EIM_D27__EIM_DATA27 0x1b0b0
745 MX6QDL_PAD_EIM_D28__EIM_DATA28 0x1b0b0
746 MX6QDL_PAD_EIM_D29__EIM_DATA29 0x1b0b0
747 MX6QDL_PAD_EIM_D30__EIM_DATA30 0x1b0b0
748 MX6QDL_PAD_EIM_D31__EIM_DATA31 0x1b0b0
749 MX6QDL_PAD_EIM_A23__EIM_ADDR23 0xb0b1
750 MX6QDL_PAD_EIM_A22__EIM_ADDR22 0xb0b1
751 MX6QDL_PAD_EIM_A21__EIM_ADDR21 0xb0b1
752 MX6QDL_PAD_EIM_A20__EIM_ADDR20 0xb0b1
753 MX6QDL_PAD_EIM_A19__EIM_ADDR19 0xb0b1
754 MX6QDL_PAD_EIM_A18__EIM_ADDR18 0xb0b1
755 MX6QDL_PAD_EIM_A17__EIM_ADDR17 0xb0b1
756 MX6QDL_PAD_EIM_A16__EIM_ADDR16 0xb0b1
757 MX6QDL_PAD_EIM_DA15__EIM_AD15 0xb0b1
758 MX6QDL_PAD_EIM_DA14__EIM_AD14 0xb0b1
759 MX6QDL_PAD_EIM_DA13__EIM_AD13 0xb0b1
760 MX6QDL_PAD_EIM_DA12__EIM_AD12 0xb0b1
761 MX6QDL_PAD_EIM_DA11__EIM_AD11 0xb0b1
762 MX6QDL_PAD_EIM_DA10__EIM_AD10 0xb0b1
763 MX6QDL_PAD_EIM_DA9__EIM_AD09 0xb0b1
764 MX6QDL_PAD_EIM_DA8__EIM_AD08 0xb0b1
765 MX6QDL_PAD_EIM_DA7__EIM_AD07 0xb0b1
766 MX6QDL_PAD_EIM_DA6__EIM_AD06 0xb0b1
767 MX6QDL_PAD_EIM_DA5__EIM_AD05 0xb0b1
768 MX6QDL_PAD_EIM_DA4__EIM_AD04 0xb0b1
769 MX6QDL_PAD_EIM_DA3__EIM_AD03 0xb0b1
770 MX6QDL_PAD_EIM_DA2__EIM_AD02 0xb0b1
771 MX6QDL_PAD_EIM_DA1__EIM_AD01 0xb0b1
772 MX6QDL_PAD_EIM_DA0__EIM_AD00 0xb0b1
773 >;
774 };
775 };
776};
777
778&ldb {
779 status = "okay";
780
781 lvds-channel@0 {
782 fsl,data-mapping = "spwg";
783 fsl,data-width = <18>;
784 status = "okay";
785
786 display-timings {
787 native-mode = <&timing0>;
788 timing0: hsd100pxn1 {
789 clock-frequency = <65000000>;
790 hactive = <1024>;
791 vactive = <768>;
792 hback-porch = <220>;
793 hfront-porch = <40>;
794 vback-porch = <21>;
795 vfront-porch = <7>;
796 hsync-len = <60>;
797 vsync-len = <10>;
798 };
799 };
800 };
801};
802
803&pwm3 {
Marcel Ziswiler5d4bcee2022-07-21 15:27:26 +0200804 #pwm-cells = <2>;
Abel Vesaf4897e52019-02-01 16:40:16 +0000805 pinctrl-names = "default";
806 pinctrl-0 = <&pinctrl_pwm3>;
807 status = "okay";
808};
809
Marcel Ziswiler5d4bcee2022-07-21 15:27:26 +0200810&pcie {
811 status = "okay";
812};
813
Abel Vesaf4897e52019-02-01 16:40:16 +0000814&spdif {
815 pinctrl-names = "default";
816 pinctrl-0 = <&pinctrl_spdif>;
817 status = "okay";
818};
819
820&uart4 {
821 pinctrl-names = "default";
822 pinctrl-0 = <&pinctrl_uart4>;
823 status = "okay";
824};
825
826&usbh1 {
827 vbus-supply = <&reg_usb_h1_vbus>;
828 status = "okay";
829};
830
831&usbotg {
832 vbus-supply = <&reg_usb_otg_vbus>;
833 pinctrl-names = "default";
834 pinctrl-0 = <&pinctrl_usbotg>;
835 status = "okay";
836};
837
838&usdhc3 {
839 pinctrl-names = "default", "state_100mhz", "state_200mhz";
840 pinctrl-0 = <&pinctrl_usdhc3>;
841 pinctrl-1 = <&pinctrl_usdhc3_100mhz>;
842 pinctrl-2 = <&pinctrl_usdhc3_200mhz>;
843 cd-gpios = <&gpio6 15 GPIO_ACTIVE_LOW>;
844 wp-gpios = <&gpio1 13 GPIO_ACTIVE_HIGH>;
845 status = "okay";
846};
847
848&weim {
849 pinctrl-names = "default";
850 pinctrl-0 = <&pinctrl_weim_nor &pinctrl_weim_cs0>;
851 ranges = <0 0 0x08000000 0x08000000>;
852 status = "disabled"; /* pin conflict with SPI NOR */
853
854 nor@0,0 {
855 compatible = "cfi-flash";
856 reg = <0 0 0x02000000>;
857 #address-cells = <1>;
858 #size-cells = <1>;
859 bank-width = <2>;
860 fsl,weim-cs-timing = <0x00620081 0x00000001 0x1c022000
861 0x0000c000 0x1404a38e 0x00000000>;
862 };
863};