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-by: Stefan Agner <stefan@xxxxxxxx> --- 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; -- 2.8.1 -- 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