Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

ARM: dts: imx6ull-colibri: add support for toradex iris carrier boards

Add support for Toradex Iris, small form-factor Pico-ITX Colibri Arm
Computer Module family carrier boards.

Iris Device Trees:
- imx6ull-colibri-iris.dtb
- imx6ull-colibri-emmc-iris.dtb
- imx6ull-colibri-wifi-iris.dtb

Iris-V2 Device Trees:
- imx6ull-colibri-iris-v2.dtb
- imx6ull-colibri-emmc-iris-v2.dtb
- imx6ull-colibri-wifi-iris-v2.dtb

Signed-off-by: Denys Drozdov <denys.drozdov@toradex.com>
Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>

authored by

Denys Drozdov and committed by
Shawn Guo
613d0632 c8eb30d0

+385 -15
+6
arch/arm/boot/dts/Makefile
··· 708 708 imx6ul-tx6ul-mainboard.dtb \ 709 709 imx6ull-14x14-evk.dtb \ 710 710 imx6ull-colibri-emmc-eval-v3.dtb \ 711 + imx6ull-colibri-emmc-iris.dtb \ 712 + imx6ull-colibri-emmc-iris-v2.dtb \ 711 713 imx6ull-colibri-eval-v3.dtb \ 714 + imx6ull-colibri-iris.dtb \ 715 + imx6ull-colibri-iris-v2.dtb \ 712 716 imx6ull-colibri-wifi-eval-v3.dtb \ 717 + imx6ull-colibri-wifi-iris.dtb \ 718 + imx6ull-colibri-wifi-iris-v2.dtb \ 713 719 imx6ull-jozacp.dtb \ 714 720 imx6ull-myir-mys-6ulx-eval.dtb \ 715 721 imx6ull-opos6uldev.dtb \
+17
arch/arm/boot/dts/imx6ull-colibri-emmc-iris-v2.dts
··· 1 + // SPDX-License-Identifier: GPL-2.0-or-later OR MIT 2 + /* 3 + * Copyright 2022 Toradex 4 + */ 5 + 6 + /dts-v1/; 7 + 8 + #include "imx6ull-colibri-emmc-nonwifi.dtsi" 9 + #include "imx6ull-colibri-iris-v2.dtsi" 10 + 11 + / { 12 + model = "Toradex Colibri iMX6ULL 1G (eMMC) on Colibri Iris V2"; 13 + compatible = "toradex,colibri-imx6ull-iris-v2", 14 + "toradex,colibri-imx6ull-emmc", 15 + "toradex,colibri-imx6ull", 16 + "fsl,imx6ull"; 17 + };
+17
arch/arm/boot/dts/imx6ull-colibri-emmc-iris.dts
··· 1 + // SPDX-License-Identifier: GPL-2.0-or-later OR MIT 2 + /* 3 + * Copyright 2022 Toradex 4 + */ 5 + 6 + /dts-v1/; 7 + 8 + #include "imx6ull-colibri-emmc-nonwifi.dtsi" 9 + #include "imx6ull-colibri-iris.dtsi" 10 + 11 + / { 12 + model = "Toradex Colibri iMX6ULL 1GB (eMMC) on Colibri Iris"; 13 + compatible = "toradex,colibri-imx6ull-emmc-iris", 14 + "toradex,colibri-imx6ull-emmc", 15 + "toradex,colibri-imx6ull", 16 + "fsl,imx6ull"; 17 + };
+2 -2
arch/arm/boot/dts/imx6ull-colibri-emmc-nonwifi.dtsi
··· 1 - // SPDX-License-Identifier: GPL-2.0+ OR MIT 1 + // SPDX-License-Identifier: GPL-2.0-or-later OR MIT 2 2 /* 3 - * Copyright 2021 Toradex 3 + * Copyright 2022 Toradex 4 4 */ 5 5 6 6 #include "imx6ull-colibri.dtsi"
+3 -3
arch/arm/boot/dts/imx6ull-colibri-eval-v3.dts
··· 1 - // SPDX-License-Identifier: (GPL-2.0 OR MIT) 1 + // SPDX-License-Identifier: GPL-2.0-or-later OR MIT 2 2 /* 3 - * Copyright 2018 Toradex AG 3 + * Copyright 2018-2022 Toradex 4 4 */ 5 5 6 6 /dts-v1/; ··· 9 9 #include "imx6ull-colibri-eval-v3.dtsi" 10 10 11 11 / { 12 - model = "Toradex Colibri iMX6ULL 256MB on Colibri Evaluation Board V3"; 12 + model = "Toradex Colibri iMX6ULL 256/512MB on Colibri Evaluation Board V3"; 13 13 compatible = "toradex,colibri-imx6ull-eval", "fsl,imx6ull"; 14 14 };
+3 -2
arch/arm/boot/dts/imx6ull-colibri-eval-v3.dtsi
··· 1 - // SPDX-License-Identifier: (GPL-2.0 OR MIT) 1 + // SPDX-License-Identifier: GPL-2.0-or-later OR MIT 2 2 /* 3 - * Copyright 2017 Toradex AG 3 + * Copyright 2017-2022 Toradex 4 4 */ 5 5 6 6 / { ··· 121 121 }; 122 122 123 123 &usbotg1 { 124 + vbus-supply = <&reg_usbh_vbus>; 124 125 status = "okay"; 125 126 }; 126 127
+65
arch/arm/boot/dts/imx6ull-colibri-iris-v2.dts
··· 1 + // SPDX-License-Identifier: GPL-2.0-or-later OR MIT 2 + /* 3 + * Copyright 2018-2022 Toradex 4 + */ 5 + 6 + /dts-v1/; 7 + 8 + #include "imx6ull-colibri-nonwifi.dtsi" 9 + #include "imx6ull-colibri-iris-v2.dtsi" 10 + 11 + / { 12 + model = "Toradex Colibri iMX6ULL 256M/512B on Colibri Iris V2"; 13 + compatible = "toradex,colibri-imx6ull-iris-v2", 14 + "toradex,colibri-imx6ull", 15 + "fsl,imx6ull"; 16 + }; 17 + 18 + &atmel_mxt_ts { 19 + status = "okay"; 20 + }; 21 + 22 + &gpio1 { 23 + /* This turns the LVDS transceiver on */ 24 + lvds-power-on { 25 + gpio-hog; 26 + gpios = <14 GPIO_ACTIVE_HIGH>; /* SODIMM 99 */ 27 + line-name = "LVDS_POWER_ON"; 28 + output-high; 29 + }; 30 + }; 31 + 32 + &gpio2 { 33 + /* 34 + * This switches the LVDS transceiver to the single-channel 35 + * output mode. 36 + */ 37 + lvds-ch-mode { 38 + gpio-hog; 39 + gpios = <0 GPIO_ACTIVE_HIGH>; /* SODIMM 55 */ 40 + line-name = "LVDS_CH_MODE"; 41 + output-high; 42 + }; 43 + 44 + /* 45 + * This switches the LVDS transceiver to the 24-bit RGB mode. 46 + */ 47 + lvds-rgb-mode { 48 + gpio-hog; 49 + gpios = <1 GPIO_ACTIVE_HIGH>; /* SODIMM 63 */ 50 + line-name = "LVDS_RGB_MODE"; 51 + output-low; 52 + }; 53 + }; 54 + 55 + &gpio5 { 56 + /* 57 + * This switches the LVDS transceiver to VESA color mapping mode. 58 + */ 59 + lvds-color-map { 60 + gpio-hog; 61 + gpios = <3 GPIO_ACTIVE_HIGH>; /* SODIMM 95 */ 62 + line-name = "LVDS_COLOR_MAP"; 63 + output-low; 64 + }; 65 + };
+27
arch/arm/boot/dts/imx6ull-colibri-iris-v2.dtsi
··· 1 + // SPDX-License-Identifier: GPL-2.0-or-later OR MIT 2 + /* 3 + * Copyright 2018-2022 Toradex 4 + */ 5 + 6 + #include "imx6ull-colibri-iris.dtsi" 7 + 8 + / { 9 + reg_3v3_vmmc: regulator-3v3-vmmc { 10 + compatible = "regulator-fixed"; 11 + regulator-name = "3v3_vmmc"; 12 + regulator-min-microvolt = <3300000>; 13 + regulator-max-microvolt = <3300000>; 14 + gpio = <&gpio1 26 GPIO_ACTIVE_HIGH>; 15 + startup-delay-us = <100>; 16 + enable-active-high; 17 + }; 18 + }; 19 + 20 + 21 + &usdhc1 { 22 + cap-power-off-card; 23 + vmmc-supply = <&reg_3v3_vmmc>; 24 + /delete-property/ keep-power-in-suspend; 25 + /delete-property/ no-1-8-v; 26 + status = "okay"; 27 + };
+20
arch/arm/boot/dts/imx6ull-colibri-iris.dts
··· 1 + // SPDX-License-Identifier: GPL-2.0-or-later OR MIT 2 + /* 3 + * Copyright 2018-2022 Toradex 4 + */ 5 + 6 + /dts-v1/; 7 + 8 + #include "imx6ull-colibri-nonwifi.dtsi" 9 + #include "imx6ull-colibri-iris.dtsi" 10 + 11 + / { 12 + model = "Toradex Colibri iMX6ULL 256/512MB on Colibri Iris"; 13 + compatible = "toradex,colibri-imx6ull-iris", 14 + "toradex,colibri-imx6ull", 15 + "fsl,imx6ull"; 16 + }; 17 + 18 + &atmel_mxt_ts { 19 + status = "okay"; 20 + };
+132
arch/arm/boot/dts/imx6ull-colibri-iris.dtsi
··· 1 + // SPDX-License-Identifier: GPL-2.0-or-later OR MIT 2 + /* 3 + * Copyright 2018-2022 Toradex 4 + */ 5 + 6 + / { 7 + chosen { 8 + stdout-path = "serial0:115200n8"; 9 + }; 10 + 11 + gpio-keys { 12 + compatible = "gpio-keys"; 13 + pinctrl-names = "default"; 14 + pinctrl-0 = <&pinctrl_snvs_gpiokeys>; 15 + 16 + power { 17 + label = "Wake-Up"; 18 + gpios = <&gpio5 1 GPIO_ACTIVE_HIGH>; 19 + linux,code = <KEY_WAKEUP>; 20 + debounce-interval = <10>; 21 + wakeup-source; 22 + }; 23 + }; 24 + 25 + reg_3v3: regulator-3v3 { 26 + compatible = "regulator-fixed"; 27 + regulator-name = "3.3V"; 28 + regulator-min-microvolt = <3300000>; 29 + regulator-max-microvolt = <3300000>; 30 + }; 31 + 32 + reg_5v0: regulator-5v0 { 33 + compatible = "regulator-fixed"; 34 + regulator-name = "5V"; 35 + regulator-min-microvolt = <5000000>; 36 + regulator-max-microvolt = <5000000>; 37 + }; 38 + 39 + reg_usbh_vbus: regulator-usbh-vbus { 40 + compatible = "regulator-fixed"; 41 + pinctrl-names = "default"; 42 + pinctrl-0 = <&pinctrl_usbh_reg>; 43 + regulator-name = "VCC_USB[1-4]"; 44 + regulator-min-microvolt = <5000000>; 45 + regulator-max-microvolt = <5000000>; 46 + gpio = <&gpio1 2 GPIO_ACTIVE_LOW>; 47 + vin-supply = <&reg_5v0>; 48 + }; 49 + }; 50 + 51 + &adc1 { 52 + status = "okay"; 53 + }; 54 + 55 + &gpio1 { 56 + /* 57 + * uart25_tx_on turns the UART transceiver on. If one wants to turn the 58 + * transceiver off, that property has to be deleted and the gpio handled 59 + * in userspace. 60 + * The same applies to uart1_tx_on. 61 + */ 62 + uart25_tx_on { 63 + gpio-hog; 64 + gpios = <15 0>; 65 + output-high; 66 + }; 67 + }; 68 + 69 + &gpio2 { 70 + uart1_tx_on { 71 + gpio-hog; 72 + gpios = <7 0>; 73 + output-high; 74 + }; 75 + }; 76 + 77 + &i2c1 { 78 + status = "okay"; 79 + 80 + /* M41T0M6 real time clock on carrier board */ 81 + m41t0m6: rtc@68 { 82 + compatible = "st,m41t0"; 83 + reg = <0x68>; 84 + }; 85 + }; 86 + 87 + /* PWM <A> */ 88 + &pwm4 { 89 + status = "okay"; 90 + }; 91 + 92 + /* PWM <B> */ 93 + &pwm5 { 94 + status = "okay"; 95 + }; 96 + 97 + /* PWM <C> */ 98 + &pwm6 { 99 + status = "okay"; 100 + }; 101 + 102 + /* PWM <D> */ 103 + &pwm7 { 104 + status = "okay"; 105 + }; 106 + 107 + &uart1 { 108 + status = "okay"; 109 + }; 110 + 111 + &uart2 { 112 + status = "okay"; 113 + }; 114 + 115 + &uart5 { 116 + status = "okay"; 117 + }; 118 + 119 + &usbotg1 { 120 + vbus-supply = <&reg_usbh_vbus>; 121 + status = "okay"; 122 + }; 123 + 124 + &usbotg2 { 125 + vbus-supply = <&reg_usbh_vbus>; 126 + status = "okay"; 127 + }; 128 + 129 + &usdhc1 { 130 + vmmc-supply = <&reg_3v3>; 131 + status = "okay"; 132 + };
+2 -2
arch/arm/boot/dts/imx6ull-colibri-nonwifi.dtsi
··· 1 - // SPDX-License-Identifier: (GPL-2.0 OR MIT) 1 + // SPDX-License-Identifier: GPL-2.0-or-later OR MIT 2 2 /* 3 - * Copyright 2018 Toradex AG 3 + * Copyright 2018-2022 Toradex 4 4 */ 5 5 6 6 #include "imx6ull-colibri.dtsi"
+2 -2
arch/arm/boot/dts/imx6ull-colibri-wifi-eval-v3.dts
··· 1 - // SPDX-License-Identifier: (GPL-2.0 OR MIT) 1 + // SPDX-License-Identifier: GPL-2.0-or-later OR MIT 2 2 /* 3 - * Copyright 2018 Toradex AG 3 + * Copyright 2018-2022 Toradex 4 4 */ 5 5 6 6 /dts-v1/;
+65
arch/arm/boot/dts/imx6ull-colibri-wifi-iris-v2.dts
··· 1 + // SPDX-License-Identifier: GPL-2.0-or-later OR MIT 2 + /* 3 + * Copyright 2018-2022 Toradex 4 + */ 5 + 6 + /dts-v1/; 7 + 8 + #include "imx6ull-colibri-wifi.dtsi" 9 + #include "imx6ull-colibri-iris-v2.dtsi" 10 + 11 + / { 12 + model = "Toradex Colibri iMX6ULL 512MB on Colibri Iris V2"; 13 + compatible = "toradex,colibri-imx6ull-wifi-iris-v2", 14 + "toradex,colibri-imx6ull", 15 + "fsl,imx6ull"; 16 + }; 17 + 18 + &atmel_mxt_ts { 19 + status = "okay"; 20 + }; 21 + 22 + &gpio1 { 23 + /* This turns the LVDS transceiver on */ 24 + lvds-power-on { 25 + gpio-hog; 26 + gpios = <14 GPIO_ACTIVE_HIGH>; /* SODIMM 99 */ 27 + line-name = "LVDS_POWER_ON"; 28 + output-high; 29 + }; 30 + }; 31 + 32 + &gpio2 { 33 + /* 34 + * This switches the LVDS transceiver to the single-channel 35 + * output mode. 36 + */ 37 + lvds-ch-mode { 38 + gpio-hog; 39 + gpios = <0 GPIO_ACTIVE_HIGH>; /* SODIMM 55 */ 40 + line-name = "LVDS_CH_MODE"; 41 + output-high; 42 + }; 43 + 44 + /* 45 + * This switches the LVDS transceiver to the 24-bit RGB mode. 46 + */ 47 + lvds-rgb-mode { 48 + gpio-hog; 49 + gpios = <1 GPIO_ACTIVE_HIGH>; /* SODIMM 63 */ 50 + line-name = "LVDS_RGB_MODE"; 51 + output-low; 52 + }; 53 + }; 54 + 55 + &gpio5 { 56 + /* 57 + * This switches the LVDS transceiver to VESA color mapping mode. 58 + */ 59 + lvds-color-map { 60 + gpio-hog; 61 + gpios = <3 GPIO_ACTIVE_HIGH>; /* SODIMM 95 */ 62 + line-name = "LVDS_COLOR_MAP"; 63 + output-low; 64 + }; 65 + };
+20
arch/arm/boot/dts/imx6ull-colibri-wifi-iris.dts
··· 1 + // SPDX-License-Identifier: GPL-2.0-or-later OR MIT 2 + /* 3 + * Copyright 2018-2022 Toradex 4 + */ 5 + 6 + /dts-v1/; 7 + 8 + #include "imx6ull-colibri-wifi.dtsi" 9 + #include "imx6ull-colibri-iris.dtsi" 10 + 11 + / { 12 + model = "Toradex Colibri iMX6ULL 512MB on Colibri Iris"; 13 + compatible = "toradex,colibri-imx6ull-wifi-iris", 14 + "toradex,colibri-imx6ull", 15 + "fsl,imx6ull"; 16 + }; 17 + 18 + &atmel_mxt_ts { 19 + status = "okay"; 20 + };
+2 -2
arch/arm/boot/dts/imx6ull-colibri-wifi.dtsi
··· 1 - // SPDX-License-Identifier: (GPL-2.0 OR MIT) 1 + // SPDX-License-Identifier: GPL-2.0-or-later OR MIT 2 2 /* 3 - * Copyright 2018 Toradex AG 3 + * Copyright 2018-2022 Toradex 4 4 */ 5 5 6 6 #include "imx6ull-colibri.dtsi"
+2 -2
arch/arm/boot/dts/imx6ull-colibri.dtsi
··· 1 - // SPDX-License-Identifier: GPL-2.0+ OR MIT 1 + // SPDX-License-Identifier: GPL-2.0-or-later OR MIT 2 2 /* 3 - * Copyright 2018-2021 Toradex 3 + * Copyright 2018-2022 Toradex 4 4 */ 5 5 6 6 #include "imx6ull.dtsi"