mwifiex: use usleep_range instead of udelay
authorYogesh Ashok Powar <yogeshp@marvell.com>
Tue, 13 Mar 2012 02:35:11 +0000 (19:35 -0700)
committerJohn W. Linville <linville@tuxdriver.com>
Tue, 13 Mar 2012 18:54:18 +0000 (14:54 -0400)
For the delay of 10 uSec or more usleep_range is prefered.
Unlike udelay, sleep_range avoids large number of undesired
interrupts.

Ref Documentation/timers/timers-howto.txt

Signed-off-by: Yogesh Ashok Powar <yogeshp@marvell.com>
Signed-off-by: Bing Zhao <bzhao@marvell.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
drivers/net/wireless/mwifiex/pcie.c
drivers/net/wireless/mwifiex/sdio.c

index 4053509..1033f00 100644 (file)
@@ -288,7 +288,7 @@ static int mwifiex_pm_wakeup_card(struct mwifiex_adapter *adapter)
 
        while (mwifiex_pcie_ok_to_access_hw(adapter)) {
                i++;
-               udelay(10);
+               usleep_range(10, 20);
                /* 50ms max wait */
                if (i == 50000)
                        break;
@@ -1088,7 +1088,7 @@ static int mwifiex_pcie_process_cmd_complete(struct mwifiex_adapter *adapter)
                                        card->cmdrsp_buf->len);
                        while (mwifiex_pcie_ok_to_access_hw(adapter) &&
                                                        (count++ < 10))
-                               udelay(50);
+                               usleep_range(50, 60);
                } else {
                        dev_err(adapter->dev, "There is no command but "
                                              "got cmdrsp\n");
@@ -1337,7 +1337,7 @@ static int mwifiex_prog_fw_w_helper(struct mwifiex_adapter *adapter,
                        }
                        if (len)
                                break;
-                       udelay(10);
+                       usleep_range(10, 20);
                }
 
                if (!len) {
index d39d845..fe6fbc1 100644 (file)
@@ -583,7 +583,7 @@ mwifiex_sdio_poll_card_status(struct mwifiex_adapter *adapter, u8 bits)
                else if ((cs & bits) == bits)
                        return 0;
 
-               udelay(10);
+               usleep_range(10, 20);
        }
 
        dev_err(adapter->dev, "poll card status failed, tries = %d\n",
@@ -761,7 +761,7 @@ static int mwifiex_prog_fw_w_helper(struct mwifiex_adapter *adapter,
                        if (len)
                                break;
 
-                       udelay(10);
+                       usleep_range(10, 20);
                }
 
                if (!len) {