[PATCH 0/7] Enable USB in device mode on i.MX8ULP EVK

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


Changes for v1:
- Refactor USB PHY register definitions to a common header file to
  enable code sharing between ehci-mx6.c and ci_udc.c.
- Fix the usb_oc_config() function to correctly handle overcurrent
  configuration on i.MX7/8M/9/7ULP/8/8ULP platforms, where the register
  layout differs from i.MX6.
- Extract PHY initialization code into a reusable function that can be
  shared between ehci-mx6.c and ci_udc.c.
- Convert the ci_udc driver to use driver model.
- Updating Kconfig to automatically select DM_USB_GADGET when CI_UDC is
  enabled.
- Add i.MX8ULP platform support.

Tested on i.MX8ULP EVK board with USB mass storage functionality.

Signed-off-by: Alice Guo <alice.guo at nxp.com>
---
Alice Guo (5):
      usb: ehci-mx6: Move USB PHY register definitions to common header
      usb: ehci-mx6: Fix usb_oc_config() for i.MX7/8M/9/7ULP/8 and 8ULP platforms
      usb: ehci-mx6: Extract PHY initialization into reusable function
      usb: gadget: ci_udc: Add i.MX8ULP support
      imx8ulp_evk: Enable USB controller at 0x29920000 in device mode

Sherry Sun (2):
      usb: ci_udc: Convert driver to DM_USB_GADGET
      usb: Kconfig: imply DM_USB_GADGET

 arch/arm/dts/imx8ulp-evk-u-boot.dtsi        |  17 ++
 arch/arm/include/asm/mach-imx/regs-usbphy.h |   3 +
 configs/imx8ulp_evk_defconfig               |   7 +
 drivers/usb/gadget/Kconfig                  |   2 +-
 drivers/usb/gadget/ci_udc.c                 | 354 +++++++++++++++++++++++++++-
 drivers/usb/host/ehci-mx6.c                 |  93 ++++++--
 include/usb/ci_udc.h                        |   9 +
 7 files changed, 465 insertions(+), 20 deletions(-)
---
base-commit: d21fcfb29ec2871976de8d21ea0e60fb13ce032f
change-id: 20251216-imx8ulp-129e9fdc1128

Best regards,
-- 
Alice Guo <alice.guo at nxp.com>



More information about the U-Boot mailing list