/* * $Id: imx6q-eurek-ek360.dts,v 1.5 2016/03/04 16:22:24 gianluca Exp $ * * Copyright 2016 Gianluca Renzi, Eurek Elettronica S.R.L. * Copyright 2014 Raphaël Poggi * Copyright 2012 Freescale Semiconductor, Inc. * Copyright 2011 Linaro Ltd. * * The code contained herein is licensed under the GNU General Public * License. You may obtain a copy of the GNU General Public License * Version 2 or later at the following locations: * * http://www.opensource.org/licenses/gpl-license.html * http://www.gnu.org/copyleft/gpl.html */ /dts-v1/; #include #include #include "imx6q.dtsi" / { model = "EK360 Eurek i.MX6 Quad"; compatible = "eurek,ek360", "fsl,imx6q"; chosen { linux,stdout-path = &uart3; }; memory { reg = <0x10000000 0x40000000>; }; regulators { compatible = "simple-bus"; #address-cells = <1>; #size-cells = <0>; reg_2p5v: regulator@0 { compatible = "regulator-fixed"; reg = <0>; regulator-name = "2P5V"; regulator-min-microvolt = <2500000>; regulator-max-microvolt = <2500000>; regulator-always-on; }; reg_3p3v: regulator@1 { compatible = "regulator-fixed"; reg = <1>; regulator-name = "3P3V"; regulator-min-microvolt = <3300000>; regulator-max-microvolt = <3300000>; regulator-always-on; }; reg_usb_otg_vbus: regulator@2 { compatible = "regulator-fixed"; reg = <2>; regulator-name = "usb_otg_vbus"; regulator-min-microvolt = <5000000>; regulator-max-microvolt = <5000000>; gpio = <&gpio3 22 GPIO_ACTIVE_LOW>; enable-active-low; }; reg_usb_h1_vbus: regulator@3 { compatible = "regulator-fixed"; reg = <3>; regulator-name = "usb_h1_vbus"; regulator-min-microvolt = <5000000>; regulator-max-microvolt = <5000000>; gpio = <&gpio3 31 GPIO_ACTIVE_LOW>; enable-active-low; }; }; }; &iomuxc { pinctrl-names = "default"; pinctrl-0 = <&pinctrl_uart3>; imx6q-ek380 { pinctrl_uart1: uart1grp { /* RS232 port */ fsl,pins = < MX6QDL_PAD_CSI0_DAT10__UART1_TX_DATA 0x1b0b1 MX6QDL_PAD_CSI0_DAT11__UART1_RX_DATA 0x1b0b1 >; }; pinctrl_uart2: uart2grp { /* RS485 port */ fsl,pins = < MX6QDL_PAD_EIM_D26__UART2_TX_DATA 0x1b0b1 MX6QDL_PAD_EIM_D27__UART2_RX_DATA 0x1b0b1 /* UART2_DIR */ MX6QDL_PAD_EIM_D18__GPIO3_IO18 0x80000000 >; }; pinctrl_uart3: uart3grp { /* debug port, serial console */ fsl,pins = < MX6QDL_PAD_EIM_D24__UART3_TX_DATA 0x1b0b1 MX6QDL_PAD_EIM_D25__UART3_RX_DATA 0x1b0b1 >; }; pinctrl_usdhc2: usdhc2grp { /* SDIO / WiFi Module */ fsl,pins = < MX6QDL_PAD_SD2_CMD__SD2_CMD 0x17059 MX6QDL_PAD_SD2_CLK__SD2_CLK 0x10059 MX6QDL_PAD_SD2_DAT0__SD2_DATA0 0x17059 MX6QDL_PAD_SD2_DAT1__SD2_DATA1 0x17059 MX6QDL_PAD_SD2_DAT2__SD2_DATA2 0x17059 MX6QDL_PAD_SD2_DAT3__SD2_DATA3 0x17059 /* SD2_EN */ MX6QDL_PAD_NANDF_D3__GPIO2_IO03 0x1f071 >; }; pinctrl_usdhc3: usdhc3grp { /* uSD/MMC */ fsl,pins = < MX6QDL_PAD_SD3_CMD__SD3_CMD 0x17059 MX6QDL_PAD_SD3_CLK__SD3_CLK 0x10059 MX6QDL_PAD_SD3_DAT0__SD3_DATA0 0x17059 MX6QDL_PAD_SD3_DAT1__SD3_DATA1 0x17059 MX6QDL_PAD_SD3_DAT2__SD3_DATA2 0x17059 MX6QDL_PAD_SD3_DAT3__SD3_DATA3 0x17059 /* SD3_CD */ MX6QDL_PAD_NANDF_D0__GPIO2_IO00 0x1f071 /* SD3_WP */ MX6QDL_PAD_NANDF_D1__GPIO2_IO01 0x1f071 >; }; pinctrl_usdhc4: usdhc4grp { /* eMMC */ fsl,pins = < MX6QDL_PAD_SD4_CMD__SD4_CMD 0x17059 MX6QDL_PAD_SD4_CLK__SD4_CLK 0x10059 MX6QDL_PAD_SD4_DAT0__SD4_DATA0 0x17059 MX6QDL_PAD_SD4_DAT1__SD4_DATA1 0x17059 MX6QDL_PAD_SD4_DAT2__SD4_DATA2 0x17059 MX6QDL_PAD_SD4_DAT3__SD4_DATA3 0x17059 MX6QDL_PAD_SD4_DAT4__SD4_DATA4 0x17059 MX6QDL_PAD_SD4_DAT5__SD4_DATA5 0x17059 MX6QDL_PAD_SD4_DAT6__SD4_DATA6 0x17059 MX6QDL_PAD_SD4_DAT7__SD4_DATA7 0x17059 >; }; pinctrl_i2c1: i2c1grp { fsl,pins = < MX6QDL_PAD_CSI0_DAT8__I2C1_SDA 0x4001b8b1 MX6QDL_PAD_CSI0_DAT9__I2C1_SCL 0x4001b8b1 >; }; pinctrl_i2c2: i2c2grp { fsl,pins = < MX6QDL_PAD_KEY_ROW3__I2C2_SDA 0x4001b8b1 MX6QDL_PAD_KEY_COL3__I2C2_SCL 0x4001b8b1 >; }; pinctrl_i2c3: i2c3grp { fsl,pins = < MX6QDL_PAD_GPIO_6__I2C3_SDA 0x4001b8b1 MX6QDL_PAD_GPIO_3__I2C3_SCL 0x4001b8b1 >; }; pinctrl_usbotg_id: usbotggrp_id { fsl,pins = < MX6QDL_PAD_GPIO_1__USB_OTG_ID 0x17059 >; }; pinctrl_enet: enetgrp { fsl,pins = < MX6QDL_PAD_RGMII_RXC__RGMII_RXC 0x1b0b0 MX6QDL_PAD_RGMII_RD0__RGMII_RD0 0x1b0b0 MX6QDL_PAD_RGMII_RD1__RGMII_RD1 0x1b0b0 MX6QDL_PAD_RGMII_RD2__RGMII_RD2 0x1b0b0 MX6QDL_PAD_RGMII_RD3__RGMII_RD3 0x1b0b0 MX6QDL_PAD_RGMII_RX_CTL__RGMII_RX_CTL 0x1b0b0 MX6QDL_PAD_RGMII_TXC__RGMII_TXC 0x1b0b0 MX6QDL_PAD_RGMII_TD0__RGMII_TD0 0x1b0b0 MX6QDL_PAD_RGMII_TD1__RGMII_TD1 0x1b0b0 MX6QDL_PAD_RGMII_TD2__RGMII_TD2 0x1b0b0 MX6QDL_PAD_RGMII_TD3__RGMII_TD3 0x1b0b0 MX6QDL_PAD_RGMII_TX_CTL__RGMII_TX_CTL 0x1b0b0 MX6QDL_PAD_ENET_REF_CLK__ENET_TX_CLK 0x1b0b0 MX6QDL_PAD_ENET_MDIO__ENET_MDIO 0x1b0b0 MX6QDL_PAD_ENET_MDC__ENET_MDC 0x1b0b0 MX6QDL_PAD_EIM_D23__GPIO3_IO23 0x80000000 /* KSZ9031 PHY Reset */ >; }; pinctrl_usbh1_oc: usbh1_oc { fsl,pins = < MX6QDL_PAD_EIM_D30__USB_H1_OC 0x00000000 /* USB_H1_OC Daisy = 0 default */ >; }; pinctrl_usbotg_oc: usbotg_oc { fsl,pins = < MX6QDL_PAD_EIM_D21__USB_OTG_OC 0x00000004 /* USB_OTG_OC ALT4 — Select signal USB_OTG_OC. */ >; }; pinctrl_hog: hog { fsl,pins = < MX6QDL_PAD_EIM_D22__GPIO3_IO22 0x80000000 /* USB OTG PWR EN */ MX6QDL_PAD_EIM_D31__GPIO3_IO31 0x80000000 /* USB H1 PWR EN */ >; }; }; }; &fec { pinctrl-names = "default"; pinctrl-0 = <&pinctrl_enet>; phy-mode = "rgmii"; phy-reset-gpios = <&gpio3 23 GPIO_ACTIVE_HIGH>; phy-reset-duration = <100>; status = "okay"; }; &uart1 { /* RS-232C Port */ pinctrl-names = "default"; pinctrl-0 = <&pinctrl_uart1>; status = "okay"; }; &uart2 { /* RS-485 Port */ pinctrl-names = "default"; pinctrl-0 = <&pinctrl_uart2>; status = "okay"; }; &uart3 { /* Debug port / console */ pinctrl-names = "default"; pinctrl-0 = <&pinctrl_uart3>; status = "okay"; }; &usdhc2 { /* WiFi SDIO */ pinctrl-names = "default"; pinctrl-0 = <&pinctrl_usdhc2>; status = "okay"; }; &usdhc3 { /* uSD / MMC */ pinctrl-names = "default"; pinctrl-0 = <&pinctrl_usdhc3>; cd-gpios = <&gpio2 0 0>; wp-gpios = <&gpio2 1 0>; status = "okay"; }; &usdhc4 { /* eMMC */ pinctrl-names = "default"; pinctrl-0 = <&pinctrl_usdhc4>; non-removable; status = "okay"; }; &i2c1 { clock-frequency = <100000>; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_i2c1>; status = "okay"; sgtl5000@0a { compatible = "fsl,sgtl5000"; reg = <0x0a>; clocks = <&clks 201>; VDDA-supply = <®_3p3v>; VDDIO-supply = <®_3p3v>; }; at24@50 { compatible = "at24,24c64"; pagesize = <64>; reg = <0x50>; }; pcf8563: rtc@51 { compatible = "phg,pcf8563"; reg = <0x51>; }; }; &i2c2 { clock-frequency = <100000>; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_i2c2>; status = "okay"; }; &i2c3 { clock-frequency = <100000>; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_i2c3>; status = "okay"; }; &usbh1 { vbus-supply = <®_usb_h1_vbus>; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_usbh1_oc>; dr_mode = "host"; status = "okay"; }; &usbotg { vbus-supply = <®_usb_otg_vbus>; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_usbotg_oc &pinctrl_usbotg_id>; dr_mode = "otg"; status = "okay"; }; &hdmi { ddc-i2c-bus = <&i2c2>; status = "okay"; };