Re: [PATCH] USB: EHCI: Fix resume signalling on remote wakeup

From: Alan Stern
Date: Tue Jul 09 2013 - 11:24:47 EST


On Tue, 9 Jul 2013, Roger Quadros wrote:

> Set the ehci->resuming flag for the port we receive a remote
> wakeup on so that resume signalling can be completed.
>
> Without this, the root hub timer will not fire again to check
> if the resume was completed and there will be a never-ending wait on
> on the port.
>
> This effect is only observed if the HUB IRQ IN does not come after we
> have initiated the port resume.
>
> Signed-off-by: Roger Quadros <rogerq@xxxxxx>
> ---
> drivers/usb/host/ehci-hub.c | 1 +
> 1 files changed, 1 insertions(+), 0 deletions(-)
>
> diff --git a/drivers/usb/host/ehci-hub.c b/drivers/usb/host/ehci-hub.c
> index 9ab4a4d..ca6289b 100644
> --- a/drivers/usb/host/ehci-hub.c
> +++ b/drivers/usb/host/ehci-hub.c
> @@ -858,6 +858,7 @@ static int ehci_hub_control (
> ehci->reset_done[wIndex] = jiffies
> + msecs_to_jiffies(20);
> usb_hcd_start_port_resume(&hcd->self, wIndex);
> + set_bit(wIndex, &ehci->resuming_ports);
> /* check the port again */
> mod_timer(&ehci_to_hcd(ehci)->rh_timer,
> ehci->reset_done[wIndex]);

Acked-by: Alan Stern <stern@xxxxxxxxxxxxxxxxxxx>

--
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/