Commit ab4b4340 authored by Olof Johansson's avatar Olof Johansson

Merge tag 'imx-dt-4.8' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into next/dt

The i.MX device tree update for 4.8:
 - Add two i.MX23/STMP3780 based MP3 player device support, Creative
   X-Fi3 and SanDisk Sansa Fuze+
 - Add the support of Auvidea H100 device which is a SolidRun MicroSOM
   baseboard
 - Restructure i.MX7Dual DTS files to support i.MX7Solo and add Toradex
   Colibri iMX7S/iMX7D boards
 - Device additions and enabling for various boards: mmc device for
   utilite-pro, IRQ controller and CAN support for TS-4800, display and
   touchscreen support for imx7d-sdb, SAI audio and LCD support for
   imx6ul-14x14-evk, gpio power off support for imx6q-bx50v3, etc.
 - Update the boards from Freescale/NXP to use WDOG_B pin for reset
 - PCI reset polarity correction for imx6qdl-sabresd and imx6q-tbs2910
 - Update i.MX board dts files to use generic uart-has-rtscts DT
   property instead of vendor specific one
 - DTC warning fixing for a few boards which are mostly mismatch between
   unit-address and reg property
 - Remove SION setting from all mux modes on i.MX25

* tag 'imx-dt-4.8' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux: (47 commits)
  ARM: dts: imx7: add Toradex Colibri iMX7S/iMX7D support
  ARM: dts: imx7d: move input header into base device tree
  ARM: dts: imx7d: recreate imx7d.dtsi with i.MX 7Dual specifics
  ARM: dts: imx7d: use imx7s.dtsi as base device tree
  ARM: dts: imx7d-sdb: Add support for touchscreen
  ARM: dts: imx7d-sdb: Add display support
  ARM: dts: imx7d: Add SPI support
  ARM: dts: imx6q-bx50v3: Add gpio power off support
  ARM: dts: imx6ul-pico-hobbit: Fix Ethernet PHY reset GPIO
  ARM: dts: imx6q-tbs2910: fix pcie reset polarity
  ARM: dts: imx6sx-sdb: Use WDOG_B pin reset
  ARM: dts: imx6ul-evk: Use WDOG_B pin reset
  ARM: dts: imx7d-sdb: Use WDOG_B pin reset
  ARM: dts: imx6qdl-sabresd: Use WDOG_B pin reset
  ARM: dts: utilite-pro: add mmc card slot support
  ARM: dts: imx6q-cm-fx6: fix the operation points
  ARM: dts: imx6qdl.dtsi: add "arm,shared-override" for pl310
  ARM: imx25-pinfunc: remove SION from all modes
  ARM: imx25-pinfunc: document SION being important for MX25_PAD_SD1_CMD__SD1_CMD
  ARM: dts: ls1021a: Add dis_rxdet_inp3_quirk property to USB3 node
  ...
Signed-off-by: default avatarOlof Johansson <olof@lixom.net>
parents 24cf7316 b326629f
...@@ -362,6 +362,7 @@ dtb-$(CONFIG_SOC_IMX6Q) += \ ...@@ -362,6 +362,7 @@ dtb-$(CONFIG_SOC_IMX6Q) += \
imx6q-gw54xx.dtb \ imx6q-gw54xx.dtb \
imx6q-gw551x.dtb \ imx6q-gw551x.dtb \
imx6q-gw552x.dtb \ imx6q-gw552x.dtb \
imx6q-h100.dtb \
imx6q-hummingboard.dtb \ imx6q-hummingboard.dtb \
imx6q-icore-rqs.dtb \ imx6q-icore-rqs.dtb \
imx6q-marsboard.dtb \ imx6q-marsboard.dtb \
...@@ -383,6 +384,7 @@ dtb-$(CONFIG_SOC_IMX6Q) += \ ...@@ -383,6 +384,7 @@ dtb-$(CONFIG_SOC_IMX6Q) += \
imx6q-tx6q-1110.dtb \ imx6q-tx6q-1110.dtb \
imx6q-tx6q-11x0-mb7.dtb \ imx6q-tx6q-11x0-mb7.dtb \
imx6q-udoo.dtb \ imx6q-udoo.dtb \
imx6q-utilite-pro.dtb \
imx6q-wandboard.dtb \ imx6q-wandboard.dtb \
imx6q-wandboard-revb1.dtb \ imx6q-wandboard-revb1.dtb \
imx6qp-nitrogen6_max.dtb \ imx6qp-nitrogen6_max.dtb \
...@@ -405,9 +407,11 @@ dtb-$(CONFIG_SOC_IMX6UL) += \ ...@@ -405,9 +407,11 @@ dtb-$(CONFIG_SOC_IMX6UL) += \
imx6ul-tx6ul-mainboard.dtb imx6ul-tx6ul-mainboard.dtb
dtb-$(CONFIG_SOC_IMX7D) += \ dtb-$(CONFIG_SOC_IMX7D) += \
imx7d-cl-som-imx7.dtb \ imx7d-cl-som-imx7.dtb \
imx7d-colibri-eval-v3.dtb \
imx7d-nitrogen7.dtb \ imx7d-nitrogen7.dtb \
imx7d-sbc-imx7.dtb \ imx7d-sbc-imx7.dtb \
imx7d-sdb.dtb imx7d-sdb.dtb \
imx7s-colibri-eval-v3.dtb
dtb-$(CONFIG_SOC_LS1021A) += \ dtb-$(CONFIG_SOC_LS1021A) += \
ls1021a-qds.dtb \ ls1021a-qds.dtb \
ls1021a-twr.dtb ls1021a-twr.dtb
...@@ -422,7 +426,9 @@ dtb-$(CONFIG_SOC_VF610) += \ ...@@ -422,7 +426,9 @@ dtb-$(CONFIG_SOC_VF610) += \
dtb-$(CONFIG_ARCH_MXS) += \ dtb-$(CONFIG_ARCH_MXS) += \
imx23-evk.dtb \ imx23-evk.dtb \
imx23-olinuxino.dtb \ imx23-olinuxino.dtb \
imx23-sansa.dtb \
imx23-stmp378x_devb.dtb \ imx23-stmp378x_devb.dtb \
imx23-xfi3.dtb \
imx28-apf28.dtb \ imx28-apf28.dtb \
imx28-apf28dev.dtb \ imx28-apf28dev.dtb \
imx28-apx4devkit.dtb \ imx28-apx4devkit.dtb \
......
...@@ -66,14 +66,14 @@ extgpio1: pcf8575@24 { ...@@ -66,14 +66,14 @@ extgpio1: pcf8575@24 {
&uart1 { &uart1 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart1>; pinctrl-0 = <&pinctrl_uart1>;
fsl,uart-has-rtscts; uart-has-rtscts;
status = "okay"; status = "okay";
}; };
&uart2 { &uart2 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart2>; pinctrl-0 = <&pinctrl_uart2>;
fsl,uart-has-rtscts; uart-has-rtscts;
status = "okay"; status = "okay";
}; };
......
...@@ -34,14 +34,14 @@ &i2c { ...@@ -34,14 +34,14 @@ &i2c {
&uart1 { &uart1 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart1>; pinctrl-0 = <&pinctrl_uart1>;
fsl,uart-has-rtscts; uart-has-rtscts;
status = "okay"; status = "okay";
}; };
&uart2 { &uart2 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart2>; pinctrl-0 = <&pinctrl_uart2>;
fsl,uart-has-rtscts; uart-has-rtscts;
status = "okay"; status = "okay";
}; };
......
/*
* Copyright (C) 2013-2016 Marek Vasut <marek.vasut@gmail.com>
*
* This file is dual-licensed: you can use it either under the terms
* of the GPL or the X11 license, at your option. Note that this dual
* licensing only applies to this file, and not this project as a
* whole.
*
* a) This file is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of
* the License, or (at your option) any later version.
*
* This file is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* Or, alternatively,
*
* b) Permission is hereby granted, free of charge, to any person
* obtaining a copy of this software and associated documentation
* files (the "Software"), to deal in the Software without
* restriction, including without limitation the rights to use,
* copy, modify, merge, publish, distribute, sublicense, and/or
* sell copies of the Software, and to permit persons to whom the
* Software is furnished to do so, subject to the following
* conditions:
*
* The above copyright notice and this permission notice shall be
* included in all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*
*/
/dts-v1/;
#include "imx23.dtsi"
/ {
model = "SanDisk Sansa Fuze+";
compatible = "sandisk,sansa_fuze_plus", "fsl,imx23";
memory {
reg = <0x40000000 0x04000000>;
};
apb@80000000 {
apbh@80000000 {
ssp0: ssp@80010000 {
compatible = "fsl,imx23-mmc";
pinctrl-names = "default";
pinctrl-0 = <&mmc0_4bit_pins_a &mmc0_pins_fixup>;
bus-width = <4>;
vmmc-supply = <&reg_vddio_sd0>;
cd-inverted;
status = "okay";
};
ssp1: ssp@80034000 {
compatible = "fsl,imx23-mmc";
pinctrl-names = "default";
pinctrl-0 = <&mmc1_8bit_pins_a>;
bus-width = <8>;
vmmc-supply = <&reg_vddio_sd1>;
non-removable;
status = "okay";
};
pinctrl@80018000 {
pinctrl-names = "default";
pinctrl-0 = <&hog_pins_a>;
hog_pins_a: hog@0 {
reg = <0>;
fsl,pinmux-ids = <
MX23_PAD_GPMI_D08__GPIO_0_8
MX23_PAD_PWM3__GPIO_1_29
MX23_PAD_AUART1_RTS__GPIO_0_27
MX23_PAD_AUART1_CTS__GPIO_0_26
MX23_PAD_I2C_SCL__I2C_SCL
MX23_PAD_I2C_SDA__I2C_SDA
MX23_PAD_LCD_DOTCK__GPIO_1_22
MX23_PAD_LCD_HSYNC__GPIO_1_24
MX23_PAD_PWM3__GPIO_1_29
>;
fsl,drive-strength = <0>;
fsl,voltage = <1>;
fsl,pull-up = <0>;
};
};
};
apbx@80040000 {
pwm: pwm@80064000 {
pinctrl-names = "default";
pinctrl-0 = <&pwm2_pins_a>;
status = "okay";
};
duart: serial@80070000 {
pinctrl-names = "default";
pinctrl-0 = <&duart_pins_a>;
status = "okay";
};
usbphy0: usbphy@8007c000 {
status = "okay";
};
lradc@80050000 {
status = "okay";
};
};
};
ahb@80080000 {
usb0: usb@80080000 {
dr_mode = "peripheral";
status = "okay";
};
};
reg_vddio_sd0: regulator-vddio-sd0 {
compatible = "regulator-fixed";
regulator-name = "vddio-sd0";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
gpio = <&gpio0 8 0>;
};
reg_vddio_sd1: regulator-vddio-sd1 {
compatible = "regulator-fixed";
regulator-name = "vddio-sd1";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
gpio = <&gpio1 29 0>;
};
reg_vdd_touchpad: regulator-vdd-touchpad0 {
compatible = "regulator-fixed";
regulator-name = "vdd-touchpad0";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
gpio = <&gpio0 26 0>;
regulator-always-on;
enable-active-low;
};
reg_vdd_tuner: regulator-vdd-tuner0 {
compatible = "regulator-fixed";
regulator-name = "vdd-tuner0";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
gpio = <&gpio0 29 0>;
regulator-always-on;
enable-active-low;
};
backlight {
compatible = "pwm-backlight";
pwms = <&pwm 2 5000000>;
brightness-levels = <0 4 8 16 32 64 128 255>;
default-brightness-level = <6>;
};
i2c-0 {
#address-cells = <1>;
#size-cells = <0>;
compatible = "i2c-gpio";
gpios = <
&gpio1 24 0 /* SDA */
&gpio1 22 0 /* SCL */
>;
i2c-gpio,delay-us = <2>; /* ~100 kHz */
};
i2c-1 {
#address-cells = <1>;
#size-cells = <0>;
compatible = "i2c-gpio";
gpios = <
&gpio0 31 0 /* SDA */
&gpio0 30 0 /* SCL */
>;
i2c-gpio,delay-us = <2>; /* ~100 kHz */
touch: touch@20 {
compatible = "synaptics,synaptics_i2c";
reg = <0x20>;
};
eeprom: eeprom@50 {
compatible = "atmel,24c64";
reg = <0x50>;
pagesize = <32>;
};
};
};
/*
* Copyright (C) 2013-2016 Marek Vasut <marek.vasut@gmail.com>
*
* This file is dual-licensed: you can use it either under the terms
* of the GPL or the X11 license, at your option. Note that this dual
* licensing only applies to this file, and not this project as a
* whole.
*
* a) This file is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of
* the License, or (at your option) any later version.
*
* This file is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* Or, alternatively,
*
* b) Permission is hereby granted, free of charge, to any person
* obtaining a copy of this software and associated documentation
* files (the "Software"), to deal in the Software without
* restriction, including without limitation the rights to use,
* copy, modify, merge, publish, distribute, sublicense, and/or
* sell copies of the Software, and to permit persons to whom the
* Software is furnished to do so, subject to the following
* conditions:
*
* The above copyright notice and this permission notice shall be
* included in all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*
*/
/dts-v1/;
#include "imx23.dtsi"
/ {
model = "Creative ZEN X-Fi3";
compatible = "creative,x-fi3", "fsl,imx23";
memory {
reg = <0x40000000 0x04000000>;
};
apb@80000000 {
apbh@80000000 {
ssp0: ssp@80010000 {
compatible = "fsl,imx23-mmc";
pinctrl-names = "default";
pinctrl-0 = <&mmc0_4bit_pins_a &mmc0_pins_fixup>;
bus-width = <4>;
vmmc-supply = <&reg_vddio_sd0>;
cd-inverted;
status = "okay";
};
ssp1: ssp@80034000 {
compatible = "fsl,imx23-mmc";
pinctrl-names = "default";
pinctrl-0 = <&mmc1_4bit_pins_a>;
bus-width = <4>;
non-removable;
status = "okay";
};
pinctrl@80018000 {
pinctrl-names = "default";
pinctrl-0 = <&hog_pins_a>;
hog_pins_a: hog@0 {
reg = <0>;
fsl,pinmux-ids = <
MX23_PAD_GPMI_D07__GPIO_0_7
>;
fsl,drive-strength = <0>;
fsl,voltage = <1>;
fsl,pull-up = <0>;
};
key_pins_a: keys@0 {
reg = <0>;
fsl,pinmux-ids = <
MX23_PAD_ROTARYA__GPIO_2_7
MX23_PAD_ROTARYB__GPIO_2_8
>;
fsl,drive-strength = <0>;
fsl,voltage = <1>;
fsl,pull-up = <1>;
};
};
};
apbx@80040000 {
i2c: i2c@80058000 {
pinctrl-names = "default";
pinctrl-0 = <&i2c_pins_a>;
status = "okay";
};
pwm: pwm@80064000 {
pinctrl-names = "default";
pinctrl-0 = <&pwm2_pins_a>;
status = "okay";
};
duart: serial@80070000 {
pinctrl-names = "default";
pinctrl-0 = <&duart_pins_a>;
status = "okay";
};
auart1: serial@8006e000 {
pinctrl-names = "default";
pinctrl-0 = <&auart1_2pins_a>;
status = "okay";
};
usbphy0: usbphy@8007c000 {
status = "okay";
};
lradc@80050000 {
status = "okay";
};
};
};
ahb@80080000 {
usb0: usb@80080000 {
dr_mode = "peripheral";
status = "okay";
};
};
reg_vddio_sd0: regulator-vddio-sd0 {
compatible = "regulator-fixed";
regulator-name = "vddio-sd0";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
gpio = <&gpio0 7 0>;
};
backlight {
compatible = "pwm-backlight";
pwms = <&pwm 2 5000000>;
brightness-levels = <0 4 8 16 32 64 128 255>;
default-brightness-level = <6>;
};
gpio_keys {
compatible = "gpio-keys";
pinctrl-names = "default";
pinctrl-0 = <&key_pins_a>;
voldown {
label = "volume-down";
linux,code = <114>;
gpios = <&gpio2 7 0>;
debounce-interval = <20>;
};
volup {
label = "volume-up";
linux,code = <115>;
gpios = <&gpio2 8 0>;
debounce-interval = <20>;
};
};
};
...@@ -111,6 +111,7 @@ pinctrl@80018000 { ...@@ -111,6 +111,7 @@ pinctrl@80018000 {
gpio0: gpio@0 { gpio0: gpio@0 {
compatible = "fsl,imx23-gpio", "fsl,mxs-gpio"; compatible = "fsl,imx23-gpio", "fsl,mxs-gpio";
reg = <0>;
interrupts = <16>; interrupts = <16>;
gpio-controller; gpio-controller;
#gpio-cells = <2>; #gpio-cells = <2>;
...@@ -120,6 +121,7 @@ gpio0: gpio@0 { ...@@ -120,6 +121,7 @@ gpio0: gpio@0 {
gpio1: gpio@1 { gpio1: gpio@1 {
compatible = "fsl,imx23-gpio", "fsl,mxs-gpio"; compatible = "fsl,imx23-gpio", "fsl,mxs-gpio";
reg = <1>;
interrupts = <17>; interrupts = <17>;
gpio-controller; gpio-controller;
#gpio-cells = <2>; #gpio-cells = <2>;
...@@ -129,6 +131,7 @@ gpio1: gpio@1 { ...@@ -129,6 +131,7 @@ gpio1: gpio@1 {
gpio2: gpio@2 { gpio2: gpio@2 {
compatible = "fsl,imx23-gpio", "fsl,mxs-gpio"; compatible = "fsl,imx23-gpio", "fsl,mxs-gpio";
reg = <2>;
interrupts = <18>; interrupts = <18>;
gpio-controller; gpio-controller;
#gpio-cells = <2>; #gpio-cells = <2>;
...@@ -171,6 +174,17 @@ MX23_PAD_I2C_SDA__AUART1_RX ...@@ -171,6 +174,17 @@ MX23_PAD_I2C_SDA__AUART1_RX
fsl,pull-up = <MXS_PULL_DISABLE>; fsl,pull-up = <MXS_PULL_DISABLE>;
}; };
auart1_2pins_a: auart1-2pins@0 {
reg = <0>;
fsl,pinmux-ids = <
MX23_PAD_GPMI_D14__AUART2_RX
MX23_PAD_GPMI_D15__AUART2_TX
>;
fsl,drive-strength = <MXS_DRIVE_4mA>;
fsl,voltage = <MXS_VOLTAGE_HIGH>;
fsl,pull-up = <MXS_PULL_DISABLE>;
};
gpmi_pins_a: gpmi-nand@0 { gpmi_pins_a: gpmi-nand@0 {
reg = <0>; reg = <0>;
fsl,pinmux-ids = < fsl,pinmux-ids = <
...@@ -249,6 +263,40 @@ MX23_PAD_SSP1_SCK__SSP1_SCK ...@@ -249,6 +263,40 @@ MX23_PAD_SSP1_SCK__SSP1_SCK
fsl,pull-up = <MXS_PULL_DISABLE>; fsl,pull-up = <MXS_PULL_DISABLE>;
}; };
mmc1_4bit_pins_a: mmc1-4bit@0 {
reg = <0>;
fsl,pinmux-ids = <
MX23_PAD_GPMI_D00__SSP2_DATA0
MX23_PAD_GPMI_D01__SSP2_DATA1
MX23_PAD_GPMI_D02__SSP2_DATA2
MX23_PAD_GPMI_D03__SSP2_DATA3
MX23_PAD_GPMI_RDY1__SSP2_CMD
MX23_PAD_GPMI_WRN__SSP2_SCK
>;
fsl,drive-strength = <MXS_DRIVE_8mA>;
fsl,voltage = <MXS_VOLTAGE_HIGH>;
fsl,pull-up = <MXS_PULL_ENABLE>;
};
mmc1_8bit_pins_a: mmc1-8bit@0 {
reg = <0>;
fsl,pinmux-ids = <
MX23_PAD_GPMI_D00__SSP2_DATA0
MX23_PAD_GPMI_D01__SSP2_DATA1
MX23_PAD_GPMI_D02__SSP2_DATA2
MX23_PAD_GPMI_D03__SSP2_DATA3
MX23_PAD_GPMI_D04__SSP2_DATA4
MX23_PAD_GPMI_D05__SSP2_DATA5
MX23_PAD_GPMI_D06__SSP2_DATA6
MX23_PAD_GPMI_D07__SSP2_DATA7
MX23_PAD_GPMI_RDY1__SSP2_CMD
MX23_PAD_GPMI_WRN__SSP2_SCK
>;
fsl,drive-strength = <MXS_DRIVE_8mA>;
fsl,voltage = <MXS_VOLTAGE_HIGH>;
fsl,pull-up = <MXS_PULL_ENABLE>;
};
pwm2_pins_a: pwm2@0 { pwm2_pins_a: pwm2@0 {
reg = <0>; reg = <0>;
fsl,pinmux-ids = < fsl,pinmux-ids = <
......
...@@ -161,14 +161,14 @@ &ssi1 { ...@@ -161,14 +161,14 @@ &ssi1 {
&uart1 { &uart1 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart1>; pinctrl-0 = <&pinctrl_uart1>;
fsl,uart-has-rtscts; uart-has-rtscts;
status = "okay"; status = "okay";
}; };
&uart2 { &uart2 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart2>; pinctrl-0 = <&pinctrl_uart2>;
fsl,uart-has-rtscts; uart-has-rtscts;
status = "okay"; status = "okay";
}; };
......
...@@ -298,7 +298,7 @@ &ssi1 { ...@@ -298,7 +298,7 @@ &ssi1 {
&uart1 { &uart1 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart1>; pinctrl-0 = <&pinctrl_uart1>;
fsl,uart-has-rtscts; uart-has-rtscts;
status = "okay"; status = "okay";
}; };
......
This diff is collapsed.
...@@ -77,7 +77,7 @@ &sdhci2 { ...@@ -77,7 +77,7 @@ &sdhci2 {
&uart4 { &uart4 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart4>; pinctrl-0 = <&pinctrl_uart4>;
fsl,uart-has-rtscts; uart-has-rtscts;
status = "okay"; status = "okay";
}; };
......
...@@ -140,21 +140,21 @@ &ssi1 { ...@@ -140,21 +140,21 @@ &ssi1 {
}; };
&uart1 { &uart1 {
fsl,uart-has-rtscts; uart-has-rtscts;
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart1>; pinctrl-0 = <&pinctrl_uart1>;
status = "okay"; status = "okay";
}; };
&uart2 { &uart2 {
fsl,uart-has-rtscts; uart-has-rtscts;
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart2>; pinctrl-0 = <&pinctrl_uart2>;
status = "okay"; status = "okay";
}; };
&uart3 { &uart3 {
fsl,uart-has-rtscts; uart-has-rtscts;
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart3>; pinctrl-0 = <&pinctrl_uart3>;
status = "okay"; status = "okay";
......
...@@ -106,7 +106,7 @@ &nfc { ...@@ -106,7 +106,7 @@ &nfc {
}; };
&uart1 { &uart1 {
fsl,uart-has-rtscts; uart-has-rtscts;
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart1>; pinctrl-0 = <&pinctrl_uart1>;
status = "okay"; status = "okay";
......
...@@ -147,21 +147,21 @@ &sdhci2 { ...@@ -147,21 +147,21 @@ &sdhci2 {
}; };
&uart1 { &uart1 {
fsl,uart-has-rtscts; uart-has-rtscts;
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart1>; pinctrl-0 = <&pinctrl_uart1>;
status = "okay"; status = "okay";
}; };
&uart2 { &uart2 {
fsl,uart-has-rtscts; uart-has-rtscts;
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart2>; pinctrl-0 = <&pinctrl_uart2>;
status = "okay"; status = "okay";
}; };
&uart3 { &uart3 {
fsl,uart-has-rtscts; uart-has-rtscts;
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart3>; pinctrl-0 = <&pinctrl_uart3>;
status = "okay"; status = "okay";
......
...@@ -283,14 +283,14 @@ &sdhci2 { ...@@ -283,14 +283,14 @@ &sdhci2 {
}; };
&uart1 { &uart1 {
fsl,uart-has-rtscts; uart-has-rtscts;
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart1>; pinctrl-0 = <&pinctrl_uart1>;
status = "okay"; status = "okay";
}; };
&uart2 { &uart2 {
fsl,uart-has-rtscts; uart-has-rtscts;
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart2>; pinctrl-0 = <&pinctrl_uart2>;
status = "okay"; status = "okay";
......
...@@ -140,7 +140,7 @@ pwm: pwm@80064000 { ...@@ -140,7 +140,7 @@ pwm: pwm@80064000 {
auart0: serial@8006a000 { auart0: serial@8006a000 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&auart0_pins_a>; pinctrl-0 = <&auart0_pins_a>;
fsl,uart-has-rtscts; uart-has-rtscts;
status = "okay"; status = "okay";
}; };
......
...@@ -426,7 +426,7 @@ backlight { ...@@ -426,7 +426,7 @@ backlight {
}; };
onewire@0 { onewire {
compatible = "w1-gpio"; compatible = "w1-gpio";
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&w1_gpio_pins>; pinctrl-0 = <&w1_gpio_pins>;
......
...@@ -84,6 +84,7 @@ regulators { ...@@ -84,6 +84,7 @@ regulators {
reg_3p3v: regulator@0 { reg_3p3v: regulator@0 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <0>;
regulator-name = "3P3V"; regulator-name = "3P3V";
regulator-min-microvolt = <3300000>; regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>; regulator-max-microvolt = <3300000>;
...@@ -92,6 +93,7 @@ reg_3p3v: regulator@0 { ...@@ -92,6 +93,7 @@ reg_3p3v: regulator@0 {
reg_lcd_3v3: regulator@1 { reg_lcd_3v3: regulator@1 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <1>;
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&reg_lcd_3v3_pins_mbmx28lc>; pinctrl-0 = <&reg_lcd_3v3_pins_mbmx28lc>;
regulator-name = "lcd-3v3"; regulator-name = "lcd-3v3";
...@@ -103,6 +105,7 @@ reg_lcd_3v3: regulator@1 { ...@@ -103,6 +105,7 @@ reg_lcd_3v3: regulator@1 {
reg_usb0_vbus: regulator@2 { reg_usb0_vbus: regulator@2 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <2>;
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&reg_usb0_vbus_pins_mbmx28lc>; pinctrl-0 = <&reg_usb0_vbus_pins_mbmx28lc>;
regulator-name = "usb0_vbus"; regulator-name = "usb0_vbus";
...@@ -114,6 +117,7 @@ reg_usb0_vbus: regulator@2 { ...@@ -114,6 +117,7 @@ reg_usb0_vbus: regulator@2 {
reg_usb1_vbus: regulator@3 { reg_usb1_vbus: regulator@3 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <3>;
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&reg_usb1_vbus_pins_mbmx28lc>; pinctrl-0 = <&reg_usb1_vbus_pins_mbmx28lc>;
regulator-name = "usb1_vbus"; regulator-name = "usb1_vbus";
......
...@@ -224,7 +224,7 @@ duart: serial@80074000 { ...@@ -224,7 +224,7 @@ duart: serial@80074000 {
auart0: serial@8006a000 { auart0: serial@8006a000 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&auart0_pins_a>; pinctrl-0 = <&auart0_pins_a>;
fsl,uart-has-rtscts; uart-has-rtscts;
status = "okay"; status = "okay";
}; };
......
...@@ -173,7 +173,7 @@ backlight { ...@@ -173,7 +173,7 @@ backlight {
default-brightness-level = <50>; default-brightness-level = <50>;
}; };
matrix_keypad: matrix-keypad@0 { matrix_keypad: matrix-keypad {
compatible = "gpio-matrix-keypad"; compatible = "gpio-matrix-keypad";
col-gpios = < col-gpios = <
&gpio5 0 GPIO_ACTIVE_HIGH &gpio5 0 GPIO_ACTIVE_HIGH
......
...@@ -165,6 +165,7 @@ pinctrl: pinctrl@80018000 { ...@@ -165,6 +165,7 @@ pinctrl: pinctrl@80018000 {
gpio0: gpio@0 { gpio0: gpio@0 {
compatible = "fsl,imx28-gpio", "fsl,mxs-gpio"; compatible = "fsl,imx28-gpio", "fsl,mxs-gpio";
reg = <0>;
interrupts = <127>; interrupts = <127>;
gpio-controller; gpio-controller;
#gpio-cells = <2>; #gpio-cells = <2>;
...@@ -174,6 +175,7 @@ gpio0: gpio@0 { ...@@ -174,6 +175,7 @@ gpio0: gpio@0 {
gpio1: gpio@1 { gpio1: gpio@1 {
compatible = "fsl,imx28-gpio", "fsl,mxs-gpio"; compatible = "fsl,imx28-gpio", "fsl,mxs-gpio";
reg = <1>;
interrupts = <126>; interrupts = <126>;
gpio-controller; gpio-controller;
#gpio-cells = <2>; #gpio-cells = <2>;
...@@ -183,6 +185,7 @@ gpio1: gpio@1 { ...@@ -183,6 +185,7 @@ gpio1: gpio@1 {
gpio2: gpio@2 { gpio2: gpio@2 {
compatible = "fsl,imx28-gpio", "fsl,mxs-gpio"; compatible = "fsl,imx28-gpio", "fsl,mxs-gpio";
reg = <2>;
interrupts = <125>; interrupts = <125>;
gpio-controller; gpio-controller;
#gpio-cells = <2>; #gpio-cells = <2>;
...@@ -192,6 +195,7 @@ gpio2: gpio@2 { ...@@ -192,6 +195,7 @@ gpio2: gpio@2 {
gpio3: gpio@3 { gpio3: gpio@3 {
compatible = "fsl,imx28-gpio", "fsl,mxs-gpio"; compatible = "fsl,imx28-gpio", "fsl,mxs-gpio";
reg = <3>;
interrupts = <124>; interrupts = <124>;
gpio-controller; gpio-controller;
#gpio-cells = <2>; #gpio-cells = <2>;
...@@ -201,6 +205,7 @@ gpio3: gpio@3 { ...@@ -201,6 +205,7 @@ gpio3: gpio@3 {
gpio4: gpio@4 { gpio4: gpio@4 {
compatible = "fsl,imx28-gpio", "fsl,mxs-gpio"; compatible = "fsl,imx28-gpio", "fsl,mxs-gpio";
reg = <4>;
interrupts = <123>; interrupts = <123>;
gpio-controller; gpio-controller;
#gpio-cells = <2>; #gpio-cells = <2>;
......
...@@ -22,6 +22,6 @@ memory { ...@@ -22,6 +22,6 @@ memory {
}; };
&uart5 { &uart5 {
fsl,uart-has-rtscts; uart-has-rtscts;
status = "okay"; status = "okay";
}; };
...@@ -139,14 +139,14 @@ &ssi1 { ...@@ -139,14 +139,14 @@ &ssi1 {
&uart1 { &uart1 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart1>; pinctrl-0 = <&pinctrl_uart1>;
fsl,uart-has-rtscts; uart-has-rtscts;
status = "okay"; status = "okay";
}; };
&uart2 { &uart2 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart2>; pinctrl-0 = <&pinctrl_uart2>;
fsl,uart-has-rtscts; uart-has-rtscts;
status = "okay"; status = "okay";
}; };
......
...@@ -63,6 +63,6 @@ &nfc { ...@@ -63,6 +63,6 @@ &nfc {
&uart1 { &uart1 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart1>; pinctrl-0 = <&pinctrl_uart1>;
fsl,uart-has-rtscts; uart-has-rtscts;
status = "okay"; status = "okay";
}; };
...@@ -388,7 +388,7 @@ &ssi2 { ...@@ -388,7 +388,7 @@ &ssi2 {
&uart1 { &uart1 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart1>; pinctrl-0 = <&pinctrl_uart1>;
fsl,uart-has-rtscts; uart-has-rtscts;
status = "okay"; status = "okay";
}; };
...@@ -401,7 +401,7 @@ &uart2 { ...@@ -401,7 +401,7 @@ &uart2 {
&uart3 { &uart3 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart3>; pinctrl-0 = <&pinctrl_uart3>;
fsl,uart-has-rtscts; uart-has-rtscts;
status = "okay"; status = "okay";
}; };
......
...@@ -261,14 +261,14 @@ &ssi2 { ...@@ -261,14 +261,14 @@ &ssi2 {
&uart1 { &uart1 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart1>; pinctrl-0 = <&pinctrl_uart1>;
fsl,uart-has-rtscts; uart-has-rtscts;
status = "okay"; status = "okay";
}; };
&uart3 { &uart3 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart3 &pinctrl_uart3_rtscts>; pinctrl-0 = <&pinctrl_uart3 &pinctrl_uart3_rtscts>;
fsl,uart-has-rtscts; uart-has-rtscts;
status = "okay"; status = "okay";
}; };
......
...@@ -165,6 +165,27 @@ touchscreen { ...@@ -165,6 +165,27 @@ touchscreen {
reg = <0x12000 0x1000>; reg = <0x12000 0x1000>;
syscon = <&syscon 0x10 6>; syscon = <&syscon 0x10 6>;
}; };
fpga_irqc: fpga-irqc@15000 {
compatible = "technologic,ts4800-irqc";
reg = <0x15000 0x1000>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_interrupt_fpga>;
interrupt-parent = <&gpio2>;
interrupts= <9 IRQ_TYPE_LEVEL_HIGH>;
interrupt-controller;
#interrupt-cells = <1>;
};
can@1a000 {
compatible = "technologic,sja1000";
reg = <0x1a000 0x100>;
interrupt-parent = <&fpga_irqc>;
interrupts = <1>;
reg-io-width = <2>;
nxp,tx-output-config = <0x06>;
nxp,external-clock-frequency = <24000000>;
};
}; };
}; };
...@@ -228,6 +249,12 @@ MX51_PAD_KEY_COL5__I2C2_SDA 0x400001ed ...@@ -228,6 +249,12 @@ MX51_PAD_KEY_COL5__I2C2_SDA 0x400001ed
>; >;
}; };
pinctrl_interrupt_fpga: fpgaicgrp {
fsl,pins = <
MX51_PAD_EIM_D27__GPIO2_9 0xe5
>;
};
pinctrl_lcd: lcdgrp { pinctrl_lcd: lcdgrp {
fsl,pins = < fsl,pins = <
MX51_PAD_DISP1_DAT0__DISP1_DAT0 0x5 MX51_PAD_DISP1_DAT0__DISP1_DAT0 0x5
......
...@@ -56,7 +56,7 @@ &esdhc2 { ...@@ -56,7 +56,7 @@ &esdhc2 {
&uart3 { &uart3 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart3>; pinctrl-0 = <&pinctrl_uart3>;
fsl,uart-has-rtscts; uart-has-rtscts;
status = "okay"; status = "okay";
}; };
......
...@@ -218,7 +218,7 @@ MX53_PAD_PATA_CS_1__UART3_RXD_MUX 0x1e4 ...@@ -218,7 +218,7 @@ MX53_PAD_PATA_CS_1__UART3_RXD_MUX 0x1e4
&uart1 { &uart1 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart1>; pinctrl-0 = <&pinctrl_uart1>;
fsl,uart-has-rtscts; uart-has-rtscts;
status = "disabled"; status = "disabled";
}; };
......
...@@ -513,21 +513,21 @@ &ssi2 { ...@@ -513,21 +513,21 @@ &ssi2 {
&uart1 { &uart1 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart1>; pinctrl-0 = <&pinctrl_uart1>;
fsl,uart-has-rtscts; uart-has-rtscts;
status = "okay"; status = "okay";
}; };
&uart2 { &uart2 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart2>; pinctrl-0 = <&pinctrl_uart2>;
fsl,uart-has-rtscts; uart-has-rtscts;
status = "okay"; status = "okay";
}; };
&uart3 { &uart3 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart3>; pinctrl-0 = <&pinctrl_uart3>;
fsl,uart-has-rtscts; uart-has-rtscts;
status = "okay"; status = "okay";
}; };
......
...@@ -97,6 +97,7 @@ &fec { ...@@ -97,6 +97,7 @@ &fec {
phy-reset-gpios = <&gpio3 31 0>; phy-reset-gpios = <&gpio3 31 0>;
interrupts-extended = <&gpio1 6 IRQ_TYPE_LEVEL_HIGH>, interrupts-extended = <&gpio1 6 IRQ_TYPE_LEVEL_HIGH>,
<&intc 0 119 IRQ_TYPE_LEVEL_HIGH>; <&intc 0 119 IRQ_TYPE_LEVEL_HIGH>;
fsl,err006687-workaround-present;
status = "okay"; status = "okay";
}; };
......
...@@ -93,7 +93,7 @@ port@0 { ...@@ -93,7 +93,7 @@ port@0 {
reg = <0>; reg = <0>;
lcd_display_in: endpoint { lcd_display_in: endpoint {
remote-endpoint = <&ipu1_di0_disp1>; remote-endpoint = <&ipu1_di1_disp1>;
}; };
}; };
...@@ -210,7 +210,7 @@ rtc_i2c: rtc@68 { ...@@ -210,7 +210,7 @@ rtc_i2c: rtc@68 {
}; };
}; };
&ipu1_di0_disp1 { &ipu1_di1_disp1 {
remote-endpoint = <&lcd_display_in>; remote-endpoint = <&lcd_display_in>;
}; };
......
...@@ -185,6 +185,7 @@ &fec { ...@@ -185,6 +185,7 @@ &fec {
phy-mode = "rgmii"; phy-mode = "rgmii";
interrupts-extended = <&gpio1 6 IRQ_TYPE_LEVEL_HIGH>, interrupts-extended = <&gpio1 6 IRQ_TYPE_LEVEL_HIGH>,
<&intc 0 119 IRQ_TYPE_LEVEL_HIGH>; <&intc 0 119 IRQ_TYPE_LEVEL_HIGH>;
fsl,err006687-workaround-present;
status = "okay"; status = "okay";
}; };
...@@ -218,7 +219,7 @@ &uart2 { ...@@ -218,7 +219,7 @@ &uart2 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart2>; pinctrl-0 = <&pinctrl_uart2>;
fsl,dte-mode; fsl,dte-mode;
fsl,uart-has-rtscts; uart-has-rtscts;
status = "okay"; status = "okay";
}; };
......
...@@ -351,7 +351,7 @@ &ssi1 { ...@@ -351,7 +351,7 @@ &ssi1 {
&uart3 { &uart3 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart3>; pinctrl-0 = <&pinctrl_uart3>;
fsl,uart-has-rtscts; uart-has-rtscts;
status = "okay"; status = "okay";
}; };
......
...@@ -52,6 +52,12 @@ mclk: clock@0 { ...@@ -52,6 +52,12 @@ mclk: clock@0 {
}; };
}; };
gpio-poweroff {
compatible = "gpio-poweroff";
gpios = <&gpio4 11 GPIO_ACTIVE_LOW>;
status = "okay";
};
reg_wl18xx_vmmc: regulator-wl18xx { reg_wl18xx_vmmc: regulator-wl18xx {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
regulator-name = "vwl1807"; regulator-name = "vwl1807";
......
...@@ -3,15 +3,46 @@ ...@@ -3,15 +3,46 @@
* *
* Author: Valentin Raevsky <valentin@compulab.co.il> * Author: Valentin Raevsky <valentin@compulab.co.il>
* *
* The code contained herein is licensed under the GNU General Public * This file is dual-licensed: you can use it either under the terms
* License. You may obtain a copy of the GNU General Public License * of the GPL or the X11 license, at your option. Note that this dual
* Version 2 or later at the following locations: * licensing only applies to this file, and not this project as a
* whole.
* *
* http://www.opensource.org/licenses/gpl-license.html * a) This file is free software; you can redistribute it and/or
* http://www.gnu.org/copyleft/gpl.html * modify it under the terms of the GNU General Public License
* version 2 as published by the Free Software Foundation.
*
* This file is distributed in the hope that it will be useful
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* Or, alternatively
*
* b) Permission is hereby granted, free of charge, to any person
* obtaining a copy of this software and associated documentation
* files (the "Software"), to deal in the Software without
* restriction, including without limitation the rights to use
* copy, modify, merge, publish, distribute, sublicense, and/or
* sell copies of the Software, and to permit persons to whom the
* Software is furnished to do so, subject to the following
* conditions:
*
* The above copyright notice and this permission notice shall be
* included in all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED , WITHOUT WARRANTY OF ANY KIND
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*/ */
/dts-v1/; /dts-v1/;
#include <dt-bindings/gpio/gpio.h>
#include "imx6q.dtsi" #include "imx6q.dtsi"
/ { / {
...@@ -31,6 +62,71 @@ heartbeat-led { ...@@ -31,6 +62,71 @@ heartbeat-led {
linux,default-trigger = "heartbeat"; linux,default-trigger = "heartbeat";
}; };
}; };
reg_pcie_power_on_gpio: regulator-pcie-power-on-gpio {
compatible = "regulator-fixed";
regulator-name = "regulator-pcie-power-on-gpio";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
gpio = <&gpio2 24 GPIO_ACTIVE_HIGH>;
enable-active-high;
};
reg_usb_h1_vbus: usb_h1_vbus {
compatible = "regulator-fixed";
regulator-name = "usb_h1_vbus";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
gpio = <&gpio7 8 GPIO_ACTIVE_HIGH>;
enable-active-high;
};
reg_usb_otg_vbus: usb_otg_vbus {
compatible = "regulator-fixed";
regulator-name = "usb_otg_vbus";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
gpio = <&gpio3 22 GPIO_ACTIVE_HIGH>;
enable-active-high;
};
};
&cpu0 {
/*
* Although the imx6q fuse indicates that 1.2GHz operation is possible,
* the module behaves unstable at this frequency. Hence, remove the
* 1.2GHz operation point here.
*/
operating-points = <
/* kHz uV */
996000 1250000
852000 1250000
792000 1175000
396000 975000
>;
fsl,soc-operating-points = <
/* ARM kHz SOC-PU uV */
996000 1250000
852000 1250000
792000 1175000
396000 1175000
>;
};
&ecspi1 {
fsl,spi-num-chipselects = <2>;
cs-gpios = <&gpio2 30 GPIO_ACTIVE_HIGH>, <&gpio3 19 GPIO_ACTIVE_HIGH>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_ecspi1>;
status = "okay";
m25p80@0 {
#address-cells = <1>;
#size-cells = <1>;
compatible = "st,m25p", "jedec,spi-nor";
spi-max-frequency = <20000000>;
reg = <0>;
};
}; };
&fec { &fec {
...@@ -46,58 +142,122 @@ &gpmi { ...@@ -46,58 +142,122 @@ &gpmi {
status = "okay"; status = "okay";
}; };
&i2c3 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_i2c3>;
status = "okay";
clock-frequency = <100000>;
eeprom@50 {
compatible = "at24,24c02";
reg = <0x50>;
pagesize = <16>;
};
};
&iomuxc { &iomuxc {
imx6q-cm-fx6 { pinctrl_ecspi1: ecspi1grp {
pinctrl_enet: enetgrp { fsl,pins = <
fsl,pins = < MX6QDL_PAD_EIM_D16__ECSPI1_SCLK 0x100b1
MX6QDL_PAD_RGMII_RXC__RGMII_RXC 0x1b0b0 MX6QDL_PAD_EIM_D17__ECSPI1_MISO 0x100b1
MX6QDL_PAD_RGMII_RD0__RGMII_RD0 0x1b0b0 MX6QDL_PAD_EIM_D18__ECSPI1_MOSI 0x100b1
MX6QDL_PAD_RGMII_RD1__RGMII_RD1 0x1b0b0 MX6QDL_PAD_EIM_EB2__GPIO2_IO30 0x100b1
MX6QDL_PAD_RGMII_RD2__RGMII_RD2 0x1b0b0 MX6QDL_PAD_EIM_D19__GPIO3_IO19 0x100b1
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_GPIO_16__ENET_REF_CLK 0x4001b0a8
>;
};
pinctrl_gpmi_nand: gpminandgrp { pinctrl_enet: enetgrp {
fsl,pins = < fsl,pins = <
MX6QDL_PAD_NANDF_CLE__NAND_CLE 0xb0b1 MX6QDL_PAD_RGMII_RXC__RGMII_RXC 0x1b0b0
MX6QDL_PAD_NANDF_ALE__NAND_ALE 0xb0b1 MX6QDL_PAD_RGMII_RD0__RGMII_RD0 0x1b0b0
MX6QDL_PAD_NANDF_WP_B__NAND_WP_B 0xb0b1 MX6QDL_PAD_RGMII_RD1__RGMII_RD1 0x1b0b0
MX6QDL_PAD_NANDF_RB0__NAND_READY_B 0xb000 MX6QDL_PAD_RGMII_RD2__RGMII_RD2 0x1b0b0
MX6QDL_PAD_NANDF_CS0__NAND_CE0_B 0xb0b1 MX6QDL_PAD_RGMII_RD3__RGMII_RD3 0x1b0b0
MX6QDL_PAD_NANDF_CS1__NAND_CE1_B 0xb0b1 MX6QDL_PAD_RGMII_RX_CTL__RGMII_RX_CTL 0x1b0b0
MX6QDL_PAD_SD4_CMD__NAND_RE_B 0xb0b1 MX6QDL_PAD_RGMII_TXC__RGMII_TXC 0x1b0b0
MX6QDL_PAD_SD4_CLK__NAND_WE_B 0xb0b1 MX6QDL_PAD_RGMII_TD0__RGMII_TD0 0x1b0b0
MX6QDL_PAD_NANDF_D0__NAND_DATA00 0xb0b1 MX6QDL_PAD_RGMII_TD1__RGMII_TD1 0x1b0b0
MX6QDL_PAD_NANDF_D1__NAND_DATA01 0xb0b1 MX6QDL_PAD_RGMII_TD2__RGMII_TD2 0x1b0b0
MX6QDL_PAD_NANDF_D2__NAND_DATA02 0xb0b1 MX6QDL_PAD_RGMII_TD3__RGMII_TD3 0x1b0b0
MX6QDL_PAD_NANDF_D3__NAND_DATA03 0xb0b1 MX6QDL_PAD_RGMII_TX_CTL__RGMII_TX_CTL 0x1b0b0
MX6QDL_PAD_NANDF_D4__NAND_DATA04 0xb0b1 MX6QDL_PAD_ENET_REF_CLK__ENET_TX_CLK 0x1b0b0
MX6QDL_PAD_NANDF_D5__NAND_DATA05 0xb0b1 MX6QDL_PAD_ENET_MDIO__ENET_MDIO 0x1b0b0
MX6QDL_PAD_NANDF_D6__NAND_DATA06 0xb0b1 MX6QDL_PAD_ENET_MDC__ENET_MDC 0x1b0b0
MX6QDL_PAD_NANDF_D7__NAND_DATA07 0xb0b1 MX6QDL_PAD_GPIO_16__ENET_REF_CLK 0x4001b0a8
MX6QDL_PAD_SD4_DAT0__NAND_DQS 0x00b1 >;
>; };
};
pinctrl_uart4: uart4grp { pinctrl_gpmi_nand: gpminandgrp {
fsl,pins = < fsl,pins = <
MX6QDL_PAD_KEY_COL0__UART4_TX_DATA 0x1b0b1 MX6QDL_PAD_NANDF_CLE__NAND_CLE 0xb0b1
MX6QDL_PAD_KEY_ROW0__UART4_RX_DATA 0x1b0b1 MX6QDL_PAD_NANDF_ALE__NAND_ALE 0xb0b1
>; MX6QDL_PAD_NANDF_WP_B__NAND_WP_B 0xb0b1
}; MX6QDL_PAD_NANDF_RB0__NAND_READY_B 0xb000
MX6QDL_PAD_NANDF_CS0__NAND_CE0_B 0xb0b1
MX6QDL_PAD_NANDF_CS1__NAND_CE1_B 0xb0b1
MX6QDL_PAD_SD4_CMD__NAND_RE_B 0xb0b1
MX6QDL_PAD_SD4_CLK__NAND_WE_B 0xb0b1
MX6QDL_PAD_NANDF_D0__NAND_DATA00 0xb0b1
MX6QDL_PAD_NANDF_D1__NAND_DATA01 0xb0b1
MX6QDL_PAD_NANDF_D2__NAND_DATA02 0xb0b1
MX6QDL_PAD_NANDF_D3__NAND_DATA03 0xb0b1
MX6QDL_PAD_NANDF_D4__NAND_DATA04 0xb0b1
MX6QDL_PAD_NANDF_D5__NAND_DATA05 0xb0b1
MX6QDL_PAD_NANDF_D6__NAND_DATA06 0xb0b1
MX6QDL_PAD_NANDF_D7__NAND_DATA07 0xb0b1
MX6QDL_PAD_SD4_DAT0__NAND_DQS 0x00b1
>;
};
pinctrl_i2c3: i2c3grp {
fsl,pins = <
MX6QDL_PAD_GPIO_3__I2C3_SCL 0x4001b8b1
MX6QDL_PAD_GPIO_6__I2C3_SDA 0x4001b8b1
>;
};
pinctrl_pcie: pciegrp {
fsl,pins = <
MX6QDL_PAD_ENET_RXD1__GPIO1_IO26 0x1b0b1
MX6QDL_PAD_EIM_CS1__GPIO2_IO24 0x1b0b1
>;
};
pinctrl_uart4: uart4grp {
fsl,pins = <
MX6QDL_PAD_KEY_COL0__UART4_TX_DATA 0x1b0b1
MX6QDL_PAD_KEY_ROW0__UART4_RX_DATA 0x1b0b1
>;
}; };
pinctrl_usbh1: usbh1grp {
fsl,pins = <
MX6QDL_PAD_SD3_RST__GPIO7_IO08 0x1b0b1
>;
};
pinctrl_usbotg: usbotggrp {
fsl,pins = <
MX6QDL_PAD_ENET_RX_ER__USB_OTG_ID 0x17059
MX6QDL_PAD_EIM_D22__GPIO3_IO22 0x130b0
>;
};
};
&pcie {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_pcie>;
reset-gpio = <&gpio1 26 GPIO_ACTIVE_LOW>;
vdd-supply = <&reg_pcie_power_on_gpio>;
status = "okay";
};
&sata {
status = "okay";
};
&snvs_poweroff {
status = "okay";
}; };
&uart4 { &uart4 {
...@@ -105,3 +265,18 @@ &uart4 { ...@@ -105,3 +265,18 @@ &uart4 {
pinctrl-0 = <&pinctrl_uart4>; pinctrl-0 = <&pinctrl_uart4>;
status = "okay"; status = "okay";
}; };
&usbh1 {
vbus-supply = <&reg_usb_h1_vbus>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_usbh1>;
status = "okay";
};
&usbotg {
vbus-supply = <&reg_usb_otg_vbus>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_usbotg>;
dr_mode = "otg";
status = "okay";
};
/*
* Copyright (C) 2015 Lucas Stach <kernel@pengutronix.de>
*
* This file is dual-licensed: you can use it either under the terms
* of the GPL or the X11 license, at your option. Note that this dual
* licensing only applies to this file, and not this project as a
* whole.
*
* a) This file is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* version 2 as published by the Free Software Foundation.
*
* This file is distributed in the hope that it will be useful
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* Or, alternatively
*
* b) Permission is hereby granted, free of charge, to any person
* obtaining a copy of this software and associated documentation
* files (the "Software"), to deal in the Software without
* restriction, including without limitation the rights to use
* copy, modify, merge, publish, distribute, sublicense, and/or
* sell copies of the Software, and to permit persons to whom the
* Software is furnished to do so, subject to the following
* conditions:
*
* The above copyright notice and this permission notice shall be
* included in all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED , WITHOUT WARRANTY OF ANY KIND
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*/
/dts-v1/;
#include "imx6q.dtsi"
#include "imx6qdl-microsom.dtsi"
#include "imx6qdl-microsom-ar8035.dtsi"
/ {
model = "Auvidea H100";
compatible = "auvidea,h100", "fsl,imx6q";
aliases {
rtc0 = &rtc;
rtc1 = &snvs_rtc;
};
chosen {
stdout-path = &uart2;
};
hdmi_osc: hdmi-osc {
compatible = "fixed-clock";
clock-output-names = "hdmi-osc";
clock-frequency = <27000000>;
#clock-cells = <0>;
};
leds {
compatible = "gpio-leds";
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_h100_leds>;
led0: power {
label = "power";
gpios = <&gpio3 0 GPIO_ACTIVE_LOW>;
default-state = "on";
};
led1: stream {
label = "stream";
gpios = <&gpio2 29 GPIO_ACTIVE_LOW>;
default-state = "off";
};
led2: rec {
label = "rec";
gpios = <&gpio2 28 GPIO_ACTIVE_LOW>;
default-state = "off";
};
};
reg_3p3v: regulator-3p3v {
compatible = "regulator-fixed";
regulator-name = "3P3V";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
};
reg_hdmi: regulator-hdmi {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_h100_reg_hdmi>;
compatible = "regulator-fixed";
enable-active-high;
gpio = <&gpio2 20 GPIO_ACTIVE_HIGH>;
regulator-name = "V_HDMI";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
regulator-always-on;
};
reg_nvcc_sd2: regulator-nvcc-sd2 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_h100_reg_nvcc_sd2>;
compatible = "regulator-gpio";
regulator-name = "NVCC_SD2";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <3300000>;
regulator-type = "voltage";
regulator-boot-on;
regulator-always-on;
gpios = <&gpio4 9 GPIO_ACTIVE_HIGH>;
states = <1800000 0x1
3300000 0x0>;
};
reg_usbh1_vbus: regulator-usb-h1-vbus {
compatible = "regulator-fixed";
enable-active-high;
gpio = <&gpio1 0 GPIO_ACTIVE_HIGH>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_h100_usbh1_vbus>;
regulator-name = "USB_H1_VBUS";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
};
reg_usbotg_vbus: regulator-usb-otg-vbus {
compatible = "regulator-fixed";
enable-active-high;
gpio = <&gpio3 22 GPIO_ACTIVE_HIGH>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_h100_usbotg_vbus>;
regulator-name = "USB_OTG_VBUS";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
};
sound-sgtl5000 {
compatible = "fsl,imx-audio-sgtl5000";
model = "H100 on-board codec";
audio-codec = <&sgtl5000>;
audio-routing =
"MIC_IN", "Mic Jack",
"Mic Jack", "Mic Bias",
"Headphone Jack", "HP_OUT";
mux-ext-port = <5>;
mux-int-port = <1>;
ssi-controller = <&ssi1>;
};
};
&audmux {
status = "okay";
};
&hdmi {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_h100_hdmi>;
ddc-i2c-bus = <&i2c2>;
status = "okay";
};
&i2c1 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_h100_i2c1>;
status = "okay";
eeprom: 24c02@51 {
compatible = "microchip,24c02", "at24";
reg = <0x51>;
};
rtc: pcf8523@68 {
compatible = "nxp,pcf8523";
reg = <0x68>;
};
sgtl5000: sgtl5000@0a {
compatible = "fsl,sgtl5000";
reg = <0x0a>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_h100_sgtl5000>;
clocks = <&clks IMX6QDL_CLK_CKO>;
VDDA-supply = <&reg_3p3v>;
VDDIO-supply = <&reg_3p3v>;
};
tc358743: tc358743@0f {
compatible = "toshiba,tc358743";
reg = <0x0f>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_h100_tc358743>;
clocks = <&hdmi_osc>;
clock-names = "refclk";
reset-gpios = <&gpio6 15 GPIO_ACTIVE_LOW>;
/* IRQ has a wrong pull resistor which renders it useless */
port@0 {
tc358743_out: endpoint {
remote-endpoint = <&mipi_csi2_in>;
data-lanes = <1 2 3 4>;
clock-lanes = <0>;
clock-noncontinuous;
link-frequencies = /bits/ 64 <297000000>;
};
};
};
};
&i2c2 {
clock-frequency = <100000>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_h100_i2c2>;
status = "okay";
};
&iomuxc {
h100 {
pinctrl_h100_hdmi: h100-hdmi {
fsl,pins = <
MX6QDL_PAD_KEY_ROW2__HDMI_TX_CEC_LINE 0x1f8b0
>;
};
pinctrl_h100_i2c1: h100-i2c1 {
fsl,pins = <
MX6QDL_PAD_EIM_D21__I2C1_SCL 0x4001b8b1
MX6QDL_PAD_EIM_D28__I2C1_SDA 0x4001b8b1
>;
};
pinctrl_h100_i2c2: h100-i2c2 {
fsl,pins = <
MX6QDL_PAD_KEY_COL3__I2C2_SCL 0x4001b8b1
MX6QDL_PAD_KEY_ROW3__I2C2_SDA 0x4001b8b1
>;
};
pinctrl_h100_leds: pinctrl-h100-leds {
fsl,pins = <
MX6QDL_PAD_EIM_DA0__GPIO3_IO00 0x1b0b0
MX6QDL_PAD_EIM_EB1__GPIO2_IO29 0x1b0b0
MX6QDL_PAD_EIM_EB0__GPIO2_IO28 0x1b0b0
>;
};
pinctrl_h100_reg_hdmi: h100-reg-hdmi {
fsl,pins = <
MX6QDL_PAD_EIM_A18__GPIO2_IO20 0x1b0b0
>;
};
pinctrl_h100_reg_nvcc_sd2: h100-reg-nvcc-sd2 {
fsl,pins = <
MX6QDL_PAD_KEY_ROW1__GPIO4_IO09 0x1b0b0
>;
};
pinctrl_h100_sgtl5000: h100-sgtl5000 {
fsl,pins = <
MX6QDL_PAD_DISP0_DAT19__AUD5_RXD 0x130b0
MX6QDL_PAD_KEY_COL0__AUD5_TXC 0x130b0
MX6QDL_PAD_KEY_ROW0__AUD5_TXD 0x110b0
MX6QDL_PAD_KEY_COL1__AUD5_TXFS 0x130b0
MX6QDL_PAD_GPIO_5__CCM_CLKO1 0x130b0
>;
};
pinctrl_h100_tc358743: h100-tc358743 {
fsl,pins = <
MX6QDL_PAD_NANDF_CS2__GPIO6_IO15 0x1b0b0
>;
};
pinctrl_h100_uart2: h100-uart2 {
fsl,pins = <
MX6QDL_PAD_SD4_DAT4__UART2_RX_DATA 0x1b0b1
MX6QDL_PAD_SD4_DAT7__UART2_TX_DATA 0x1b0b1
>;
};
pinctrl_h100_usbh1_vbus: hummingboard-usbh1-vbus {
fsl,pins = <
MX6QDL_PAD_GPIO_0__GPIO1_IO00 0x1b0b0
>;
};
pinctrl_h100_usbotg_id: hummingboard-usbotg-id {
fsl,pins = <
MX6QDL_PAD_GPIO_1__USB_OTG_ID 0x13059
>;
};
pinctrl_h100_usbotg_vbus: hummingboard-usbotg-vbus {
fsl,pins = <
MX6QDL_PAD_EIM_D22__GPIO3_IO22 0x1b0b0
>;
};
pinctrl_h100_usdhc2: h100-usdhc2 {
fsl,pins = <
MX6QDL_PAD_GPIO_4__GPIO1_IO04 0x1f071
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 0x13059
>;
};
pinctrl_h100_usdhc2_100mhz: h100-usdhc2-100mhz {
fsl,pins = <
MX6QDL_PAD_GPIO_4__GPIO1_IO04 0x1f071
MX6QDL_PAD_SD2_CMD__SD2_CMD 0x170b9
MX6QDL_PAD_SD2_CLK__SD2_CLK 0x100b9
MX6QDL_PAD_SD2_DAT0__SD2_DATA0 0x170b9
MX6QDL_PAD_SD2_DAT1__SD2_DATA1 0x170b9
MX6QDL_PAD_SD2_DAT2__SD2_DATA2 0x170b9
MX6QDL_PAD_SD2_DAT3__SD2_DATA3 0x170b9
>;
};
pinctrl_h100_usdhc2_200mhz: h100-usdhc2-200mhz {
fsl,pins = <
MX6QDL_PAD_GPIO_4__GPIO1_IO04 0x1f071
MX6QDL_PAD_SD2_CMD__SD2_CMD 0x170f9
MX6QDL_PAD_SD2_CLK__SD2_CLK 0x100f9
MX6QDL_PAD_SD2_DAT0__SD2_DATA0 0x170f9
MX6QDL_PAD_SD2_DAT1__SD2_DATA1 0x170f9
MX6QDL_PAD_SD2_DAT2__SD2_DATA2 0x170f9
MX6QDL_PAD_SD2_DAT3__SD2_DATA3 0x170f9
>;
};
};
};
&mipi_csi {
status = "okay";
port@0 {
mipi_csi2_in: endpoint {
remote-endpoint = <&tc358743_out>;
data-lanes = <1 2 3 4>;
clock-lanes = <0>;
clock-noncontinuous;
link-frequencies = /bits/ 64 <297000000>;
};
};
};
&ssi1 {
status = "okay";
};
&uart2 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_h100_uart2>;
status = "okay";
};
&usbh1 {
disable-over-current;
vbus-supply = <&reg_usbh1_vbus>;
status = "okay";
};
&usbotg {
disable-over-current;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_h100_usbotg_id>;
vbus-supply = <&reg_usbotg_vbus>;
status = "okay";
};
&usdhc2 {
pinctrl-names = "default", "state_100mhz", "state_200mhz";
pinctrl-0 = <&pinctrl_h100_usdhc2>;
pinctrl-1 = <&pinctrl_h100_usdhc2_100mhz>;
pinctrl-2 = <&pinctrl_h100_usdhc2_200mhz>;
vmmc-supply = <&reg_3p3v>;
vqmmc-supply = <&reg_nvcc_sd2>;
cd-gpios = <&gpio1 4 GPIO_ACTIVE_LOW>;
status = "okay";
};
...@@ -191,7 +191,7 @@ rtc: ds1307@68 { ...@@ -191,7 +191,7 @@ rtc: ds1307@68 {
&pcie { &pcie {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_pcie>; pinctrl-0 = <&pinctrl_pcie>;
reset-gpio = <&gpio7 12 GPIO_ACTIVE_HIGH>; reset-gpio = <&gpio7 12 GPIO_ACTIVE_LOW>;
status = "okay"; status = "okay";
}; };
......
/*
* Copyright 2013 CompuLab Ltd.
* Copyright 2016 Christopher Spinrath
*
* Based on the devicetree distributed with the vendor kernel for the
* Utilite Pro:
* Copyright 2013 CompuLab Ltd.
* Author: Valentin Raevsky <valentin@compulab.co.il>
*
* This file is dual-licensed: you can use it either under the terms
* of the GPL or the X11 license, at your option. Note that this dual
* licensing only applies to this file, and not this project as a
* whole.
*
* a) This file is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This file is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* Or, alternatively,
*
* b) Permission is hereby granted, free of charge, to any person
* obtaining a copy of this software and associated documentation
* files (the "Software"), to deal in the Software without
* restriction, including without limitation the rights to use,
* copy, modify, merge, publish, distribute, sublicense, and/or
* sell copies of the Software, and to permit persons to whom the
* Software is furnished to do so, subject to the following
* conditions:
*
* The above copyright notice and this permission notice shall be
* included in all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*/
#include <dt-bindings/input/input.h>
#include "imx6q-cm-fx6.dts"
/ {
model = "CompuLab Utilite Pro";
compatible = "compulab,utilite-pro", "compulab,cm-fx6", "fsl,imx6q";
aliases {
ethernet1 = &eth1;
rtc0 = &em3027;
rtc1 = &snvs_rtc;
};
gpio-keys {
compatible = "gpio-keys";
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_gpio_keys>;
power {
label = "Power Button";
gpios = <&gpio1 29 GPIO_ACTIVE_LOW>;
linux,code = <KEY_POWER>;
gpio-key,wakeup;
};
};
};
&hdmi {
ddc-i2c-bus = <&i2c2>;
status = "okay";
};
&i2c1 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_i2c1>;
status = "okay";
eeprom@50 {
compatible = "at24,24c02";
reg = <0x50>;
pagesize = <16>;
};
em3027: rtc@56 {
compatible = "emmicro,em3027";
reg = <0x56>;
};
};
&i2c2 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_i2c2>;
status = "okay";
};
&iomuxc {
pinctrl_gpio_keys: gpio_keysgrp {
fsl,pins = <
MX6QDL_PAD_ENET_TXD1__GPIO1_IO29 0x1b0b0
>;
};
pinctrl_i2c1: i2c1grp {
fsl,pins = <
MX6QDL_PAD_EIM_D21__I2C1_SCL 0x4001b8b1
MX6QDL_PAD_EIM_D28__I2C1_SDA 0x4001b8b1
>;
};
pinctrl_i2c2: i2c2grp {
fsl,pins = <
MX6QDL_PAD_KEY_COL3__I2C2_SCL 0x4001b8b1
MX6QDL_PAD_KEY_ROW3__I2C2_SDA 0x4001b8b1
>;
};
pinctrl_uart2: uart2grp {
fsl,pins = <
MX6QDL_PAD_GPIO_7__UART2_TX_DATA 0x1b0b1
MX6QDL_PAD_GPIO_8__UART2_RX_DATA 0x1b0b1
MX6QDL_PAD_SD4_DAT5__UART2_RTS_B 0x1b0b1
MX6QDL_PAD_SD4_DAT6__UART2_CTS_B 0x1b0b1
>;
};
pinctrl_usdhc3: usdhc3grp {
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
>;
};
pinctrl_usdhc3_100mhz: usdhc3grp-100mhz {
fsl,pins = <
MX6QDL_PAD_SD3_CMD__SD3_CMD 0x170B9
MX6QDL_PAD_SD3_CLK__SD3_CLK 0x100B9
MX6QDL_PAD_SD3_DAT0__SD3_DATA0 0x170B9
MX6QDL_PAD_SD3_DAT1__SD3_DATA1 0x170B9
MX6QDL_PAD_SD3_DAT2__SD3_DATA2 0x170B9
MX6QDL_PAD_SD3_DAT3__SD3_DATA3 0x170B9
>;
};
pinctrl_usdhc3_200mhz: usdhc3grp-200mhz {
fsl,pins = <
MX6QDL_PAD_SD3_CMD__SD3_CMD 0x170F9
MX6QDL_PAD_SD3_CLK__SD3_CLK 0x100F9
MX6QDL_PAD_SD3_DAT0__SD3_DATA0 0x170F9
MX6QDL_PAD_SD3_DAT1__SD3_DATA1 0x170F9
MX6QDL_PAD_SD3_DAT2__SD3_DATA2 0x170F9
MX6QDL_PAD_SD3_DAT3__SD3_DATA3 0x170F9
>;
};
};
&pcie {
pcie@0,0 {
reg = <0x000000 0 0 0 0>;
#address-cells = <3>;
#size-cells = <2>;
/* non-removable i211 ethernet card */
eth1: intel,i211@pcie0,0 {
reg = <0x010000 0 0 0 0>;
};
};
};
&uart2 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart2>;
uart-has-rtscts;
status = "okay";
};
&usdhc3 {
pinctrl-names = "default", "state_100mhz", "state_200mhz";
pinctrl-0 = <&pinctrl_usdhc3>;
pinctrl-1 = <&pinctrl_usdhc3_100mhz>;
pinctrl-2 = <&pinctrl_usdhc3_200mhz>;
no-1-8-v;
broken-cd;
keep-power-in-suspend;
status = "okay";
};
...@@ -423,7 +423,7 @@ &uart1 { ...@@ -423,7 +423,7 @@ &uart1 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart1_dte &pinctrl_uart1_ctrl>; pinctrl-0 = <&pinctrl_uart1_dte &pinctrl_uart1_ctrl>;
fsl,dte-mode; fsl,dte-mode;
fsl,uart-has-rtscts; uart-has-rtscts;
status = "disabled"; status = "disabled";
}; };
...@@ -431,7 +431,7 @@ &uart2 { ...@@ -431,7 +431,7 @@ &uart2 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart2_dte>; pinctrl-0 = <&pinctrl_uart2_dte>;
fsl,dte-mode; fsl,dte-mode;
fsl,uart-has-rtscts; uart-has-rtscts;
status = "disabled"; status = "disabled";
}; };
......
...@@ -254,7 +254,7 @@ &uart1 { ...@@ -254,7 +254,7 @@ &uart1 {
&uart3 { &uart3 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart3 &pinctrl_gsm>; pinctrl-0 = <&pinctrl_uart3 &pinctrl_gsm>;
fsl,uart-has-rtscts; uart-has-rtscts;
status = "okay"; status = "okay";
}; };
......
...@@ -143,14 +143,14 @@ &uart2 { ...@@ -143,14 +143,14 @@ &uart2 {
&uart4 { &uart4 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart4>; pinctrl-0 = <&pinctrl_uart4>;
fsl,uart-has-rtscts; uart-has-rtscts;
status = "okay"; status = "okay";
}; };
&uart5 { &uart5 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart5>; pinctrl-0 = <&pinctrl_uart5>;
fsl,uart-has-rtscts; uart-has-rtscts;
status = "okay"; status = "okay";
}; };
......
...@@ -351,7 +351,7 @@ &pwm1 { ...@@ -351,7 +351,7 @@ &pwm1 {
&uart1 { &uart1 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart1>; pinctrl-0 = <&pinctrl_uart1>;
fsl,uart-has-rtscts; uart-has-rtscts;
status = "okay"; status = "okay";
}; };
...@@ -364,7 +364,7 @@ &uart2 { ...@@ -364,7 +364,7 @@ &uart2 {
&uart3 { &uart3 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart3>; pinctrl-0 = <&pinctrl_uart3>;
fsl,uart-has-rtscts; uart-has-rtscts;
status = "okay"; status = "okay";
}; };
......
...@@ -143,7 +143,7 @@ &uart1 { ...@@ -143,7 +143,7 @@ &uart1 {
&uart4 { &uart4 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_microsom_brcm_bt &pinctrl_microsom_uart4>; pinctrl-0 = <&pinctrl_microsom_brcm_bt &pinctrl_microsom_uart4>;
fsl,uart-has-rtscts; uart-has-rtscts;
status = "okay"; status = "okay";
}; };
......
...@@ -250,6 +250,7 @@ &fec { ...@@ -250,6 +250,7 @@ &fec {
txd3-skew-ps = <0>; txd3-skew-ps = <0>;
interrupts-extended = <&gpio1 6 IRQ_TYPE_LEVEL_HIGH>, interrupts-extended = <&gpio1 6 IRQ_TYPE_LEVEL_HIGH>,
<&intc 0 119 IRQ_TYPE_LEVEL_HIGH>; <&intc 0 119 IRQ_TYPE_LEVEL_HIGH>;
fsl,err006687-workaround-present;
status = "okay"; status = "okay";
}; };
...@@ -591,7 +592,7 @@ &uart2 { ...@@ -591,7 +592,7 @@ &uart2 {
&uart3 { &uart3 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart3>; pinctrl-0 = <&pinctrl_uart3>;
fsl,uart-has-rtscts; uart-has-rtscts;
status = "okay"; status = "okay";
}; };
......
...@@ -385,6 +385,7 @@ &fec { ...@@ -385,6 +385,7 @@ &fec {
txd3-skew-ps = <0>; txd3-skew-ps = <0>;
interrupts-extended = <&gpio1 6 IRQ_TYPE_LEVEL_HIGH>, interrupts-extended = <&gpio1 6 IRQ_TYPE_LEVEL_HIGH>,
<&intc 0 119 IRQ_TYPE_LEVEL_HIGH>; <&intc 0 119 IRQ_TYPE_LEVEL_HIGH>;
fsl,err006687-workaround-present;
status = "okay"; status = "okay";
}; };
......
...@@ -287,6 +287,7 @@ &fec { ...@@ -287,6 +287,7 @@ &fec {
txd3-skew-ps = <0>; txd3-skew-ps = <0>;
interrupts-extended = <&gpio1 6 IRQ_TYPE_LEVEL_HIGH>, interrupts-extended = <&gpio1 6 IRQ_TYPE_LEVEL_HIGH>,
<&intc 0 119 IRQ_TYPE_LEVEL_HIGH>; <&intc 0 119 IRQ_TYPE_LEVEL_HIGH>;
fsl,err006687-workaround-present;
status = "okay"; status = "okay";
}; };
......
...@@ -155,6 +155,7 @@ &fec { ...@@ -155,6 +155,7 @@ &fec {
phy-mode = "rgmii"; phy-mode = "rgmii";
interrupts-extended = <&gpio1 6 IRQ_TYPE_LEVEL_HIGH>, interrupts-extended = <&gpio1 6 IRQ_TYPE_LEVEL_HIGH>,
<&intc 0 119 IRQ_TYPE_LEVEL_HIGH>; <&intc 0 119 IRQ_TYPE_LEVEL_HIGH>;
fsl,err006687-workaround-present;
status = "okay"; status = "okay";
}; };
......
...@@ -273,6 +273,7 @@ &fec { ...@@ -273,6 +273,7 @@ &fec {
txd3-skew-ps = <0>; txd3-skew-ps = <0>;
interrupts-extended = <&gpio1 6 IRQ_TYPE_LEVEL_HIGH>, interrupts-extended = <&gpio1 6 IRQ_TYPE_LEVEL_HIGH>,
<&intc 0 119 IRQ_TYPE_LEVEL_HIGH>; <&intc 0 119 IRQ_TYPE_LEVEL_HIGH>;
fsl,err006687-workaround-present;
status = "okay"; status = "okay";
}; };
......
...@@ -501,6 +501,12 @@ MX6QDL_PAD_SD4_DAT6__SD4_DATA6 0x17059 ...@@ -501,6 +501,12 @@ MX6QDL_PAD_SD4_DAT6__SD4_DATA6 0x17059
MX6QDL_PAD_SD4_DAT7__SD4_DATA7 0x17059 MX6QDL_PAD_SD4_DAT7__SD4_DATA7 0x17059
>; >;
}; };
pinctrl_wdog: wdoggrp {
fsl,pins = <
MX6QDL_PAD_GPIO_1__WDOG2_B 0x1b0b0
>;
};
}; };
gpio_leds { gpio_leds {
...@@ -533,7 +539,7 @@ lvds0_out: endpoint { ...@@ -533,7 +539,7 @@ lvds0_out: endpoint {
&pcie { &pcie {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_pcie>; pinctrl-0 = <&pinctrl_pcie>;
reset-gpio = <&gpio7 12 0>; reset-gpio = <&gpio7 12 GPIO_ACTIVE_LOW>;
status = "okay"; status = "okay";
}; };
...@@ -596,3 +602,14 @@ &usdhc4 { ...@@ -596,3 +602,14 @@ &usdhc4 {
no-1-8-v; no-1-8-v;
status = "okay"; status = "okay";
}; };
&wdog1 {
status = "disabled";
};
&wdog2 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_wdog>;
fsl,ext-reset-output;
status = "okay";
};
...@@ -689,21 +689,21 @@ &ssi1 { ...@@ -689,21 +689,21 @@ &ssi1 {
&uart1 { &uart1 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart1 &pinctrl_uart1_rtscts>; pinctrl-0 = <&pinctrl_uart1 &pinctrl_uart1_rtscts>;
fsl,uart-has-rtscts; uart-has-rtscts;
status = "okay"; status = "okay";
}; };
&uart2 { &uart2 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart2 &pinctrl_uart2_rtscts>; pinctrl-0 = <&pinctrl_uart2 &pinctrl_uart2_rtscts>;
fsl,uart-has-rtscts; uart-has-rtscts;
status = "okay"; status = "okay";
}; };
&uart3 { &uart3 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart3 &pinctrl_uart3_rtscts>; pinctrl-0 = <&pinctrl_uart3 &pinctrl_uart3_rtscts>;
fsl,uart-has-rtscts; uart-has-rtscts;
status = "okay"; status = "okay";
}; };
......
...@@ -211,6 +211,7 @@ &fec { ...@@ -211,6 +211,7 @@ &fec {
phy-reset-gpios = <&gpio3 29 0>; phy-reset-gpios = <&gpio3 29 0>;
interrupts-extended = <&gpio1 6 IRQ_TYPE_LEVEL_HIGH>, interrupts-extended = <&gpio1 6 IRQ_TYPE_LEVEL_HIGH>,
<&intc 0 119 IRQ_TYPE_LEVEL_HIGH>; <&intc 0 119 IRQ_TYPE_LEVEL_HIGH>;
fsl,err006687-workaround-present;
status = "okay"; status = "okay";
}; };
...@@ -233,7 +234,7 @@ &uart1 { ...@@ -233,7 +234,7 @@ &uart1 {
&uart3 { &uart3 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart3>; pinctrl-0 = <&pinctrl_uart3>;
fsl,uart-has-rtscts; uart-has-rtscts;
status = "okay"; status = "okay";
}; };
......
...@@ -185,6 +185,7 @@ L2: l2-cache@00a02000 { ...@@ -185,6 +185,7 @@ L2: l2-cache@00a02000 {
cache-level = <2>; cache-level = <2>;
arm,tag-latency = <4 2 3>; arm,tag-latency = <4 2 3>;
arm,data-latency = <4 2 3>; arm,data-latency = <4 2 3>;
arm,shared-override;
}; };
pcie: pcie@0x01000000 { pcie: pcie@0x01000000 {
...@@ -1100,6 +1101,7 @@ weim: weim@021b8000 { ...@@ -1100,6 +1101,7 @@ weim: weim@021b8000 {
ocotp: ocotp@021bc000 { ocotp: ocotp@021bc000 {
compatible = "fsl,imx6q-ocotp", "syscon"; compatible = "fsl,imx6q-ocotp", "syscon";
reg = <0x021bc000 0x4000>; reg = <0x021bc000 0x4000>;
clocks = <&clks IMX6QDL_CLK_IIM>;
}; };
tzasc@021d0000 { /* TZASC1 */ tzasc@021d0000 { /* TZASC1 */
...@@ -1255,7 +1257,7 @@ ipu1_di1: port@3 { ...@@ -1255,7 +1257,7 @@ ipu1_di1: port@3 {
#size-cells = <0>; #size-cells = <0>;
reg = <3>; reg = <3>;
ipu1_di0_disp1: disp1-endpoint { ipu1_di1_disp1: disp1-endpoint {
}; };
ipu1_di1_hdmi: hdmi-endpoint { ipu1_di1_hdmi: hdmi-endpoint {
......
...@@ -84,7 +84,7 @@ &uart3 { ...@@ -84,7 +84,7 @@ &uart3 {
&uart5 { &uart5 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart5>; pinctrl-0 = <&pinctrl_uart5>;
fsl,uart-has-rtscts; uart-has-rtscts;
status = "okay"; status = "okay";
}; };
......
...@@ -461,7 +461,7 @@ anatop: anatop@020c8000 { ...@@ -461,7 +461,7 @@ anatop: anatop@020c8000 {
<0 54 IRQ_TYPE_LEVEL_HIGH>, <0 54 IRQ_TYPE_LEVEL_HIGH>,
<0 127 IRQ_TYPE_LEVEL_HIGH>; <0 127 IRQ_TYPE_LEVEL_HIGH>;
regulator-1p1@110 { regulator-1p1 {
compatible = "fsl,anatop-regulator"; compatible = "fsl,anatop-regulator";
regulator-name = "vdd1p1"; regulator-name = "vdd1p1";
regulator-min-microvolt = <800000>; regulator-min-microvolt = <800000>;
...@@ -475,7 +475,7 @@ regulator-1p1@110 { ...@@ -475,7 +475,7 @@ regulator-1p1@110 {
anatop-max-voltage = <1375000>; anatop-max-voltage = <1375000>;
}; };
regulator-3p0@120 { regulator-3p0 {
compatible = "fsl,anatop-regulator"; compatible = "fsl,anatop-regulator";
regulator-name = "vdd3p0"; regulator-name = "vdd3p0";
regulator-min-microvolt = <2800000>; regulator-min-microvolt = <2800000>;
...@@ -489,7 +489,7 @@ regulator-3p0@120 { ...@@ -489,7 +489,7 @@ regulator-3p0@120 {
anatop-max-voltage = <3400000>; anatop-max-voltage = <3400000>;
}; };
regulator-2p5@130 { regulator-2p5 {
compatible = "fsl,anatop-regulator"; compatible = "fsl,anatop-regulator";
regulator-name = "vdd2p5"; regulator-name = "vdd2p5";
regulator-min-microvolt = <2100000>; regulator-min-microvolt = <2100000>;
...@@ -503,7 +503,7 @@ regulator-2p5@130 { ...@@ -503,7 +503,7 @@ regulator-2p5@130 {
anatop-max-voltage = <2850000>; anatop-max-voltage = <2850000>;
}; };
reg_arm: regulator-vddcore@140 { reg_arm: regulator-vddcore {
compatible = "fsl,anatop-regulator"; compatible = "fsl,anatop-regulator";
regulator-name = "vddarm"; regulator-name = "vddarm";
regulator-min-microvolt = <725000>; regulator-min-microvolt = <725000>;
...@@ -520,7 +520,7 @@ reg_arm: regulator-vddcore@140 { ...@@ -520,7 +520,7 @@ reg_arm: regulator-vddcore@140 {
anatop-max-voltage = <1450000>; anatop-max-voltage = <1450000>;
}; };
reg_pu: regulator-vddpu@140 { reg_pu: regulator-vddpu {
compatible = "fsl,anatop-regulator"; compatible = "fsl,anatop-regulator";
regulator-name = "vddpu"; regulator-name = "vddpu";
regulator-min-microvolt = <725000>; regulator-min-microvolt = <725000>;
...@@ -537,7 +537,7 @@ reg_pu: regulator-vddpu@140 { ...@@ -537,7 +537,7 @@ reg_pu: regulator-vddpu@140 {
anatop-max-voltage = <1450000>; anatop-max-voltage = <1450000>;
}; };
reg_soc: regulator-vddsoc@140 { reg_soc: regulator-vddsoc {
compatible = "fsl,anatop-regulator"; compatible = "fsl,anatop-regulator";
regulator-name = "vddsoc"; regulator-name = "vddsoc";
regulator-min-microvolt = <725000>; regulator-min-microvolt = <725000>;
...@@ -853,6 +853,7 @@ weim: weim@021b8000 { ...@@ -853,6 +853,7 @@ weim: weim@021b8000 {
ocotp: ocotp@021bc000 { ocotp: ocotp@021bc000 {
compatible = "fsl,imx6sl-ocotp", "syscon"; compatible = "fsl,imx6sl-ocotp", "syscon";
reg = <0x021bc000 0x4000>; reg = <0x021bc000 0x4000>;
clocks = <&clks IMX6SL_CLK_OCOTP>;
}; };
audmux: audmux@021d8000 { audmux: audmux@021d8000 {
......
...@@ -326,7 +326,7 @@ &uart2 { ...@@ -326,7 +326,7 @@ &uart2 {
&uart3 { &uart3 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart3>; pinctrl-0 = <&pinctrl_uart3>;
fsl,uart-has-rtscts; uart-has-rtscts;
status = "okay"; status = "okay";
}; };
......
...@@ -273,7 +273,7 @@ &uart1 { ...@@ -273,7 +273,7 @@ &uart1 {
&uart5 { /* for bluetooth */ &uart5 { /* for bluetooth */
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart5>; pinctrl-0 = <&pinctrl_uart5>;
fsl,uart-has-rtscts; uart-has-rtscts;
status = "okay"; status = "okay";
}; };
...@@ -322,6 +322,12 @@ &usdhc4 { ...@@ -322,6 +322,12 @@ &usdhc4 {
status = "okay"; status = "okay";
}; };
&wdog1 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_wdog>;
fsl,ext-reset-output;
};
&iomuxc { &iomuxc {
imx6x-sdb { imx6x-sdb {
pinctrl_audmux: audmuxgrp { pinctrl_audmux: audmuxgrp {
...@@ -588,5 +594,11 @@ MX6SX_PAD_SD4_DATA7__GPIO6_IO_21 0x17059 /* CD */ ...@@ -588,5 +594,11 @@ MX6SX_PAD_SD4_DATA7__GPIO6_IO_21 0x17059 /* CD */
MX6SX_PAD_SD4_DATA6__GPIO6_IO_20 0x17059 /* WP */ MX6SX_PAD_SD4_DATA6__GPIO6_IO_20 0x17059 /* WP */
>; >;
}; };
pinctrl_wdog: wdoggrp {
fsl,pins = <
MX6SX_PAD_GPIO1_IO13__WDOG1_WDOG_ANY 0x30b0
>;
};
}; };
}; };
...@@ -547,7 +547,7 @@ anatop: anatop@020c8000 { ...@@ -547,7 +547,7 @@ anatop: anatop@020c8000 {
<GIC_SPI 54 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 54 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 127 IRQ_TYPE_LEVEL_HIGH>; <GIC_SPI 127 IRQ_TYPE_LEVEL_HIGH>;
regulator-1p1@110 { regulator-1p1 {
compatible = "fsl,anatop-regulator"; compatible = "fsl,anatop-regulator";
regulator-name = "vdd1p1"; regulator-name = "vdd1p1";
regulator-min-microvolt = <800000>; regulator-min-microvolt = <800000>;
...@@ -561,7 +561,7 @@ regulator-1p1@110 { ...@@ -561,7 +561,7 @@ regulator-1p1@110 {
anatop-max-voltage = <1375000>; anatop-max-voltage = <1375000>;
}; };
regulator-3p0@120 { regulator-3p0 {
compatible = "fsl,anatop-regulator"; compatible = "fsl,anatop-regulator";
regulator-name = "vdd3p0"; regulator-name = "vdd3p0";
regulator-min-microvolt = <2800000>; regulator-min-microvolt = <2800000>;
...@@ -575,7 +575,7 @@ regulator-3p0@120 { ...@@ -575,7 +575,7 @@ regulator-3p0@120 {
anatop-max-voltage = <3400000>; anatop-max-voltage = <3400000>;
}; };
regulator-2p5@130 { regulator-2p5 {
compatible = "fsl,anatop-regulator"; compatible = "fsl,anatop-regulator";
regulator-name = "vdd2p5"; regulator-name = "vdd2p5";
regulator-min-microvolt = <2100000>; regulator-min-microvolt = <2100000>;
...@@ -589,7 +589,7 @@ regulator-2p5@130 { ...@@ -589,7 +589,7 @@ regulator-2p5@130 {
anatop-max-voltage = <2875000>; anatop-max-voltage = <2875000>;
}; };
reg_arm: regulator-vddcore@140 { reg_arm: regulator-vddcore {
compatible = "fsl,anatop-regulator"; compatible = "fsl,anatop-regulator";
regulator-name = "vddarm"; regulator-name = "vddarm";
regulator-min-microvolt = <725000>; regulator-min-microvolt = <725000>;
...@@ -606,7 +606,7 @@ reg_arm: regulator-vddcore@140 { ...@@ -606,7 +606,7 @@ reg_arm: regulator-vddcore@140 {
anatop-max-voltage = <1450000>; anatop-max-voltage = <1450000>;
}; };
reg_pcie: regulator-vddpcie@140 { reg_pcie: regulator-vddpcie {
compatible = "fsl,anatop-regulator"; compatible = "fsl,anatop-regulator";
regulator-name = "vddpcie"; regulator-name = "vddpcie";
regulator-min-microvolt = <725000>; regulator-min-microvolt = <725000>;
...@@ -622,7 +622,7 @@ reg_pcie: regulator-vddpcie@140 { ...@@ -622,7 +622,7 @@ reg_pcie: regulator-vddpcie@140 {
anatop-max-voltage = <1450000>; anatop-max-voltage = <1450000>;
}; };
reg_soc: regulator-vddsoc@140 { reg_soc: regulator-vddsoc {
compatible = "fsl,anatop-regulator"; compatible = "fsl,anatop-regulator";
regulator-name = "vddsoc"; regulator-name = "vddsoc";
regulator-min-microvolt = <725000>; regulator-min-microvolt = <725000>;
......
...@@ -22,6 +22,14 @@ memory { ...@@ -22,6 +22,14 @@ memory {
reg = <0x80000000 0x20000000>; reg = <0x80000000 0x20000000>;
}; };
backlight {
compatible = "pwm-backlight";
pwms = <&pwm1 0 5000000>;
brightness-levels = <0 4 8 16 32 64 128 255>;
default-brightness-level = <6>;
status = "okay";
};
regulators { regulators {
compatible = "simple-bus"; compatible = "simple-bus";
#address-cells = <1>; #address-cells = <1>;
...@@ -125,6 +133,46 @@ ethphy1: ethernet-phy@1 { ...@@ -125,6 +133,46 @@ ethphy1: ethernet-phy@1 {
}; };
}; };
&lcdif {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_lcdif_dat
&pinctrl_lcdif_ctrl>;
display = <&display0>;
status = "okay";
display0: display {
bits-per-pixel = <16>;
bus-width = <24>;
display-timings {
native-mode = <&timing0>;
timing0: timing0 {
clock-frequency = <9200000>;
hactive = <480>;
vactive = <272>;
hfront-porch = <8>;
hback-porch = <4>;
hsync-len = <41>;
vback-porch = <2>;
vfront-porch = <4>;
vsync-len = <10>;
hsync-active = <0>;
vsync-active = <0>;
de-active = <1>;
pixelclk-active = <0>;
};
};
};
};
&pwm1 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_pwm1>;
status = "okay";
};
&qspi { &qspi {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_qspi>; pinctrl-0 = <&pinctrl_qspi>;
...@@ -146,6 +194,7 @@ &sai2 { ...@@ -146,6 +194,7 @@ &sai2 {
<&clks IMX6UL_CLK_SAI2>; <&clks IMX6UL_CLK_SAI2>;
assigned-clock-parents = <&clks IMX6UL_CLK_PLL4_AUDIO_DIV>; assigned-clock-parents = <&clks IMX6UL_CLK_PLL4_AUDIO_DIV>;
assigned-clock-rates = <0>, <12288000>; assigned-clock-rates = <0>, <12288000>;
fsl,sai-mclk-direction-output;
status = "okay"; status = "okay";
}; };
...@@ -171,7 +220,7 @@ &uart1 { ...@@ -171,7 +220,7 @@ &uart1 {
&uart2 { &uart2 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart2>; pinctrl-0 = <&pinctrl_uart2>;
fsl,uart-has-rtscts; uart-has-rtscts;
status = "okay"; status = "okay";
}; };
...@@ -207,6 +256,12 @@ &usdhc2 { ...@@ -207,6 +256,12 @@ &usdhc2 {
status = "okay"; status = "okay";
}; };
&wdog1 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_wdog>;
fsl,ext-reset-output;
};
&iomuxc { &iomuxc {
pinctrl-names = "default"; pinctrl-names = "default";
...@@ -435,4 +490,10 @@ MX6UL_PAD_NAND_DATA02__USDHC2_DATA2 0x17059 ...@@ -435,4 +490,10 @@ MX6UL_PAD_NAND_DATA02__USDHC2_DATA2 0x17059
MX6UL_PAD_NAND_DATA03__USDHC2_DATA3 0x17059 MX6UL_PAD_NAND_DATA03__USDHC2_DATA3 0x17059
>; >;
}; };
pinctrl_wdog: wdoggrp {
fsl,pins = <
MX6UL_PAD_LCD_RESET__WDOG1_WDOG_ANY 0x30b0
>;
};
}; };
...@@ -151,8 +151,8 @@ &fec2 { ...@@ -151,8 +151,8 @@ &fec2 {
phy-mode = "rmii"; phy-mode = "rmii";
phy-handle = <&ethphy1>; phy-handle = <&ethphy1>;
status = "okay"; status = "okay";
phy-reset-gpios = <&gpio2 15 GPIO_ACTIVE_LOW>; phy-reset-gpios = <&gpio1 28 GPIO_ACTIVE_LOW>;
phy-reset-duration = <11>; phy-reset-duration = <1>;
mdio { mdio {
#address-cells = <1>; #address-cells = <1>;
...@@ -286,7 +286,7 @@ &sai1 { ...@@ -286,7 +286,7 @@ &sai1 {
&uart3 { &uart3 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart3>; pinctrl-0 = <&pinctrl_uart3>;
fsl,uart-has-rtscts; uart-has-rtscts;
status = "okay"; status = "okay";
}; };
......
...@@ -146,12 +146,12 @@ &usdhc1 { ...@@ -146,12 +146,12 @@ &usdhc1 {
&uart1 { &uart1 {
pinctrl-0 = <&pinctrl_uart1>; pinctrl-0 = <&pinctrl_uart1>;
/delete-property/ fsl,uart-has-rtscts; /delete-property/ uart-has-rtscts;
}; };
&uart2 { &uart2 {
pinctrl-0 = <&pinctrl_uart2>; pinctrl-0 = <&pinctrl_uart2>;
/delete-property/ fsl,uart-has-rtscts; /delete-property/ uart-has-rtscts;
status = "okay"; status = "okay";
}; };
......
...@@ -563,21 +563,21 @@ &sai2 { ...@@ -563,21 +563,21 @@ &sai2 {
&uart1 { &uart1 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart1 &pinctrl_uart1_rtscts>; pinctrl-0 = <&pinctrl_uart1 &pinctrl_uart1_rtscts>;
fsl,uart-has-rtscts; uart-has-rtscts;
status = "okay"; status = "okay";
}; };
&uart2 { &uart2 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart2 &pinctrl_uart2_rtscts>; pinctrl-0 = <&pinctrl_uart2 &pinctrl_uart2_rtscts>;
fsl,uart-has-rtscts; uart-has-rtscts;
status = "okay"; status = "okay";
}; };
&uart5 { &uart5 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart5 &pinctrl_uart5_rtscts>; pinctrl-0 = <&pinctrl_uart5 &pinctrl_uart5_rtscts>;
fsl,uart-has-rtscts; uart-has-rtscts;
status = "okay"; status = "okay";
}; };
......
...@@ -36,6 +36,9 @@ aliases { ...@@ -36,6 +36,9 @@ aliases {
serial5 = &uart6; serial5 = &uart6;
serial6 = &uart7; serial6 = &uart7;
serial7 = &uart8; serial7 = &uart8;
sai1 = &sai1;
sai2 = &sai2;
sai3 = &sai3;
spi0 = &ecspi1; spi0 = &ecspi1;
spi1 = &ecspi2; spi1 = &ecspi2;
spi2 = &ecspi3; spi2 = &ecspi3;
...@@ -512,7 +515,7 @@ anatop: anatop@020c8000 { ...@@ -512,7 +515,7 @@ anatop: anatop@020c8000 {
<GIC_SPI 54 IRQ_TYPE_LEVEL_HIGH>, <GIC_SPI 54 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 127 IRQ_TYPE_LEVEL_HIGH>; <GIC_SPI 127 IRQ_TYPE_LEVEL_HIGH>;
reg_3p0: regulator-3p0@120 { reg_3p0: regulator-3p0 {
compatible = "fsl,anatop-regulator"; compatible = "fsl,anatop-regulator";
regulator-name = "vdd3p0"; regulator-name = "vdd3p0";
regulator-min-microvolt = <2625000>; regulator-min-microvolt = <2625000>;
...@@ -526,7 +529,7 @@ reg_3p0: regulator-3p0@120 { ...@@ -526,7 +529,7 @@ reg_3p0: regulator-3p0@120 {
anatop-enable-bit = <0>; anatop-enable-bit = <0>;
}; };
reg_arm: regulator-vddcore@140 { reg_arm: regulator-vddcore {
compatible = "fsl,anatop-regulator"; compatible = "fsl,anatop-regulator";
regulator-name = "cpu"; regulator-name = "cpu";
regulator-min-microvolt = <725000>; regulator-min-microvolt = <725000>;
...@@ -543,7 +546,7 @@ reg_arm: regulator-vddcore@140 { ...@@ -543,7 +546,7 @@ reg_arm: regulator-vddcore@140 {
anatop-max-voltage = <1450000>; anatop-max-voltage = <1450000>;
}; };
reg_soc: regulator-vddsoc@140 { reg_soc: regulator-vddsoc {
compatible = "fsl,anatop-regulator"; compatible = "fsl,anatop-regulator";
regulator-name = "vddsoc"; regulator-name = "vddsoc";
regulator-min-microvolt = <725000>; regulator-min-microvolt = <725000>;
......
/*
* Copyright 2016 Toradex AG
*
* This file is dual-licensed: you can use it either under the terms
* of the GPL or the X11 license, at your option. Note that this dual
* licensing only applies to this file, and not this project as a
* whole.
*
* a) This file is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This file is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* Or, alternatively,
*
* b) Permission is hereby granted, free of charge, to any person
* obtaining a copy of this software and associated documentation
* files (the "Software"), to deal in the Software without
* restriction, including without limitation the rights to use,
* copy, modify, merge, publish, distribute, sublicense, and/or
* sell copies of the Software, and to permit persons to whom the
* Software is furnished to do so, subject to the following
* conditions:
*
* The above copyright notice and this permission notice shall be
* included in all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*/
/ {
chosen {
stdout-path = "serial0:115200n8";
};
};
&bl {
brightness-levels = <0 4 8 16 32 64 128 255>;
default-brightness-level = <6>;
status = "okay";
};
&adc1 {
status = "okay";
};
&adc2 {
status = "okay";
};
&fec1 {
status = "okay";
};
&i2c4 {
status = "okay";
/* M41T0M6 real time clock on carrier board */
rtc: m41t0m6@68 {
compatible = "st,m41t00";
reg = <0x68>;
};
};
&lcdif {
display = <&display0>;
status = "okay";
display0: lcd-display {
bits-per-pixel = <16>;
bus-width = <18>;
display-timings {
native-mode = <&timing_vga>;
/* Standard VGA timing */
timing_vga: 640x480 {
clock-frequency = <25175000>;
hactive = <640>;
vactive = <480>;
hback-porch = <40>;
hfront-porch = <24>;
vback-porch = <32>;
vfront-porch = <11>;
hsync-len = <96>;
vsync-len = <2>;
de-active = <1>;
hsync-active = <0>;
vsync-active = <0>;
pixelclk-active = <0>;
};
};
};
};
&pwm1 {
status = "okay";
};
&pwm2 {
status = "okay";
};
&pwm3 {
status = "okay";
};
&pwm4 {
status = "okay";
};
&uart1 {
status = "okay";
};
&uart2 {
status = "okay";
};
&uart3 {
status = "okay";
};
&usbotg1 {
status = "okay";
};
&usdhc1 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_usdhc1 &pinctrl_cd_usdhc1>;
no-1-8-v;
cd-gpios = <&gpio1 0 GPIO_ACTIVE_LOW>;
keep-power-in-suspend;
wakeup-source;
status = "okay";
};
This diff is collapsed.
...@@ -12,7 +12,6 @@ ...@@ -12,7 +12,6 @@
/dts-v1/; /dts-v1/;
#include <dt-bindings/input/input.h>
#include "imx7d.dtsi" #include "imx7d.dtsi"
/ { / {
......
/*
* Copyright 2016 Toradex AG
*
* This file is dual-licensed: you can use it either under the terms
* of the GPL or the X11 license, at your option. Note that this dual
* licensing only applies to this file, and not this project as a
* whole.
*
* a) This file is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This file is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* Or, alternatively,
*
* b) Permission is hereby granted, free of charge, to any person
* obtaining a copy of this software and associated documentation
* files (the "Software"), to deal in the Software without
* restriction, including without limitation the rights to use,
* copy, modify, merge, publish, distribute, sublicense, and/or
* sell copies of the Software, and to permit persons to whom the
* Software is furnished to do so, subject to the following
* conditions:
*
* The above copyright notice and this permission notice shall be
* included in all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*/
/dts-v1/;
#include "imx7d-colibri.dtsi"
#include "imx7-colibri-eval-v3.dtsi"
/ {
model = "Toradex Colibri iMX7D on Colibri Evaluation Board V3";
compatible = "toradex,colibri-imx7d-eval-v3", "toradex,colibri-imx7d",
"fsl,imx7d";
reg_usb_otg2_vbus: regulator-usb-otg2-vbus {
compatible = "regulator-fixed";
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_usbotg2_reg>;
regulator-name = "VCC_USB[1-4]";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
gpio = <&gpio4 7 GPIO_ACTIVE_LOW>;
};
};
&usbotg2 {
vbus-supply = <&reg_usb_otg2_vbus>;
status = "okay";
};
/*
* Copyright 2016 Toradex AG
*
* This file is dual-licensed: you can use it either under the terms
* of the GPL or the X11 license, at your option. Note that this dual
* licensing only applies to this file, and not this project as a
* whole.
*
* a) This file is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This file is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* Or, alternatively,
*
* b) Permission is hereby granted, free of charge, to any person
* obtaining a copy of this software and associated documentation
* files (the "Software"), to deal in the Software without
* restriction, including without limitation the rights to use,
* copy, modify, merge, publish, distribute, sublicense, and/or
* sell copies of the Software, and to permit persons to whom the
* Software is furnished to do so, subject to the following
* conditions:
*
* The above copyright notice and this permission notice shall be
* included in all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*/
#include "imx7d.dtsi"
#include "imx7-colibri.dtsi"
/ {
memory {
reg = <0x80000000 0x20000000>;
};
};
&usbotg2 {
dr_mode = "host";
};
...@@ -42,7 +42,6 @@ ...@@ -42,7 +42,6 @@
/dts-v1/; /dts-v1/;
#include <dt-bindings/input/input.h>
#include "imx7d.dtsi" #include "imx7d.dtsi"
/ { / {
...@@ -392,7 +391,7 @@ &uart6 { ...@@ -392,7 +391,7 @@ &uart6 {
pinctrl-0 = <&pinctrl_uart6>; pinctrl-0 = <&pinctrl_uart6>;
assigned-clocks = <&clks IMX7D_UART6_ROOT_SRC>; assigned-clocks = <&clks IMX7D_UART6_ROOT_SRC>;
assigned-clock-parents = <&clks IMX7D_PLL_SYS_MAIN_240M_CLK>; assigned-clock-parents = <&clks IMX7D_PLL_SYS_MAIN_240M_CLK>;
fsl,uart-has-rtscts; uart-has-rtscts;
status = "okay"; status = "okay";
}; };
......
...@@ -594,7 +594,7 @@ ...@@ -594,7 +594,7 @@
#define MX7D_PAD_UART2_RX_DATA__GPIO4_IO2 0x0130 0x03A0 0x0000 0x5 0x0 #define MX7D_PAD_UART2_RX_DATA__GPIO4_IO2 0x0130 0x03A0 0x0000 0x5 0x0
#define MX7D_PAD_UART2_RX_DATA__ENET2_MDIO 0x0130 0x03A0 0x0000 0x6 0x0 #define MX7D_PAD_UART2_RX_DATA__ENET2_MDIO 0x0130 0x03A0 0x0000 0x6 0x0
#define MX7D_PAD_UART2_TX_DATA__UART2_DCE_TX 0x0134 0x03A4 0x0000 0x0 0x0 #define MX7D_PAD_UART2_TX_DATA__UART2_DCE_TX 0x0134 0x03A4 0x0000 0x0 0x0
#define MX7D_PAD_UART2_TX_DATA__UART2_DTE_RX 0x0134 0x03A4 0x0000 0x0 0x0 #define MX7D_PAD_UART2_TX_DATA__UART2_DTE_RX 0x0134 0x03A4 0x06FC 0x0 0x3
#define MX7D_PAD_UART2_TX_DATA__I2C2_SDA 0x0134 0x03A4 0x05E0 0x1 0x0 #define MX7D_PAD_UART2_TX_DATA__I2C2_SDA 0x0134 0x03A4 0x05E0 0x1 0x0
#define MX7D_PAD_UART2_TX_DATA__SAI3_RX_DATA0 0x0134 0x03A4 0x06C8 0x2 0x0 #define MX7D_PAD_UART2_TX_DATA__SAI3_RX_DATA0 0x0134 0x03A4 0x06C8 0x2 0x0
#define MX7D_PAD_UART2_TX_DATA__ECSPI1_RDY 0x0134 0x03A4 0x0000 0x3 0x0 #define MX7D_PAD_UART2_TX_DATA__ECSPI1_RDY 0x0134 0x03A4 0x0000 0x3 0x0
......
...@@ -42,7 +42,6 @@ ...@@ -42,7 +42,6 @@
/dts-v1/; /dts-v1/;
#include <dt-bindings/input/input.h>
#include "imx7d.dtsi" #include "imx7d.dtsi"
/ { / {
...@@ -111,6 +110,32 @@ &cpu0 { ...@@ -111,6 +110,32 @@ &cpu0 {
arm-supply = <&sw1a_reg>; arm-supply = <&sw1a_reg>;
}; };
&ecspi3 {
fsl,spi-num-chipselects = <1>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_ecspi3>;
cs-gpios = <&gpio5 9 GPIO_ACTIVE_HIGH>;
status = "okay";
tsc2046@0 {
compatible = "ti,tsc2046";
reg = <0>;
spi-max-frequency = <1000000>;
pinctrl-names ="default";
pinctrl-0 = <&pinctrl_tsc2046_pendown>;
interrupt-parent = <&gpio2>;
interrupts = <29 0>;
pendown-gpio = <&gpio2 29 GPIO_ACTIVE_HIGH>;
ti,x-min = /bits/ 16 <0>;
ti,x-max = /bits/ 16 <0>;
ti,y-min = /bits/ 16 <0>;
ti,y-max = /bits/ 16 <0>;
ti,pressure-max = /bits/ 16 <0>;
ti,x-plat-ohms = /bits/ 16 <400>;
wakeup-source;
};
};
&fec1 { &fec1 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_enet1>; pinctrl-0 = <&pinctrl_enet1>;
...@@ -272,6 +297,44 @@ codec: wm8960@1a { ...@@ -272,6 +297,44 @@ codec: wm8960@1a {
}; };
}; };
&lcdif {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_lcdif>;
display = <&display0>;
status = "okay";
display0: display {
bits-per-pixel = <16>;
bus-width = <24>;
display-timings {
native-mode = <&timing0>;
timing0: timing0 {
clock-frequency = <9200000>;
hactive = <480>;
vactive = <272>;
hfront-porch = <8>;
hback-porch = <4>;
hsync-len = <41>;
vback-porch = <2>;
vfront-porch = <4>;
vsync-len = <10>;
hsync-active = <0>;
vsync-active = <0>;
de-active = <1>;
pixelclk-active = <0>;
};
};
};
};
&pwm1 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_pwm1>;
status = "okay";
};
&uart1 { &uart1 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_uart1>; pinctrl-0 = <&pinctrl_uart1>;
...@@ -314,11 +377,26 @@ &usdhc3 { ...@@ -314,11 +377,26 @@ &usdhc3 {
status = "okay"; status = "okay";
}; };
&wdog1 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_wdog>;
fsl,ext-reset-output;
};
&iomuxc { &iomuxc {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_hog>; pinctrl-0 = <&pinctrl_hog>;
imx7d-sdb { imx7d-sdb {
pinctrl_ecspi3: ecspi3grp {
fsl,pins = <
MX7D_PAD_SAI2_TX_SYNC__ECSPI3_MISO 0x2
MX7D_PAD_SAI2_TX_BCLK__ECSPI3_MOSI 0x2
MX7D_PAD_SAI2_RX_DATA__ECSPI3_SCLK 0x2
MX7D_PAD_SD2_CD_B__GPIO5_IO9 0x59
>;
};
pinctrl_enet1: enet1grp { pinctrl_enet1: enet1grp {
fsl,pins = < fsl,pins = <
MX7D_PAD_GPIO1_IO10__ENET1_MDIO 0x3 MX7D_PAD_GPIO1_IO10__ENET1_MDIO 0x3
...@@ -390,6 +468,52 @@ MX7D_PAD_SAI1_RX_SYNC__I2C4_SCL 0x4000007f ...@@ -390,6 +468,52 @@ MX7D_PAD_SAI1_RX_SYNC__I2C4_SCL 0x4000007f
>; >;
}; };
pinctrl_lcdif: lcdifgrp {
fsl,pins = <
MX7D_PAD_LCD_DATA00__LCD_DATA0 0x79
MX7D_PAD_LCD_DATA01__LCD_DATA1 0x79
MX7D_PAD_LCD_DATA02__LCD_DATA2 0x79
MX7D_PAD_LCD_DATA03__LCD_DATA3 0x79
MX7D_PAD_LCD_DATA04__LCD_DATA4 0x79
MX7D_PAD_LCD_DATA05__LCD_DATA5 0x79
MX7D_PAD_LCD_DATA06__LCD_DATA6 0x79
MX7D_PAD_LCD_DATA07__LCD_DATA7 0x79
MX7D_PAD_LCD_DATA08__LCD_DATA8 0x79
MX7D_PAD_LCD_DATA09__LCD_DATA9 0x79
MX7D_PAD_LCD_DATA10__LCD_DATA10 0x79
MX7D_PAD_LCD_DATA11__LCD_DATA11 0x79
MX7D_PAD_LCD_DATA12__LCD_DATA12 0x79
MX7D_PAD_LCD_DATA13__LCD_DATA13 0x79
MX7D_PAD_LCD_DATA14__LCD_DATA14 0x79
MX7D_PAD_LCD_DATA15__LCD_DATA15 0x79
MX7D_PAD_LCD_DATA16__LCD_DATA16 0x79
MX7D_PAD_LCD_DATA17__LCD_DATA17 0x79
MX7D_PAD_LCD_DATA18__LCD_DATA18 0x79
MX7D_PAD_LCD_DATA19__LCD_DATA19 0x79
MX7D_PAD_LCD_DATA20__LCD_DATA20 0x79
MX7D_PAD_LCD_DATA21__LCD_DATA21 0x79
MX7D_PAD_LCD_DATA22__LCD_DATA22 0x79
MX7D_PAD_LCD_DATA23__LCD_DATA23 0x79
MX7D_PAD_LCD_CLK__LCD_CLK 0x79
MX7D_PAD_LCD_ENABLE__LCD_ENABLE 0x79
MX7D_PAD_LCD_VSYNC__LCD_VSYNC 0x79
MX7D_PAD_LCD_HSYNC__LCD_HSYNC 0x79
MX7D_PAD_LCD_RESET__LCD_RESET 0x79
>;
};
pinctrl_pwm1: pwm1grp {
fsl,pins = <
MX7D_PAD_GPIO1_IO01__PWM1_OUT 0x110b0
>;
};
pinctrl_tsc2046_pendown: tsc2046_pendown {
fsl,pins = <
MX7D_PAD_EPDC_BDR1__GPIO2_IO29 0x59
>;
};
pinctrl_uart1: uart1grp { pinctrl_uart1: uart1grp {
fsl,pins = < fsl,pins = <
MX7D_PAD_UART1_TX_DATA__UART1_DCE_TX 0x79 MX7D_PAD_UART1_TX_DATA__UART1_DCE_TX 0x79
...@@ -512,5 +636,10 @@ MX7D_PAD_SD3_STROBE__SD3_STROBE 0x1b ...@@ -512,5 +636,10 @@ MX7D_PAD_SD3_STROBE__SD3_STROBE 0x1b
>; >;
}; };
pinctrl_wdog: wdoggrp {
fsl,pins = <
MX7D_PAD_GPIO1_IO00__WDOD1_WDOG_B 0x74
>;
};
}; };
}; };
This diff is collapsed.
/*
* Copyright 2016 Toradex AG
*
* This file is dual-licensed: you can use it either under the terms
* of the GPL or the X11 license, at your option. Note that this dual
* licensing only applies to this file, and not this project as a
* whole.
*
* a) This file is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This file is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* Or, alternatively,
*
* b) Permission is hereby granted, free of charge, to any person
* obtaining a copy of this software and associated documentation
* files (the "Software"), to deal in the Software without
* restriction, including without limitation the rights to use,
* copy, modify, merge, publish, distribute, sublicense, and/or
* sell copies of the Software, and to permit persons to whom the
* Software is furnished to do so, subject to the following
* conditions:
*
* The above copyright notice and this permission notice shall be
* included in all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*/
/dts-v1/;
#include "imx7s-colibri.dtsi"
#include "imx7-colibri-eval-v3.dtsi"
/ {
model = "Toradex Colibri iMX7S on Colibri Evaluation Board V3";
compatible = "toradex,colibri-imx7s-eval-v3", "toradex,colibri-imx7s",
"fsl,imx7s";
};
/*
* Copyright 2016 Toradex AG
*
* This file is dual-licensed: you can use it either under the terms
* of the GPL or the X11 license, at your option. Note that this dual
* licensing only applies to this file, and not this project as a
* whole.
*
* a) This file is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This file is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* Or, alternatively,
*
* b) Permission is hereby granted, free of charge, to any person
* obtaining a copy of this software and associated documentation
* files (the "Software"), to deal in the Software without
* restriction, including without limitation the rights to use,
* copy, modify, merge, publish, distribute, sublicense, and/or
* sell copies of the Software, and to permit persons to whom the
* Software is furnished to do so, subject to the following
* conditions:
*
* The above copyright notice and this permission notice shall be
* included in all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*/
#include "imx7s.dtsi"
#include "imx7-colibri.dtsi"
/ {
memory {
reg = <0x80000000 0x10000000>;
};
};
This diff is collapsed.
...@@ -626,6 +626,7 @@ usb3@3100000 { ...@@ -626,6 +626,7 @@ usb3@3100000 {
interrupts = <GIC_SPI 93 IRQ_TYPE_LEVEL_HIGH>; interrupts = <GIC_SPI 93 IRQ_TYPE_LEVEL_HIGH>;
dr_mode = "host"; dr_mode = "host";
snps,quirk-frame-length-adjustment = <0x20>; snps,quirk-frame-length-adjustment = <0x20>;
snps,dis_rxdet_inp3_quirk;
}; };
pcie@3400000 { pcie@3400000 {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment