1f126890aSEmmanuel Vadot/* 2f126890aSEmmanuel Vadot * Copyright (C) 2017 Milo Kim <woogyom.kim@gmail.com> 3f126890aSEmmanuel Vadot * 4f126890aSEmmanuel Vadot * This file is dual-licensed: you can use it either under the terms 5f126890aSEmmanuel Vadot * of the GPL or the X11 license, at your option. Note that this dual 6f126890aSEmmanuel Vadot * licensing only applies to this file, and not this project as a 7f126890aSEmmanuel Vadot * whole. 8f126890aSEmmanuel Vadot * 9f126890aSEmmanuel Vadot * a) This file is free software; you can redistribute it and/or 10f126890aSEmmanuel Vadot * modify it under the terms of the GNU General Public License as 11f126890aSEmmanuel Vadot * published by the Free Software Foundation; either version 2 of the 12f126890aSEmmanuel Vadot * License, or (at your option) any later version. 13f126890aSEmmanuel Vadot * 14f126890aSEmmanuel Vadot * This file is distributed in the hope that it will be useful, 15f126890aSEmmanuel Vadot * but WITHOUT ANY WARRANTY; without even the implied warranty of 16f126890aSEmmanuel Vadot * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 17f126890aSEmmanuel Vadot * GNU General Public License for more details. 18f126890aSEmmanuel Vadot * 19f126890aSEmmanuel Vadot * Or, alternatively, 20f126890aSEmmanuel Vadot * 21f126890aSEmmanuel Vadot * b) Permission is hereby granted, free of charge, to any person 22f126890aSEmmanuel Vadot * obtaining a copy of this software and associated documentation 23f126890aSEmmanuel Vadot * files (the "Software"), to deal in the Software without 24f126890aSEmmanuel Vadot * restriction, including without limitation the rights to use, 25f126890aSEmmanuel Vadot * copy, modify, merge, publish, distribute, sublicense, and/or 26f126890aSEmmanuel Vadot * sell copies of the Software, and to permit persons to whom the 27f126890aSEmmanuel Vadot * Software is furnished to do so, subject to the following 28f126890aSEmmanuel Vadot * conditions: 29f126890aSEmmanuel Vadot * 30f126890aSEmmanuel Vadot * The above copyright notice and this permission notice shall be 31f126890aSEmmanuel Vadot * included in all copies or substantial portions of the Software. 32f126890aSEmmanuel Vadot * 33f126890aSEmmanuel Vadot * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 34f126890aSEmmanuel Vadot * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES 35f126890aSEmmanuel Vadot * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 36f126890aSEmmanuel Vadot * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT 37f126890aSEmmanuel Vadot * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 38f126890aSEmmanuel Vadot * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 39f126890aSEmmanuel Vadot * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 40f126890aSEmmanuel Vadot * OTHER DEALINGS IN THE SOFTWARE. 41f126890aSEmmanuel Vadot */ 42f126890aSEmmanuel Vadot 43f126890aSEmmanuel Vadot#include <dt-bindings/gpio/gpio.h> 44f126890aSEmmanuel Vadot#include <dt-bindings/input/input.h> 45f126890aSEmmanuel Vadot 46f126890aSEmmanuel Vadot/ { 47f126890aSEmmanuel Vadot chosen { 48f126890aSEmmanuel Vadot stdout-path = &uart1; 49f126890aSEmmanuel Vadot }; 50f126890aSEmmanuel Vadot 51f126890aSEmmanuel Vadot memory@10000000 { 52f126890aSEmmanuel Vadot device_type = "memory"; 53f126890aSEmmanuel Vadot reg = <0x10000000 0x40000000>; 54f126890aSEmmanuel Vadot }; 55f126890aSEmmanuel Vadot 56f126890aSEmmanuel Vadot gpio-keys { 57f126890aSEmmanuel Vadot compatible = "gpio-keys"; 58f126890aSEmmanuel Vadot pinctrl-names = "default"; 59f126890aSEmmanuel Vadot pinctrl-0 = <&pinctrl_gpio_keys>; 60f126890aSEmmanuel Vadot 61f126890aSEmmanuel Vadot power { 62f126890aSEmmanuel Vadot gpios = <&gpio3 7 GPIO_ACTIVE_LOW>; 63f126890aSEmmanuel Vadot label = "Power Button"; 64f126890aSEmmanuel Vadot linux,code = <KEY_POWER>; 65f126890aSEmmanuel Vadot wakeup-source; 66f126890aSEmmanuel Vadot }; 67f126890aSEmmanuel Vadot }; 68f126890aSEmmanuel Vadot 69f126890aSEmmanuel Vadot panel { 70f126890aSEmmanuel Vadot compatible = "avic,tm097tdh02", "hannstar,hsd100pxn1"; 71f126890aSEmmanuel Vadot backlight = <&panel_bl>; 72f126890aSEmmanuel Vadot power-supply = <®_3p3v>; 73f126890aSEmmanuel Vadot 74f126890aSEmmanuel Vadot port { 75f126890aSEmmanuel Vadot panel_in: endpoint { 76f126890aSEmmanuel Vadot remote-endpoint = <&lvds0_out>; 77f126890aSEmmanuel Vadot }; 78f126890aSEmmanuel Vadot }; 79f126890aSEmmanuel Vadot }; 80f126890aSEmmanuel Vadot 81f126890aSEmmanuel Vadot panel_bl: backlight { 82f126890aSEmmanuel Vadot compatible = "pwm-backlight"; 83f126890aSEmmanuel Vadot brightness-levels = <0 4 8 16 32 64 128 255>; 84f126890aSEmmanuel Vadot default-brightness-level = <4>; 85f126890aSEmmanuel Vadot power-supply = <®_3p3v>; 86*7d0873ebSEmmanuel Vadot pwms = <&pwm1 0 10000 0>; 87f126890aSEmmanuel Vadot }; 88f126890aSEmmanuel Vadot 89f126890aSEmmanuel Vadot reg_3p3v: regulator-3p3v { 90f126890aSEmmanuel Vadot compatible = "regulator-fixed"; 91f126890aSEmmanuel Vadot regulator-name = "3P3V"; 92f126890aSEmmanuel Vadot regulator-min-microvolt = <3300000>; 93f126890aSEmmanuel Vadot regulator-max-microvolt = <3300000>; 94f126890aSEmmanuel Vadot regulator-always-on; 95f126890aSEmmanuel Vadot }; 96f126890aSEmmanuel Vadot}; 97f126890aSEmmanuel Vadot 98f126890aSEmmanuel Vadot&clks { 99f126890aSEmmanuel Vadot assigned-clocks = <&clks IMX6QDL_CLK_LDB_DI0_SEL>, 100f126890aSEmmanuel Vadot <&clks IMX6QDL_CLK_LDB_DI1_SEL>; 101f126890aSEmmanuel Vadot assigned-clock-parents = <&clks IMX6QDL_CLK_PLL3_USB_OTG>, 102f126890aSEmmanuel Vadot <&clks IMX6QDL_CLK_PLL3_USB_OTG>; 103f126890aSEmmanuel Vadot}; 104f126890aSEmmanuel Vadot 105f126890aSEmmanuel Vadot&fec { 106f126890aSEmmanuel Vadot phy-mode = "rgmii"; 107f126890aSEmmanuel Vadot phy-reset-gpios = <&gpio1 25 GPIO_ACTIVE_LOW>; 108f126890aSEmmanuel Vadot pinctrl-names = "default"; 109f126890aSEmmanuel Vadot pinctrl-0 = <&pinctrl_enet>; 110f126890aSEmmanuel Vadot status = "okay"; 111f126890aSEmmanuel Vadot}; 112f126890aSEmmanuel Vadot 113f126890aSEmmanuel Vadot&hdmi { 114f126890aSEmmanuel Vadot ddc-i2c-bus = <&i2c2>; 115f126890aSEmmanuel Vadot status = "okay"; 116f126890aSEmmanuel Vadot}; 117f126890aSEmmanuel Vadot 118f126890aSEmmanuel Vadot&i2c2 { 119f126890aSEmmanuel Vadot clock-frequency = <100000>; 120f126890aSEmmanuel Vadot pinctrl-names = "default"; 121f126890aSEmmanuel Vadot pinctrl-0 = <&pinctrl_i2c2>; 122f126890aSEmmanuel Vadot status = "okay"; 123f126890aSEmmanuel Vadot}; 124f126890aSEmmanuel Vadot 125f126890aSEmmanuel Vadot&ldb { 126f126890aSEmmanuel Vadot status = "okay"; 127f126890aSEmmanuel Vadot 128f126890aSEmmanuel Vadot lvds-channel@0 { 129f126890aSEmmanuel Vadot reg = <0>; 130f126890aSEmmanuel Vadot status = "okay"; 131f126890aSEmmanuel Vadot 132f126890aSEmmanuel Vadot port@4 { 133f126890aSEmmanuel Vadot reg = <4>; 134f126890aSEmmanuel Vadot 135f126890aSEmmanuel Vadot lvds0_out: endpoint { 136f126890aSEmmanuel Vadot remote-endpoint = <&panel_in>; 137f126890aSEmmanuel Vadot }; 138f126890aSEmmanuel Vadot }; 139f126890aSEmmanuel Vadot }; 140f126890aSEmmanuel Vadot}; 141f126890aSEmmanuel Vadot 142f126890aSEmmanuel Vadot&pwm1 { 143f126890aSEmmanuel Vadot pinctrl-names = "default"; 144f126890aSEmmanuel Vadot pinctrl-0 = <&pinctrl_pwm1>; 145f126890aSEmmanuel Vadot status = "okay"; 146f126890aSEmmanuel Vadot}; 147f126890aSEmmanuel Vadot 148f126890aSEmmanuel Vadot&uart1 { 149f126890aSEmmanuel Vadot pinctrl-names = "default"; 150f126890aSEmmanuel Vadot pinctrl-0 = <&pinctrl_uart1>; 151f126890aSEmmanuel Vadot status = "okay"; 152f126890aSEmmanuel Vadot}; 153f126890aSEmmanuel Vadot 154f126890aSEmmanuel Vadot&usbh1 { 155f126890aSEmmanuel Vadot status = "okay"; 156f126890aSEmmanuel Vadot}; 157f126890aSEmmanuel Vadot 158f126890aSEmmanuel Vadot/* SD card */ 159f126890aSEmmanuel Vadot&usdhc3 { 160f126890aSEmmanuel Vadot bus-width = <4>; 161f126890aSEmmanuel Vadot cd-gpios = <&gpio2 0 GPIO_ACTIVE_LOW>; 162f126890aSEmmanuel Vadot no-1-8-v; 163f126890aSEmmanuel Vadot pinctrl-names = "default"; 164f126890aSEmmanuel Vadot pinctrl-0 = <&pinctrl_sd>; 165f126890aSEmmanuel Vadot status = "okay"; 166f126890aSEmmanuel Vadot}; 167f126890aSEmmanuel Vadot 168f126890aSEmmanuel Vadot/* eMMC */ 169f126890aSEmmanuel Vadot&usdhc4 { 170f126890aSEmmanuel Vadot bus-width = <8>; 171f126890aSEmmanuel Vadot keep-power-in-suspend; 172f126890aSEmmanuel Vadot no-1-8-v; 173f126890aSEmmanuel Vadot non-removable; 174f126890aSEmmanuel Vadot pinctrl-names = "default"; 175f126890aSEmmanuel Vadot pinctrl-0 = <&pinctrl_emmc>; 176f126890aSEmmanuel Vadot status = "okay"; 177f126890aSEmmanuel Vadot}; 178f126890aSEmmanuel Vadot 179f126890aSEmmanuel Vadot&iomuxc { 180f126890aSEmmanuel Vadot pinctrl_emmc: emmcgrp { 181f126890aSEmmanuel Vadot fsl,pins = < 182f126890aSEmmanuel Vadot MX6QDL_PAD_SD4_CMD__SD4_CMD 0x17059 183f126890aSEmmanuel Vadot MX6QDL_PAD_SD4_CLK__SD4_CLK 0x10059 184f126890aSEmmanuel Vadot MX6QDL_PAD_SD4_DAT0__SD4_DATA0 0x17059 185f126890aSEmmanuel Vadot MX6QDL_PAD_SD4_DAT1__SD4_DATA1 0x17059 186f126890aSEmmanuel Vadot MX6QDL_PAD_SD4_DAT2__SD4_DATA2 0x17059 187f126890aSEmmanuel Vadot MX6QDL_PAD_SD4_DAT3__SD4_DATA3 0x17059 188f126890aSEmmanuel Vadot MX6QDL_PAD_SD4_DAT4__SD4_DATA4 0x17059 189f126890aSEmmanuel Vadot MX6QDL_PAD_SD4_DAT5__SD4_DATA5 0x17059 190f126890aSEmmanuel Vadot MX6QDL_PAD_SD4_DAT6__SD4_DATA6 0x17059 191f126890aSEmmanuel Vadot MX6QDL_PAD_SD4_DAT7__SD4_DATA7 0x17059 192f126890aSEmmanuel Vadot >; 193f126890aSEmmanuel Vadot }; 194f126890aSEmmanuel Vadot 195f126890aSEmmanuel Vadot pinctrl_enet: enetgrp { 196f126890aSEmmanuel Vadot fsl,pins = < 197f126890aSEmmanuel Vadot MX6QDL_PAD_ENET_MDIO__ENET_MDIO 0x1b0b0 198f126890aSEmmanuel Vadot MX6QDL_PAD_ENET_MDC__ENET_MDC 0x1b0b0 199f126890aSEmmanuel Vadot MX6QDL_PAD_RGMII_TXC__RGMII_TXC 0x1b030 200f126890aSEmmanuel Vadot MX6QDL_PAD_RGMII_TD0__RGMII_TD0 0x1b030 201f126890aSEmmanuel Vadot MX6QDL_PAD_RGMII_TD1__RGMII_TD1 0x1b030 202f126890aSEmmanuel Vadot MX6QDL_PAD_RGMII_TD2__RGMII_TD2 0x1b030 203f126890aSEmmanuel Vadot MX6QDL_PAD_RGMII_TD3__RGMII_TD3 0x1b030 204f126890aSEmmanuel Vadot MX6QDL_PAD_RGMII_TX_CTL__RGMII_TX_CTL 0x1b030 205f126890aSEmmanuel Vadot MX6QDL_PAD_ENET_REF_CLK__ENET_TX_CLK 0x1b0b0 206f126890aSEmmanuel Vadot MX6QDL_PAD_RGMII_RXC__RGMII_RXC 0x1b030 207f126890aSEmmanuel Vadot MX6QDL_PAD_RGMII_RD0__RGMII_RD0 0x1b030 208f126890aSEmmanuel Vadot MX6QDL_PAD_RGMII_RD1__RGMII_RD1 0x1b030 209f126890aSEmmanuel Vadot MX6QDL_PAD_RGMII_RD2__RGMII_RD2 0x1b030 210f126890aSEmmanuel Vadot MX6QDL_PAD_RGMII_RD3__RGMII_RD3 0x1b030 211f126890aSEmmanuel Vadot MX6QDL_PAD_RGMII_RX_CTL__RGMII_RX_CTL 0x1b030 212f126890aSEmmanuel Vadot /* PHY reset */ 213f126890aSEmmanuel Vadot MX6QDL_PAD_ENET_CRS_DV__GPIO1_IO25 0x1b0b0 214f126890aSEmmanuel Vadot >; 215f126890aSEmmanuel Vadot }; 216f126890aSEmmanuel Vadot 217f126890aSEmmanuel Vadot pinctrl_gpio_keys: gpiokeysgrp { 218f126890aSEmmanuel Vadot fsl,pins = < 219f126890aSEmmanuel Vadot MX6QDL_PAD_EIM_DA7__GPIO3_IO07 0x1b0b1 220f126890aSEmmanuel Vadot >; 221f126890aSEmmanuel Vadot }; 222f126890aSEmmanuel Vadot 223f126890aSEmmanuel Vadot pinctrl_i2c2: i2c2grp { 224f126890aSEmmanuel Vadot fsl,pins = < 225f126890aSEmmanuel Vadot MX6QDL_PAD_KEY_COL3__I2C2_SCL 0x4001b8b1 226f126890aSEmmanuel Vadot MX6QDL_PAD_KEY_ROW3__I2C2_SDA 0x4001b8b1 227f126890aSEmmanuel Vadot >; 228f126890aSEmmanuel Vadot }; 229f126890aSEmmanuel Vadot 230f126890aSEmmanuel Vadot pinctrl_pwm1: pwm1grp { 231f126890aSEmmanuel Vadot fsl,pins = < 232f126890aSEmmanuel Vadot MX6QDL_PAD_SD1_DAT3__PWM1_OUT 0x1b0b1 233f126890aSEmmanuel Vadot >; 234f126890aSEmmanuel Vadot }; 235f126890aSEmmanuel Vadot 236f126890aSEmmanuel Vadot pinctrl_sd: sdgrp { 237f126890aSEmmanuel Vadot fsl,pins = < 238f126890aSEmmanuel Vadot MX6QDL_PAD_SD3_CMD__SD3_CMD 0x17059 239f126890aSEmmanuel Vadot MX6QDL_PAD_SD3_CLK__SD3_CLK 0x10059 240f126890aSEmmanuel Vadot MX6QDL_PAD_SD3_DAT0__SD3_DATA0 0x17059 241f126890aSEmmanuel Vadot MX6QDL_PAD_SD3_DAT1__SD3_DATA1 0x17059 242f126890aSEmmanuel Vadot MX6QDL_PAD_SD3_DAT2__SD3_DATA2 0x17059 243f126890aSEmmanuel Vadot MX6QDL_PAD_SD3_DAT3__SD3_DATA3 0x17059 244f126890aSEmmanuel Vadot /* CD pin */ 245f126890aSEmmanuel Vadot MX6QDL_PAD_NANDF_D0__GPIO2_IO00 0x1b0b1 246f126890aSEmmanuel Vadot >; 247f126890aSEmmanuel Vadot }; 248f126890aSEmmanuel Vadot 249f126890aSEmmanuel Vadot pinctrl_uart1: uart1grp { 250f126890aSEmmanuel Vadot fsl,pins = < 251f126890aSEmmanuel Vadot MX6QDL_PAD_CSI0_DAT10__UART1_TX_DATA 0x1b0b1 252f126890aSEmmanuel Vadot MX6QDL_PAD_CSI0_DAT11__UART1_RX_DATA 0x1b0b1 253f126890aSEmmanuel Vadot >; 254f126890aSEmmanuel Vadot }; 255f126890aSEmmanuel Vadot}; 256