1f126890aSEmmanuel Vadot/* 2f126890aSEmmanuel Vadot * Copyright (C) 2014 Russell King 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 11f126890aSEmmanuel Vadot * version 2 as published by the Free Software Foundation. 12f126890aSEmmanuel Vadot * 13f126890aSEmmanuel Vadot * This file is distributed in the hope that it will be useful, 14f126890aSEmmanuel Vadot * but WITHOUT ANY WARRANTY; without even the implied warranty of 15f126890aSEmmanuel Vadot * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16f126890aSEmmanuel Vadot * GNU General Public License for more details. 17f126890aSEmmanuel Vadot * 18f126890aSEmmanuel Vadot * Or, alternatively, 19f126890aSEmmanuel Vadot * 20f126890aSEmmanuel Vadot * b) Permission is hereby granted, free of charge, to any person 21f126890aSEmmanuel Vadot * obtaining a copy of this software and associated documentation 22f126890aSEmmanuel Vadot * files (the "Software"), to deal in the Software without 23f126890aSEmmanuel Vadot * restriction, including without limitation the rights to use, 24f126890aSEmmanuel Vadot * copy, modify, merge, publish, distribute, sublicense, and/or 25f126890aSEmmanuel Vadot * sell copies of the Software, and to permit persons to whom the 26f126890aSEmmanuel Vadot * Software is furnished to do so, subject to the following 27f126890aSEmmanuel Vadot * conditions: 28f126890aSEmmanuel Vadot * 29f126890aSEmmanuel Vadot * The above copyright notice and this permission notice shall be 30f126890aSEmmanuel Vadot * included in all copies or substantial portions of the Software. 31f126890aSEmmanuel Vadot * 32f126890aSEmmanuel Vadot * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 33f126890aSEmmanuel Vadot * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES 34f126890aSEmmanuel Vadot * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 35f126890aSEmmanuel Vadot * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT 36f126890aSEmmanuel Vadot * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 37f126890aSEmmanuel Vadot * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 38f126890aSEmmanuel Vadot * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 39f126890aSEmmanuel Vadot * OTHER DEALINGS IN THE SOFTWARE. 40f126890aSEmmanuel Vadot */ 41f126890aSEmmanuel Vadot#include <dt-bindings/input/input.h> 42f126890aSEmmanuel Vadot#include <dt-bindings/gpio/gpio.h> 43f126890aSEmmanuel Vadot 44f126890aSEmmanuel Vadot/ { 45f126890aSEmmanuel Vadot /* Will be filled by the bootloader */ 46f126890aSEmmanuel Vadot memory@10000000 { 47f126890aSEmmanuel Vadot device_type = "memory"; 48f126890aSEmmanuel Vadot reg = <0x10000000 0>; 49f126890aSEmmanuel Vadot }; 50f126890aSEmmanuel Vadot 51f126890aSEmmanuel Vadot ir_recv: ir-receiver { 52f126890aSEmmanuel Vadot compatible = "gpio-ir-receiver"; 53f126890aSEmmanuel Vadot gpios = <&gpio3 9 1>; 54f126890aSEmmanuel Vadot pinctrl-names = "default"; 55f126890aSEmmanuel Vadot pinctrl-0 = <&pinctrl_cubox_i_ir>; 56f126890aSEmmanuel Vadot }; 57f126890aSEmmanuel Vadot 58f126890aSEmmanuel Vadot led-controller { 59f126890aSEmmanuel Vadot compatible = "pwm-leds"; 60f126890aSEmmanuel Vadot pinctrl-names = "default"; 61f126890aSEmmanuel Vadot pinctrl-0 = <&pinctrl_cubox_i_pwm1>; 62f126890aSEmmanuel Vadot 63f126890aSEmmanuel Vadot led-1 { 64f126890aSEmmanuel Vadot active-low; 65f126890aSEmmanuel Vadot label = "imx6:red:front"; 66f126890aSEmmanuel Vadot max-brightness = <248>; 677d0873ebSEmmanuel Vadot pwms = <&pwm1 0 50000 0>; 68f126890aSEmmanuel Vadot }; 69f126890aSEmmanuel Vadot }; 70f126890aSEmmanuel Vadot 71f126890aSEmmanuel Vadot v_5v0: regulator-v-5v0 { 72f126890aSEmmanuel Vadot compatible = "regulator-fixed"; 73f126890aSEmmanuel Vadot regulator-always-on; 74f126890aSEmmanuel Vadot regulator-max-microvolt = <5000000>; 75f126890aSEmmanuel Vadot regulator-min-microvolt = <5000000>; 76f126890aSEmmanuel Vadot regulator-name = "v_5v0"; 77f126890aSEmmanuel Vadot }; 78f126890aSEmmanuel Vadot 79f126890aSEmmanuel Vadot v_usb2: regulator-v-usb2 { 80f126890aSEmmanuel Vadot compatible = "regulator-fixed"; 81f126890aSEmmanuel Vadot enable-active-high; 82f126890aSEmmanuel Vadot gpio = <&gpio1 0 GPIO_ACTIVE_HIGH>; 83f126890aSEmmanuel Vadot pinctrl-names = "default"; 84f126890aSEmmanuel Vadot pinctrl-0 = <&pinctrl_cubox_i_usbh1_vbus>; 85f126890aSEmmanuel Vadot regulator-max-microvolt = <5000000>; 86f126890aSEmmanuel Vadot regulator-min-microvolt = <5000000>; 87f126890aSEmmanuel Vadot regulator-name = "v_usb2"; 88f126890aSEmmanuel Vadot vin-supply = <&v_5v0>; 89f126890aSEmmanuel Vadot }; 90f126890aSEmmanuel Vadot 91f126890aSEmmanuel Vadot v_usb1: regulator-v-usb1 { 92f126890aSEmmanuel Vadot compatible = "regulator-fixed"; 93f126890aSEmmanuel Vadot enable-active-high; 94f126890aSEmmanuel Vadot gpio = <&gpio3 22 GPIO_ACTIVE_HIGH>; 95f126890aSEmmanuel Vadot pinctrl-names = "default"; 96f126890aSEmmanuel Vadot pinctrl-0 = <&pinctrl_cubox_i_usbotg_vbus>; 97f126890aSEmmanuel Vadot regulator-max-microvolt = <5000000>; 98f126890aSEmmanuel Vadot regulator-min-microvolt = <5000000>; 99f126890aSEmmanuel Vadot regulator-name = "v_usb1"; 100f126890aSEmmanuel Vadot vin-supply = <&v_5v0>; 101f126890aSEmmanuel Vadot }; 102f126890aSEmmanuel Vadot 103*b2d2a78aSEmmanuel Vadot spdif_out: spdif-out { 104*b2d2a78aSEmmanuel Vadot compatible = "linux,spdif-dit"; 105*b2d2a78aSEmmanuel Vadot #sound-dai-cells = <0>; 106*b2d2a78aSEmmanuel Vadot }; 107*b2d2a78aSEmmanuel Vadot 108f126890aSEmmanuel Vadot sound-spdif { 109f126890aSEmmanuel Vadot compatible = "fsl,imx-audio-spdif"; 110f126890aSEmmanuel Vadot model = "Integrated SPDIF"; 111f126890aSEmmanuel Vadot /* IMX6 doesn't implement this yet */ 112*b2d2a78aSEmmanuel Vadot audio-cpu = <&spdif>; 113*b2d2a78aSEmmanuel Vadot audio-codec = <&spdif_out>; 114f126890aSEmmanuel Vadot }; 115f126890aSEmmanuel Vadot 116f126890aSEmmanuel Vadot gpio-keys { 117f126890aSEmmanuel Vadot compatible = "gpio-keys"; 118f126890aSEmmanuel Vadot pinctrl-0 = <&pinctrl_gpio_key>; 119f126890aSEmmanuel Vadot pinctrl-names = "default"; 120f126890aSEmmanuel Vadot 121f126890aSEmmanuel Vadot button_0 { 122f126890aSEmmanuel Vadot label = "Button 0"; 123f126890aSEmmanuel Vadot gpios = <&gpio3 8 GPIO_ACTIVE_LOW>; 124f126890aSEmmanuel Vadot linux,code = <BTN_0>; 125f126890aSEmmanuel Vadot }; 126f126890aSEmmanuel Vadot }; 127f126890aSEmmanuel Vadot}; 128f126890aSEmmanuel Vadot 129f126890aSEmmanuel Vadot&hdmi { 130f126890aSEmmanuel Vadot pinctrl-names = "default"; 131f126890aSEmmanuel Vadot pinctrl-0 = <&pinctrl_cubox_i_hdmi>; 132f126890aSEmmanuel Vadot ddc-i2c-bus = <&i2c2>; 133f126890aSEmmanuel Vadot status = "okay"; 134f126890aSEmmanuel Vadot}; 135f126890aSEmmanuel Vadot 136f126890aSEmmanuel Vadot&i2c2 { 137f126890aSEmmanuel Vadot clock-frequency = <100000>; 138f126890aSEmmanuel Vadot pinctrl-names = "default"; 139f126890aSEmmanuel Vadot pinctrl-0 = <&pinctrl_cubox_i_i2c2>; 140f126890aSEmmanuel Vadot status = "okay"; 141f126890aSEmmanuel Vadot}; 142f126890aSEmmanuel Vadot 143f126890aSEmmanuel Vadot&i2c3 { 144f126890aSEmmanuel Vadot pinctrl-names = "default"; 145f126890aSEmmanuel Vadot pinctrl-0 = <&pinctrl_cubox_i_i2c3>; 146f126890aSEmmanuel Vadot 147f126890aSEmmanuel Vadot status = "okay"; 148f126890aSEmmanuel Vadot 149f126890aSEmmanuel Vadot rtc@68 { 150f126890aSEmmanuel Vadot compatible = "nxp,pcf8523"; 151f126890aSEmmanuel Vadot reg = <0x68>; 152f126890aSEmmanuel Vadot }; 153f126890aSEmmanuel Vadot}; 154f126890aSEmmanuel Vadot 155f126890aSEmmanuel Vadot&iomuxc { 156f126890aSEmmanuel Vadot cubox_i { 157f126890aSEmmanuel Vadot pinctrl_cubox_i_hdmi: cubox-i-hdmi { 158f126890aSEmmanuel Vadot fsl,pins = < 159f126890aSEmmanuel Vadot MX6QDL_PAD_KEY_ROW2__HDMI_TX_CEC_LINE 0x1f8b0 160f126890aSEmmanuel Vadot >; 161f126890aSEmmanuel Vadot }; 162f126890aSEmmanuel Vadot 163f126890aSEmmanuel Vadot pinctrl_cubox_i_i2c2: cubox-i-i2c2 { 164f126890aSEmmanuel Vadot fsl,pins = < 165f126890aSEmmanuel Vadot MX6QDL_PAD_KEY_COL3__I2C2_SCL 0x4001b8b1 166f126890aSEmmanuel Vadot MX6QDL_PAD_KEY_ROW3__I2C2_SDA 0x4001b8b1 167f126890aSEmmanuel Vadot >; 168f126890aSEmmanuel Vadot }; 169f126890aSEmmanuel Vadot 170f126890aSEmmanuel Vadot pinctrl_cubox_i_i2c3: cubox-i-i2c3 { 171f126890aSEmmanuel Vadot fsl,pins = < 172f126890aSEmmanuel Vadot MX6QDL_PAD_EIM_D17__I2C3_SCL 0x4001b8b1 173f126890aSEmmanuel Vadot MX6QDL_PAD_EIM_D18__I2C3_SDA 0x4001b8b1 174f126890aSEmmanuel Vadot >; 175f126890aSEmmanuel Vadot }; 176f126890aSEmmanuel Vadot 177f126890aSEmmanuel Vadot pinctrl_cubox_i_ir: cubox-i-ir { 178f126890aSEmmanuel Vadot fsl,pins = < 179f126890aSEmmanuel Vadot MX6QDL_PAD_EIM_DA9__GPIO3_IO09 0x80000000 180f126890aSEmmanuel Vadot >; 181f126890aSEmmanuel Vadot }; 182f126890aSEmmanuel Vadot 183f126890aSEmmanuel Vadot pinctrl_cubox_i_pwm1: cubox-i-pwm1-front-led { 184f126890aSEmmanuel Vadot fsl,pins = <MX6QDL_PAD_DISP0_DAT8__PWM1_OUT 0x1b0b0>; 185f126890aSEmmanuel Vadot }; 186f126890aSEmmanuel Vadot 187f126890aSEmmanuel Vadot pinctrl_cubox_i_spdif: cubox-i-spdif { 188f126890aSEmmanuel Vadot fsl,pins = <MX6QDL_PAD_GPIO_17__SPDIF_OUT 0x13091>; 189f126890aSEmmanuel Vadot }; 190f126890aSEmmanuel Vadot 191f126890aSEmmanuel Vadot pinctrl_cubox_i_usbh1: cubox-i-usbh1 { 192f126890aSEmmanuel Vadot fsl,pins = <MX6QDL_PAD_GPIO_3__USB_H1_OC 0x1b0b0>; 193f126890aSEmmanuel Vadot }; 194f126890aSEmmanuel Vadot 195f126890aSEmmanuel Vadot pinctrl_cubox_i_usbh1_vbus: cubox-i-usbh1-vbus { 196f126890aSEmmanuel Vadot fsl,pins = <MX6QDL_PAD_GPIO_0__GPIO1_IO00 0x4001b0b0>; 197f126890aSEmmanuel Vadot }; 198f126890aSEmmanuel Vadot 199f126890aSEmmanuel Vadot pinctrl_cubox_i_usbotg: cubox-i-usbotg { 200f126890aSEmmanuel Vadot /* 201f126890aSEmmanuel Vadot * The Cubox-i pulls ID low, but as it's pointless 202f126890aSEmmanuel Vadot * leaving it as a pull-up, even if it is just 10uA. 203f126890aSEmmanuel Vadot */ 204f126890aSEmmanuel Vadot fsl,pins = < 205f126890aSEmmanuel Vadot MX6QDL_PAD_GPIO_1__USB_OTG_ID 0x13059 206f126890aSEmmanuel Vadot MX6QDL_PAD_KEY_COL4__USB_OTG_OC 0x1b0b0 207f126890aSEmmanuel Vadot >; 208f126890aSEmmanuel Vadot }; 209f126890aSEmmanuel Vadot 210f126890aSEmmanuel Vadot pinctrl_cubox_i_usbotg_vbus: cubox-i-usbotg-vbus { 211f126890aSEmmanuel Vadot fsl,pins = <MX6QDL_PAD_EIM_D22__GPIO3_IO22 0x4001b0b0>; 212f126890aSEmmanuel Vadot }; 213f126890aSEmmanuel Vadot 214f126890aSEmmanuel Vadot pinctrl_cubox_i_usdhc2_aux: cubox-i-usdhc2-aux { 215f126890aSEmmanuel Vadot fsl,pins = < 216f126890aSEmmanuel Vadot MX6QDL_PAD_GPIO_4__GPIO1_IO04 0x1f071 217f126890aSEmmanuel Vadot MX6QDL_PAD_KEY_ROW1__SD2_VSELECT 0x1b071 218f126890aSEmmanuel Vadot >; 219f126890aSEmmanuel Vadot }; 220f126890aSEmmanuel Vadot 221f126890aSEmmanuel Vadot pinctrl_cubox_i_usdhc2: cubox-i-usdhc2 { 222f126890aSEmmanuel Vadot fsl,pins = < 223f126890aSEmmanuel Vadot MX6QDL_PAD_SD2_CMD__SD2_CMD 0x17059 224f126890aSEmmanuel Vadot MX6QDL_PAD_SD2_CLK__SD2_CLK 0x10059 225f126890aSEmmanuel Vadot MX6QDL_PAD_SD2_DAT0__SD2_DATA0 0x17059 226f126890aSEmmanuel Vadot MX6QDL_PAD_SD2_DAT1__SD2_DATA1 0x17059 227f126890aSEmmanuel Vadot MX6QDL_PAD_SD2_DAT2__SD2_DATA2 0x17059 228f126890aSEmmanuel Vadot MX6QDL_PAD_SD2_DAT3__SD2_DATA3 0x13059 229f126890aSEmmanuel Vadot >; 230f126890aSEmmanuel Vadot }; 231f126890aSEmmanuel Vadot 232f126890aSEmmanuel Vadot pinctrl_gpio_key: gpio-key { 233f126890aSEmmanuel Vadot fsl,pins = < 234f126890aSEmmanuel Vadot MX6QDL_PAD_EIM_DA8__GPIO3_IO08 0x17059 235f126890aSEmmanuel Vadot >; 236f126890aSEmmanuel Vadot }; 237f126890aSEmmanuel Vadot }; 238f126890aSEmmanuel Vadot}; 239f126890aSEmmanuel Vadot 240f126890aSEmmanuel Vadot&pwm1 { 241f126890aSEmmanuel Vadot status = "okay"; 242f126890aSEmmanuel Vadot}; 243f126890aSEmmanuel Vadot 244f126890aSEmmanuel Vadot&spdif { 245f126890aSEmmanuel Vadot pinctrl-names = "default"; 246f126890aSEmmanuel Vadot pinctrl-0 = <&pinctrl_cubox_i_spdif>; 247f126890aSEmmanuel Vadot status = "okay"; 248f126890aSEmmanuel Vadot}; 249f126890aSEmmanuel Vadot 250f126890aSEmmanuel Vadot&usbh1 { 251f126890aSEmmanuel Vadot pinctrl-names = "default"; 252f126890aSEmmanuel Vadot pinctrl-0 = <&pinctrl_cubox_i_usbh1>; 253f126890aSEmmanuel Vadot vbus-supply = <&v_usb2>; 254f126890aSEmmanuel Vadot status = "okay"; 255f126890aSEmmanuel Vadot}; 256f126890aSEmmanuel Vadot 257f126890aSEmmanuel Vadot&usbotg { 258f126890aSEmmanuel Vadot pinctrl-names = "default"; 259f126890aSEmmanuel Vadot pinctrl-0 = <&pinctrl_cubox_i_usbotg>; 260f126890aSEmmanuel Vadot vbus-supply = <&v_usb1>; 261f126890aSEmmanuel Vadot status = "okay"; 262f126890aSEmmanuel Vadot}; 263f126890aSEmmanuel Vadot 264f126890aSEmmanuel Vadot&usdhc2 { 265f126890aSEmmanuel Vadot pinctrl-names = "default"; 266f126890aSEmmanuel Vadot pinctrl-0 = <&pinctrl_cubox_i_usdhc2_aux &pinctrl_cubox_i_usdhc2>; 267f126890aSEmmanuel Vadot vmmc-supply = <&vcc_3v3>; 268f126890aSEmmanuel Vadot cd-gpios = <&gpio1 4 GPIO_ACTIVE_LOW>; 269f126890aSEmmanuel Vadot status = "okay"; 270f126890aSEmmanuel Vadot}; 271f126890aSEmmanuel Vadot 272f126890aSEmmanuel Vadot&vcc_3v3 { 273f126890aSEmmanuel Vadot vin-supply = <&v_5v0>; 274f126890aSEmmanuel Vadot}; 275