summaryrefslogtreecommitdiff
path: root/drivers/usb/host/ehci-q.c
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2013-03-27 13:52:49 -0400
committerDavid S. Miller <davem@davemloft.net>2013-03-27 13:52:49 -0400
commite2a553dbf18a5177fdebe29495c32a8e7fd3a4db (patch)
tree5ccb3d498325a7aaf93f49549eca03cb7861ca1c /drivers/usb/host/ehci-q.c
parent7559d97993ae7d552c96313155286f372cf4cf7c (diff)
parenta8c45289f215e137825bf9630d0abb41c1dc41ff (diff)
downloadolio-linux-3.10-e2a553dbf18a5177fdebe29495c32a8e7fd3a4db.tar.xz
olio-linux-3.10-e2a553dbf18a5177fdebe29495c32a8e7fd3a4db.zip
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
Conflicts: include/net/ipip.h The changes made to ipip.h in 'net' were already included in 'net-next' before that header was moved to another location. Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/usb/host/ehci-q.c')
-rw-r--r--drivers/usb/host/ehci-q.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/drivers/usb/host/ehci-q.c b/drivers/usb/host/ehci-q.c
index 5464665f0b6..23d13690428 100644
--- a/drivers/usb/host/ehci-q.c
+++ b/drivers/usb/host/ehci-q.c
@@ -1316,6 +1316,19 @@ static void unlink_empty_async(struct ehci_hcd *ehci)
}
}
+/* The root hub is suspended; unlink all the async QHs */
+static void unlink_empty_async_suspended(struct ehci_hcd *ehci)
+{
+ struct ehci_qh *qh;
+
+ while (ehci->async->qh_next.qh) {
+ qh = ehci->async->qh_next.qh;
+ WARN_ON(!list_empty(&qh->qtd_list));
+ single_unlink_async(ehci, qh);
+ }
+ start_iaa_cycle(ehci, false);
+}
+
/* makes sure the async qh will become idle */
/* caller must own ehci->lock */