diff options
author | Lachlan McIlroy <lachlan@redback.melbourne.sgi.com> | 2008-12-05 15:27:43 +1100 |
---|---|---|
committer | Lachlan McIlroy <lachlan@redback.melbourne.sgi.com> | 2008-12-05 15:27:43 +1100 |
commit | 14d676f56fad26fd3c31eeff5d4ef8ea4a163571 (patch) | |
tree | 5e740c5931daecf44a6e74c230f2deb291290f4b /drivers/usb/host/ehci.h | |
parent | 797eaed40e1df4a3b9ece6894a71ce2b568bca38 (diff) | |
parent | feaf3848a813a106f163013af6fcf6c4bfec92d9 (diff) | |
download | kernel_samsung_smdk4412-14d676f56fad26fd3c31eeff5d4ef8ea4a163571.tar.gz kernel_samsung_smdk4412-14d676f56fad26fd3c31eeff5d4ef8ea4a163571.tar.bz2 kernel_samsung_smdk4412-14d676f56fad26fd3c31eeff5d4ef8ea4a163571.zip |
Merge git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
Diffstat (limited to 'drivers/usb/host/ehci.h')
-rw-r--r-- | drivers/usb/host/ehci.h | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/drivers/usb/host/ehci.h b/drivers/usb/host/ehci.h index b11798d17ae..c7d4b5a06bd 100644 --- a/drivers/usb/host/ehci.h +++ b/drivers/usb/host/ehci.h @@ -183,16 +183,14 @@ timer_action (struct ehci_hcd *ehci, enum ehci_timer_action action) * the async ring; just the I/O watchdog. Note that if a * SHRINK were pending, OFF would never be requested. */ - enum ehci_timer_action oldactions = ehci->actions; + if (timer_pending(&ehci->watchdog) + && ((BIT(TIMER_ASYNC_SHRINK) | BIT(TIMER_ASYNC_OFF)) + & ehci->actions)) + return; if (!test_and_set_bit (action, &ehci->actions)) { unsigned long t; - if (timer_pending(&ehci->watchdog) - && ((BIT(TIMER_ASYNC_SHRINK) | BIT(TIMER_ASYNC_OFF)) - & oldactions)) - return; - switch (action) { case TIMER_IO_WATCHDOG: t = EHCI_IO_JIFFIES; @@ -208,7 +206,7 @@ timer_action (struct ehci_hcd *ehci, enum ehci_timer_action action) t = DIV_ROUND_UP(EHCI_SHRINK_FRAMES * HZ, 1000) + 1; break; } - mod_timer(&ehci->watchdog, round_jiffies(t + jiffies)); + mod_timer(&ehci->watchdog, t + jiffies); } } |