rkwifi: optimize wifi open time
authorhwg <hwg@rock-chips.com>
Sat, 29 Mar 2014 06:54:03 +0000 (14:54 +0800)
committerhwg <hwg@rock-chips.com>
Sat, 29 Mar 2014 06:54:03 +0000 (14:54 +0800)
drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd/bcmsdh_sdmmc_linux.c [changed mode: 0644->0755]
drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd/dhd_custom_gpio.c [changed mode: 0644->0755]
drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd/dhd_gpio.c
drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd/dhd_linux.c [changed mode: 0644->0755]
drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd/dhd_sdio.c [changed mode: 0644->0755]
net/rfkill/rfkill-wlan.c

old mode 100644 (file)
new mode 100755 (executable)
index c981925..bd2137a
@@ -289,12 +289,15 @@ static struct sdio_driver dummy_sdmmc_driver = {
 int sdio_func_reg_notify(void* semaphore)
 {
        notify_semaphore = semaphore;
-       return sdio_register_driver(&dummy_sdmmc_driver);
+       if (notify_semaphore)
+               up(notify_semaphore);
+       return 0;       
+       //return sdio_register_driver(&dummy_sdmmc_driver);
 }
 
 void sdio_func_unreg_notify(void)
 {
-       sdio_unregister_driver(&dummy_sdmmc_driver);
+       //sdio_unregister_driver(&dummy_sdmmc_driver);
 }
 
 #endif /* defined(BCMLXSDMMC) */
old mode 100644 (file)
new mode 100755 (executable)
index 39b7be9..aa1285a
@@ -133,7 +133,7 @@ dhd_customer_gpio_wlan_ctrl(int onoff)
                                __FUNCTION__));
 #ifdef CUSTOMER_HW
                        bcm_wlan_power_on(2);
-                       OSL_DELAY(200);
+                       //OSL_DELAY(200);
 #endif /* CUSTOMER_HW */
 #if defined(CUSTOMER_HW2)
                        wifi_set_power(1, 200);
@@ -157,7 +157,7 @@ dhd_customer_gpio_wlan_ctrl(int onoff)
                        bcm_wlan_power_on(1);
 #endif /* CUSTOMER_HW */
                        /* Lets customer power to get stable */
-                       OSL_DELAY(200);
+                       //OSL_DELAY(200);
                        WL_ERROR(("=========== WLAN placed in POWER ON ========\n"));
                break;
        }
index ecaee23cb4e9b18983526c3561965fec7c1dda08..16cc4934f0a69db08e752319116215865525aa31 100755 (executable)
@@ -46,12 +46,10 @@ void bcm_wlan_power_on(int flag)
        if (flag == 1) {
                printk("======== PULL WL_REG_ON HIGH! ========\n");
                rockchip_wifi_power(1);
-        msleep(100);
         rockchip_wifi_set_carddetect(1);
        } else {
                printk("======== PULL WL_REG_ON HIGH! (flag = %d) ========\n", flag);
                rockchip_wifi_power(1);
-        msleep(100);
        }
 }
 
index 6a3bb3bcdc616951cd391a797b230e2836ba5cba..a4b2c02f0856fd18bdfe2f719ef459896465c32d 100755 (executable)
@@ -229,7 +229,7 @@ int rockchip_wifi_power(int on)
                                }
                        }
                        regulator_put(ldo);
-                       mdelay(100);
+                       msleep(100);
                }
     } else {
                poweron = &mrfkill->pdata->power_n;
@@ -238,20 +238,21 @@ int rockchip_wifi_power(int on)
                if (on){
                        if (gpio_is_valid(poweron->io)) {
                                gpio_set_value(poweron->io, poweron->enable);
+                               msleep(100);
                        }
-                       mdelay(100);
 
                        if (gpio_is_valid(reset->io)) {
                                gpio_set_value(reset->io, reset->enable);
+                               msleep(100);
                        }
-                       mdelay(100);
+
                        LOG("wifi turn on power. %d\n", poweron->io);
                }else{
                        if (gpio_is_valid(poweron->io)) {
                                gpio_set_value(poweron->io, !(poweron->enable));
+                               msleep(100);
                        }
 
-                       mdelay(100);
                        if (gpio_is_valid(reset->io)) {
                                gpio_set_value(reset->io, !(reset->enable));
                        }