usb: musb-new: core: set MUSB_POWER_HSENAB in MUSB_POWER for host mode
PATCH 1/1 usb: musb-new: core: set MUSB_POWER_HSENAB in MUSB_POWER for host mode
This bit allows the MUSB controller to negotiate for high-speed mode when the device is reset by the hub. If unset, Babble errors occur with high-speed mass storage devices right after the first packet. This condition is not caught by the interrupt handles in U-Boot, so no recovery is done, and the USB communication is stuck.
To fix this, set the bit unconditionally, not only for CONFIG_USB_GADGET_DUALSPEED but also for host-only modes.
Signed-off-by Daniel Mack <[email protected]>
--- drivers/usb/musb-new/musb_core.c | 2 -- 1 file changed, 2 deletions(-)
drivers/usb/musb-new/musb_core.c +0 -2
@@ -943,9 +943,7 @@ void musb_start(struct musb *musb)/* put into basic highspeed mode and start session */ musb_writeb (regs,MUSB_POWER ,MUSB_POWER_ISOUPDATE -#ifdef CONFIG_USB_GADGET_DUALSPEED |MUSB_POWER_HSENAB -#endif/* ENSUSPEND wedges tusb */ /* | MUSB_POWER_ENSUSPEND */ );
Signature · 1 line
1.9.3