Index: drivers/staging/brcm80211/brcmfmac/wl_cfg80211.c |
diff --git a/drivers/staging/brcm80211/brcmfmac/wl_cfg80211.c b/drivers/staging/brcm80211/brcmfmac/wl_cfg80211.c |
index 375e378c0be7da88acec8232127f3bf455027c7b..95bac442fe1737a32d375f4060a7090fc4bc4d4b 100644 |
--- a/drivers/staging/brcm80211/brcmfmac/wl_cfg80211.c |
+++ b/drivers/staging/brcm80211/brcmfmac/wl_cfg80211.c |
@@ -40,6 +40,10 @@ |
#include <linux/firmware.h> |
#include <wl_cfg80211.h> |
+#if defined(CONFIG_PM_SLEEP) |
+extern volatile bool dhd_mmc_suspend; |
ggg
2011/04/07 20:28:58
I think dhd_mmc_suspend prototype belongs in brcmf
|
+#endif /* defined(CONFIG_PM_SLEEP) */ |
+ |
void sdioh_sdio_set_host_pm_flags(int flag); |
static struct sdio_func *cfg80211_sdio_func; |
@@ -1967,7 +1971,10 @@ wl_cfg80211_set_bitrate_mask(struct wiphy *wiphy, struct net_device *dev, |
static s32 wl_cfg80211_resume(struct wiphy *wiphy) |
{ |
s32 err = 0; |
- |
+ |
+#if defined(CONFIG_PM_SLEEP) |
+ dhd_mmc_suspend = false; |
+#endif /* defined(CONFIG_PM_SLEEP) */ |
CHECK_SYS_UP(); |
wl_invoke_iscan(wiphy_to_wl(wiphy)); |
@@ -1993,7 +2000,10 @@ static s32 wl_cfg80211_suspend(struct wiphy *wiphy) |
sdioh_sdio_set_host_pm_flags(MMC_PM_KEEP_POWER); |
- return err; |
+#if defined(CONFIG_PM_SLEEP) |
+ dhd_mmc_suspend = true; |
+#endif /* defined(CONFIG_PM_SLEEP) */ |
+ return err; |
} |
static __used s32 |