• Roger Quadros's avatar
    usb: musb: core: Fix remote-wakeup resume · 33f8d75f
    Roger Quadros authored
    During resume don't touch SUSPENDM/RESUME bits of POWER register
    while restoring controller context. These bits might be changed
    by the controller during resume operation and so will be different
    than what they were during suspend.
    
    e.g. SUSPENDM bit is set by software during USB global suspend but
    automatically cleared by the controller during remote wakeup or
    during resume. Setting this bit back while restoring context
    causes undesired behaviour. i.e. Babble interrupt is generated
    and USB is broken.
    Signed-off-by: default avatarRoger Quadros <rogerq@ti.com>
    Signed-off-by: default avatarFelipe Balbi <balbi@ti.com>
    33f8d75f
musb_core.c 64.4 KB