[PATCH v1 7/7] imx8ulp_evk: Enable USB controller at 0x29920000 in device mode

alice.guo at oss.nxp.com alice.guo at oss.nxp.com
Tue Dec 16 07:38:39 CET 2025


From: Alice Guo <alice.guo at nxp.com>

Update the i.MX8ULP EVK device tree files and defconfig to enable the
second USB controller (base address 0x29920000) on i.MX8ULP EVK in
device mode, allowing the board to operate as a USB mass storage gadget.

Signed-off-by: Alice Guo <alice.guo at nxp.com>
---
 arch/arm/dts/imx8ulp-evk-u-boot.dtsi | 17 +++++++++++++++++
 configs/imx8ulp_evk_defconfig        |  7 +++++++
 2 files changed, 24 insertions(+)

diff --git a/arch/arm/dts/imx8ulp-evk-u-boot.dtsi b/arch/arm/dts/imx8ulp-evk-u-boot.dtsi
index e35653edc29..e4f47bb1dcb 100644
--- a/arch/arm/dts/imx8ulp-evk-u-boot.dtsi
+++ b/arch/arm/dts/imx8ulp-evk-u-boot.dtsi
@@ -12,6 +12,19 @@
 		status = "okay";
 		bootph-all;
 	};
+
+	aliases {
+		usb_gadget1 = &usbg2;
+		usb1 = &usbotg2;
+	};
+
+	usbg2: usbg2 {
+		compatible = "fsl,imx27-usb-gadget";
+		dr_mode = "peripheral";
+		chipidea,usb = <&usbotg2>;
+		status = "okay";
+		bootph-all;
+	};
 };
 
 &soc {
@@ -38,6 +51,10 @@
 	compatible = "fsl,imx8ulp-usb", "fsl,imx7ulp-usb", "fsl,imx27-usb";
 };
 
+&pinctrl_usb2 {
+	bootph-all;
+};
+
 &iomuxc1 {
 	bootph-all;
 };
diff --git a/configs/imx8ulp_evk_defconfig b/configs/imx8ulp_evk_defconfig
index 5fd73ce4ae9..52994e4f785 100644
--- a/configs/imx8ulp_evk_defconfig
+++ b/configs/imx8ulp_evk_defconfig
@@ -55,6 +55,7 @@ CONFIG_CMD_I2C=y
 CONFIG_CMD_MMC=y
 CONFIG_CMD_READ=y
 CONFIG_CMD_USB=y
+CONFIG_CMD_USB_MASS_STORAGE=y
 CONFIG_CMD_CACHE=y
 CONFIG_CMD_REGULATOR=y
 CONFIG_CMD_EXT4_WRITE=y
@@ -95,4 +96,10 @@ CONFIG_DM_SPI=y
 CONFIG_NXP_FSPI=y
 CONFIG_USB=y
 CONFIG_USB_EHCI_HCD=y
+CONFIG_USB_GADGET=y
+CONFIG_USB_GADGET_MANUFACTURER="FSL"
+CONFIG_USB_GADGET_VENDOR_NUM=0x0525
+CONFIG_USB_GADGET_PRODUCT_NUM=0xa4a5
+CONFIG_CI_UDC=y
+CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_ULP_WATCHDOG=y

-- 
2.43.0



More information about the U-Boot mailing list