1e88edc7bSJagan Teki/* 2e88edc7bSJagan Teki * Copyright (C) 2016 Amarula Solutions B.V. 3e88edc7bSJagan Teki * Copyright (C) 2016 Engicam S.r.l. 4e88edc7bSJagan Teki * 5e88edc7bSJagan Teki * This file is dual-licensed: you can use it either under the terms 6e88edc7bSJagan Teki * of the GPL or the X11 license, at your option. Note that this dual 7e88edc7bSJagan Teki * licensing only applies to this file, and not this project as a 8e88edc7bSJagan Teki * whole. 9e88edc7bSJagan Teki * 10e88edc7bSJagan Teki * a) This file is free software; you can redistribute it and/or 11e88edc7bSJagan Teki * modify it under the terms of the GNU General Public License 12e88edc7bSJagan Teki * version 2 as published by the Free Software Foundation. 13e88edc7bSJagan Teki * 14e88edc7bSJagan Teki * This file is distributed in the hope that it will be useful 15e88edc7bSJagan Teki * but WITHOUT ANY WARRANTY; without even the implied warranty of 16e88edc7bSJagan Teki * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 17e88edc7bSJagan Teki * GNU General Public License for more details. 18e88edc7bSJagan Teki * 19e88edc7bSJagan Teki * Or, alternatively 20e88edc7bSJagan Teki * 21e88edc7bSJagan Teki * b) Permission is hereby granted, free of charge, to any person 22e88edc7bSJagan Teki * obtaining a copy of this software and associated documentation 23e88edc7bSJagan Teki * files (the "Software"), to deal in the Software without 24e88edc7bSJagan Teki * restriction, including without limitation the rights to use 25e88edc7bSJagan Teki * copy, modify, merge, publish, distribute, sublicense, and/or 26e88edc7bSJagan Teki * sell copies of the Software, and to permit persons to whom the 27e88edc7bSJagan Teki * Software is furnished to do so, subject to the following 28e88edc7bSJagan Teki * conditions: 29e88edc7bSJagan Teki * 30e88edc7bSJagan Teki * The above copyright notice and this permission notice shall be 31e88edc7bSJagan Teki * included in all copies or substantial portions of the Software. 32e88edc7bSJagan Teki * 33e88edc7bSJagan Teki * THE SOFTWARE IS PROVIDED , WITHOUT WARRANTY OF ANY KIND 34e88edc7bSJagan Teki * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES 35e88edc7bSJagan Teki * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 36e88edc7bSJagan Teki * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT 37e88edc7bSJagan Teki * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY 38e88edc7bSJagan Teki * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 39e88edc7bSJagan Teki * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 40e88edc7bSJagan Teki * OTHER DEALINGS IN THE SOFTWARE. 41e88edc7bSJagan Teki */ 42e88edc7bSJagan Teki 43e88edc7bSJagan Teki#include <dt-bindings/gpio/gpio.h> 44e88edc7bSJagan Teki#include <dt-bindings/input/input.h> 45e88edc7bSJagan Teki 46e88edc7bSJagan Teki/ { 47*04c28a78SJagan Teki aliases { 48*04c28a78SJagan Teki mmc1 = &usdhc3; 49*04c28a78SJagan Teki }; 50*04c28a78SJagan Teki 51e88edc7bSJagan Teki memory { 52e88edc7bSJagan Teki reg = <0x10000000 0x80000000>; 53e88edc7bSJagan Teki }; 54e88edc7bSJagan Teki 55e88edc7bSJagan Teki reg_3p3v: regulator-3p3v { 56e88edc7bSJagan Teki compatible = "regulator-fixed"; 57e88edc7bSJagan Teki regulator-name = "3P3V"; 58e88edc7bSJagan Teki regulator-min-microvolt = <3300000>; 59e88edc7bSJagan Teki regulator-max-microvolt = <3300000>; 60e88edc7bSJagan Teki regulator-boot-on; 61e88edc7bSJagan Teki regulator-always-on; 62e88edc7bSJagan Teki }; 63e88edc7bSJagan Teki}; 64e88edc7bSJagan Teki 65e88edc7bSJagan Teki&can1 { 66e88edc7bSJagan Teki pinctrl-names = "default"; 67e88edc7bSJagan Teki pinctrl-0 = <&pinctrl_flexcan1>; 68e88edc7bSJagan Teki xceiver-supply = <®_3p3v>; 69e88edc7bSJagan Teki}; 70e88edc7bSJagan Teki 71e88edc7bSJagan Teki&can2 { 72e88edc7bSJagan Teki pinctrl-names = "default"; 73e88edc7bSJagan Teki pinctrl-0 = <&pinctrl_flexcan2>; 74e88edc7bSJagan Teki xceiver-supply = <®_3p3v>; 75e88edc7bSJagan Teki}; 76e88edc7bSJagan Teki 77e88edc7bSJagan Teki&clks { 78e88edc7bSJagan Teki assigned-clocks = <&clks IMX6QDL_CLK_LVDS2_SEL>; 79e88edc7bSJagan Teki assigned-clock-parents = <&clks IMX6QDL_CLK_OSC>; 80e88edc7bSJagan Teki}; 81e88edc7bSJagan Teki 8265613cadSJagan Teki&fec { 8365613cadSJagan Teki pinctrl-names = "default"; 8465613cadSJagan Teki pinctrl-0 = <&pinctrl_enet>; 8565613cadSJagan Teki phy-reset-gpios = <&gpio7 12 GPIO_ACTIVE_LOW>; 8665613cadSJagan Teki phy-mode = "rmii"; 8765613cadSJagan Teki status = "okay"; 8865613cadSJagan Teki}; 8965613cadSJagan Teki 90e88edc7bSJagan Teki&gpmi { 91e88edc7bSJagan Teki pinctrl-names = "default"; 92e88edc7bSJagan Teki pinctrl-0 = <&pinctrl_gpmi_nand>; 93e88edc7bSJagan Teki nand-on-flash-bbt; 94e88edc7bSJagan Teki status = "okay"; 95e88edc7bSJagan Teki}; 96e88edc7bSJagan Teki 97e88edc7bSJagan Teki&i2c1 { 98e88edc7bSJagan Teki clock-frequency = <100000>; 99e88edc7bSJagan Teki pinctrl-names = "default"; 100e88edc7bSJagan Teki pinctrl-0 = <&pinctrl_i2c1>; 101e88edc7bSJagan Teki status = "okay"; 102e88edc7bSJagan Teki}; 103e88edc7bSJagan Teki 104e88edc7bSJagan Teki&i2c2 { 105e88edc7bSJagan Teki clock-frequency = <100000>; 106e88edc7bSJagan Teki pinctrl-names = "default"; 107e88edc7bSJagan Teki pinctrl-0 = <&pinctrl_i2c2>; 108e88edc7bSJagan Teki status = "okay"; 109e88edc7bSJagan Teki}; 110e88edc7bSJagan Teki 111e88edc7bSJagan Teki&i2c3 { 112e88edc7bSJagan Teki clock-frequency = <100000>; 113e88edc7bSJagan Teki pinctrl-names = "default"; 114e88edc7bSJagan Teki pinctrl-0 = <&pinctrl_i2c3>; 115e88edc7bSJagan Teki status = "okay"; 116e88edc7bSJagan Teki}; 117e88edc7bSJagan Teki 118e88edc7bSJagan Teki&uart4 { 119e88edc7bSJagan Teki pinctrl-names = "default"; 120e88edc7bSJagan Teki pinctrl-0 = <&pinctrl_uart4>; 121e88edc7bSJagan Teki status = "okay"; 122e88edc7bSJagan Teki}; 123e88edc7bSJagan Teki 124e88edc7bSJagan Teki&usdhc1 { 125e88edc7bSJagan Teki pinctrl-names = "default"; 126e88edc7bSJagan Teki pinctrl-0 = <&pinctrl_usdhc1>; 127e88edc7bSJagan Teki cd-gpios = <&gpio1 1 GPIO_ACTIVE_LOW>; 128e88edc7bSJagan Teki no-1-8-v; 129e88edc7bSJagan Teki status = "okay"; 130e88edc7bSJagan Teki}; 131e88edc7bSJagan Teki 132*04c28a78SJagan Teki&usdhc3 { 133*04c28a78SJagan Teki pinctrl-names = "default"; 134*04c28a78SJagan Teki pinctrl-0 = <&pinctrl_usdhc3>; 135*04c28a78SJagan Teki no-1-8-v; 136*04c28a78SJagan Teki non-removable; 137*04c28a78SJagan Teki status = "disabled"; 138*04c28a78SJagan Teki}; 139*04c28a78SJagan Teki 140e88edc7bSJagan Teki&iomuxc { 14165613cadSJagan Teki pinctrl_enet: enetgrp { 14265613cadSJagan Teki fsl,pins = < 14365613cadSJagan Teki MX6QDL_PAD_ENET_CRS_DV__ENET_RX_EN 0x1b0b0 14465613cadSJagan Teki MX6QDL_PAD_GPIO_16__ENET_REF_CLK 0x1b0b1 14565613cadSJagan Teki MX6QDL_PAD_ENET_TX_EN__ENET_TX_EN 0x1b0b0 14665613cadSJagan Teki MX6QDL_PAD_ENET_RXD1__ENET_RX_DATA1 0x1b0b0 14765613cadSJagan Teki MX6QDL_PAD_ENET_RXD0__ENET_RX_DATA0 0x1b0b0 14865613cadSJagan Teki MX6QDL_PAD_ENET_TXD1__ENET_TX_DATA1 0x1b0b0 14965613cadSJagan Teki MX6QDL_PAD_ENET_TXD0__ENET_TX_DATA0 0x1b0b0 15065613cadSJagan Teki MX6QDL_PAD_ENET_MDC__ENET_MDC 0x1b0b0 15165613cadSJagan Teki MX6QDL_PAD_ENET_MDIO__ENET_MDIO 0x1b0b0 15265613cadSJagan Teki MX6QDL_PAD_ENET_REF_CLK__GPIO1_IO23 0x1b0b0 15365613cadSJagan Teki MX6QDL_PAD_GPIO_17__GPIO7_IO12 0x1b0b0 15465613cadSJagan Teki >; 15565613cadSJagan Teki }; 15665613cadSJagan Teki 157e88edc7bSJagan Teki pinctrl_flexcan1: flexcan1grp { 158e88edc7bSJagan Teki fsl,pins = < 159e88edc7bSJagan Teki MX6QDL_PAD_KEY_ROW2__FLEXCAN1_RX 0x1b020 160e88edc7bSJagan Teki MX6QDL_PAD_KEY_COL2__FLEXCAN1_TX 0x1b020 161e88edc7bSJagan Teki >; 162e88edc7bSJagan Teki }; 163e88edc7bSJagan Teki 164e88edc7bSJagan Teki pinctrl_flexcan2: flexcan2grp { 165e88edc7bSJagan Teki fsl,pins = < 166e88edc7bSJagan Teki MX6QDL_PAD_KEY_COL4__FLEXCAN2_TX 0x1b020 167e88edc7bSJagan Teki MX6QDL_PAD_KEY_ROW4__FLEXCAN2_RX 0x1b020 168e88edc7bSJagan Teki >; 169e88edc7bSJagan Teki }; 170e88edc7bSJagan Teki 171e88edc7bSJagan Teki pinctrl_gpmi_nand: gpmi-nand { 172e88edc7bSJagan Teki fsl,pins = < 173e88edc7bSJagan Teki MX6QDL_PAD_NANDF_CLE__NAND_CLE 0xb0b1 174e88edc7bSJagan Teki MX6QDL_PAD_NANDF_ALE__NAND_ALE 0xb0b1 175e88edc7bSJagan Teki MX6QDL_PAD_NANDF_WP_B__NAND_WP_B 0xb0b1 176e88edc7bSJagan Teki MX6QDL_PAD_NANDF_RB0__NAND_READY_B 0xb000 177e88edc7bSJagan Teki MX6QDL_PAD_NANDF_CS0__NAND_CE0_B 0xb0b1 178e88edc7bSJagan Teki MX6QDL_PAD_NANDF_CS1__NAND_CE1_B 0xb0b1 179e88edc7bSJagan Teki MX6QDL_PAD_SD4_CMD__NAND_RE_B 0xb0b1 180e88edc7bSJagan Teki MX6QDL_PAD_SD4_CLK__NAND_WE_B 0xb0b1 181e88edc7bSJagan Teki MX6QDL_PAD_NANDF_D0__NAND_DATA00 0xb0b1 182e88edc7bSJagan Teki MX6QDL_PAD_NANDF_D1__NAND_DATA01 0xb0b1 183e88edc7bSJagan Teki MX6QDL_PAD_NANDF_D2__NAND_DATA02 0xb0b1 184e88edc7bSJagan Teki MX6QDL_PAD_NANDF_D3__NAND_DATA03 0xb0b1 185e88edc7bSJagan Teki MX6QDL_PAD_NANDF_D4__NAND_DATA04 0xb0b1 186e88edc7bSJagan Teki MX6QDL_PAD_NANDF_D5__NAND_DATA05 0xb0b1 187e88edc7bSJagan Teki MX6QDL_PAD_NANDF_D6__NAND_DATA06 0xb0b1 188e88edc7bSJagan Teki MX6QDL_PAD_NANDF_D7__NAND_DATA07 0xb0b1 189e88edc7bSJagan Teki MX6QDL_PAD_SD4_DAT0__NAND_DQS 0x00b1 190e88edc7bSJagan Teki >; 191e88edc7bSJagan Teki }; 192e88edc7bSJagan Teki 193e88edc7bSJagan Teki pinctrl_i2c1: i2c1grp { 194e88edc7bSJagan Teki fsl,pins = < 195e88edc7bSJagan Teki MX6QDL_PAD_EIM_D21__I2C1_SCL 0x4001b8b1 196e88edc7bSJagan Teki MX6QDL_PAD_EIM_D28__I2C1_SDA 0x4001b8b1 197e88edc7bSJagan Teki >; 198e88edc7bSJagan Teki }; 199e88edc7bSJagan Teki 200e88edc7bSJagan Teki pinctrl_i2c2: i2c2grp { 201e88edc7bSJagan Teki fsl,pins = < 202e88edc7bSJagan Teki MX6QDL_PAD_EIM_EB2__I2C2_SCL 0x4001b8b1 203e88edc7bSJagan Teki MX6QDL_PAD_KEY_ROW3__I2C2_SDA 0x4001b8b1 204e88edc7bSJagan Teki >; 205e88edc7bSJagan Teki }; 206e88edc7bSJagan Teki 207e88edc7bSJagan Teki pinctrl_i2c3: i2c3grp { 208e88edc7bSJagan Teki fsl,pins = < 209e88edc7bSJagan Teki MX6QDL_PAD_GPIO_5__I2C3_SCL 0x4001b8b1 210e88edc7bSJagan Teki MX6QDL_PAD_EIM_D18__I2C3_SDA 0x4001b8b1 211e88edc7bSJagan Teki MX6QDL_PAD_GPIO_0__CCM_CLKO1 0x130b0 212e88edc7bSJagan Teki >; 213e88edc7bSJagan Teki }; 214e88edc7bSJagan Teki 215e88edc7bSJagan Teki pinctrl_uart4: uart4grp { 216e88edc7bSJagan Teki fsl,pins = < 217e88edc7bSJagan Teki MX6QDL_PAD_KEY_COL0__UART4_TX_DATA 0x1b0b1 218e88edc7bSJagan Teki MX6QDL_PAD_KEY_ROW0__UART4_RX_DATA 0x1b0b1 219e88edc7bSJagan Teki >; 220e88edc7bSJagan Teki }; 221e88edc7bSJagan Teki 222e88edc7bSJagan Teki pinctrl_usdhc1: usdhc1grp { 223e88edc7bSJagan Teki fsl,pins = < 224e88edc7bSJagan Teki MX6QDL_PAD_SD1_CMD__SD1_CMD 0x17070 225e88edc7bSJagan Teki MX6QDL_PAD_SD1_CLK__SD1_CLK 0x10070 226e88edc7bSJagan Teki MX6QDL_PAD_SD1_DAT0__SD1_DATA0 0x17070 227e88edc7bSJagan Teki MX6QDL_PAD_SD1_DAT1__SD1_DATA1 0x17070 228e88edc7bSJagan Teki MX6QDL_PAD_SD1_DAT2__SD1_DATA2 0x17070 229e88edc7bSJagan Teki MX6QDL_PAD_SD1_DAT3__SD1_DATA3 0x17070 230e88edc7bSJagan Teki >; 231e88edc7bSJagan Teki }; 232*04c28a78SJagan Teki 233*04c28a78SJagan Teki pinctrl_usdhc3: usdhc3grp { 234*04c28a78SJagan Teki fsl,pins = < 235*04c28a78SJagan Teki MX6QDL_PAD_SD3_CMD__SD3_CMD 0x17059 236*04c28a78SJagan Teki MX6QDL_PAD_SD3_CLK__SD3_CLK 0x10059 237*04c28a78SJagan Teki MX6QDL_PAD_SD3_DAT0__SD3_DATA0 0x17059 238*04c28a78SJagan Teki MX6QDL_PAD_SD3_DAT1__SD3_DATA1 0x17059 239*04c28a78SJagan Teki MX6QDL_PAD_SD3_DAT2__SD3_DATA2 0x17059 240*04c28a78SJagan Teki MX6QDL_PAD_SD3_DAT3__SD3_DATA3 0x17059 241*04c28a78SJagan Teki MX6QDL_PAD_SD3_DAT4__SD3_DATA4 0x17059 242*04c28a78SJagan Teki MX6QDL_PAD_SD3_DAT5__SD3_DATA5 0x17059 243*04c28a78SJagan Teki MX6QDL_PAD_SD3_DAT6__SD3_DATA6 0x17059 244*04c28a78SJagan Teki MX6QDL_PAD_SD3_DAT7__SD3_DATA7 0x17059 245*04c28a78SJagan Teki >; 246*04c28a78SJagan Teki }; 247e88edc7bSJagan Teki}; 248