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 <rog...@ti.com>
> ---
>  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 <st...@rowland.harvard.edu>

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

Reply via email to