mirror of
https://github.com/hardkernel/linux.git
synced 2026-04-11 07:28:10 +09:00
usb: musb: only restore devctl when session was set in backup
commit84ac5d1140upstream. If the session bit was not set in the backup of devctl register, restoring devctl would clear the session bit. Therefor, only restore devctl register when the session bit was set in the backup. This solves the device enumeration failure in otg mode exposed by commit56f487c(PM / Runtime: Update last_busy in rpm_resume). Signed-off-by: Bin Liu <b-liu@ti.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
4fe6d4b48d
commit
089a2d8400
@@ -2401,7 +2401,8 @@ static void musb_restore_context(struct musb *musb)
|
||||
musb_writew(musb_base, MUSB_INTRTXE, musb->intrtxe);
|
||||
musb_writew(musb_base, MUSB_INTRRXE, musb->intrrxe);
|
||||
musb_writeb(musb_base, MUSB_INTRUSBE, musb->context.intrusbe);
|
||||
musb_writeb(musb_base, MUSB_DEVCTL, musb->context.devctl);
|
||||
if (musb->context.devctl & MUSB_DEVCTL_SESSION)
|
||||
musb_writeb(musb_base, MUSB_DEVCTL, musb->context.devctl);
|
||||
|
||||
for (i = 0; i < musb->config->num_eps; ++i) {
|
||||
struct musb_hw_ep *hw_ep;
|
||||
|
||||
Reference in New Issue
Block a user