From f970a4594dbcbfadc951a449ed2cd1dd8ff85515 Mon Sep 17 00:00:00 2001 From: gwl Date: Mon, 19 May 2014 17:56:29 +0800 Subject: [PATCH] WiFi:bcmdhd: add rockchip_wifi_set_carddetect(0) to remove device when turn off wifi. --- .../net/wireless/rockchip_wlan/rkwifi/bcmdhd/bcmsdh_sdmmc.c | 3 ++- drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd/dhd_gpio.c | 2 ++ drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd/rkversion.c | 2 +- 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd/bcmsdh_sdmmc.c b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd/bcmsdh_sdmmc.c index 06cd3ad7ec72..e37d9f7f5c66 100644 --- a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd/bcmsdh_sdmmc.c +++ b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd/bcmsdh_sdmmc.c @@ -370,7 +370,8 @@ sdioh_interrupt_deregister(sdioh_info_t *sd) sd->intr_handler = NULL; sd->intr_handler_arg = NULL; #elif defined(HW_OOB) - sdioh_disable_func_intr(); + if (dhd_download_fw_on_driverload) + sdioh_disable_func_intr(); #endif /* !defined(OOB_INTR_ONLY) */ return SDIOH_API_RC_SUCCESS; } diff --git a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd/dhd_gpio.c b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd/dhd_gpio.c index 16cc4934f0a6..2697f8726541 100755 --- a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd/dhd_gpio.c +++ b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd/dhd_gpio.c @@ -57,6 +57,8 @@ void bcm_wlan_power_off(int flag) { if (flag == 1) { printk("======== Card detection to remove SDIO card! ========\n"); + rockchip_wifi_power(1); + rockchip_wifi_set_carddetect(0); rockchip_wifi_power(0); } else { printk("======== PULL WL_REG_ON LOW! (flag = %d) ========\n", flag); diff --git a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd/rkversion.c b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd/rkversion.c index 4f61c0124ae2..4540186395ac 100644 --- a/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd/rkversion.c +++ b/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd/rkversion.c @@ -10,7 +10,7 @@ */ -const char RKWIFI_DRV_VERSION[] = "4.78.WFD.OOB"; +const char RKWIFI_DRV_VERSION[] = "4.79.WFD.OOB"; const char WIFI_MODULE_NAME[] = ""; const char CONFIG_BCMDHD_FW_PATH[] = ""; -- 2.34.1