summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarkus Schneider-Pargmann (TI) <[email protected]>2026-06-01 11:30:45 +0200
committerTom Rini <[email protected]>2026-06-12 13:01:24 -0600
commit39762783b1268a9f62f426bd2f328530c0cec67c (patch)
tree4fffd88e4a9949640a0ef743ac5d4a80207ab4d7
parent9e54b0e9861f4de054c5124b8d7887e983613078 (diff)
am33xx: Support upstream devicetree USB device
Support musb being probed by ti,musb-am33xx. The non-upstream DT probing used a wrapper driver that probed ti-musb-peripheral and ti-musb-host. This wrapper registered as UCLASS_MISC, which is why it is requested in this board.c file. With the new devicetree the wrapper that registers as UCLASS_MISC is gone, instead the UCLASS_USB and UCLASS_USB_GADGET_GENERIC have to be requested. Signed-off-by: Markus Schneider-Pargmann (TI) <[email protected]>
-rw-r--r--arch/arm/mach-omap2/am33xx/board.c14
1 files changed, 8 insertions, 6 deletions
diff --git a/arch/arm/mach-omap2/am33xx/board.c b/arch/arm/mach-omap2/am33xx/board.c
index 3791d97e5ed..8699cf46b67 100644
--- a/arch/arm/mach-omap2/am33xx/board.c
+++ b/arch/arm/mach-omap2/am33xx/board.c
@@ -264,13 +264,15 @@ int arch_misc_init(void)
int arch_misc_init(void)
{
struct udevice *dev;
- int ret;
+ int ret = 0;
- /*
- * Trigger probe of the UCLASS_MISC device which is a USB wrapper driver
- * ti-musb-wrapper that handles all usb host and gadget devices.
- */
- if (IS_ENABLED(CONFIG_USB_MUSB_TI)) {
+ if (IS_ENABLED(CONFIG_USB_MUSB_TI) && !IS_ENABLED(CONFIG_OF_UPSTREAM)) {
+ /*
+ * Trigger probe of the UCLASS_MISC device which is a USB
+ * wrapper driver ti-musb-wrapper that handles all usb host and
+ * gadget devices. Note that with OF_UPSTREAM the devices are
+ * bound directly, no wrapper necessary.
+ */
ret = uclass_first_device_err(UCLASS_MISC, &dev);
if (ret)
printf("Failed probing USB %d, continue without USB\n", ret);