Linux SOC development
 help / color / mirror / Atom feed
* [PATCH v2 00/14] ARM: dts: imx6dl-colibri: Misc improvements and newly added carriers
@ 2022-04-11 15:22 Max Krummenacher
  2022-04-11 15:22 ` [PATCH v2 03/14] ARM: dts: imx6dl-colibri: Drop dedicated v1.1 device tree Max Krummenacher
                   ` (3 more replies)
  0 siblings, 4 replies; 5+ messages in thread
From: Max Krummenacher @ 2022-04-11 15:22 UTC (permalink / raw)
  To: max.krummenacher
  Cc: Alexander Stein, Alistair Francis, Arnd Bergmann,
	Christoph Niedermaier, Douglas Anderson, Fabio Estevam,
	Krzysztof Kozlowski, Li Yang, Lucas Stach, Marcel Ziswiler,
	Matthias Schiffer, NXP Linux Team, Oleksij Rempel, Olof Johansson,
	Otavio Salvador, Pascal Zimmermann, Pengutronix Kernel Team,
	Philippe Schenker, Rob Herring, Russell King, Sam Ravnborg,
	Sascha Hauer, Sebastian Reichel, Shawn Guo, Tim Harvey,
	devicetree, linux-arm-kernel, linux-kernel, soc

From: Max Krummenacher <max.krummenacher@toradex.com>


This is a general update of the Colibri iMX6 device tree files.

The Toradex Colibri family is composed of a SoM that can be plugged on
various carrier boards, with carrier boards allowing multiple optional
accessories (e.g. display, camera, ...).

The device tree sources are structured into a SoM dtsi and a carrier dts
which then includes the SoM dtsi. The SoM dtsi defines and enables the
functionality self contained on the SoM and prepares for functionality
provided by the carrier HW or accessories, so that the carrier dts then
can enable or amend nodes provided. Accessories are enabled in overlays
depending on HW configuration.

The series improves the existing Colibri Evaluation Board device tree and
adds new device trees for the Aster, Iris, and Iris V2 carrier boards.

Additionally it drops the dedicated device tree for SoM V1.1 HW used in a
Evaluation board. The regular device tree works well in that combination.
The higher SD card speed possible with SoM V1.1 would require HW
modification on the carrier board.

Improvements:
- Specifies GPIO line names for use with libgpiod.
- Disables optional accessories. They would be enabled in overlays
  depending on HW configuration.
- Lower power consumption after poweroff.
- Move more functionality into the SoM dtsi file to reduce code
  duplication.
- General cleanup to adhere to dtbs bindings and missed alphabetically
  ordering.

Fixes:
- Copy/paste error in i2c2 pinmuxing resulting in i2c2 being
  nonfunctional.

Adds:
- imx6dl-colibri-aster.dtb: used for a Colibri iMX6 mated in an Aster
  carrier board.
- imx6dl-colibri-iris.dtb: used for a Colibri iMX6 mated in an
  Iris V1.x carrier board.
- imx6dl-colibri-iris-v2.dtb: used for a Colibri iMX6 mated in an
  Iris V2.x carrier board.

Drops:
- imx6dl-colibri-v1_1-eval-v3.dtb, imx6dl-colibri-eval-v3.dtb is good
  enough.

Changes in v2:
- Addressed 'From' address as reported by checkpatch / Shawn's feedback.
- Added Rob's Ack to the 'dt-bindings' patches.

Max Krummenacher (13):
  dt-bindings: arm: fsl: imx6dl-colibri: Drop dedicated v1.1 bindings
  dt-bindings: arm: fsl: Add carriers for toradex,colibri-imx6dl
  ARM: dts: imx6dl-colibri: Drop dedicated v1.1 device tree
  ARM: dts: imx6dl-colibri: Fix I2C pinmuxing
  ARM: dts: imx6dl-colibri: Disable add-on accessories
  ARM: dts: imx6dl-colibri: Command pmic to standby for poweroff
  ARM: dts: imx6dl-colibri: Add additional pingroups
  ARM: dts: imx6dl-colibri: Move common nodes to SoM dtsi
  ARM: dts: imx6dl-colibri: Cleanup
  ARM: dts: imx6dl-colibri: Add usdhc1 sleep pin configuration
  ARM: dts: imx6dl-colibri: Add support for Toradex Iris carrier boards
  ARM: dts: imx6dl-colibri: Add support for Toradex Aster carrier board
  ARM: imx_v6_v7_defconfig: Enable the ADC part of the STMPE MFD

Oleksandr Suvorov (1):
  ARM: dts: imx6dl-colibri: Add gpio-line-names

 .../devicetree/bindings/arm/fsl.yaml          |  11 +-
 arch/arm/boot/dts/Makefile                    |   4 +-
 arch/arm/boot/dts/imx6dl-colibri-aster.dts    | 113 +++
 arch/arm/boot/dts/imx6dl-colibri-eval-v3.dts  | 110 +--
 arch/arm/boot/dts/imx6dl-colibri-iris-v2.dts  |  46 ++
 arch/arm/boot/dts/imx6dl-colibri-iris.dts     | 152 ++++
 .../boot/dts/imx6dl-colibri-v1_1-eval-v3.dts  |  31 -
 .../boot/dts/imx6qdl-colibri-v1_1-uhs.dtsi    |  44 -
 arch/arm/boot/dts/imx6qdl-colibri.dtsi        | 771 ++++++++++++++----
 arch/arm/configs/imx_v6_v7_defconfig          |   1 +
 10 files changed, 919 insertions(+), 364 deletions(-)
 create mode 100644 arch/arm/boot/dts/imx6dl-colibri-aster.dts
 create mode 100644 arch/arm/boot/dts/imx6dl-colibri-iris-v2.dts
 create mode 100644 arch/arm/boot/dts/imx6dl-colibri-iris.dts
 delete mode 100644 arch/arm/boot/dts/imx6dl-colibri-v1_1-eval-v3.dts
 delete mode 100644 arch/arm/boot/dts/imx6qdl-colibri-v1_1-uhs.dtsi

-- 
2.20.1


^ permalink raw reply	[flat|nested] 5+ messages in thread

* [PATCH v2 03/14] ARM: dts: imx6dl-colibri: Drop dedicated v1.1 device tree
  2022-04-11 15:22 [PATCH v2 00/14] ARM: dts: imx6dl-colibri: Misc improvements and newly added carriers Max Krummenacher
@ 2022-04-11 15:22 ` Max Krummenacher
  2022-04-11 15:22 ` [PATCH v2 12/14] ARM: dts: imx6dl-colibri: Add support for Toradex Iris carrier boards Max Krummenacher
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 5+ messages in thread
From: Max Krummenacher @ 2022-04-11 15:22 UTC (permalink / raw)
  To: max.krummenacher
  Cc: Arnd Bergmann, Fabio Estevam, Krzysztof Kozlowski, NXP Linux Team,
	Olof Johansson, Pengutronix Kernel Team, Rob Herring,
	Sascha Hauer, Shawn Guo, devicetree, linux-arm-kernel,
	linux-kernel, soc

From: Max Krummenacher <max.krummenacher@toradex.com>

Drop Colibri V1.1 device tree, this is just a duplicate of Colibri V1.0
with the possibility to use SD cards in UHS mode if the carrier board
does not have 3.3V pull up resistor.

The dedicated device tree kept the feature switched of by setting
the no-1-8-v property and thus does not offer anything different
than what the regular device tree does.

Thus drop the dedicated device tree and merge the preparation to
allow enabling the feature should a carrier without pull ups
be used into the regular device tree.

Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
---

(no changes since v1)

 arch/arm/boot/dts/Makefile                    |  1 -
 .../boot/dts/imx6dl-colibri-v1_1-eval-v3.dts  | 31 -------------
 .../boot/dts/imx6qdl-colibri-v1_1-uhs.dtsi    | 44 -------------------
 arch/arm/boot/dts/imx6qdl-colibri.dtsi        | 29 +++++++++++-
 4 files changed, 27 insertions(+), 78 deletions(-)
 delete mode 100644 arch/arm/boot/dts/imx6dl-colibri-v1_1-eval-v3.dts
 delete mode 100644 arch/arm/boot/dts/imx6qdl-colibri-v1_1-uhs.dtsi

diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
index 252353fb4e3b..ae3cac8e653b 100644
--- a/arch/arm/boot/dts/Makefile
+++ b/arch/arm/boot/dts/Makefile
@@ -459,7 +459,6 @@ dtb-$(CONFIG_SOC_IMX6Q) += \
 	imx6dl-aristainetos2_4.dtb \
 	imx6dl-aristainetos2_7.dtb \
 	imx6dl-colibri-eval-v3.dtb \
-	imx6dl-colibri-v1_1-eval-v3.dtb \
 	imx6dl-cubox-i.dtb \
 	imx6dl-cubox-i-emmc-som-v15.dtb \
 	imx6dl-cubox-i-som-v15.dtb \
diff --git a/arch/arm/boot/dts/imx6dl-colibri-v1_1-eval-v3.dts b/arch/arm/boot/dts/imx6dl-colibri-v1_1-eval-v3.dts
deleted file mode 100644
index 223275f028f1..000000000000
--- a/arch/arm/boot/dts/imx6dl-colibri-v1_1-eval-v3.dts
+++ /dev/null
@@ -1,31 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0+ OR MIT
-/*
- * Copyright 2020 Toradex
- */
-
-/dts-v1/;
-
-#include "imx6dl-colibri-eval-v3.dts"
-#include "imx6qdl-colibri-v1_1-uhs.dtsi"
-
-/ {
-	model = "Toradex Colibri iMX6DL/S V1.1 on Colibri Evaluation Board V3";
-	compatible = "toradex,colibri_imx6dl-v1_1-eval-v3",
-		     "toradex,colibri_imx6dl-v1_1",
-		     "toradex,colibri_imx6dl-eval-v3",
-		     "toradex,colibri_imx6dl",
-		     "fsl,imx6dl";
-};
-
-/* Colibri MMC */
-&usdhc1 {
-	status = "okay";
-	/*
-	 * Please make sure your carrier board does not pull-up any of
-	 * the MMC/SD signals to 3.3 volt before attempting to activate
-	 * UHS-I support.
-	 * To let signaling voltage be changed to 1.8V, please
-	 * delete no-1-8-v property (example below):
-	 * /delete-property/no-1-8-v;
-	 */
-};
diff --git a/arch/arm/boot/dts/imx6qdl-colibri-v1_1-uhs.dtsi b/arch/arm/boot/dts/imx6qdl-colibri-v1_1-uhs.dtsi
deleted file mode 100644
index 7672fbfc29be..000000000000
--- a/arch/arm/boot/dts/imx6qdl-colibri-v1_1-uhs.dtsi
+++ /dev/null
@@ -1,44 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0+ OR MIT
-/*
- * Copyright 2020 Toradex
- */
-
-&iomuxc {
-	pinctrl_usdhc1_100mhz: usdhc1grp100mhz {
-		fsl,pins = <
-			MX6QDL_PAD_SD1_CMD__SD1_CMD    0x170b1
-			MX6QDL_PAD_SD1_CLK__SD1_CLK    0x100b1
-			MX6QDL_PAD_SD1_DAT0__SD1_DATA0 0x170b1
-			MX6QDL_PAD_SD1_DAT1__SD1_DATA1 0x170b1
-			MX6QDL_PAD_SD1_DAT2__SD1_DATA2 0x170b1
-			MX6QDL_PAD_SD1_DAT3__SD1_DATA3 0x170b1
-		>;
-	};
-
-	pinctrl_usdhc1_200mhz: usdhc1grp200mhz {
-		fsl,pins = <
-			MX6QDL_PAD_SD1_CMD__SD1_CMD    0x170f1
-			MX6QDL_PAD_SD1_CLK__SD1_CLK    0x100f1
-			MX6QDL_PAD_SD1_DAT0__SD1_DATA0 0x170f1
-			MX6QDL_PAD_SD1_DAT1__SD1_DATA1 0x170f1
-			MX6QDL_PAD_SD1_DAT2__SD1_DATA2 0x170f1
-			MX6QDL_PAD_SD1_DAT3__SD1_DATA3 0x170f1
-		>;
-	};
-};
-
-/* Colibri MMC */
-&usdhc1 {
-	pinctrl-names = "default", "state_100mhz", "state_200mhz";
-	pinctrl-0 = <&pinctrl_usdhc1 &pinctrl_mmc_cd>;
-	pinctrl-1 = <&pinctrl_usdhc1_100mhz &pinctrl_mmc_cd>;
-	pinctrl-2 = <&pinctrl_usdhc1_200mhz &pinctrl_mmc_cd>;
-	vmmc-supply = <&reg_module_3v3>;
-	vqmmc-supply = <&vgen3_reg>;
-	wakeup-source;
-	keep-power-in-suspend;
-	sd-uhs-sdr12;
-	sd-uhs-sdr25;
-	sd-uhs-sdr50;
-	sd-uhs-sdr104;
-};
diff --git a/arch/arm/boot/dts/imx6qdl-colibri.dtsi b/arch/arm/boot/dts/imx6qdl-colibri.dtsi
index 4e2a309c93fa..16d38bc78b2a 100644
--- a/arch/arm/boot/dts/imx6qdl-colibri.dtsi
+++ b/arch/arm/boot/dts/imx6qdl-colibri.dtsi
@@ -370,11 +370,14 @@
 
 /* Colibri MMC */
 &usdhc1 {
-	pinctrl-names = "default";
+	pinctrl-names = "default", "state_100mhz", "state_200mhz";
 	pinctrl-0 = <&pinctrl_usdhc1 &pinctrl_mmc_cd>;
+	pinctrl-1 = <&pinctrl_usdhc1_100mhz &pinctrl_mmc_cd>;
+	pinctrl-2 = <&pinctrl_usdhc1_200mhz &pinctrl_mmc_cd>;
 	cd-gpios = <&gpio2 5 GPIO_ACTIVE_LOW>; /* MMCD */
 	disable-wp;
-	vqmmc-supply = <&reg_module_3v3>;
+	vmmc-supply = <&reg_module_3v3>;
+	vqmmc-supply = <&vgen3_reg>;
 	bus-width = <4>;
 	no-1-8-v;
 	status = "disabled";
@@ -692,6 +695,28 @@
 		>;
 	};
 
+	pinctrl_usdhc1_100mhz: usdhc1grp100mhz {
+		fsl,pins = <
+			MX6QDL_PAD_SD1_CMD__SD1_CMD    0x170b1
+			MX6QDL_PAD_SD1_CLK__SD1_CLK    0x100b1
+			MX6QDL_PAD_SD1_DAT0__SD1_DATA0 0x170b1
+			MX6QDL_PAD_SD1_DAT1__SD1_DATA1 0x170b1
+			MX6QDL_PAD_SD1_DAT2__SD1_DATA2 0x170b1
+			MX6QDL_PAD_SD1_DAT3__SD1_DATA3 0x170b1
+		>;
+	};
+
+	pinctrl_usdhc1_200mhz: usdhc1grp200mhz {
+		fsl,pins = <
+			MX6QDL_PAD_SD1_CMD__SD1_CMD    0x170f1
+			MX6QDL_PAD_SD1_CLK__SD1_CLK    0x100f1
+			MX6QDL_PAD_SD1_DAT0__SD1_DATA0 0x170f1
+			MX6QDL_PAD_SD1_DAT1__SD1_DATA1 0x170f1
+			MX6QDL_PAD_SD1_DAT2__SD1_DATA2 0x170f1
+			MX6QDL_PAD_SD1_DAT3__SD1_DATA3 0x170f1
+		>;
+	};
+
 	pinctrl_usdhc3: usdhc3grp {
 		fsl,pins = <
 			MX6QDL_PAD_SD3_CMD__SD3_CMD	0x17059
-- 
2.20.1


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [PATCH v2 12/14] ARM: dts: imx6dl-colibri: Add support for Toradex Iris carrier boards
  2022-04-11 15:22 [PATCH v2 00/14] ARM: dts: imx6dl-colibri: Misc improvements and newly added carriers Max Krummenacher
  2022-04-11 15:22 ` [PATCH v2 03/14] ARM: dts: imx6dl-colibri: Drop dedicated v1.1 device tree Max Krummenacher
@ 2022-04-11 15:22 ` Max Krummenacher
  2022-04-11 15:22 ` [PATCH v2 13/14] ARM: dts: imx6dl-colibri: Add support for Toradex Aster carrier board Max Krummenacher
  2022-04-18  8:30 ` [PATCH v2 00/14] ARM: dts: imx6dl-colibri: Misc improvements and newly added carriers Shawn Guo
  3 siblings, 0 replies; 5+ messages in thread
From: Max Krummenacher @ 2022-04-11 15:22 UTC (permalink / raw)
  To: max.krummenacher
  Cc: Arnd Bergmann, Fabio Estevam, Krzysztof Kozlowski, NXP Linux Team,
	Olof Johansson, Pengutronix Kernel Team, Rob Herring,
	Sascha Hauer, Shawn Guo, devicetree, linux-arm-kernel,
	linux-kernel, soc

From: Max Krummenacher <max.krummenacher@toradex.com>

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: Max Krummenacher <max.krummenacher@toradex.com>
---

(no changes since v1)

 arch/arm/boot/dts/Makefile                   |   2 +
 arch/arm/boot/dts/imx6dl-colibri-iris-v2.dts |  46 ++++++
 arch/arm/boot/dts/imx6dl-colibri-iris.dts    | 152 +++++++++++++++++++
 3 files changed, 200 insertions(+)
 create mode 100644 arch/arm/boot/dts/imx6dl-colibri-iris-v2.dts
 create mode 100644 arch/arm/boot/dts/imx6dl-colibri-iris.dts

diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
index ae3cac8e653b..cb4cf5453a9f 100644
--- a/arch/arm/boot/dts/Makefile
+++ b/arch/arm/boot/dts/Makefile
@@ -459,6 +459,8 @@ dtb-$(CONFIG_SOC_IMX6Q) += \
 	imx6dl-aristainetos2_4.dtb \
 	imx6dl-aristainetos2_7.dtb \
 	imx6dl-colibri-eval-v3.dtb \
+	imx6dl-colibri-iris.dtb \
+	imx6dl-colibri-iris-v2.dtb \
 	imx6dl-cubox-i.dtb \
 	imx6dl-cubox-i-emmc-som-v15.dtb \
 	imx6dl-cubox-i-som-v15.dtb \
diff --git a/arch/arm/boot/dts/imx6dl-colibri-iris-v2.dts b/arch/arm/boot/dts/imx6dl-colibri-iris-v2.dts
new file mode 100644
index 000000000000..3a6d3889760d
--- /dev/null
+++ b/arch/arm/boot/dts/imx6dl-colibri-iris-v2.dts
@@ -0,0 +1,46 @@
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
+/*
+ * Copyright 2022 Toradex
+ */
+
+/dts-v1/;
+
+#include "imx6dl-colibri-iris.dts"
+
+/ {
+	model = "Toradex Colibri iMX6DL/S on Colibri Iris V2 Board";
+	compatible = "toradex,colibri_imx6dl-iris-v2", "toradex,colibri_imx6dl",
+		     "fsl,imx6dl";
+
+	reg_3v3_vmmc: regulator-3v3-vmmc {
+		compatible = "regulator-fixed";
+		pinctrl-names = "default";
+		pinctrl-0 = <&pinctrl_enable_3v3_vmmc>;
+		regulator-name = "3v3_vmmc";
+		regulator-min-microvolt = <3300000>;
+		regulator-max-microvolt = <3300000>;
+		gpio = <&gpio2 11 GPIO_ACTIVE_HIGH>;
+		startup-delay-us = <100>;
+		enable-active-high;
+	};
+};
+
+&iomuxc {
+	pinctrl-names = "default";
+	pinctrl-0 = <&pinctrl_gpio_iris	&pinctrl_usbh_oc_1 &pinctrl_usbc_id_1>;
+
+	pinctrl_enable_3v3_vmmc: enable3v3vmmcgrp {
+		fsl,pins = <
+			MX6QDL_PAD_SD4_DAT3__GPIO2_IO11	0x1b0b0
+		>;
+	};
+};
+
+/* Colibri MMC */
+&usdhc1 {
+	cap-power-off-card;
+	/* uncomment the following to enable SD card UHS mode if you have a V1.1 module */
+	/* /delete-property/ no-1-8-v; */
+	vmmc-supply = <&reg_3v3_vmmc>;
+	status = "okay";
+};
diff --git a/arch/arm/boot/dts/imx6dl-colibri-iris.dts b/arch/arm/boot/dts/imx6dl-colibri-iris.dts
new file mode 100644
index 000000000000..cf77d894f6d7
--- /dev/null
+++ b/arch/arm/boot/dts/imx6dl-colibri-iris.dts
@@ -0,0 +1,152 @@
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
+/*
+ * Copyright 2022 Toradex
+ */
+
+/dts-v1/;
+
+#include <dt-bindings/input/input.h>
+#include <dt-bindings/interrupt-controller/irq.h>
+#include "imx6dl.dtsi"
+#include "imx6qdl-colibri.dtsi"
+
+/ {
+	model = "Toradex Colibri iMX6DL/S on Colibri Iris Board";
+	compatible = "toradex,colibri_imx6dl-iris", "toradex,colibri_imx6dl",
+		     "fsl,imx6dl";
+
+	aliases {
+		i2c0 = &i2c2;
+		i2c1 = &i2c3;
+	};
+
+	aliases {
+		rtc0 = &rtc_i2c;
+		rtc1 = &snvs_rtc;
+	};
+
+	chosen {
+		stdout-path = "serial0:115200n8";
+	};
+};
+
+/* Colibri SSP */
+&ecspi4 {
+	status = "okay";
+};
+
+&gpio2 {
+	pinctrl-names = "default";
+	pinctrl-0 = <&pinctrl_uart1_forceoff &pinctrl_uart23_forceoff>;
+
+	/*
+	 * uart-a-on-x13-enable turns the UART transceiver for UART_A 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-b-c-on-x14-enable where the UART_B and
+	 * UART_C transceiver is turned on.
+	 */
+	uart-a-on-x13-enable-hog {
+		gpio-hog;
+		gpios = <4 GPIO_ACTIVE_HIGH>; /* SODIMM 102 */
+		output-high;
+	};
+
+	uart-b-c-on-x14-enable-hog {
+		gpio-hog;
+		gpios = <8 GPIO_ACTIVE_HIGH>; /* SODIMM 104 */
+		output-high;
+	};
+};
+
+/*
+ * Colibri I2C: I2C3_SDA/SCL on SODIMM 194/196 (e.g. RTC on carrier board)
+ */
+&i2c3 {
+	status = "okay";
+
+	rtc_i2c: rtc@68 {
+		compatible = "st,m41t0";
+		reg = <0x68>;
+	};
+};
+
+&iomuxc {
+	pinctrl-names = "default";
+	pinctrl-0 = <
+		&pinctrl_gpio_iris
+		&pinctrl_usbh_oc_1
+		&pinctrl_usbc_id_1
+	>;
+
+	pinctrl_gpio_iris: gpioirisgrp {
+		fsl,pins = <
+			MX6QDL_PAD_EIM_A17__GPIO2_IO21	0x1b0b0
+			MX6QDL_PAD_EIM_A18__GPIO2_IO20	0x1b0b0
+			MX6QDL_PAD_EIM_A19__GPIO2_IO19	0x1b0b0
+			MX6QDL_PAD_EIM_A20__GPIO2_IO18	0x1b0b0
+			MX6QDL_PAD_EIM_A23__GPIO6_IO06	0x1b0b0
+			MX6QDL_PAD_EIM_D27__GPIO3_IO27	0x1b0b0
+			MX6QDL_PAD_NANDF_D3__GPIO2_IO03	0x1b0b0
+			MX6QDL_PAD_SD2_DAT0__GPIO1_IO15	0x1b0b0
+		>;
+	};
+
+	pinctrl_uart1_forceoff: uart1forceoffgrp {
+		fsl,pins = <
+			MX6QDL_PAD_NANDF_D4__GPIO2_IO04 0x1b0b0
+		>;
+	};
+
+	pinctrl_uart23_forceoff: uart23forceoffgrp {
+		fsl,pins = <
+			MX6QDL_PAD_SD4_DAT0__GPIO2_IO08 0x1b0b0
+		>;
+	};
+};
+
+&pwm1 {
+	status = "okay";
+};
+
+&pwm2 {
+	status = "okay";
+};
+
+&pwm3 {
+	status = "okay";
+};
+
+&pwm4 {
+	status = "okay";
+};
+
+&reg_usb_host_vbus {
+	status = "okay";
+};
+
+&uart1 {
+	status = "okay";
+};
+
+&uart2 {
+	status = "okay";
+};
+
+&uart3 {
+	status = "okay";
+};
+
+&usbh1 {
+	vbus-supply = <&reg_usb_host_vbus>;
+	status = "okay";
+};
+
+&usbotg {
+	status = "okay";
+};
+
+/* Colibri MMC */
+&usdhc1 {
+	status = "okay";
+};
-- 
2.20.1


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [PATCH v2 13/14] ARM: dts: imx6dl-colibri: Add support for Toradex Aster carrier board
  2022-04-11 15:22 [PATCH v2 00/14] ARM: dts: imx6dl-colibri: Misc improvements and newly added carriers Max Krummenacher
  2022-04-11 15:22 ` [PATCH v2 03/14] ARM: dts: imx6dl-colibri: Drop dedicated v1.1 device tree Max Krummenacher
  2022-04-11 15:22 ` [PATCH v2 12/14] ARM: dts: imx6dl-colibri: Add support for Toradex Iris carrier boards Max Krummenacher
@ 2022-04-11 15:22 ` Max Krummenacher
  2022-04-18  8:30 ` [PATCH v2 00/14] ARM: dts: imx6dl-colibri: Misc improvements and newly added carriers Shawn Guo
  3 siblings, 0 replies; 5+ messages in thread
From: Max Krummenacher @ 2022-04-11 15:22 UTC (permalink / raw)
  To: max.krummenacher
  Cc: Arnd Bergmann, Fabio Estevam, Krzysztof Kozlowski, NXP Linux Team,
	Olof Johansson, Pengutronix Kernel Team, Rob Herring,
	Sascha Hauer, Shawn Guo, devicetree, linux-arm-kernel,
	linux-kernel, soc

From: Max Krummenacher <max.krummenacher@toradex.com>

Add support for Toradex Aster, small form-factor with header compatible
with Arduino Uno and Raspberry Pi (RPi) maker boards.

Additional detail available at
https://www.toradex.com/products/carrier-boards/aster-carrier-board

Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
---

(no changes since v1)

 arch/arm/boot/dts/Makefile                 |   1 +
 arch/arm/boot/dts/imx6dl-colibri-aster.dts | 113 +++++++++++++++++++++
 2 files changed, 114 insertions(+)
 create mode 100644 arch/arm/boot/dts/imx6dl-colibri-aster.dts

diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
index cb4cf5453a9f..f0e5fc7e5274 100644
--- a/arch/arm/boot/dts/Makefile
+++ b/arch/arm/boot/dts/Makefile
@@ -458,6 +458,7 @@ dtb-$(CONFIG_SOC_IMX6Q) += \
 	imx6dl-aristainetos_7.dtb \
 	imx6dl-aristainetos2_4.dtb \
 	imx6dl-aristainetos2_7.dtb \
+	imx6dl-colibri-aster.dtb \
 	imx6dl-colibri-eval-v3.dtb \
 	imx6dl-colibri-iris.dtb \
 	imx6dl-colibri-iris-v2.dtb \
diff --git a/arch/arm/boot/dts/imx6dl-colibri-aster.dts b/arch/arm/boot/dts/imx6dl-colibri-aster.dts
new file mode 100644
index 000000000000..74e8a6cd8bed
--- /dev/null
+++ b/arch/arm/boot/dts/imx6dl-colibri-aster.dts
@@ -0,0 +1,113 @@
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
+/*
+ * Copyright 2022 Toradex
+ */
+
+/dts-v1/;
+
+#include <dt-bindings/input/input.h>
+#include <dt-bindings/interrupt-controller/irq.h>
+#include "imx6dl.dtsi"
+#include "imx6qdl-colibri.dtsi"
+
+/ {
+	model = "Toradex Colibri iMX6DL/S on Colibri Aster Board";
+	compatible = "toradex,colibri_imx6dl-aster", "toradex,colibri_imx6dl",
+		     "fsl,imx6dl";
+
+	aliases {
+		i2c0 = &i2c2;
+		i2c1 = &i2c3;
+	};
+
+	chosen {
+		stdout-path = "serial0:115200n8";
+	};
+};
+
+/* Colibri SSP */
+&ecspi4 {
+	cs-gpios = <
+		&gpio5 2 GPIO_ACTIVE_HIGH
+		&gpio5 4 GPIO_ACTIVE_HIGH
+	>;
+	pinctrl-names = "default";
+	pinctrl-0 = <&pinctrl_ecspi4 &pinctrl_csi_gpio_2>;
+	status = "okay";
+};
+
+/* Colibri I2C: I2C3_SDA/SCL on SODIMM 194/196 */
+&i2c3 {
+	status = "okay";
+};
+
+&iomuxc {
+	pinctrl-names = "default";
+	pinctrl-0 = <
+		&pinctrl_csi_gpio_1
+		&pinctrl_gpio_2
+		&pinctrl_gpio_aster
+		&pinctrl_usbh_oc_1
+		&pinctrl_usbc_id_1
+		&pinctrl_weim_gpio_5
+	>;
+
+	pinctrl_gpio_aster: gpioaster {
+		fsl,pins = <
+			MX6QDL_PAD_KEY_COL2__GPIO4_IO10		0x1b0b0
+			MX6QDL_PAD_KEY_ROW2__GPIO4_IO11		0x1b0b0
+			MX6QDL_PAD_KEY_ROW4__GPIO4_IO15		0x1b0b0
+			MX6QDL_PAD_NANDF_D1__GPIO2_IO01		0x1b0b0
+			MX6QDL_PAD_NANDF_D3__GPIO2_IO03		0x1b0b0
+			MX6QDL_PAD_NANDF_D6__GPIO2_IO06		0x1b0b0
+			MX6QDL_PAD_SD4_DAT0__GPIO2_IO08		0x1b0b0
+			MX6QDL_PAD_SD4_DAT3__GPIO2_IO11		0x1b0b0
+		>;
+	};
+};
+
+&pwm1 {
+	status = "okay";
+};
+
+&pwm2 {
+	status = "okay";
+};
+
+&pwm3 {
+	status = "okay";
+};
+
+&pwm4 {
+	status = "okay";
+};
+
+&reg_usb_host_vbus {
+	status = "okay";
+};
+
+&uart1 {
+	status = "okay";
+};
+
+&uart2 {
+	status = "okay";
+};
+
+&uart3 {
+	status = "okay";
+};
+
+&usbh1 {
+	vbus-supply = <&reg_usb_host_vbus>;
+	status = "okay";
+};
+
+&usbotg {
+	status = "okay";
+};
+
+/* Colibri MMC */
+&usdhc1 {
+	status = "okay";
+};
-- 
2.20.1


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [PATCH v2 00/14] ARM: dts: imx6dl-colibri: Misc improvements and newly added carriers
  2022-04-11 15:22 [PATCH v2 00/14] ARM: dts: imx6dl-colibri: Misc improvements and newly added carriers Max Krummenacher
                   ` (2 preceding siblings ...)
  2022-04-11 15:22 ` [PATCH v2 13/14] ARM: dts: imx6dl-colibri: Add support for Toradex Aster carrier board Max Krummenacher
@ 2022-04-18  8:30 ` Shawn Guo
  3 siblings, 0 replies; 5+ messages in thread
From: Shawn Guo @ 2022-04-18  8:30 UTC (permalink / raw)
  To: Max Krummenacher
  Cc: max.krummenacher, Alexander Stein, Alistair Francis,
	Arnd Bergmann, Christoph Niedermaier, Douglas Anderson,
	Fabio Estevam, Krzysztof Kozlowski, Li Yang, Lucas Stach,
	Marcel Ziswiler, Matthias Schiffer, NXP Linux Team,
	Oleksij Rempel, Olof Johansson, Otavio Salvador,
	Pascal Zimmermann, Pengutronix Kernel Team, Philippe Schenker,
	Rob Herring, Russell King, Sam Ravnborg, Sascha Hauer,
	Sebastian Reichel, Tim Harvey, devicetree, linux-arm-kernel,
	linux-kernel, soc

On Mon, Apr 11, 2022 at 05:22:20PM +0200, Max Krummenacher wrote:
> From: Max Krummenacher <max.krummenacher@toradex.com>
> 
> 
> This is a general update of the Colibri iMX6 device tree files.
> 
> The Toradex Colibri family is composed of a SoM that can be plugged on
> various carrier boards, with carrier boards allowing multiple optional
> accessories (e.g. display, camera, ...).
> 
> The device tree sources are structured into a SoM dtsi and a carrier dts
> which then includes the SoM dtsi. The SoM dtsi defines and enables the
> functionality self contained on the SoM and prepares for functionality
> provided by the carrier HW or accessories, so that the carrier dts then
> can enable or amend nodes provided. Accessories are enabled in overlays
> depending on HW configuration.
> 
> The series improves the existing Colibri Evaluation Board device tree and
> adds new device trees for the Aster, Iris, and Iris V2 carrier boards.
> 
> Additionally it drops the dedicated device tree for SoM V1.1 HW used in a
> Evaluation board. The regular device tree works well in that combination.
> The higher SD card speed possible with SoM V1.1 would require HW
> modification on the carrier board.
> 
> Improvements:
> - Specifies GPIO line names for use with libgpiod.
> - Disables optional accessories. They would be enabled in overlays
>   depending on HW configuration.
> - Lower power consumption after poweroff.
> - Move more functionality into the SoM dtsi file to reduce code
>   duplication.
> - General cleanup to adhere to dtbs bindings and missed alphabetically
>   ordering.
> 
> Fixes:
> - Copy/paste error in i2c2 pinmuxing resulting in i2c2 being
>   nonfunctional.
> 
> Adds:
> - imx6dl-colibri-aster.dtb: used for a Colibri iMX6 mated in an Aster
>   carrier board.
> - imx6dl-colibri-iris.dtb: used for a Colibri iMX6 mated in an
>   Iris V1.x carrier board.
> - imx6dl-colibri-iris-v2.dtb: used for a Colibri iMX6 mated in an
>   Iris V2.x carrier board.
> 
> Drops:
> - imx6dl-colibri-v1_1-eval-v3.dtb, imx6dl-colibri-eval-v3.dtb is good
>   enough.
> 
> Changes in v2:
> - Addressed 'From' address as reported by checkpatch / Shawn's feedback.
> - Added Rob's Ack to the 'dt-bindings' patches.
> 
> Max Krummenacher (13):
>   dt-bindings: arm: fsl: imx6dl-colibri: Drop dedicated v1.1 bindings
>   dt-bindings: arm: fsl: Add carriers for toradex,colibri-imx6dl
>   ARM: dts: imx6dl-colibri: Drop dedicated v1.1 device tree
>   ARM: dts: imx6dl-colibri: Fix I2C pinmuxing
>   ARM: dts: imx6dl-colibri: Disable add-on accessories
>   ARM: dts: imx6dl-colibri: Command pmic to standby for poweroff
>   ARM: dts: imx6dl-colibri: Add additional pingroups
>   ARM: dts: imx6dl-colibri: Move common nodes to SoM dtsi
>   ARM: dts: imx6dl-colibri: Cleanup
>   ARM: dts: imx6dl-colibri: Add usdhc1 sleep pin configuration
>   ARM: dts: imx6dl-colibri: Add support for Toradex Iris carrier boards
>   ARM: dts: imx6dl-colibri: Add support for Toradex Aster carrier board
>   ARM: imx_v6_v7_defconfig: Enable the ADC part of the STMPE MFD
> 
> Oleksandr Suvorov (1):
>   ARM: dts: imx6dl-colibri: Add gpio-line-names

Applied all, thanks!

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2022-04-18  8:30 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-04-11 15:22 [PATCH v2 00/14] ARM: dts: imx6dl-colibri: Misc improvements and newly added carriers Max Krummenacher
2022-04-11 15:22 ` [PATCH v2 03/14] ARM: dts: imx6dl-colibri: Drop dedicated v1.1 device tree Max Krummenacher
2022-04-11 15:22 ` [PATCH v2 12/14] ARM: dts: imx6dl-colibri: Add support for Toradex Iris carrier boards Max Krummenacher
2022-04-11 15:22 ` [PATCH v2 13/14] ARM: dts: imx6dl-colibri: Add support for Toradex Aster carrier board Max Krummenacher
2022-04-18  8:30 ` [PATCH v2 00/14] ARM: dts: imx6dl-colibri: Misc improvements and newly added carriers Shawn Guo

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox