]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
ARM: dts: imx6ul: support Engicam MicroGEA GTW board
authorDario Binacchi <dario.binacchi@amarulasolutions.com>
Fri, 20 Jun 2025 08:27:13 +0000 (10:27 +0200)
committerShawn Guo <shawnguo@kernel.org>
Wed, 2 Jul 2025 10:01:37 +0000 (18:01 +0800)
Support Engicam MicroGEA GTW board with:

- 256 Mbytes NAND Flash
- 512 Mbytes DRAM DDR2
- Buttons
- LEDs
- Micro SD card connector
- USB 2.0 high-speed/full-speed
- Ethernet MAC

Signed-off-by: Dario Binacchi <dario.binacchi@amarulasolutions.com>
Reviewed-by: Frank Li <Frank.Li@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
arch/arm/boot/dts/nxp/imx/Makefile
arch/arm/boot/dts/nxp/imx/imx6ull-engicam-microgea-gtw.dts [new file with mode: 0644]

index 32dfd69b8d8bf849ae8dac1eaada5bace3e12bf3..de4142e8f3ce8f5e377d58a03b45cfa3fa818a19 100644 (file)
@@ -357,6 +357,7 @@ dtb-$(CONFIG_SOC_IMX6UL) += \
        imx6ull-dhcom-picoitx.dtb \
        imx6ull-dhcor-maveo-box.dtb \
        imx6ull-engicam-microgea-bmm.dtb \
+       imx6ull-engicam-microgea-gtw.dtb \
        imx6ull-engicam-microgea-rmm.dtb \
        imx6ull-jozacp.dtb \
        imx6ull-kontron-bl.dtb \
diff --git a/arch/arm/boot/dts/nxp/imx/imx6ull-engicam-microgea-gtw.dts b/arch/arm/boot/dts/nxp/imx/imx6ull-engicam-microgea-gtw.dts
new file mode 100644 (file)
index 0000000..d500f88
--- /dev/null
@@ -0,0 +1,162 @@
+// SPDX-License-Identifier: GPL-2.0
+/*
+ * Copyright (C) 2025 Amarula Solutions, Dario Binacchi <dario.binacchi@amarulasolutions.com>
+ * Copyright (C) 2025 Engicam srl
+ */
+
+/dts-v1/;
+
+#include "imx6ull-engicam-microgea.dtsi"
+
+/ {
+       compatible = "engicam,microgea-imx6ull-gtw",
+                    "engicam,microgea-imx6ull", "fsl,imx6ull";
+       model = "Engicam MicroGEA i.MX6ULL GTW Board";
+
+       reg_1v8: regulator-1v8 {
+               compatible = "regulator-fixed";
+               regulator-name = "1v8";
+               regulator-min-microvolt = <1800000>;
+               regulator-max-microvolt = <1800000>;
+       };
+
+       reg_3v3: regulator-3v3 {
+               compatible = "regulator-fixed";
+               regulator-name = "3v3";
+               regulator-min-microvolt = <3300000>;
+               regulator-max-microvolt = <3300000>;
+       };
+
+       gpio-keys {
+               compatible = "gpio-keys";
+               pinctrl-names = "default";
+               pinctrl-0 = <&pinctrl_gpio_keys>;
+
+               user-button {
+                       label = "User button";
+                       gpios = <&gpio1 13 GPIO_ACTIVE_LOW>;
+                       linux,code = <BTN_MISC>;
+                       wakeup-source;
+               };
+       };
+
+       leds {
+               compatible = "gpio-leds";
+               pinctrl-names = "default";
+               pinctrl-0 = <&pinctrl_leds>, <&pinctrl_pwrled>;
+
+               led-0 {
+                       gpios = <&gpio5 7 GPIO_ACTIVE_HIGH>;
+                       default-state = "on";
+               };
+
+               led-1 {
+                       gpios = <&gpio1 14 GPIO_ACTIVE_HIGH>;
+               };
+
+               led-2 {
+                       gpios = <&gpio1 15 GPIO_ACTIVE_HIGH>;
+               };
+
+               led-3 {
+                       gpios = <&gpio1 12 GPIO_ACTIVE_HIGH>;
+               };
+       };
+
+       usb_hub: usb-hub {
+               compatible = "smsc,usb3503a";
+               pinctrl-names = "default";
+               pinctrl-0 = <&pinctrl_usb_hub>;
+               reset-gpios = <&gpio5 6 GPIO_ACTIVE_LOW>;
+       };
+};
+
+&uart1 {
+       pinctrl-names = "default";
+       pinctrl-0 = <&pinctrl_uart1>;
+       status = "okay";
+};
+
+&uart2 {
+       pinctrl-names = "default";
+       pinctrl-0 = <&pinctrl_uart2>;
+       status = "okay";
+};
+
+&usbotg1 {
+       dr_mode = "otg";
+       status = "okay";
+};
+
+&usbotg2 {
+       dr_mode = "host";
+       disable-over-current;
+       status = "okay";
+};
+
+/* MicroSD */
+&usdhc1 {
+       pinctrl-names = "default";
+       pinctrl-0 = <&pinctrl_usdhc1>;
+       vmmc-supply = <&reg_3v3>;
+       bus-width = <4>;
+       non-removable;
+       status = "okay";
+};
+
+&iomuxc {
+       pinctrl_gpio_keys: gpio_keysgrp {
+               fsl,pins = <
+                       MX6UL_PAD_JTAG_TDI__GPIO1_IO13          0x0b0b0
+               >;
+       };
+
+       pinctrl_leds: ledsgrp {
+               fsl,pins = <
+                       MX6UL_PAD_JTAG_TCK__GPIO1_IO14          0x130b0
+                       MX6UL_PAD_JTAG_TRST_B__GPIO1_IO15       0x130b0
+                       MX6UL_PAD_JTAG_TDO__GPIO1_IO12          0x130b0
+               >;
+       };
+
+       pinctrl_uart1: uart1grp {
+               fsl,pins = <
+                       MX6UL_PAD_UART1_TX_DATA__UART1_DCE_TX   0x1b0b1
+                       MX6UL_PAD_UART1_RX_DATA__UART1_DCE_RX   0x1b0b1
+               >;
+       };
+
+       pinctrl_uart2: uart2grp {
+               fsl,pins = <
+                       MX6UL_PAD_UART2_TX_DATA__UART2_DCE_TX   0x1b0b1
+                       MX6UL_PAD_UART2_RX_DATA__UART2_DCE_RX   0x1b0b1
+                       MX6UL_PAD_UART2_RTS_B__UART2_DCE_RTS    0x1b0b1
+                       MX6UL_PAD_UART2_CTS_B__UART2_DCE_CTS    0x1b0b1
+               >;
+       };
+
+       pinctrl_usdhc1: usdhc1grp {
+               fsl,pins = <
+                       MX6UL_PAD_SD1_CMD__USDHC1_CMD           0x17059
+                       MX6UL_PAD_SD1_CLK__USDHC1_CLK           0x10059
+                       MX6UL_PAD_SD1_DATA0__USDHC1_DATA0       0x17059
+                       MX6UL_PAD_SD1_DATA1__USDHC1_DATA1       0x17059
+                       MX6UL_PAD_SD1_DATA2__USDHC1_DATA2       0x17059
+                       MX6UL_PAD_SD1_DATA3__USDHC1_DATA3       0x17059
+               >;
+       };
+};
+
+&iomuxc_snvs {
+       pinctrl_pwrled: ledsgrp {
+               fsl,pins = <
+                       MX6ULL_PAD_SNVS_TAMPER7__GPIO5_IO07     0x130b0
+               >;
+       };
+
+       pinctrl_usb_hub: usb_hubgrp {
+               fsl,pins = <
+                       MX6ULL_PAD_SNVS_TAMPER6__GPIO5_IO06     0x17059
+               >;
+       };
+};