ChangeSet 1.1729, 2004/05/17 11:13:32-07:00, [EMAIL PROTECTED]

[PATCH] USB: fix MSEC_TO_JIFFIES in usb code

Here are some MSEC_TO_JIFFIES() fixes missed by whoever did it,
plus a minor fix to grab root_hub->serialize() during OHCI
suspend.  (I forgot to cut/paste those lines from resume.)


 drivers/usb/host/ehci-hcd.c |    2 +-
 drivers/usb/host/ehci-hub.c |   10 +++++-----
 drivers/usb/host/ehci.h     |    6 ++----
 drivers/usb/host/ohci-hub.c |    4 ++--
 drivers/usb/host/ohci-pci.c |    3 ++-
 drivers/usb/host/ohci.h     |    6 ++----
 6 files changed, 14 insertions(+), 17 deletions(-)


diff -Nru a/drivers/usb/host/ehci-hcd.c b/drivers/usb/host/ehci-hcd.c
--- a/drivers/usb/host/ehci-hcd.c       Mon May 17 16:37:51 2004
+++ b/drivers/usb/host/ehci-hcd.c       Mon May 17 16:37:51 2004
@@ -769,7 +769,7 @@
                         * and make khubd collect PORT_STAT_C_SUSPEND to
                         * stop that signaling.
                         */
-                       ehci->reset_done [i] = jiffies + MSEC_TO_JIFFIES (20);
+                       ehci->reset_done [i] = jiffies + msecs_to_jiffies (20);
                        mod_timer (&ehci->hcd.rh_timer,
                                        ehci->reset_done [i] + 1);
                        ehci_dbg (ehci, "port %d remote wakeup\n", i + 1);
diff -Nru a/drivers/usb/host/ehci-hub.c b/drivers/usb/host/ehci-hub.c
--- a/drivers/usb/host/ehci-hub.c       Mon May 17 16:37:51 2004
+++ b/drivers/usb/host/ehci-hub.c       Mon May 17 16:37:51 2004
@@ -75,7 +75,7 @@
        (void) handshake (&ehci->regs->status, STS_HALT, STS_HALT, 2000);
 
        root->dev.power.power_state = 3;
-       ehci->next_statechange = jiffies + MSEC_TO_JIFFIES(10);
+       ehci->next_statechange = jiffies + msecs_to_jiffies(10);
        spin_unlock_irq (&ehci->lock);
        return status;
 }
@@ -112,7 +112,7 @@
                temp = readl (&ehci->regs->port_status [i]);
                temp &= ~(PORT_WKOC_E|PORT_WKDISC_E|PORT_WKCONN_E);
                if (temp & PORT_SUSPEND) {
-                       ehci->reset_done [i] = jiffies + MSEC_TO_JIFFIES (20);
+                       ehci->reset_done [i] = jiffies + msecs_to_jiffies (20);
                        temp |= PORT_RESUME;
                }
                writel (temp, &ehci->regs->port_status [i]);
@@ -139,7 +139,7 @@
                writel (ehci->command | temp, &ehci->regs->command);
 
        root->dev.power.power_state = 0;
-       ehci->next_statechange = jiffies + MSEC_TO_JIFFIES(5);
+       ehci->next_statechange = jiffies + msecs_to_jiffies(5);
        ehci->hcd.state = USB_STATE_RUNNING;
        return 0;
 }
@@ -334,7 +334,7 @@
                                writel ((temp & ~PORT_WAKE_BITS) | PORT_RESUME,
                                        &ehci->regs->port_status [wIndex]);
                                ehci->reset_done [wIndex] = jiffies
-                                               + MSEC_TO_JIFFIES (20);
+                                               + msecs_to_jiffies (20);
                        }
                        break;
                case USB_PORT_FEAT_C_SUSPEND:
@@ -514,7 +514,7 @@
                                 * usb 2.0 spec says 50 ms resets on root
                                 */
                                ehci->reset_done [wIndex] = jiffies
-                                               + MSEC_TO_JIFFIES (50);
+                                               + msecs_to_jiffies (50);
                        }
                        writel (temp, &ehci->regs->port_status [wIndex]);
                        break;
diff -Nru a/drivers/usb/host/ehci.h b/drivers/usb/host/ehci.h
--- a/drivers/usb/host/ehci.h   Mon May 17 16:37:51 2004
+++ b/drivers/usb/host/ehci.h   Mon May 17 16:37:51 2004
@@ -596,12 +596,10 @@
 
 /*-------------------------------------------------------------------------*/
 
-#define        MSEC_TO_JIFFIES(msec) ((HZ * (msec) + 999) / 1000)
-
-static inline void msec_delay(int msec)
+static inline void msec_delay(unsigned msec)
 {
        set_current_state(TASK_UNINTERRUPTIBLE);
-       schedule_timeout(MSEC_TO_JIFFIES(msec));
+       schedule_timeout(msecs_to_jiffies(msec));
 }
 
 #ifndef DEBUG
diff -Nru a/drivers/usb/host/ohci-hub.c b/drivers/usb/host/ohci-hub.c
--- a/drivers/usb/host/ohci-hub.c       Mon May 17 16:37:51 2004
+++ b/drivers/usb/host/ohci-hub.c       Mon May 17 16:37:51 2004
@@ -143,7 +143,7 @@
        (void) readl (&ohci->regs->control);
 
        /* no resumes until devices finish suspending */
-       ohci->next_statechange = jiffies + MSEC_TO_JIFFIES (5);
+       ohci->next_statechange = jiffies + msecs_to_jiffies (5);
 
 succeed:
        /* it's not USB_STATE_SUSPENDED unless access to this
@@ -262,7 +262,7 @@
        root->dev.power.power_state = 0;
 
        /* keep it alive for ~5x suspend + resume costs */
-       ohci->next_statechange = jiffies + MSEC_TO_JIFFIES (250);
+       ohci->next_statechange = jiffies + msecs_to_jiffies (250);
 
        /* maybe turn schedules back on */
        enables = 0;
diff -Nru a/drivers/usb/host/ohci-pci.c b/drivers/usb/host/ohci-pci.c
--- a/drivers/usb/host/ohci-pci.c       Mon May 17 16:37:51 2004
+++ b/drivers/usb/host/ohci-pci.c       Mon May 17 16:37:51 2004
@@ -127,8 +127,9 @@
 #ifdef CONFIG_USB_SUSPEND
        (void) usb_suspend_device (hcd->self.root_hub);
 #else
-       /* FIXME lock root hub */
+       down (&hcd->self.root_hub->serialize);
        (void) ohci_hub_suspend (hcd);
+       up (&hcd->self.root_hub->serialize);
 #endif
 
        /* let things settle down a bit */
diff -Nru a/drivers/usb/host/ohci.h b/drivers/usb/host/ohci.h
--- a/drivers/usb/host/ohci.h   Mon May 17 16:37:51 2004
+++ b/drivers/usb/host/ohci.h   Mon May 17 16:37:51 2004
@@ -397,12 +397,10 @@
        ohci->hcd.state = USB_STATE_HALT;
 }
 
-#define        MSEC_TO_JIFFIES(msec) ((HZ * (msec) + 999) / 1000)
-
-static inline void msec_delay(int msec)
+static inline void msec_delay(unsigned msec)
 {
        set_current_state(TASK_UNINTERRUPTIBLE);
-       schedule_timeout(MSEC_TO_JIFFIES(msec));
+       schedule_timeout(msecs_to_jiffies(msec));
 }
 
 #define        FI                      0x2edf          /* 12000 bits per frame (-1) */



-------------------------------------------------------
This SF.Net email is sponsored by: SourceForge.net Broadband
Sign-up now for SourceForge Broadband and get the fastest
6.0/768 connection for only $19.95/mo for the first 3 months!
http://ads.osdn.com/?ad_id%62&alloc_ida84&op=click
_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to