aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/usb/host/ehci-au1xxx.c
diff options
context:
space:
mode:
authorManuel Lauss <manuel.lauss@googlemail.com>2010-03-08 14:43:32 -0500
committerGreg Kroah-Hartman <gregkh@suse.de>2010-05-20 16:21:31 -0400
commit9757de384451a606af8c722213cb973192cbbd1b (patch)
tree33c7bf839d702d9c1a35ee68a8a6a96591bc1723 /drivers/usb/host/ehci-au1xxx.c
parent0ede76fcec5415ef82a423a95120286895822e2d (diff)
USB: ehci-au1xxx does not need EHCI IO watchdog
I've been running variations of this patch for well over a year now; my usual zoo of test devices didn't trigger any ill effects even under heavy load. As a nice sideeffect idle-wakeups are reduced from 20/s to about 2/s (EHCI hub with mouse and kbd). Signed-off-by: Manuel Lauss <manuel.lauss@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/usb/host/ehci-au1xxx.c')
-rw-r--r--drivers/usb/host/ehci-au1xxx.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/drivers/usb/host/ehci-au1xxx.c b/drivers/usb/host/ehci-au1xxx.c
index e3a74e75e822..7a27b7c4ee84 100644
--- a/drivers/usb/host/ehci-au1xxx.c
+++ b/drivers/usb/host/ehci-au1xxx.c
@@ -69,6 +69,15 @@ static void au1xxx_stop_ehc(void)
69 au_sync(); 69 au_sync();
70} 70}
71 71
72static int au1xxx_ehci_setup(struct usb_hcd *hcd)
73{
74 struct ehci_hcd *ehci = hcd_to_ehci(hcd);
75 int ret = ehci_init(hcd);
76
77 ehci->need_io_watchdog = 0;
78 return ret;
79}
80
72static const struct hc_driver ehci_au1xxx_hc_driver = { 81static const struct hc_driver ehci_au1xxx_hc_driver = {
73 .description = hcd_name, 82 .description = hcd_name,
74 .product_desc = "Au1xxx EHCI", 83 .product_desc = "Au1xxx EHCI",
@@ -86,7 +95,7 @@ static const struct hc_driver ehci_au1xxx_hc_driver = {
86 * FIXME -- ehci_init() doesn't do enough here. 95 * FIXME -- ehci_init() doesn't do enough here.
87 * See ehci-ppc-soc for a complete implementation. 96 * See ehci-ppc-soc for a complete implementation.
88 */ 97 */
89 .reset = ehci_init, 98 .reset = au1xxx_ehci_setup,
90 .start = ehci_run, 99 .start = ehci_run,
91 .stop = ehci_stop, 100 .stop = ehci_stop,
92 .shutdown = ehci_shutdown, 101 .shutdown = ehci_shutdown,