Author: blogic
Date: 2014-12-07 17:53:09 +0100 (Sun, 07 Dec 2014)
New Revision: 43539

Modified:
   
trunk/target/linux/ar71xx/files/drivers/net/ethernet/atheros/ag71xx/ag71xx_ar7240.c
   
trunk/target/linux/ar71xx/files/drivers/net/ethernet/atheros/ag71xx/ag71xx_main.c
Log:
ag71xx: replace delay with sleep calls

I don't see that we're in an atomic context so there's no need to
busy-wait. Therefore replace the delay with sleep calls.
See also Documentation/timers/timers-howto.txt. It states:
"In general, use of mdelay is discouraged and code should
be refactored to allow for the use of msleep."

Signed-off-by: Heiner Kallweit <[email protected]>

Modified: 
trunk/target/linux/ar71xx/files/drivers/net/ethernet/atheros/ag71xx/ag71xx_ar7240.c
===================================================================
--- 
trunk/target/linux/ar71xx/files/drivers/net/ethernet/atheros/ag71xx/ag71xx_ar7240.c
 2014-12-07 16:52:58 UTC (rev 43538)
+++ 
trunk/target/linux/ar71xx/files/drivers/net/ethernet/atheros/ag71xx/ag71xx_ar7240.c
 2014-12-07 16:53:09 UTC (rev 43539)
@@ -445,7 +445,7 @@
                if ((t & mask) == val)
                        return 0;
 
-               msleep(1);
+               usleep_range(1000, 2000);
        }
 
        return -ETIMEDOUT;
@@ -654,7 +654,7 @@
                ar7240sw_disable_port(as, i);
 
        /* Wait for transmit queues to drain. */
-       msleep(2);
+       usleep_range(2000, 3000);
 
        /* Reset the switch. */
        ar7240sw_reg_write(mii, AR7240_REG_MASK_CTRL,

Modified: 
trunk/target/linux/ar71xx/files/drivers/net/ethernet/atheros/ag71xx/ag71xx_main.c
===================================================================
--- 
trunk/target/linux/ar71xx/files/drivers/net/ethernet/atheros/ag71xx/ag71xx_main.c
   2014-12-07 16:52:58 UTC (rev 43538)
+++ 
trunk/target/linux/ar71xx/files/drivers/net/ethernet/atheros/ag71xx/ag71xx_main.c
   2014-12-07 16:53:09 UTC (rev 43539)
@@ -470,18 +470,18 @@
                reset_mask &= ~(AR71XX_RESET_GE0_PHY | AR71XX_RESET_GE1_PHY);
 
                ath79_device_reset_set(reset_phy);
-               mdelay(50);
+               msleep(50);
                ath79_device_reset_clear(reset_phy);
-               mdelay(200);
+               msleep(200);
        }
 
        ag71xx_sb(ag, AG71XX_REG_MAC_CFG1, MAC_CFG1_SR);
        udelay(20);
 
        ath79_device_reset_set(reset_mask);
-       mdelay(100);
+       msleep(100);
        ath79_device_reset_clear(reset_mask);
-       mdelay(200);
+       msleep(200);
 
        ag71xx_hw_setup(ag);
 
_______________________________________________
openwrt-commits mailing list
[email protected]
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-commits

Reply via email to