Re: [PATCH V2] usb: xhci_suspend is not stopping the root hub timer for the shared HCD

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 08/06/2014 09:05 PM, Al Cooper wrote:
> V2 - Restart polling (which will restart the timer) for the shared
> HCD in xhci_resume().
> 
> xhci_suspend() will stop the primary HCD's root hub timer, but leaves
> the shared HCD's timer running. This change adds stopping of the
> shared HCD timer.
> 
> Signed-off-by: Al Cooper <alcooperx@xxxxxxxxx>
> ---
>  drivers/usb/host/xhci.c | 4 ++++
>  1 file changed, 4 insertions(+)
> 
> diff --git a/drivers/usb/host/xhci.c b/drivers/usb/host/xhci.c
> index b6f2117..1557d4f 100644
> --- a/drivers/usb/host/xhci.c
> +++ b/drivers/usb/host/xhci.c
> @@ -871,6 +871,8 @@ int xhci_suspend(struct xhci_hcd *xhci)
>  	xhci_dbg(xhci, "%s: stopping port polling.\n", __func__);
>  	clear_bit(HCD_FLAG_POLL_RH, &hcd->flags);
>  	del_timer_sync(&hcd->rh_timer);
> +	clear_bit(HCD_FLAG_POLL_RH, &xhci->shared_hcd->flags);
> +	del_timer_sync(&xhci->shared_hcd->rh_timer);
>  
>  	spin_lock_irq(&xhci->lock);
>  	clear_bit(HCD_FLAG_HW_ACCESSIBLE, &hcd->flags);
> @@ -1075,6 +1077,8 @@ int xhci_resume(struct xhci_hcd *xhci, bool hibernated)
>  	xhci_dbg(xhci, "%s: starting port polling.\n", __func__);
>  	set_bit(HCD_FLAG_POLL_RH, &hcd->flags);
>  	usb_hcd_poll_rh_status(hcd);
> +	set_bit(HCD_FLAG_POLL_RH, &xhci->shared_hcd->flags);
> +	usb_hcd_poll_rh_status(xhci->shared_hcd);
>  
>  	return retval;
>  }
> 

Looks good, thanks.
Added to my for-usb-next branch in git://git.kernel.org/pub/scm/linux/kernel/git/mnyman/xhci.git

Will send it forward once 3.17-rc1 is out

-Mathias
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux