/* * Copyright (C) 2018-2019 Atmark Techno, Inc. All Rights Reserved. * * SPDX-License-Identifier: (GPL-2.0 OR MIT) */ #include #if 0 #include "armadillo-610-onboard-usdhc2.dtsi" #endif &iomuxc_snvs { pinctrl_expansion_interfacehog_snvs: expansion_interfacehogsnvsgrp { fsl,pins = < /* CON2 */ MX6ULL_PAD_SNVS_TAMPER0__GPIO5_IO00 0x400010b0 // CON2_13 >; }; }; &iomuxc { pinctrl_expansion_interfacehog: expansion_interfacehoggrp { fsl,pins = < /* CON2*/ // CON2_1 USB1_DP // CON2_2 USB1_DN // CON2_3 GND // CON2_4 USB2_DN // CON2_5 USB2_DP // CON2_6 GND // CON2_7 USB1_VBUS // CON2_8 USB2_VBUS // CON2_9 ETHER_SPEEDLED // CON2_10 ETHER_LINK_ACTLED //for expantion-board(USB) MX6UL_PAD_UART1_RTS_B__GPIO1_IO19 0x400010b0 // CON2_11 //MX6UL_PAD_CSI_MCLK__GPIO4_IO17 0x400010b0 // CON2_12 MX6UL_PAD_GPIO1_IO04__GPIO1_IO04 0x400010b0 // CON2_14 //MX6UL_PAD_GPIO1_IO03__GPIO1_IO03 0x400010b0 // CON2_15 //MX6UL_PAD_GPIO1_IO02__GPIO1_IO02 0x400010b0 // CON2_16 MX6UL_PAD_GPIO1_IO01__GPIO1_IO01 0x400010b0 // CON2_17 // CON2_36 GND // CON2_42 BJP1 MX6UL_PAD_JTAG_MOD__GPIO1_IO10 0x10b0 // CON2_43 // CON2_44 RESETBMCU // CON2_45 VCC_3.3V // CON2_46 VCC_3.3V // CON2_47 VIN // CON2_48 VIN // CON2_49 VIN // CON2_50 VIN // CON2_51 GND // CON2_52 GND // CON2_53 VCC_5V // CON2_54 VCC_5V MX6UL_PAD_CSI_DATA04__GPIO4_IO25 0x400010b0 // CON2_57 MX6UL_PAD_CSI_DATA05__GPIO4_IO26 0x400010b0 // CON2_58 MX6UL_PAD_CSI_DATA06__GPIO4_IO27 0x400010b0 // CON2_59 MX6UL_PAD_CSI_DATA07__GPIO4_IO28 0x400010b0 // CON2_60 // MX6UL_PAD_CSI_DATA02__GPIO4_IO23 0x400010b0 // CON2_61 // MX6UL_PAD_CSI_DATA01__GPIO4_IO22 0x400010b0 // CON2_62 // MX6UL_PAD_CSI_DATA03__GPIO4_IO24 0x400010b0 // CON2_63 // MX6UL_PAD_CSI_DATA00__GPIO4_IO21 0x400010b0 // CON2_64 MX6UL_PAD_CSI_PIXCLK__GPIO4_IO18 0x400010b0 // CON2_65 MX6UL_PAD_NAND_DATA07__GPIO4_IO09 0x400010b0 // CON2_66 MX6UL_PAD_NAND_DATA06__GPIO4_IO08 0x400010b0 // CON2_67 MX6UL_PAD_NAND_DATA05__GPIO4_IO07 0x400010b0 // CON2_68 MX6UL_PAD_NAND_DATA04__GPIO4_IO06 0x400010b0 // CON2_69 // CON2_75 GND // CON2_77 PWRON // CON2_78 ONOFF // CON2_79 VDD_COIN_3V MX6UL_PAD_GPIO1_IO08__GPIO1_IO08 0x400010b0 // CON2_80 MX6UL_PAD_GPIO1_IO05__GPIO1_IO05 0x400010b0 // CON2_81 MX6UL_PAD_UART5_TX_DATA__GPIO1_IO30 0x400010b0 // CON2_82 MX6UL_PAD_UART5_RX_DATA__GPIO1_IO31 0x400010b0 // CON2_84 MX6UL_PAD_GPIO1_IO00__GPIO1_IO00 0x400010b0 // CON2_90 // CON2_95 GND // CON2_96 ETHER_RXN // CON2_97 ETHER_RXP // CON2_98 GND // CON2_99 ETHER_TXN // CON2_100 ETHER_TXP >; }; pinctrl_usbotg2_vbus: usbotg2vbusgrp { fsl,pins = < //for expantion-board(USB) //MX6UL_PAD_UART1_RTS_B__GPIO1_IO19 0x00008 //MX6UL_PAD_CSI_MCLK__GPIO4_IO17 0x00008 --remark-- >; }; pinctrl_uart1: uart1grp { fsl,pins = < MX6UL_PAD_GPIO1_IO03__UART1_DCE_RX 0x1b0b1 // CON2_15 MX6UL_PAD_GPIO1_IO02__UART1_DCE_TX 0x00008 // CON2_16 //MX6UL_PAD_UART1_TX_DATA__UART1_DCE_TX 0x00008 // CON2_83 //MX6UL_PAD_UART1_RX_DATA__UART1_DCE_RX 0x1b0b1 // CON2_85 >; }; pinctrl_uart2: uart2grp { fsl,pins = < MX6UL_PAD_UART2_RX_DATA__UART2_DCE_RX 0x1b0b1 // CON2_88 MX6UL_PAD_UART2_TX_DATA__UART2_DCE_TX 0x00008 // CON2_89 //for expantion-board(SD_PWR) //MX6UL_PAD_UART2_RTS_B__UART2_DCE_RTS 0x1b0b1 // CON2_86 //MX6UL_PAD_UART2_CTS_B__UART2_DCE_CTS 0x00008 // CON2_87 >; }; pinctrl_uart3: uart3grp { fsl,pins = < MX6UL_PAD_UART3_RX_DATA__UART3_DCE_RX 0x1b0b1 // CON2_93 MX6UL_PAD_UART3_TX_DATA__UART3_DCE_TX 0x00008 // CON2_94 //MX6UL_PAD_UART3_CTS_B__UART3_DCE_CTS 0x00008 // CON2_91 //MX6UL_PAD_UART3_RTS_B__UART3_DCE_RTS 0x1b0b1 // CON2_92 >; }; pinctrl_uart5: uart5grp { fsl,pins = < MX6ULL_PAD_UART1_TX_DATA__UART5_DCE_TX 0x00008 // CON2_83 MX6ULL_PAD_UART1_RX_DATA__UART5_DCE_RX 0x1b0b1 // CON2_85 >; }; pinctrl_ecspi2: ecspi2grp { fsl,pins = < MX6UL_PAD_CSI_DATA02__ECSPI2_MOSI 0x1b0b0 // CON2_61 MX6UL_PAD_CSI_DATA01__GPIO4_IO22 0x1b0b0 // CON2_62 MX6UL_PAD_CSI_DATA03__ECSPI2_MISO 0x1b0b0 // CON2_63 MX6UL_PAD_CSI_DATA00__ECSPI2_SCLK 0x1b0b0 // CON2_64 >; }; pinctrl_i2c2: i2c2grp { fsl,pins = < MX6UL_PAD_CSI_VSYNC__I2C2_SDA 0x4001b8b0 // CON2_55 MX6UL_PAD_CSI_HSYNC__I2C2_SCL 0x4001b8b0 // CON2_56 >; }; pinctrl_pwm5: pwm5grp { fsl,pins = < MX6UL_PAD_NAND_DQS__PWM5_OUT 0x110b0 // CON2_41 >; }; pinctrl_lcdif: lcdifgrp { fsl,pins = < MX6UL_PAD_LCD_CLK__LCDIF_CLK 0x08 // CON2_37 MX6UL_PAD_LCD_HSYNC__LCDIF_HSYNC 0x08 // CON2_38 MX6UL_PAD_LCD_VSYNC__LCDIF_VSYNC 0x08 // CON2_39 MX6UL_PAD_LCD_ENABLE__LCDIF_ENABLE 0x08 // CON2_40 MX6UL_PAD_LCD_DATA00__LCDIF_DATA00 0x08 // CON2_18 MX6UL_PAD_LCD_DATA01__LCDIF_DATA01 0x08 // CON2_19 MX6UL_PAD_LCD_DATA02__LCDIF_DATA02 0x08 // CON2_20 MX6UL_PAD_LCD_DATA03__LCDIF_DATA03 0x08 // CON2_21 MX6UL_PAD_LCD_DATA04__LCDIF_DATA04 0x08 // CON2_22 MX6UL_PAD_LCD_DATA05__LCDIF_DATA05 0x08 // CON2_23 MX6UL_PAD_LCD_DATA06__LCDIF_DATA06 0x08 // CON2_24 MX6UL_PAD_LCD_DATA07__LCDIF_DATA07 0x08 // CON2_25 MX6UL_PAD_LCD_DATA08__LCDIF_DATA08 0x08 // CON2_26 MX6UL_PAD_LCD_DATA09__LCDIF_DATA09 0x08 // CON2_27 MX6UL_PAD_LCD_DATA10__LCDIF_DATA10 0x08 // CON2_28 MX6UL_PAD_LCD_DATA11__LCDIF_DATA11 0x08 // CON2_29 MX6UL_PAD_LCD_DATA12__LCDIF_DATA12 0x08 // CON2_30 MX6UL_PAD_LCD_DATA13__LCDIF_DATA13 0x08 // CON2_31 MX6UL_PAD_LCD_DATA14__LCDIF_DATA14 0x08 // CON2_32 MX6UL_PAD_LCD_DATA15__LCDIF_DATA15 0x08 // CON2_33 MX6UL_PAD_LCD_DATA16__LCDIF_DATA16 0x08 // CON2_34 MX6UL_PAD_LCD_DATA17__LCDIF_DATA17 0x08 // CON2_35 >; }; pinctrl_usdhc2: usdhc2grp { fsl,pins = < MX6UL_PAD_LCD_DATA23__USDHC2_DATA3 0x10059 // CON2_70 MX6UL_PAD_LCD_DATA22__USDHC2_DATA2 0x10059 // CON2_71 MX6UL_PAD_LCD_DATA21__USDHC2_DATA1 0x10059 // CON2_72 MX6UL_PAD_LCD_DATA20__USDHC2_DATA0 0x10059 // CON2_73 MX6UL_PAD_LCD_DATA19__USDHC2_CLK 0x10069 // CON2_74 MX6UL_PAD_LCD_DATA18__USDHC2_CMD 0x10059 // CON2_76 >; }; //for expantion-board(SD_PWR) pinctrl_reg_86: reg86grp { fsl,pins = < MX6UL_PAD_UART2_RTS_B__GPIO1_IO23 0x00008 // CON2_86 >; }; }; &uart1 { pinctrl-names = "default"; pinctrl-0 = <&pinctrl_uart1>; status = "okay"; }; &uart2 { pinctrl-names = "default"; pinctrl-0 = <&pinctrl_uart2>; //for expantion-board(SD_PWR) //uart-has-rtscts; status = "okay"; }; &uart3 { pinctrl-names = "default"; pinctrl-0 = <&pinctrl_uart3>; //uart-has-rtscts; status = "okay"; }; &uart5 { pinctrl-names = "default"; pinctrl-0 = <&pinctrl_uart5>; status = "okay"; }; &ecspi2 { pinctrl-names = "default"; pinctrl-0 = <&pinctrl_ecspi2>; cs-gpios = <&gpio4 22 GPIO_ACTIVE_LOW>; // CS0 status = "okay"; spidev2_0: spi@0 { compatible = "spidev"; reg = <0>; spi-max-frequency = <5000000>; }; }; &i2c2 { pinctrl-names = "default"; dummy_prop_a = "dummy1"; dummy_prop_b = "dummy4"; pinctrl-0 = <&pinctrl_i2c2>; clock-frequency = <100000>; status = "okay"; }; &pwm5 { pinctrl-names = "default"; pinctrl-0 = <&pinctrl_pwm5>; #pwm-cells = <3>; status = "okay"; }; &lcdif { pinctrl-names = "default"; pinctrl-0 = <&pinctrl_lcdif>; display = <&display0>; lcd-supply = <&extreg_3v3>; status = "okay"; display0: display0 { bits-per-pixel = <32>; bus-width = <18>; display-timings { timing0: timing { clock-frequency = <25180000>; hactive = <640>; vactive = <480>; hfront-porch = <16>; hback-porch = <114>; hsync-len = <30>; vback-porch = <7>; vfront-porch = <35>; vsync-len = <3>; hsync-active = <0>; vsync-active = <0>; de-active = <1>; pixelclk-active = <1>; }; }; }; }; &usdhc2 { compatible = "fsl,imx6sx-usdhc"; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_usdhc2>; //cd-gpios = <&gpio1 27 GPIO_ACTIVE_LOW>; //wp-gpios = <&gpio1 26 GPIO_ACTIVE_HIGH>; vmmc-supply = <®_sd2_vmmc>; keep-power-in-suspend; wakeup-source; disable-wp; broken-cd; status = "okay"; }; &usbotg1 { // vbus-supply = <®_usbotg1_vbus>; dr_mode = "host"; disable-over-current; status = "okay"; }; &usbotg2 { // vbus-supply = <®_usbotg2_vbus>; dr_mode = "host"; disable-over-current; status = "okay"; }; &usbphy2 { fsl,tx-d-cal = <106>; }; / { regulators { compatible = "simple-bus"; #address-cells = <1>; #size-cells = <0>; extreg_3v3: ext-regulator-3v3 { compatible = "regulator-fixed"; regulator-name = "3V3"; regulator-min-microvolt = <3300000>; regulator-max-microvolt = <3300000>; regulator-always-on; }; reg_usbotg1_vbus: regulator-usbotg1vbus { //pinctrl-names = "default"; //pinctrl-0 = <&pinctrl_usbotg1_vbus>; compatible = "regulator-fixed"; regulator-name = "USB_OTG1_VBUS"; regulator-min-microvolt = <5000000>; regulator-max-microvolt = <5000000>; //gpio = <&gpio1 19 GPIO_ACTIVE_HIGH>; regulator-always-on; //enable-active-high; }; reg_usbotg2_vbus: regulator-usbotg2vbus { pinctrl-names = "default"; pinctrl-0 = <&pinctrl_usbotg2_vbus>; compatible = "regulator-fixed"; regulator-name = "USB_OTG2_VBUS"; regulator-min-microvolt = <5000000>; regulator-max-microvolt = <5000000>; //gpio = <&gpio1 19 GPIO_ACTIVE_HIGH>; gpio = <&gpio4 17 GPIO_ACTIVE_HIGH>; //regulator-always-on; enable-active-high; }; #if 1 //for expantion board(SD_PWR) reg_sd2_vmmc: regulator-sd2vmmc { pinctrl-names = "default"; pinctrl-0 = <&pinctrl_reg_86>; compatible = "regulator-fixed"; regulator-name = "VDD_SD2"; regulator-min-microvolt = <3300000>; regulator-max-microvolt = <3300000>; startup-delay-us = <0>; regulator-ramp-delay = <0>; gpio = <&gpio1 23 GPIO_ACTIVE_HIGH>; enable-active-high; regulator-boot-on; }; #else reg_sd2_vmmc: regulator-sd2vmmc { //pinctrl-names = "default"; //pinctrl-0 = <&pinctrl_sd2_vmmc>; compatible = "regulator-fixed"; regulator-name = "VDD_SD2"; regulator-min-microvolt = <3300000>; regulator-max-microvolt = <3300000>; //startup-delay-us = <0>; //regulator-ramp-delay = <0>; //gpio = <&gpio1 23 GPIO_ACTIVE_HIGH>; //enable-active-high; //regulator-boot-on; regulator-always-on; }; #endif }; vbus_sel: vbus-sel { compatible = "imx6-vbus-sel"; //otg1-vbus-reg-supply = <®_usbotg1_vbus>; /* Workarounds for ERR010661 */ /* otg2-vbus-reg-supply = <®_usbotg2_vbus>; */ }; chosen { stdout-path = &uart1; }; aliases { }; ext_backlight_display: ext-backlight-display { compatible = "pwm-backlight"; pwms = <&pwm5 0 5000000 PWM_POLARITY_INVERTED>; brightness-levels = <0 4 8 16 32 64 128 255>; default-brightness-level = <7>; status = "okay"; }; };