Re: Missing USB XHCI and EHCI reset for kexec

From: Alan Stern
Date: Tue Apr 15 2014 - 15:05:37 EST


On Tue, 15 Apr 2014, Stefani Seibold wrote:

> > One other thing you can try is to increase the reset timeout in
> > drivers/usb/host/ehci-hub.c. This is under the USB_PORT_FEAT_RESET
> > case in ehci_hub_control(), around line 1225:
> >
> > /*
> > * caller must wait, then call GetPortStatus
> > * usb 2.0 spec says 50 ms resets on root
> > */
> > ehci->reset_done [wIndex] = jiffies
> > + msecs_to_jiffies (50);
> >
> > Increasing the 50 to 100 or more might help.
> >
> > Alan Stern
> >
>
> I tried this, when i increase the value to 1000, the reset and
> enumeration process will be faster after a kexec: 28 Seconds vs. 162
> Seconds.

Even 28 seconds is much longer than it should be. And a 1000-ms long
reset signal is a lot longer than any device should need.

Anyway, since you saw the same problem after unbind and rebind, you
don't have to perform a kexec for testing.

Alan Stern

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/