• Felipe Balbi's avatar
    usb: musb: host: rely on port_mode to call musb_start() · be9d3988
    Felipe Balbi authored
    Currently, we're calling musb_start() twice for DRD ports
    in some situations. This has been observed to cause enumeration
    issues after suspend/resume cycles with AM335x.
    
    In order to fix the problem, we just have to fix the check
    on musb_has_gadget() so that it only returns true if
    current mode is Host and ignore the fact that we have or
    not a gadget driver loaded.
    
    Fixes: ae44df2e (usb: musb: call musb_start() only once in OTG mode)
    Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
    Cc: <stable@vger.kernel.org> # v3.11+
    Tested-by: default avatarSekhar Nori <nsekhar@ti.com>
    Signed-off-by: default avatarFelipe Balbi <balbi@ti.com>
    be9d3988
musb_virthub.c 12.2 KB