Re: [PATCH RFT] usb: chipidea: host: disable io watchdog

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

 



On 2016-04-25 03:55, Lucas Stach wrote:
> The Chipidea EHCI core seems to behave sanely and doesn't need
> the IO watchdog. This kills off 10 non-deferrable wakeup events
> per second when the controller is otherwise idle.
> 
> Signed-off-by: Lucas Stach <l.stach@xxxxxxxxxxxxxx>

Tested on Vybrid. Timer interrupts went down from ~35 to ~25 per second
(just did a by eye survey using watch -n 1 cat /proc/interrupts). Not
sure what failure to expect, but things just seemed to work as normal.
Did some md5sums on USB mass storage device and used a HID device.

Tested-by: Stefan Agner <stefan@xxxxxxxx>

> ---
> I've only tested this on i.MX6 for now and would like to ask people
> on CC to test on their platforms as they also use the chipidea core.
> ---
>  drivers/usb/chipidea/host.c | 3 +++
>  1 file changed, 3 insertions(+)
> 
> diff --git a/drivers/usb/chipidea/host.c b/drivers/usb/chipidea/host.c
> index 053bac9d983c..96ae69502c86 100644
> --- a/drivers/usb/chipidea/host.c
> +++ b/drivers/usb/chipidea/host.c
> @@ -81,12 +81,15 @@ static int ehci_ci_reset(struct usb_hcd *hcd)
>  {
>  	struct device *dev = hcd->self.controller;
>  	struct ci_hdrc *ci = dev_get_drvdata(dev);
> +	struct ehci_hcd *ehci = hcd_to_ehci(hcd);
>  	int ret;
>  
>  	ret = ehci_setup(hcd);
>  	if (ret)
>  		return ret;
>  
> +	ehci->need_io_watchdog = 0;
> +
>  	ci_platform_configure(ci);
>  
>  	return ret;
--
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