ARM: dts: imx7-colibri: add support for Toradex Iris carrier boards
Add support for Toradex Iris, small form-factor Pico-ITX Colibri Arm Computer Module family Carrier Board. Additional details available at https://www.toradex.com/products/carrier-board/iris-carrier-board Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com> Signed-off-by: Shawn Guo <shawnguo@kernel.org>
This commit is contained in:
parent
f78ad74062
commit
a180e4f09d
|
@ -741,8 +741,12 @@ dtb-$(CONFIG_SOC_IMX7D) += \
|
|||
imx7d-cl-som-imx7.dtb \
|
||||
imx7d-colibri-aster.dtb \
|
||||
imx7d-colibri-emmc-aster.dtb \
|
||||
imx7d-colibri-emmc-iris.dtb \
|
||||
imx7d-colibri-emmc-iris-v2.dtb \
|
||||
imx7d-colibri-emmc-eval-v3.dtb \
|
||||
imx7d-colibri-eval-v3.dtb \
|
||||
imx7d-colibri-iris.dtb \
|
||||
imx7d-colibri-iris-v2.dtb \
|
||||
imx7d-flex-concentrator.dtb \
|
||||
imx7d-flex-concentrator-mfg.dtb \
|
||||
imx7d-mba7.dtb \
|
||||
|
@ -762,6 +766,8 @@ dtb-$(CONFIG_SOC_IMX7D) += \
|
|||
imx7d-zii-rpu2.dtb \
|
||||
imx7s-colibri-aster.dtb \
|
||||
imx7s-colibri-eval-v3.dtb \
|
||||
imx7s-colibri-iris.dtb \
|
||||
imx7s-colibri-iris-v2.dtb \
|
||||
imx7s-mba7.dtb \
|
||||
imx7s-warp.dtb
|
||||
dtb-$(CONFIG_SOC_IMX7ULP) += \
|
||||
|
|
|
@ -0,0 +1,112 @@
|
|||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/*
|
||||
* Copyright 2022 Toradex
|
||||
*/
|
||||
|
||||
/ {
|
||||
reg_3v3_vmmc: regulator-3v3-vmmc {
|
||||
compatible = "regulator-fixed";
|
||||
enable-active-high;
|
||||
gpio = <&gpio5 16 GPIO_ACTIVE_HIGH>; /* SODIMM 100 */
|
||||
regulator-max-microvolt = <3300000>;
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-name = "3v3_vmmc";
|
||||
startup-delay-us = <100>;
|
||||
};
|
||||
};
|
||||
|
||||
/* Colibri AD0 to AD3 */
|
||||
&adc1 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* Colibri SSP */
|
||||
&ecspi3 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* Colibri Fast Ethernet */
|
||||
&fec1 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&gpio2 {
|
||||
/*
|
||||
* uart_b_c_on_x14_enable turns the UART transceiver for UART2 and 5 on. If one wants to
|
||||
* turn the transceiver off, that property has to be deleted and the gpio handled in
|
||||
* userspace.
|
||||
* The same applies to uart_a_on_x13_enable where the UART_A transceiver is turned on.
|
||||
*/
|
||||
uart-b-c-on-x14-enable-hog {
|
||||
gpio-hog;
|
||||
gpios = <27 GPIO_ACTIVE_HIGH>; /* SODIMM 104 */
|
||||
output-high;
|
||||
};
|
||||
};
|
||||
|
||||
&gpio5 {
|
||||
uart-a-on-x13-enable-hog {
|
||||
gpio-hog;
|
||||
gpios = <17 GPIO_ACTIVE_HIGH>; /* SODIMM 102 */
|
||||
output-high;
|
||||
};
|
||||
};
|
||||
|
||||
/* Colibri I2C: I2C3_SDA/SCL on SODIMM 194/196 */
|
||||
&i2c4 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* Colibri PWM<A> */
|
||||
&pwm1 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* Colibri PWM<B> */
|
||||
&pwm2 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* Colibri PWM<C> */
|
||||
&pwm3 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* Colibri PWM<D> */
|
||||
&pwm4 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* M41T0M6 real time clock */
|
||||
&rtc {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* Colibri UART_A */
|
||||
&uart1 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* Colibri UART_B */
|
||||
&uart2 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* Colibri UART_C */
|
||||
&uart3 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* Colibri USBC */
|
||||
&usbotg1 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* Colibri MMC/SD, UHS-I capable uSD slot */
|
||||
&usdhc1 {
|
||||
cap-power-off-card;
|
||||
/delete-property/ keep-power-in-suspend;
|
||||
/delete-property/ no-1-8-v;
|
||||
vmmc-supply = <®_3v3_vmmc>;
|
||||
status = "okay";
|
||||
};
|
|
@ -0,0 +1,108 @@
|
|||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/*
|
||||
* Copyright 2022 Toradex
|
||||
*/
|
||||
|
||||
/* Colibri AD0 to AD3 */
|
||||
&adc1 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/*
|
||||
* The Atmel maxtouch controller uses SODIMM 28/30, also used for PWM<B>, PWM<C>, aka pwm2, pwm3.
|
||||
* So if you enable following capacitive touch controller, disable pwm2/pwm3 first.
|
||||
*/
|
||||
&atmel_mxt_ts {
|
||||
interrupt-parent = <&gpio1>;
|
||||
interrupts = <9 IRQ_TYPE_EDGE_FALLING>; /* SODIMM 28 / INT */
|
||||
pinctrl-0 = <&pinctrl_atmel_adapter>;
|
||||
reset-gpios = <&gpio1 10 GPIO_ACTIVE_LOW>; /* SODIMM 30 / RST */
|
||||
};
|
||||
|
||||
/* Colibri SSP */
|
||||
&ecspi3 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* Colibri Fast Ethernet */
|
||||
&fec1 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&gpio2 {
|
||||
/*
|
||||
* uart25 turns the UART transceiver for UART2 and 5 on. If one wants to turn the
|
||||
* transceiver off, that property has to be deleted and the gpio handled in userspace.
|
||||
* The same applies to uart1_tx_on where the UART1 transceiver is turned on.
|
||||
*/
|
||||
uart25-tx-on-hog {
|
||||
gpio-hog;
|
||||
gpios = <27 GPIO_ACTIVE_HIGH>; /* SODIMM 104 */
|
||||
output-high;
|
||||
};
|
||||
};
|
||||
|
||||
&gpio5 {
|
||||
uart1-tx-on-hog {
|
||||
gpio-hog;
|
||||
gpios = <17 GPIO_ACTIVE_HIGH>; /* SODIMM 102 */
|
||||
output-high;
|
||||
};
|
||||
};
|
||||
|
||||
/* Colibri I2C: I2C3_SDA/SCL on SODIMM 194/196 */
|
||||
&i2c4 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* Colibri PWM<A> */
|
||||
&pwm1 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* Colibri PWM<B> */
|
||||
&pwm2 {
|
||||
/* The pwm2 should be disabled to enable atmel_mxt_ts touchscreen for adapter. */
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* Colibri PWM<C> */
|
||||
&pwm3 {
|
||||
/* The pwm3 should be disabled to enable atmel_mxt_ts touchscreen for adapter. */
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* Colibri PWM<D> */
|
||||
&pwm4 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* M41T0M6 real time clock */
|
||||
&rtc {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* Colibri UART_A */
|
||||
&uart1 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* Colibri UART_B */
|
||||
&uart2 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* Colibri UART_C */
|
||||
&uart3 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* Colibri USBC */
|
||||
&usbotg1 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* Colibri MMC/SD */
|
||||
&usdhc1 {
|
||||
status = "okay";
|
||||
};
|
|
@ -0,0 +1,21 @@
|
|||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/*
|
||||
* Copyright 2022 Toradex
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
#include "imx7d-colibri-emmc.dtsi"
|
||||
#include "imx7-colibri-iris-v2.dtsi"
|
||||
|
||||
/ {
|
||||
model = "Toradex Colibri iMX7D 1GB on Iris V2 Carrier Board";
|
||||
compatible = "toradex,colibri-imx7d-emmc-iris-v2",
|
||||
"toradex,colibri-imx7d-emmc",
|
||||
"toradex,colibri-imx7d",
|
||||
"fsl,imx7d";
|
||||
};
|
||||
|
||||
/* Colibri USBH */
|
||||
&usbotg2 {
|
||||
status = "okay";
|
||||
};
|
|
@ -0,0 +1,21 @@
|
|||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/*
|
||||
* Copyright 2022 Toradex
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
#include "imx7d-colibri-emmc.dtsi"
|
||||
#include "imx7-colibri-iris.dtsi"
|
||||
|
||||
/ {
|
||||
model = "Toradex Colibri iMX7D 1GB on Iris Carrier Board";
|
||||
compatible = "toradex,colibri-imx7d-emmc-iris",
|
||||
"toradex,colibri-imx7d-emmc",
|
||||
"toradex,colibri-imx7d",
|
||||
"fsl,imx7d";
|
||||
};
|
||||
|
||||
/* Colibri USBH */
|
||||
&usbotg2 {
|
||||
status = "okay";
|
||||
};
|
|
@ -0,0 +1,83 @@
|
|||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/*
|
||||
* Copyright 2022 Toradex
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
#include "imx7d-colibri.dtsi"
|
||||
#include "imx7-colibri-iris-v2.dtsi"
|
||||
|
||||
/ {
|
||||
model = "Toradex Colibri iMX7D on Iris V2 Carrier Board";
|
||||
compatible = "toradex,colibri-imx7d-iris-v2",
|
||||
"toradex,colibri-imx7d",
|
||||
"fsl,imx7d";
|
||||
};
|
||||
|
||||
&ad7879_ts {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&atmel_mxt_ts {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&backlight {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&gpio2 {
|
||||
/*
|
||||
* This switches the LVDS transceiver to VESA color mapping mode.
|
||||
*/
|
||||
lvds-color-map-hog {
|
||||
gpio-hog;
|
||||
gpios = <13 GPIO_ACTIVE_HIGH>; /* SODIMM 95 */
|
||||
line-name = "LVDS_COLOR_MAP";
|
||||
output-low;
|
||||
};
|
||||
};
|
||||
|
||||
&gpio7 {
|
||||
/*
|
||||
* This switches the LVDS transceiver to the 24-bit RGB mode.
|
||||
*/
|
||||
lvds-rgb-mode-hog {
|
||||
gpio-hog;
|
||||
gpios = <2 GPIO_ACTIVE_HIGH>; /* SODIMM 63 */
|
||||
line-name = "LVDS_RGB_MODE";
|
||||
output-low;
|
||||
};
|
||||
|
||||
/*
|
||||
* This switches the LVDS transceiver to the single-channel
|
||||
* output mode.
|
||||
*/
|
||||
lvds-ch-mode-hog {
|
||||
gpio-hog;
|
||||
gpios = <3 GPIO_ACTIVE_HIGH>; /* SODIMM 55 */
|
||||
line-name = "LVDS_CH_MODE";
|
||||
output-high;
|
||||
};
|
||||
|
||||
/* This turns the LVDS transceiver on */
|
||||
lvds-power-on-hog {
|
||||
gpio-hog;
|
||||
gpios = <11 GPIO_ACTIVE_HIGH>; /* SODIMM 99 */
|
||||
line-name = "LVDS_POWER_ON";
|
||||
output-high;
|
||||
};
|
||||
};
|
||||
|
||||
&lcdif {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&panel_dpi {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* Colibri USBH */
|
||||
&usbotg2 {
|
||||
status = "okay";
|
||||
};
|
|
@ -0,0 +1,56 @@
|
|||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/*
|
||||
* Copyright 2022 Toradex
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
#include "imx7d-colibri.dtsi"
|
||||
#include "imx7-colibri-iris.dtsi"
|
||||
|
||||
/ {
|
||||
model = "Toradex Colibri iMX7D on Iris Carrier Board";
|
||||
compatible = "toradex,colibri-imx7d-iris",
|
||||
"toradex,colibri-imx7d",
|
||||
"fsl,imx7d";
|
||||
};
|
||||
|
||||
&ad7879_ts {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/*
|
||||
* The Atmel maxtouch controller uses SODIMM 28/30, also used for PWM<B>, PWM<C>, aka pwm2, pwm3.
|
||||
* So if you enable following capacitive touch controller, disable pwm2/pwm3 first.
|
||||
*/
|
||||
&atmel_mxt_ts {
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
&backlight {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&lcdif {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&panel_dpi {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* Colibri PWM<B> */
|
||||
&pwm2 {
|
||||
/* The pwm2 should be disabled to enable atmel_mxt_ts touchscreen for adapter. */
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* Colibri PWM<C> */
|
||||
&pwm3 {
|
||||
/* The pwm3 should be disabled to enable atmel_mxt_ts touchscreen for adapter. */
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* Colibri USBH */
|
||||
&usbotg2 {
|
||||
status = "okay";
|
||||
};
|
|
@ -0,0 +1,78 @@
|
|||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/*
|
||||
* Copyright 2022 Toradex
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
#include "imx7s-colibri.dtsi"
|
||||
#include "imx7-colibri-iris-v2.dtsi"
|
||||
|
||||
/ {
|
||||
model = "Toradex Colibri iMX7S on Iris V2 Carrier Board";
|
||||
compatible = "toradex,colibri-imx7s-iris-v2",
|
||||
"toradex,colibri-imx7s",
|
||||
"fsl,imx7s";
|
||||
};
|
||||
|
||||
&ad7879_ts {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&atmel_mxt_ts {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&backlight {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&gpio2 {
|
||||
/*
|
||||
* This switches the LVDS transceiver to VESA color mapping mode.
|
||||
*/
|
||||
lvds-color-map-hog {
|
||||
gpio-hog;
|
||||
gpios = <13 GPIO_ACTIVE_HIGH>; /* SODIMM 95 */
|
||||
line-name = "LVDS_COLOR_MAP";
|
||||
output-low;
|
||||
};
|
||||
};
|
||||
|
||||
&gpio7 {
|
||||
/*
|
||||
* This switches the LVDS transceiver to the 24-bit RGB mode.
|
||||
*/
|
||||
lvds-rgb-mode-hog {
|
||||
gpio-hog;
|
||||
gpios = <2 GPIO_ACTIVE_HIGH>; /* SODIMM 63 */
|
||||
line-name = "LVDS_RGB_MODE";
|
||||
output-low;
|
||||
};
|
||||
|
||||
/*
|
||||
* This switches the LVDS transceiver to the single-channel
|
||||
* output mode.
|
||||
*/
|
||||
lvds-ch-mode-hog {
|
||||
gpio-hog;
|
||||
gpios = <3 GPIO_ACTIVE_HIGH>; /* SODIMM 55 */
|
||||
line-name = "LVDS_CH_MODE";
|
||||
output-high;
|
||||
};
|
||||
|
||||
/* This turns the LVDS transceiver on */
|
||||
lvds-power-on-hog {
|
||||
gpio-hog;
|
||||
gpios = <11 GPIO_ACTIVE_HIGH>; /* SODIMM 99 */
|
||||
line-name = "LVDS_POWER_ON";
|
||||
output-high;
|
||||
};
|
||||
};
|
||||
|
||||
&lcdif {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&panel_dpi {
|
||||
status = "okay";
|
||||
};
|
|
@ -0,0 +1,51 @@
|
|||
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/*
|
||||
* Copyright 2022 Toradex
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
#include "imx7s-colibri.dtsi"
|
||||
#include "imx7-colibri-iris.dtsi"
|
||||
|
||||
/ {
|
||||
model = "Toradex Colibri iMX7S on Iris Carrier Board";
|
||||
compatible = "toradex,colibri-imx7s-iris",
|
||||
"toradex,colibri-imx7s",
|
||||
"fsl,imx7s";
|
||||
};
|
||||
|
||||
&ad7879_ts {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/*
|
||||
* The Atmel maxtouch controller uses SODIMM 28/30, also used for PWM<B>, PWM<C>, aka pwm2, pwm3.
|
||||
* So if you enable following capacitive touch controller, disable pwm2/pwm3 first.
|
||||
*/
|
||||
&atmel_mxt_ts {
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
&backlight {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&lcdif {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&panel_dpi {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* Colibri PWM<B> */
|
||||
&pwm2 {
|
||||
/* The pwm2 should be disabled to enable atmel_mxt_ts touchscreen for adapter. */
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* Colibri PWM<C> */
|
||||
&pwm3 {
|
||||
/* The pwm3 should be disabled to enable atmel_mxt_ts touchscreen for adapter. */
|
||||
status = "okay";
|
||||
};
|
Loading…
Reference in New Issue