aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/usb/host/ehci-sched.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/usb/host/ehci-sched.c')
-rw-r--r--drivers/usb/host/ehci-sched.c8
1 files changed, 2 insertions, 6 deletions
diff --git a/drivers/usb/host/ehci-sched.c b/drivers/usb/host/ehci-sched.c
index e7a2dbd27b1e..c833febf8df0 100644
--- a/drivers/usb/host/ehci-sched.c
+++ b/drivers/usb/host/ehci-sched.c
@@ -620,17 +620,13 @@ static void start_unlink_intr(struct ehci_hcd *ehci, struct ehci_qh *qh)
620 qh->unlink_cycle = ehci->intr_unlink_cycle; 620 qh->unlink_cycle = ehci->intr_unlink_cycle;
621 621
622 /* New entries go at the end of the intr_unlink list */ 622 /* New entries go at the end of the intr_unlink list */
623 if (ehci->intr_unlink) 623 list_add_tail(&qh->unlink_node, &ehci->intr_unlink);
624 ehci->intr_unlink_last->unlink_next = qh;
625 else
626 ehci->intr_unlink = qh;
627 ehci->intr_unlink_last = qh;
628 624
629 if (ehci->intr_unlinking) 625 if (ehci->intr_unlinking)
630 ; /* Avoid recursive calls */ 626 ; /* Avoid recursive calls */
631 else if (ehci->rh_state < EHCI_RH_RUNNING) 627 else if (ehci->rh_state < EHCI_RH_RUNNING)
632 ehci_handle_intr_unlinks(ehci); 628 ehci_handle_intr_unlinks(ehci);
633 else if (ehci->intr_unlink == qh) { 629 else if (ehci->intr_unlink.next == &qh->unlink_node) {
634 ehci_enable_event(ehci, EHCI_HRTIMER_UNLINK_INTR, true); 630 ehci_enable_event(ehci, EHCI_HRTIMER_UNLINK_INTR, true);
635 ++ehci->intr_unlink_cycle; 631 ++ehci->intr_unlink_cycle;
636 } 632 }