On Wed, Dec 18, 2013 at 08:23:46PM +0100, Daniel Mack wrote: > Currently, resume and reset is completed when the USB core calls back > the root hub, asking for the port's state. This results in > unpredictable timing of state assertion, which in turn renders some > USB devices unusable after resume. > > Fix this by moving the logic to end the reset and suspend state out of > musb_hub_control() into separate functions called from delayed workers. > GetPortStatus only reports the current state now, without taking any > real action. > > The rh_timeout variable is kept in order to define a minimum time gap > between reset and resume only. > > FWIW, in my case, a Verbatim "STORE N GO" mass storage device won't > resume cleanly without this patch. > > Signed-off-by: Daniel Mack <zonque@xxxxxxxxx> doesn't apply: checking file drivers/usb/musb/musb_core.c Hunk #2 succeeded at 1814 (offset 1 line). Hunk #3 succeeded at 1922 with fuzz 2 (offset 10 lines). Hunk #4 FAILED at 1998. Hunk #5 FAILED at 2061. 2 out of 5 hunks FAILED checking file drivers/usb/musb/musb_core.h checking file drivers/usb/musb/musb_host.h checking file drivers/usb/musb/musb_virthub.c Can you rebase on top of my 'next' branch ? cheers -- balbi
Attachment:
signature.asc
Description: Digital signature