diff options
author | Daniel Mack <zonque@gmail.com> | 2014-07-22 12:47:02 +0200 |
---|---|---|
committer | Marek Vasut <marex@denx.de> | 2014-10-06 21:04:44 +0200 |
commit | 16b61d13bab361853564da401b15fc34ae1dfea7 (patch) | |
tree | 1ec1fefcfc6fcae8d6f4a016e901b971b27883ad /drivers/usb | |
parent | d1fcbae1173f00917f5a71e4c074a61120605021 (diff) | |
download | u-boot-imx-16b61d13bab361853564da401b15fc34ae1dfea7.zip u-boot-imx-16b61d13bab361853564da401b15fc34ae1dfea7.tar.gz u-boot-imx-16b61d13bab361853564da401b15fc34ae1dfea7.tar.bz2 |
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 <zonque@gmail.com>
Diffstat (limited to 'drivers/usb')
-rw-r--r-- | drivers/usb/musb-new/musb_core.c | 2 |
1 files changed, 0 insertions, 2 deletions
diff --git a/drivers/usb/musb-new/musb_core.c b/drivers/usb/musb-new/musb_core.c index 4edd6d7..242cc30 100644 --- a/drivers/usb/musb-new/musb_core.c +++ b/drivers/usb/musb-new/musb_core.c @@ -942,9 +942,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 */ ); |