0001 /*
0002 * Copyright 2015 Lothar Waßmann <LW@KARO-electronics.de>
0003 *
0004 * This file is dual-licensed: you can use it either under the terms
0005 * of the GPL or the X11 license, at your option. Note that this dual
0006 * licensing only applies to this file, and not this project as a
0007 * whole.
0008 *
0009 * a) This file is free software; you can redistribute it and/or
0010 * modify it under the terms of the GNU General Public License
0011 * version 2 as published by the Free Software Foundation.
0012 *
0013 * This file is distributed in the hope that it will be useful,
0014 * but WITHOUT ANY WARRANTY; without even the implied warranty of
0015 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
0016 * GNU General Public License for more details.
0017 *
0018 * Or, alternatively,
0019 *
0020 * b) Permission is hereby granted, free of charge, to any person
0021 * obtaining a copy of this software and associated documentation
0022 * files (the "Software"), to deal in the Software without
0023 * restriction, including without limitation the rights to use,
0024 * copy, modify, merge, publish, distribute, sublicense, and/or
0025 * sell copies of the Software, and to permit persons to whom the
0026 * Software is furnished to do so, subject to the following
0027 * conditions:
0028 *
0029 * The above copyright notice and this permission notice shall be
0030 * included in all copies or substantial portions of the Software.
0031 *
0032 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
0033 * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
0034 * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
0035 * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
0036 * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
0037 * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
0038 * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
0039 * OTHER DEALINGS IN THE SOFTWARE.
0040 */
0041
0042 /dts-v1/;
0043 #include "imx6ul.dtsi"
0044 #include "imx6ul-tx6ul.dtsi"
0045
0046 / {
0047 model = "Ka-Ro electronics TXUL-0010 Module on TXUL Mainboard";
0048 compatible = "karo,imx6ul-tx6ul", "fsl,imx6ul";
0049
0050 aliases {
0051 lcdif-24bit-pins-a = &pinctrl_disp0_3;
0052 mmc0 = &usdhc1;
0053 /delete-property/ mmc1;
0054 serial2 = &uart3;
0055 serial4 = &uart5;
0056 };
0057 /delete-node/ sound;
0058 };
0059
0060 &can1 {
0061 xceiver-supply = <®_3v3>;
0062 };
0063
0064 &can2 {
0065 xceiver-supply = <®_3v3>;
0066 };
0067
0068 &ds1339 {
0069 status = "disabled";
0070 };
0071
0072 &fec1 {
0073 pinctrl-0 = <&pinctrl_enet1 &pinctrl_etnphy0_rst>;
0074 /delete-node/ mdio;
0075 };
0076
0077 &fec2 {
0078 pinctrl-names = "default";
0079 pinctrl-0 = <&pinctrl_enet2 &pinctrl_enet2_mdio &pinctrl_etnphy1_rst>;
0080 phy-mode = "rmii";
0081 phy-reset-gpios = <&gpio4 28 GPIO_ACTIVE_LOW>;
0082 phy-supply = <®_3v3_etn>;
0083 phy-handle = <&etnphy1>;
0084 status = "okay";
0085
0086 mdio {
0087 #address-cells = <1>;
0088 #size-cells = <0>;
0089
0090 etnphy0: ethernet-phy@0 {
0091 compatible = "ethernet-phy-ieee802.3-c22";
0092 reg = <0>;
0093 pinctrl-names = "default";
0094 pinctrl-0 = <&pinctrl_etnphy0_int>;
0095 interrupt-parent = <&gpio5>;
0096 interrupts = <5 IRQ_TYPE_EDGE_FALLING>;
0097 interrupts-extended = <&gpio5 5 IRQ_TYPE_EDGE_FALLING>;
0098 status = "okay";
0099 };
0100
0101 etnphy1: ethernet-phy@2 {
0102 compatible = "ethernet-phy-ieee802.3-c22";
0103 reg = <2>;
0104 pinctrl-names = "default";
0105 pinctrl-0 = <&pinctrl_etnphy1_int>;
0106 interrupt-parent = <&gpio4>;
0107 interrupts = <27 IRQ_TYPE_EDGE_FALLING>;
0108 interrupts-extended = <&gpio4 27 IRQ_TYPE_EDGE_FALLING>;
0109 status = "okay";
0110 };
0111 };
0112 };
0113
0114 &i2c_gpio {
0115 status = "disabled";
0116 };
0117
0118 &i2c2 {
0119 /delete-node/ codec@a;
0120 /delete-node/ touchscreen@48;
0121
0122 rtc: rtc@6f {
0123 compatible = "microchip,mcp7940x";
0124 reg = <0x6f>;
0125 };
0126 };
0127
0128 &kpp {
0129 status = "disabled";
0130 };
0131
0132 &lcdif {
0133 pinctrl-0 = <&pinctrl_disp0_3>;
0134 };
0135
0136 ®_usbotg_vbus{
0137 status = "disabled";
0138 };
0139
0140 &usdhc1 {
0141 pinctrl-0 = <&pinctrl_usdhc1>;
0142 non-removable;
0143 /delete-property/ cd-gpios;
0144 cap-sdio-irq;
0145 };
0146
0147 &uart1 {
0148 pinctrl-0 = <&pinctrl_uart1>;
0149 /delete-property/ uart-has-rtscts;
0150 };
0151
0152 &uart2 {
0153 pinctrl-0 = <&pinctrl_uart2>;
0154 /delete-property/ uart-has-rtscts;
0155 status = "okay";
0156 };
0157
0158 &uart3 {
0159 pinctrl-names = "default";
0160 pinctrl-0 = <&pinctrl_uart3>;
0161 status = "okay";
0162 };
0163
0164 &uart4 {
0165 pinctrl-names = "default";
0166 pinctrl-0 = <&pinctrl_uart4>;
0167 status = "okay";
0168 };
0169
0170 &uart5 {
0171 pinctrl-names = "default";
0172 pinctrl-0 = <&pinctrl_uart5>;
0173 status = "okay";
0174 };
0175
0176 &uart6 {
0177 pinctrl-names = "default";
0178 pinctrl-0 = <&pinctrl_uart6>;
0179 status = "okay";
0180 };
0181
0182 &uart7 {
0183 pinctrl-names = "default";
0184 pinctrl-0 = <&pinctrl_uart7>;
0185 status = "okay";
0186 };
0187
0188 &uart8 {
0189 pinctrl-names = "default";
0190 pinctrl-0 = <&pinctrl_uart8>;
0191 status = "disabled"; /* conflicts with LCDIF */
0192 };
0193
0194 &iomuxc {
0195 hoggrp {
0196 fsl,pins = <
0197 MX6UL_PAD_CSI_DATA01__GPIO4_IO22 0x0b0b0 /* WLAN_RESET */
0198 >;
0199 };
0200
0201 pinctrl_disp0_3: disp0grp-3 {
0202 fsl,pins = <
0203 MX6UL_PAD_LCD_CLK__LCDIF_CLK 0x10 /* LSCLK */
0204 MX6UL_PAD_LCD_ENABLE__LCDIF_ENABLE 0x10 /* OE_ACD */
0205 MX6UL_PAD_LCD_HSYNC__LCDIF_HSYNC 0x10 /* HSYNC */
0206 MX6UL_PAD_LCD_VSYNC__LCDIF_VSYNC 0x10 /* VSYNC */
0207 MX6UL_PAD_LCD_DATA02__LCDIF_DATA02 0x10
0208 MX6UL_PAD_LCD_DATA03__LCDIF_DATA03 0x10
0209 MX6UL_PAD_LCD_DATA04__LCDIF_DATA04 0x10
0210 MX6UL_PAD_LCD_DATA05__LCDIF_DATA05 0x10
0211 MX6UL_PAD_LCD_DATA06__LCDIF_DATA06 0x10
0212 MX6UL_PAD_LCD_DATA07__LCDIF_DATA07 0x10
0213 /* LCD_DATA08..09 not wired */
0214 MX6UL_PAD_LCD_DATA10__LCDIF_DATA10 0x10
0215 MX6UL_PAD_LCD_DATA11__LCDIF_DATA11 0x10
0216 MX6UL_PAD_LCD_DATA12__LCDIF_DATA12 0x10
0217 MX6UL_PAD_LCD_DATA13__LCDIF_DATA13 0x10
0218 MX6UL_PAD_LCD_DATA14__LCDIF_DATA14 0x10
0219 MX6UL_PAD_LCD_DATA15__LCDIF_DATA15 0x10
0220 /* LCD_DATA16..17 not wired */
0221 MX6UL_PAD_LCD_DATA18__LCDIF_DATA18 0x10
0222 MX6UL_PAD_LCD_DATA19__LCDIF_DATA19 0x10
0223 MX6UL_PAD_LCD_DATA20__LCDIF_DATA20 0x10
0224 MX6UL_PAD_LCD_DATA21__LCDIF_DATA21 0x10
0225 MX6UL_PAD_LCD_DATA22__LCDIF_DATA22 0x10
0226 MX6UL_PAD_LCD_DATA23__LCDIF_DATA23 0x10
0227 >;
0228 };
0229
0230 pinctrl_enet2_mdio: enet2-mdiogrp {
0231 fsl,pins = <
0232 MX6UL_PAD_GPIO1_IO07__ENET2_MDC 0x0b0b0
0233 MX6UL_PAD_GPIO1_IO06__ENET2_MDIO 0x1b0b0
0234 >;
0235 };
0236
0237 pinctrl_uart3: uart3grp {
0238 fsl,pins = <
0239 MX6UL_PAD_UART3_TX_DATA__UART3_DCE_TX 0x0b0b0
0240 MX6UL_PAD_UART3_RX_DATA__UART3_DCE_RX 0x0b0b0
0241 >;
0242 };
0243
0244 pinctrl_uart4: uart4grp {
0245 fsl,pins = <
0246 MX6UL_PAD_UART4_TX_DATA__UART4_DCE_TX 0x0b0b0
0247 MX6UL_PAD_UART4_RX_DATA__UART4_DCE_RX 0x0b0b0
0248 >;
0249 };
0250
0251 pinctrl_uart6: uart6grp {
0252 fsl,pins = <
0253 MX6UL_PAD_CSI_MCLK__UART6_DCE_TX 0x0b0b0
0254 MX6UL_PAD_CSI_PIXCLK__UART6_DCE_RX 0x0b0b0
0255 >;
0256 };
0257
0258 pinctrl_uart7: uart7grp {
0259 fsl,pins = <
0260 MX6UL_PAD_LCD_DATA16__UART7_DCE_TX 0x0b0b0
0261 MX6UL_PAD_LCD_DATA17__UART7_DCE_RX 0x0b0b0
0262 >;
0263 };
0264
0265 pinctrl_uart8: uart8grp {
0266 fsl,pins = <
0267 MX6UL_PAD_LCD_DATA20__UART8_DCE_TX 0x0b0b0
0268 MX6UL_PAD_LCD_DATA21__UART8_DCE_RX 0x0b0b0
0269 >;
0270 };
0271 };