summaryrefslogtreecommitdiffstats
path: root/drivers/usb/host
diff options
context:
space:
mode:
authorDmitri Epshtein <dima@marvell.com>2009-12-14 16:17:33 +0100
committerGreg Kroah-Hartman <gregkh@suse.de>2010-03-02 23:53:13 +0100
commitd63c66d2d08f52487f3ef32f1c9b1231d848966b (patch)
treea4aa3889c5b655924b1c310e09c874b0231d7d49 /drivers/usb/host
parentUSB: Add call to notify xHC of a device reset. (diff)
downloadlinux-d63c66d2d08f52487f3ef32f1c9b1231d848966b.tar.xz
linux-d63c66d2d08f52487f3ef32f1c9b1231d848966b.zip
USB: ehci: add call of free_cached_itd_list() function in disable_periodic()
Sometimes disable_periodic() stop scan_periodic before than free_cached_itd_list() was called. In such case USB Host stacked during disconnect operation Solution: add call of free_cached_itd_list() function in disable_periodic() Signed-off-by: Dimitry Epshtein <dima@marvell.com> Signed-off-by: Saeed Bishara <saeed@marvell.com> Cc: David Brownell <dbrownell@users.sourceforge.net> Cc: Alan Stern <stern@rowland.harvard.edu> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/usb/host')
-rw-r--r--drivers/usb/host/ehci-sched.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/usb/host/ehci-sched.c b/drivers/usb/host/ehci-sched.c
index 1e391e624c8a..e7a3b087083f 100644
--- a/drivers/usb/host/ehci-sched.c
+++ b/drivers/usb/host/ehci-sched.c
@@ -510,6 +510,8 @@ static int disable_periodic (struct ehci_hcd *ehci)
ehci_writel(ehci, cmd, &ehci->regs->command);
/* posted write ... */
+ free_cached_itd_list(ehci);
+
ehci->next_uframe = -1;
return 0;
}