Loading...
1/*
2 * Copyright 2013 Gateworks Corporation
3 *
4 * The code contained herein is licensed under the GNU General Public
5 * License. You may obtain a copy of the GNU General Public License
6 * Version 2 or later at the following locations:
7 *
8 * http://www.opensource.org/licenses/gpl-license.html
9 * http://www.gnu.org/copyleft/gpl.html
10 */
11
12#include <dt-bindings/gpio/gpio.h>
13
14/ {
15 /* these are used by bootloader for disabling nodes */
16 aliases {
17 led0 = &led0;
18 led1 = &led1;
19 led2 = &led2;
20 nand = &gpmi;
21 ssi0 = &ssi1;
22 usb0 = &usbh1;
23 usb1 = &usbotg;
24 };
25
26 chosen {
27 bootargs = "console=ttymxc1,115200";
28 };
29
30 backlight {
31 compatible = "pwm-backlight";
32 pwms = <&pwm4 0 5000000>;
33 brightness-levels = <0 4 8 16 32 64 128 255>;
34 default-brightness-level = <7>;
35 };
36
37 leds {
38 compatible = "gpio-leds";
39 pinctrl-names = "default";
40 pinctrl-0 = <&pinctrl_gpio_leds>;
41
42 led0: user1 {
43 label = "user1";
44 gpios = <&gpio4 6 GPIO_ACTIVE_HIGH>; /* MX6_PANLEDG */
45 default-state = "on";
46 linux,default-trigger = "heartbeat";
47 };
48
49 led1: user2 {
50 label = "user2";
51 gpios = <&gpio4 7 GPIO_ACTIVE_HIGH>; /* MX6_PANLEDR */
52 default-state = "off";
53 };
54
55 led2: user3 {
56 label = "user3";
57 gpios = <&gpio4 15 GPIO_ACTIVE_LOW>; /* MX6_LOCLED# */
58 default-state = "off";
59 };
60 };
61
62 memory@10000000 {
63 reg = <0x10000000 0x40000000>;
64 };
65
66 pps {
67 compatible = "pps-gpio";
68 pinctrl-names = "default";
69 pinctrl-0 = <&pinctrl_pps>;
70 gpios = <&gpio1 26 GPIO_ACTIVE_HIGH>;
71 status = "okay";
72 };
73
74 regulators {
75 compatible = "simple-bus";
76 #address-cells = <1>;
77 #size-cells = <0>;
78
79 reg_1p0v: regulator@0 {
80 compatible = "regulator-fixed";
81 reg = <0>;
82 regulator-name = "1P0V";
83 regulator-min-microvolt = <1000000>;
84 regulator-max-microvolt = <1000000>;
85 regulator-always-on;
86 };
87
88 reg_3p3v: regulator@1 {
89 compatible = "regulator-fixed";
90 reg = <1>;
91 regulator-name = "3P3V";
92 regulator-min-microvolt = <3300000>;
93 regulator-max-microvolt = <3300000>;
94 regulator-always-on;
95 };
96
97 reg_usb_h1_vbus: regulator@2 {
98 compatible = "regulator-fixed";
99 reg = <2>;
100 regulator-name = "usb_h1_vbus";
101 regulator-min-microvolt = <5000000>;
102 regulator-max-microvolt = <5000000>;
103 regulator-always-on;
104 };
105
106 reg_usb_otg_vbus: regulator@3 {
107 compatible = "regulator-fixed";
108 reg = <3>;
109 regulator-name = "usb_otg_vbus";
110 regulator-min-microvolt = <5000000>;
111 regulator-max-microvolt = <5000000>;
112 gpio = <&gpio3 22 GPIO_ACTIVE_HIGH>;
113 enable-active-high;
114 };
115 };
116
117 sound {
118 compatible = "fsl,imx6q-ventana-sgtl5000",
119 "fsl,imx-audio-sgtl5000";
120 model = "sgtl5000-audio";
121 ssi-controller = <&ssi1>;
122 audio-codec = <&codec>;
123 audio-routing =
124 "MIC_IN", "Mic Jack",
125 "Mic Jack", "Mic Bias",
126 "Headphone Jack", "HP_OUT";
127 mux-int-port = <1>;
128 mux-ext-port = <4>;
129 };
130};
131
132&audmux {
133 pinctrl-names = "default";
134 pinctrl-0 = <&pinctrl_audmux>; /* AUD4<->sgtl5000 */
135 status = "okay";
136};
137
138&can1 {
139 pinctrl-names = "default";
140 pinctrl-0 = <&pinctrl_flexcan1>;
141 status = "okay";
142};
143
144&clks {
145 assigned-clocks = <&clks IMX6QDL_CLK_LDB_DI0_SEL>,
146 <&clks IMX6QDL_CLK_LDB_DI1_SEL>;
147 assigned-clock-parents = <&clks IMX6QDL_CLK_PLL3_USB_OTG>,
148 <&clks IMX6QDL_CLK_PLL3_USB_OTG>;
149};
150
151&ecspi2 {
152 cs-gpios = <&gpio2 26 GPIO_ACTIVE_HIGH>;
153 pinctrl-names = "default";
154 pinctrl-0 = <&pinctrl_ecspi2>;
155 status = "okay";
156};
157
158&fec {
159 pinctrl-names = "default";
160 pinctrl-0 = <&pinctrl_enet>;
161 phy-mode = "rgmii-id";
162 phy-reset-gpios = <&gpio1 30 GPIO_ACTIVE_LOW>;
163 status = "okay";
164};
165
166&gpmi {
167 pinctrl-names = "default";
168 pinctrl-0 = <&pinctrl_gpmi_nand>;
169 status = "okay";
170};
171
172&hdmi {
173 ddc-i2c-bus = <&i2c3>;
174 status = "okay";
175};
176
177&i2c1 {
178 clock-frequency = <100000>;
179 pinctrl-names = "default";
180 pinctrl-0 = <&pinctrl_i2c1>;
181 status = "okay";
182
183 eeprom1: eeprom@50 {
184 compatible = "atmel,24c02";
185 reg = <0x50>;
186 pagesize = <16>;
187 };
188
189 eeprom2: eeprom@51 {
190 compatible = "atmel,24c02";
191 reg = <0x51>;
192 pagesize = <16>;
193 };
194
195 eeprom3: eeprom@52 {
196 compatible = "atmel,24c02";
197 reg = <0x52>;
198 pagesize = <16>;
199 };
200
201 eeprom4: eeprom@53 {
202 compatible = "atmel,24c02";
203 reg = <0x53>;
204 pagesize = <16>;
205 };
206
207 gpio: pca9555@23 {
208 compatible = "nxp,pca9555";
209 reg = <0x23>;
210 gpio-controller;
211 #gpio-cells = <2>;
212 };
213
214 rtc: ds1672@68 {
215 compatible = "dallas,ds1672";
216 reg = <0x68>;
217 };
218};
219
220&i2c2 {
221 clock-frequency = <100000>;
222 pinctrl-names = "default";
223 pinctrl-0 = <&pinctrl_i2c2>;
224 status = "okay";
225
226 pmic: pfuze100@8 {
227 compatible = "fsl,pfuze100";
228 reg = <0x08>;
229
230 regulators {
231 sw1a_reg: sw1ab {
232 regulator-min-microvolt = <300000>;
233 regulator-max-microvolt = <1875000>;
234 regulator-boot-on;
235 regulator-always-on;
236 regulator-ramp-delay = <6250>;
237 };
238
239 sw1c_reg: sw1c {
240 regulator-min-microvolt = <300000>;
241 regulator-max-microvolt = <1875000>;
242 regulator-boot-on;
243 regulator-always-on;
244 regulator-ramp-delay = <6250>;
245 };
246
247 sw2_reg: sw2 {
248 regulator-min-microvolt = <800000>;
249 regulator-max-microvolt = <3950000>;
250 regulator-boot-on;
251 regulator-always-on;
252 };
253
254 sw3a_reg: sw3a {
255 regulator-min-microvolt = <400000>;
256 regulator-max-microvolt = <1975000>;
257 regulator-boot-on;
258 regulator-always-on;
259 };
260
261 sw3b_reg: sw3b {
262 regulator-min-microvolt = <400000>;
263 regulator-max-microvolt = <1975000>;
264 regulator-boot-on;
265 regulator-always-on;
266 };
267
268 sw4_reg: sw4 {
269 regulator-min-microvolt = <800000>;
270 regulator-max-microvolt = <3300000>;
271 };
272
273 swbst_reg: swbst {
274 regulator-min-microvolt = <5000000>;
275 regulator-max-microvolt = <5150000>;
276 regulator-boot-on;
277 regulator-always-on;
278 };
279
280 snvs_reg: vsnvs {
281 regulator-min-microvolt = <1000000>;
282 regulator-max-microvolt = <3000000>;
283 regulator-boot-on;
284 regulator-always-on;
285 };
286
287 vref_reg: vrefddr {
288 regulator-boot-on;
289 regulator-always-on;
290 };
291
292 vgen1_reg: vgen1 {
293 regulator-min-microvolt = <800000>;
294 regulator-max-microvolt = <1550000>;
295 };
296
297 vgen2_reg: vgen2 {
298 regulator-min-microvolt = <800000>;
299 regulator-max-microvolt = <1550000>;
300 };
301
302 vgen3_reg: vgen3 {
303 regulator-min-microvolt = <1800000>;
304 regulator-max-microvolt = <3300000>;
305 };
306
307 vgen4_reg: vgen4 {
308 regulator-min-microvolt = <1800000>;
309 regulator-max-microvolt = <3300000>;
310 regulator-always-on;
311 };
312
313 vgen5_reg: vgen5 {
314 regulator-min-microvolt = <1800000>;
315 regulator-max-microvolt = <3300000>;
316 regulator-always-on;
317 };
318
319 vgen6_reg: vgen6 {
320 regulator-min-microvolt = <1800000>;
321 regulator-max-microvolt = <3300000>;
322 regulator-always-on;
323 };
324 };
325 };
326};
327
328&i2c3 {
329 clock-frequency = <100000>;
330 pinctrl-names = "default";
331 pinctrl-0 = <&pinctrl_i2c3>;
332 status = "okay";
333
334 codec: sgtl5000@a {
335 compatible = "fsl,sgtl5000";
336 reg = <0x0a>;
337 clocks = <&clks IMX6QDL_CLK_CKO>;
338 VDDA-supply = <&sw4_reg>;
339 VDDIO-supply = <®_3p3v>;
340 };
341
342 touchscreen: egalax_ts@4 {
343 compatible = "eeti,egalax_ts";
344 reg = <0x04>;
345 interrupt-parent = <&gpio7>;
346 interrupts = <12 2>;
347 wakeup-gpios = <&gpio7 12 GPIO_ACTIVE_LOW>;
348 };
349};
350
351&ldb {
352 status = "okay";
353
354 lvds-channel@0 {
355 fsl,data-mapping = "spwg";
356 fsl,data-width = <18>;
357 status = "okay";
358
359 display-timings {
360 native-mode = <&timing0>;
361 timing0: hsd100pxn1 {
362 clock-frequency = <65000000>;
363 hactive = <1024>;
364 vactive = <768>;
365 hback-porch = <220>;
366 hfront-porch = <40>;
367 vback-porch = <21>;
368 vfront-porch = <7>;
369 hsync-len = <60>;
370 vsync-len = <10>;
371 };
372 };
373 };
374};
375
376&pcie {
377 pinctrl-names = "default";
378 pinctrl-0 = <&pinctrl_pcie>;
379 reset-gpio = <&gpio1 29 GPIO_ACTIVE_LOW>;
380 status = "okay";
381};
382
383&pwm1 {
384 pinctrl-names = "default";
385 pinctrl-0 = <&pinctrl_pwm1>; /* MX6_DIO0 */
386 status = "disabled";
387};
388
389&pwm2 {
390 pinctrl-names = "default";
391 pinctrl-0 = <&pinctrl_pwm2>; /* MX6_DIO1 */
392 status = "disabled";
393};
394
395&pwm3 {
396 pinctrl-names = "default";
397 pinctrl-0 = <&pinctrl_pwm3>; /* MX6_DIO2 */
398 status = "disabled";
399};
400
401&pwm4 {
402 pinctrl-names = "default", "state_dio";
403 pinctrl-0 = <&pinctrl_pwm4_backlight>;
404 pinctrl-1 = <&pinctrl_pwm4_dio>;
405 status = "okay";
406};
407
408&ssi1 {
409 status = "okay";
410};
411
412&ssi2 {
413 status = "okay";
414};
415
416&uart1 {
417 pinctrl-names = "default";
418 pinctrl-0 = <&pinctrl_uart1>;
419 rts-gpios = <&gpio7 1 GPIO_ACTIVE_HIGH>;
420 status = "okay";
421};
422
423&uart2 {
424 pinctrl-names = "default";
425 pinctrl-0 = <&pinctrl_uart2>;
426 status = "okay";
427};
428
429&uart5 {
430 pinctrl-names = "default";
431 pinctrl-0 = <&pinctrl_uart5>;
432 status = "okay";
433};
434
435&usbotg {
436 vbus-supply = <®_usb_otg_vbus>;
437 pinctrl-names = "default";
438 pinctrl-0 = <&pinctrl_usbotg>;
439 disable-over-current;
440 status = "okay";
441};
442
443&usbh1 {
444 vbus-supply = <®_usb_h1_vbus>;
445 status = "okay";
446};
447
448&usdhc3 {
449 pinctrl-names = "default", "state_100mhz", "state_200mhz";
450 pinctrl-0 = <&pinctrl_usdhc3>;
451 pinctrl-1 = <&pinctrl_usdhc3_100mhz>;
452 pinctrl-2 = <&pinctrl_usdhc3_200mhz>;
453 cd-gpios = <&gpio7 0 GPIO_ACTIVE_LOW>;
454 vmmc-supply = <®_3p3v>;
455 no-1-8-v; /* firmware will remove if board revision supports */
456 status = "okay";
457};
458
459&wdog1 {
460 status = "disabled";
461};
462
463&wdog2 {
464 pinctrl-names = "default";
465 pinctrl-0 = <&pinctrl_wdog>;
466 fsl,ext-reset-output;
467 status = "okay";
468};
469
470&iomuxc {
471 pinctrl_audmux: audmuxgrp {
472 fsl,pins = <
473 MX6QDL_PAD_SD2_DAT0__AUD4_RXD 0x130b0
474 MX6QDL_PAD_SD2_DAT3__AUD4_TXC 0x130b0
475 MX6QDL_PAD_SD2_DAT2__AUD4_TXD 0x110b0
476 MX6QDL_PAD_SD2_DAT1__AUD4_TXFS 0x130b0
477 MX6QDL_PAD_GPIO_0__CCM_CLKO1 0x130b0 /* AUD4_MCK */
478 >;
479 };
480
481 pinctrl_enet: enetgrp {
482 fsl,pins = <
483 MX6QDL_PAD_RGMII_RXC__RGMII_RXC 0x1b030
484 MX6QDL_PAD_RGMII_RD0__RGMII_RD0 0x1b030
485 MX6QDL_PAD_RGMII_RD1__RGMII_RD1 0x1b030
486 MX6QDL_PAD_RGMII_RD2__RGMII_RD2 0x1b030
487 MX6QDL_PAD_RGMII_RD3__RGMII_RD3 0x1b030
488 MX6QDL_PAD_RGMII_RX_CTL__RGMII_RX_CTL 0x1b030
489 MX6QDL_PAD_RGMII_TXC__RGMII_TXC 0x1b030
490 MX6QDL_PAD_RGMII_TD0__RGMII_TD0 0x1b030
491 MX6QDL_PAD_RGMII_TD1__RGMII_TD1 0x1b030
492 MX6QDL_PAD_RGMII_TD2__RGMII_TD2 0x1b030
493 MX6QDL_PAD_RGMII_TD3__RGMII_TD3 0x1b030
494 MX6QDL_PAD_RGMII_TX_CTL__RGMII_TX_CTL 0x1b030
495 MX6QDL_PAD_ENET_REF_CLK__ENET_TX_CLK 0x1b0b0
496 MX6QDL_PAD_ENET_MDIO__ENET_MDIO 0x1b0b0
497 MX6QDL_PAD_ENET_MDC__ENET_MDC 0x1b0b0
498 MX6QDL_PAD_GPIO_16__ENET_REF_CLK 0x4001b0a8
499 >;
500 };
501
502 pinctrl_ecspi2: escpi2grp {
503 fsl,pins = <
504 MX6QDL_PAD_EIM_CS0__ECSPI2_SCLK 0x100b1
505 MX6QDL_PAD_EIM_CS1__ECSPI2_MOSI 0x100b1
506 MX6QDL_PAD_EIM_OE__ECSPI2_MISO 0x100b1
507 MX6QDL_PAD_EIM_RW__GPIO2_IO26 0x100b1
508 >;
509 };
510
511 pinctrl_flexcan1: flexcan1grp {
512 fsl,pins = <
513 MX6QDL_PAD_KEY_ROW2__FLEXCAN1_RX 0x1b0b1
514 MX6QDL_PAD_KEY_COL2__FLEXCAN1_TX 0x1b0b1
515 MX6QDL_PAD_GPIO_2__GPIO1_IO02 0x4001b0b0 /* CAN_STBY */
516 >;
517 };
518
519 pinctrl_gpio_leds: gpioledsgrp {
520 fsl,pins = <
521 MX6QDL_PAD_KEY_COL0__GPIO4_IO06 0x1b0b0
522 MX6QDL_PAD_KEY_ROW0__GPIO4_IO07 0x1b0b0
523 MX6QDL_PAD_KEY_ROW4__GPIO4_IO15 0x1b0b0
524 >;
525 };
526
527 pinctrl_gpmi_nand: gpminandgrp {
528 fsl,pins = <
529 MX6QDL_PAD_NANDF_CLE__NAND_CLE 0xb0b1
530 MX6QDL_PAD_NANDF_ALE__NAND_ALE 0xb0b1
531 MX6QDL_PAD_NANDF_WP_B__NAND_WP_B 0xb0b1
532 MX6QDL_PAD_NANDF_RB0__NAND_READY_B 0xb000
533 MX6QDL_PAD_NANDF_CS0__NAND_CE0_B 0xb0b1
534 MX6QDL_PAD_SD4_CMD__NAND_RE_B 0xb0b1
535 MX6QDL_PAD_SD4_CLK__NAND_WE_B 0xb0b1
536 MX6QDL_PAD_NANDF_D0__NAND_DATA00 0xb0b1
537 MX6QDL_PAD_NANDF_D1__NAND_DATA01 0xb0b1
538 MX6QDL_PAD_NANDF_D2__NAND_DATA02 0xb0b1
539 MX6QDL_PAD_NANDF_D3__NAND_DATA03 0xb0b1
540 MX6QDL_PAD_NANDF_D4__NAND_DATA04 0xb0b1
541 MX6QDL_PAD_NANDF_D5__NAND_DATA05 0xb0b1
542 MX6QDL_PAD_NANDF_D6__NAND_DATA06 0xb0b1
543 MX6QDL_PAD_NANDF_D7__NAND_DATA07 0xb0b1
544 >;
545 };
546
547 pinctrl_i2c1: i2c1grp {
548 fsl,pins = <
549 MX6QDL_PAD_EIM_D21__I2C1_SCL 0x4001b8b1
550 MX6QDL_PAD_EIM_D28__I2C1_SDA 0x4001b8b1
551 >;
552 };
553
554 pinctrl_i2c2: i2c2grp {
555 fsl,pins = <
556 MX6QDL_PAD_KEY_COL3__I2C2_SCL 0x4001b8b1
557 MX6QDL_PAD_KEY_ROW3__I2C2_SDA 0x4001b8b1
558 >;
559 };
560
561 pinctrl_i2c3: i2c3grp {
562 fsl,pins = <
563 MX6QDL_PAD_GPIO_3__I2C3_SCL 0x4001b8b1
564 MX6QDL_PAD_GPIO_6__I2C3_SDA 0x4001b8b1
565 >;
566 };
567
568 pinctrl_pcie: pciegrp {
569 fsl,pins = <
570 MX6QDL_PAD_ENET_TX_EN__GPIO1_IO28 0x1b0b0 /* PCIE IRQ */
571 MX6QDL_PAD_ENET_TXD1__GPIO1_IO29 0x1b0b0 /* PCIE RST */
572 >;
573 };
574
575 pinctrl_pps: ppsgrp {
576 fsl,pins = <
577 MX6QDL_PAD_ENET_RXD1__GPIO1_IO26 0x1b0b1
578 >;
579 };
580
581 pinctrl_pwm1: pwm1grp {
582 fsl,pins = <
583 MX6QDL_PAD_GPIO_9__PWM1_OUT 0x1b0b1
584 >;
585 };
586
587 pinctrl_pwm2: pwm2grp {
588 fsl,pins = <
589 MX6QDL_PAD_SD1_DAT2__PWM2_OUT 0x1b0b1
590 >;
591 };
592
593 pinctrl_pwm3: pwm3grp {
594 fsl,pins = <
595 MX6QDL_PAD_SD4_DAT1__PWM3_OUT 0x1b0b1
596 >;
597 };
598
599 pinctrl_pwm4_backlight: pwm4grpbacklight {
600 fsl,pins = <
601 /* LVDS_PWM J6.5 */
602 MX6QDL_PAD_SD1_CMD__PWM4_OUT 0x1b0b1
603 >;
604 };
605
606 pinctrl_pwm4_dio: pwm4grpdio {
607 fsl,pins = <
608 /* DIO3 J16.4 */
609 MX6QDL_PAD_SD4_DAT2__PWM4_OUT 0x1b0b1
610 >;
611 };
612
613 pinctrl_uart1: uart1grp {
614 fsl,pins = <
615 MX6QDL_PAD_SD3_DAT7__UART1_TX_DATA 0x1b0b1
616 MX6QDL_PAD_SD3_DAT6__UART1_RX_DATA 0x1b0b1
617 MX6QDL_PAD_SD3_DAT4__GPIO7_IO01 0x4001b0b1 /* TEN */
618 >;
619 };
620
621 pinctrl_uart2: uart2grp {
622 fsl,pins = <
623 MX6QDL_PAD_SD4_DAT7__UART2_TX_DATA 0x1b0b1
624 MX6QDL_PAD_SD4_DAT4__UART2_RX_DATA 0x1b0b1
625 >;
626 };
627
628 pinctrl_uart5: uart5grp {
629 fsl,pins = <
630 MX6QDL_PAD_KEY_COL1__UART5_TX_DATA 0x1b0b1
631 MX6QDL_PAD_KEY_ROW1__UART5_RX_DATA 0x1b0b1
632 >;
633 };
634
635 pinctrl_usbotg: usbotggrp {
636 fsl,pins = <
637 MX6QDL_PAD_GPIO_1__USB_OTG_ID 0x17059
638 MX6QDL_PAD_EIM_D22__GPIO3_IO22 0x1b0b0 /* PWR_EN */
639 >;
640 };
641
642 pinctrl_usdhc3: usdhc3grp {
643 fsl,pins = <
644 MX6QDL_PAD_SD3_CMD__SD3_CMD 0x17059
645 MX6QDL_PAD_SD3_CLK__SD3_CLK 0x10059
646 MX6QDL_PAD_SD3_DAT0__SD3_DATA0 0x17059
647 MX6QDL_PAD_SD3_DAT1__SD3_DATA1 0x17059
648 MX6QDL_PAD_SD3_DAT2__SD3_DATA2 0x17059
649 MX6QDL_PAD_SD3_DAT3__SD3_DATA3 0x17059
650 MX6QDL_PAD_SD3_DAT5__GPIO7_IO00 0x17059 /* CD */
651 MX6QDL_PAD_NANDF_CS1__SD3_VSELECT 0x17059
652 >;
653 };
654
655 pinctrl_usdhc3_100mhz: usdhc3grp100mhz {
656 fsl,pins = <
657 MX6QDL_PAD_SD3_CMD__SD3_CMD 0x170b9
658 MX6QDL_PAD_SD3_CLK__SD3_CLK 0x100b9
659 MX6QDL_PAD_SD3_DAT0__SD3_DATA0 0x170b9
660 MX6QDL_PAD_SD3_DAT1__SD3_DATA1 0x170b9
661 MX6QDL_PAD_SD3_DAT2__SD3_DATA2 0x170b9
662 MX6QDL_PAD_SD3_DAT3__SD3_DATA3 0x170b9
663 MX6QDL_PAD_SD3_DAT5__GPIO7_IO00 0x170b9 /* CD */
664 MX6QDL_PAD_NANDF_CS1__SD3_VSELECT 0x170b9
665 >;
666 };
667
668 pinctrl_usdhc3_200mhz: usdhc3grp200mhz {
669 fsl,pins = <
670 MX6QDL_PAD_SD3_CMD__SD3_CMD 0x170f9
671 MX6QDL_PAD_SD3_CLK__SD3_CLK 0x100f9
672 MX6QDL_PAD_SD3_DAT0__SD3_DATA0 0x170f9
673 MX6QDL_PAD_SD3_DAT1__SD3_DATA1 0x170f9
674 MX6QDL_PAD_SD3_DAT2__SD3_DATA2 0x170f9
675 MX6QDL_PAD_SD3_DAT3__SD3_DATA3 0x170f9
676 MX6QDL_PAD_SD3_DAT5__GPIO7_IO00 0x170f9 /* CD */
677 MX6QDL_PAD_NANDF_CS1__SD3_VSELECT 0x170f9
678 >;
679 };
680
681 pinctrl_wdog: wdoggrp {
682 fsl,pins = <
683 MX6QDL_PAD_SD1_DAT3__WDOG2_B 0x1b0b0
684 >;
685 };
686};
1/*
2 * Copyright 2013 Gateworks Corporation
3 *
4 * The code contained herein is licensed under the GNU General Public
5 * License. You may obtain a copy of the GNU General Public License
6 * Version 2 or later at the following locations:
7 *
8 * http://www.opensource.org/licenses/gpl-license.html
9 * http://www.gnu.org/copyleft/gpl.html
10 */
11
12/ {
13 /* these are used by bootloader for disabling nodes */
14 aliases {
15 can0 = &can1;
16 ethernet0 = &fec;
17 ethernet1 = ð1;
18 led0 = &led0;
19 led1 = &led1;
20 led2 = &led2;
21 nand = &gpmi;
22 sky2 = ð1;
23 ssi0 = &ssi1;
24 usb0 = &usbh1;
25 usb1 = &usbotg;
26 usdhc2 = &usdhc3;
27 };
28
29 chosen {
30 bootargs = "console=ttymxc1,115200";
31 };
32
33 leds {
34 compatible = "gpio-leds";
35
36 led0: user1 {
37 label = "user1";
38 gpios = <&gpio4 6 0>; /* 102 -> MX6_PANLEDG */
39 default-state = "on";
40 linux,default-trigger = "heartbeat";
41 };
42
43 led1: user2 {
44 label = "user2";
45 gpios = <&gpio4 7 0>; /* 103 -> MX6_PANLEDR */
46 default-state = "off";
47 };
48
49 led2: user3 {
50 label = "user3";
51 gpios = <&gpio4 15 1>; /* 111 -> MX6_LOCLED# */
52 default-state = "off";
53 };
54 };
55
56 memory {
57 reg = <0x10000000 0x40000000>;
58 };
59
60 pps {
61 compatible = "pps-gpio";
62 gpios = <&gpio1 26 0>;
63 status = "okay";
64 };
65
66 regulators {
67 compatible = "simple-bus";
68 #address-cells = <1>;
69 #size-cells = <0>;
70
71 reg_1p0v: regulator@0 {
72 compatible = "regulator-fixed";
73 reg = <0>;
74 regulator-name = "1P0V";
75 regulator-min-microvolt = <1000000>;
76 regulator-max-microvolt = <1000000>;
77 regulator-always-on;
78 };
79
80 reg_3p3v: regulator@1 {
81 compatible = "regulator-fixed";
82 reg = <1>;
83 regulator-name = "3P3V";
84 regulator-min-microvolt = <3300000>;
85 regulator-max-microvolt = <3300000>;
86 regulator-always-on;
87 };
88
89 reg_usb_h1_vbus: regulator@2 {
90 compatible = "regulator-fixed";
91 reg = <2>;
92 regulator-name = "usb_h1_vbus";
93 regulator-min-microvolt = <5000000>;
94 regulator-max-microvolt = <5000000>;
95 regulator-always-on;
96 };
97
98 reg_usb_otg_vbus: regulator@3 {
99 compatible = "regulator-fixed";
100 reg = <3>;
101 regulator-name = "usb_otg_vbus";
102 regulator-min-microvolt = <5000000>;
103 regulator-max-microvolt = <5000000>;
104 gpio = <&gpio3 22 0>;
105 enable-active-high;
106 };
107 };
108
109 sound {
110 compatible = "fsl,imx6q-sabrelite-sgtl5000",
111 "fsl,imx-audio-sgtl5000";
112 model = "imx6q-sabrelite-sgtl5000";
113 ssi-controller = <&ssi1>;
114 audio-codec = <&codec>;
115 audio-routing =
116 "MIC_IN", "Mic Jack",
117 "Mic Jack", "Mic Bias",
118 "Headphone Jack", "HP_OUT";
119 mux-int-port = <1>;
120 mux-ext-port = <4>;
121 };
122};
123
124&audmux {
125 pinctrl-names = "default";
126 pinctrl-0 = <&pinctrl_audmux>; /* AUD4<->sgtl5000 */
127 status = "okay";
128};
129
130&can1 {
131 pinctrl-names = "default";
132 pinctrl-0 = <&pinctrl_flexcan1>;
133 status = "okay";
134};
135
136&fec {
137 pinctrl-names = "default";
138 pinctrl-0 = <&pinctrl_enet>;
139 phy-mode = "rgmii";
140 phy-reset-gpios = <&gpio1 30 0>;
141 status = "okay";
142};
143
144&gpmi {
145 pinctrl-names = "default";
146 pinctrl-0 = <&pinctrl_gpmi_nand>;
147 status = "okay";
148};
149
150&i2c1 {
151 clock-frequency = <100000>;
152 pinctrl-names = "default";
153 pinctrl-0 = <&pinctrl_i2c1>;
154 status = "okay";
155
156 eeprom1: eeprom@50 {
157 compatible = "atmel,24c02";
158 reg = <0x50>;
159 pagesize = <16>;
160 };
161
162 eeprom2: eeprom@51 {
163 compatible = "atmel,24c02";
164 reg = <0x51>;
165 pagesize = <16>;
166 };
167
168 eeprom3: eeprom@52 {
169 compatible = "atmel,24c02";
170 reg = <0x52>;
171 pagesize = <16>;
172 };
173
174 eeprom4: eeprom@53 {
175 compatible = "atmel,24c02";
176 reg = <0x53>;
177 pagesize = <16>;
178 };
179
180 gpio: pca9555@23 {
181 compatible = "nxp,pca9555";
182 reg = <0x23>;
183 gpio-controller;
184 #gpio-cells = <2>;
185 };
186
187 hwmon: gsc@29 {
188 compatible = "gw,gsp";
189 reg = <0x29>;
190 };
191
192 rtc: ds1672@68 {
193 compatible = "dallas,ds1672";
194 reg = <0x68>;
195 };
196};
197
198&i2c2 {
199 clock-frequency = <100000>;
200 pinctrl-names = "default";
201 pinctrl-0 = <&pinctrl_i2c2>;
202 status = "okay";
203
204 pmic: pfuze100@08 {
205 compatible = "fsl,pfuze100";
206 reg = <0x08>;
207
208 regulators {
209 sw1a_reg: sw1ab {
210 regulator-min-microvolt = <300000>;
211 regulator-max-microvolt = <1875000>;
212 regulator-boot-on;
213 regulator-always-on;
214 regulator-ramp-delay = <6250>;
215 };
216
217 sw1c_reg: sw1c {
218 regulator-min-microvolt = <300000>;
219 regulator-max-microvolt = <1875000>;
220 regulator-boot-on;
221 regulator-always-on;
222 regulator-ramp-delay = <6250>;
223 };
224
225 sw2_reg: sw2 {
226 regulator-min-microvolt = <800000>;
227 regulator-max-microvolt = <3950000>;
228 regulator-boot-on;
229 regulator-always-on;
230 };
231
232 sw3a_reg: sw3a {
233 regulator-min-microvolt = <400000>;
234 regulator-max-microvolt = <1975000>;
235 regulator-boot-on;
236 regulator-always-on;
237 };
238
239 sw3b_reg: sw3b {
240 regulator-min-microvolt = <400000>;
241 regulator-max-microvolt = <1975000>;
242 regulator-boot-on;
243 regulator-always-on;
244 };
245
246 sw4_reg: sw4 {
247 regulator-min-microvolt = <800000>;
248 regulator-max-microvolt = <3300000>;
249 };
250
251 swbst_reg: swbst {
252 regulator-min-microvolt = <5000000>;
253 regulator-max-microvolt = <5150000>;
254 };
255
256 snvs_reg: vsnvs {
257 regulator-min-microvolt = <1000000>;
258 regulator-max-microvolt = <3000000>;
259 regulator-boot-on;
260 regulator-always-on;
261 };
262
263 vref_reg: vrefddr {
264 regulator-boot-on;
265 regulator-always-on;
266 };
267
268 vgen1_reg: vgen1 {
269 regulator-min-microvolt = <800000>;
270 regulator-max-microvolt = <1550000>;
271 };
272
273 vgen2_reg: vgen2 {
274 regulator-min-microvolt = <800000>;
275 regulator-max-microvolt = <1550000>;
276 };
277
278 vgen3_reg: vgen3 {
279 regulator-min-microvolt = <1800000>;
280 regulator-max-microvolt = <3300000>;
281 };
282
283 vgen4_reg: vgen4 {
284 regulator-min-microvolt = <1800000>;
285 regulator-max-microvolt = <3300000>;
286 regulator-always-on;
287 };
288
289 vgen5_reg: vgen5 {
290 regulator-min-microvolt = <1800000>;
291 regulator-max-microvolt = <3300000>;
292 regulator-always-on;
293 };
294
295 vgen6_reg: vgen6 {
296 regulator-min-microvolt = <1800000>;
297 regulator-max-microvolt = <3300000>;
298 regulator-always-on;
299 };
300 };
301 };
302
303 pciswitch: pex8609@3f {
304 compatible = "plx,pex8609";
305 reg = <0x3f>;
306 };
307
308 pciclkgen: si52147@6b {
309 compatible = "sil,si52147";
310 reg = <0x6b>;
311 };
312};
313
314&i2c3 {
315 clock-frequency = <100000>;
316 pinctrl-names = "default";
317 pinctrl-0 = <&pinctrl_i2c3>;
318 status = "okay";
319
320 accelerometer: fxos8700@1e {
321 compatible = "fsl,fxos8700";
322 reg = <0x1e>;
323 };
324
325 codec: sgtl5000@0a {
326 compatible = "fsl,sgtl5000";
327 reg = <0x0a>;
328 clocks = <&clks 201>;
329 VDDA-supply = <&sw4_reg>;
330 VDDIO-supply = <®_3p3v>;
331 };
332
333 hdmiin: adv7611@4c {
334 compatible = "adi,adv7611";
335 reg = <0x4c>;
336 };
337
338 touchscreen: egalax_ts@04 {
339 compatible = "eeti,egalax_ts";
340 reg = <0x04>;
341 interrupt-parent = <&gpio7>;
342 interrupts = <12 2>; /* gpio7_12 active low */
343 wakeup-gpios = <&gpio7 12 0>;
344 };
345
346 videoout: adv7393@2a {
347 compatible = "adi,adv7393";
348 reg = <0x2a>;
349 };
350
351 videoin: adv7180@20 {
352 compatible = "adi,adv7180";
353 reg = <0x20>;
354 };
355};
356
357&iomuxc {
358 pinctrl-names = "default";
359 pinctrl-0 = <&pinctrl_hog>;
360
361 imx6qdl-gw54xx {
362 pinctrl_hog: hoggrp {
363 fsl,pins = <
364 MX6QDL_PAD_EIM_D22__GPIO3_IO22 0x80000000 /* OTG_PWR_EN */
365 MX6QDL_PAD_EIM_D19__GPIO3_IO19 0x80000000 /* SPINOR_CS0# */
366 MX6QDL_PAD_ENET_RXD1__GPIO1_IO26 0x80000000 /* GPS_PPS */
367 MX6QDL_PAD_ENET_TX_EN__GPIO1_IO28 0x80000000 /* PCIE IRQ */
368 MX6QDL_PAD_ENET_TXD1__GPIO1_IO29 0x80000000 /* PCIE RST */
369 MX6QDL_PAD_GPIO_0__CCM_CLKO1 0x000130b0 /* AUD4_MCK */
370 MX6QDL_PAD_GPIO_2__GPIO1_IO02 0x80000000 /* CAN_STBY */
371 MX6QDL_PAD_GPIO_17__GPIO7_IO12 0x80000000 /* TOUCH_IRQ# */
372 MX6QDL_PAD_KEY_COL0__GPIO4_IO06 0x80000000 /* user1 led */
373 MX6QDL_PAD_KEY_ROW0__GPIO4_IO07 0x80000000 /* user2 led */
374 MX6QDL_PAD_KEY_ROW4__GPIO4_IO15 0x80000000 /* user3 led */
375 MX6QDL_PAD_SD1_DAT0__GPIO1_IO16 0x80000000 /* USBHUB_RST# */
376 MX6QDL_PAD_SD1_DAT3__GPIO1_IO21 0x80000000 /* MIPI_DIO */
377 >;
378 };
379
380 pinctrl_audmux: audmuxgrp {
381 fsl,pins = <
382 MX6QDL_PAD_SD2_DAT0__AUD4_RXD 0x130b0
383 MX6QDL_PAD_SD2_DAT3__AUD4_TXC 0x130b0
384 MX6QDL_PAD_SD2_DAT2__AUD4_TXD 0x110b0
385 MX6QDL_PAD_SD2_DAT1__AUD4_TXFS 0x130b0
386 >;
387 };
388
389 pinctrl_enet: enetgrp {
390 fsl,pins = <
391 MX6QDL_PAD_RGMII_RXC__RGMII_RXC 0x1b0b0
392 MX6QDL_PAD_RGMII_RD0__RGMII_RD0 0x1b0b0
393 MX6QDL_PAD_RGMII_RD1__RGMII_RD1 0x1b0b0
394 MX6QDL_PAD_RGMII_RD2__RGMII_RD2 0x1b0b0
395 MX6QDL_PAD_RGMII_RD3__RGMII_RD3 0x1b0b0
396 MX6QDL_PAD_RGMII_RX_CTL__RGMII_RX_CTL 0x1b0b0
397 MX6QDL_PAD_RGMII_TXC__RGMII_TXC 0x1b0b0
398 MX6QDL_PAD_RGMII_TD0__RGMII_TD0 0x1b0b0
399 MX6QDL_PAD_RGMII_TD1__RGMII_TD1 0x1b0b0
400 MX6QDL_PAD_RGMII_TD2__RGMII_TD2 0x1b0b0
401 MX6QDL_PAD_RGMII_TD3__RGMII_TD3 0x1b0b0
402 MX6QDL_PAD_RGMII_TX_CTL__RGMII_TX_CTL 0x1b0b0
403 MX6QDL_PAD_ENET_REF_CLK__ENET_TX_CLK 0x1b0b0
404 MX6QDL_PAD_ENET_MDIO__ENET_MDIO 0x1b0b0
405 MX6QDL_PAD_ENET_MDC__ENET_MDC 0x1b0b0
406 MX6QDL_PAD_GPIO_16__ENET_REF_CLK 0x4001b0a8
407 >;
408 };
409
410 pinctrl_flexcan1: flexcan1grp {
411 fsl,pins = <
412 MX6QDL_PAD_KEY_ROW2__FLEXCAN1_RX 0x80000000
413 MX6QDL_PAD_KEY_COL2__FLEXCAN1_TX 0x80000000
414 >;
415 };
416
417 pinctrl_gpmi_nand: gpminandgrp {
418 fsl,pins = <
419 MX6QDL_PAD_NANDF_CLE__NAND_CLE 0xb0b1
420 MX6QDL_PAD_NANDF_ALE__NAND_ALE 0xb0b1
421 MX6QDL_PAD_NANDF_WP_B__NAND_WP_B 0xb0b1
422 MX6QDL_PAD_NANDF_RB0__NAND_READY_B 0xb000
423 MX6QDL_PAD_NANDF_CS0__NAND_CE0_B 0xb0b1
424 MX6QDL_PAD_NANDF_CS1__NAND_CE1_B 0xb0b1
425 MX6QDL_PAD_SD4_CMD__NAND_RE_B 0xb0b1
426 MX6QDL_PAD_SD4_CLK__NAND_WE_B 0xb0b1
427 MX6QDL_PAD_NANDF_D0__NAND_DATA00 0xb0b1
428 MX6QDL_PAD_NANDF_D1__NAND_DATA01 0xb0b1
429 MX6QDL_PAD_NANDF_D2__NAND_DATA02 0xb0b1
430 MX6QDL_PAD_NANDF_D3__NAND_DATA03 0xb0b1
431 MX6QDL_PAD_NANDF_D4__NAND_DATA04 0xb0b1
432 MX6QDL_PAD_NANDF_D5__NAND_DATA05 0xb0b1
433 MX6QDL_PAD_NANDF_D6__NAND_DATA06 0xb0b1
434 MX6QDL_PAD_NANDF_D7__NAND_DATA07 0xb0b1
435 >;
436 };
437
438 pinctrl_i2c1: i2c1grp {
439 fsl,pins = <
440 MX6QDL_PAD_EIM_D21__I2C1_SCL 0x4001b8b1
441 MX6QDL_PAD_EIM_D28__I2C1_SDA 0x4001b8b1
442 >;
443 };
444
445 pinctrl_i2c2: i2c2grp {
446 fsl,pins = <
447 MX6QDL_PAD_KEY_COL3__I2C2_SCL 0x4001b8b1
448 MX6QDL_PAD_KEY_ROW3__I2C2_SDA 0x4001b8b1
449 >;
450 };
451
452 pinctrl_i2c3: i2c3grp {
453 fsl,pins = <
454 MX6QDL_PAD_GPIO_3__I2C3_SCL 0x4001b8b1
455 MX6QDL_PAD_GPIO_6__I2C3_SDA 0x4001b8b1
456 >;
457 };
458
459 pinctrl_uart1: uart1grp {
460 fsl,pins = <
461 MX6QDL_PAD_SD3_DAT7__UART1_TX_DATA 0x1b0b1
462 MX6QDL_PAD_SD3_DAT6__UART1_RX_DATA 0x1b0b1
463 >;
464 };
465
466 pinctrl_uart2: uart2grp {
467 fsl,pins = <
468 MX6QDL_PAD_SD4_DAT7__UART2_TX_DATA 0x1b0b1
469 MX6QDL_PAD_SD4_DAT4__UART2_RX_DATA 0x1b0b1
470 >;
471 };
472
473 pinctrl_uart5: uart5grp {
474 fsl,pins = <
475 MX6QDL_PAD_KEY_COL1__UART5_TX_DATA 0x1b0b1
476 MX6QDL_PAD_KEY_ROW1__UART5_RX_DATA 0x1b0b1
477 >;
478 };
479
480 pinctrl_usbotg: usbotggrp {
481 fsl,pins = <
482 MX6QDL_PAD_GPIO_1__USB_OTG_ID 0x17059
483 >;
484 };
485
486 pinctrl_usdhc3: usdhc3grp {
487 fsl,pins = <
488 MX6QDL_PAD_SD3_CMD__SD3_CMD 0x17059
489 MX6QDL_PAD_SD3_CLK__SD3_CLK 0x10059
490 MX6QDL_PAD_SD3_DAT0__SD3_DATA0 0x17059
491 MX6QDL_PAD_SD3_DAT1__SD3_DATA1 0x17059
492 MX6QDL_PAD_SD3_DAT2__SD3_DATA2 0x17059
493 MX6QDL_PAD_SD3_DAT3__SD3_DATA3 0x17059
494 >;
495 };
496 };
497};
498
499&ldb {
500 status = "okay";
501
502 lvds-channel@1 {
503 fsl,data-mapping = "spwg";
504 fsl,data-width = <18>;
505 status = "okay";
506
507 display-timings {
508 native-mode = <&timing0>;
509 timing0: hsd100pxn1 {
510 clock-frequency = <65000000>;
511 hactive = <1024>;
512 vactive = <768>;
513 hback-porch = <220>;
514 hfront-porch = <40>;
515 vback-porch = <21>;
516 vfront-porch = <7>;
517 hsync-len = <60>;
518 vsync-len = <10>;
519 };
520 };
521 };
522};
523
524&pcie {
525 reset-gpio = <&gpio1 29 0>;
526 status = "okay";
527
528 eth1: sky2@8 { /* MAC/PHY on bus 8 */
529 compatible = "marvell,sky2";
530 };
531};
532
533&ssi1 {
534 fsl,mode = "i2s-slave";
535 status = "okay";
536};
537
538&ssi2 {
539 fsl,mode = "i2s-slave";
540 status = "okay";
541};
542
543&uart1 {
544 pinctrl-names = "default";
545 pinctrl-0 = <&pinctrl_uart1>;
546 status = "okay";
547};
548
549&uart2 {
550 pinctrl-names = "default";
551 pinctrl-0 = <&pinctrl_uart2>;
552 status = "okay";
553};
554
555&uart5 {
556 pinctrl-names = "default";
557 pinctrl-0 = <&pinctrl_uart5>;
558 status = "okay";
559};
560
561&usbotg {
562 vbus-supply = <®_usb_otg_vbus>;
563 pinctrl-names = "default";
564 pinctrl-0 = <&pinctrl_usbotg>;
565 disable-over-current;
566 status = "okay";
567};
568
569&usbh1 {
570 vbus-supply = <®_usb_h1_vbus>;
571 status = "okay";
572};
573
574&usdhc3 {
575 pinctrl-names = "default";
576 pinctrl-0 = <&pinctrl_usdhc3>;
577 cd-gpios = <&gpio7 0 0>;
578 vmmc-supply = <®_3p3v>;
579 status = "okay";
580};