diff options
author | Pontus Fuchs <pontus.fuchs@gmail.com> | 2014-02-12 23:04:43 +0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2014-02-14 00:20:17 +0400 |
commit | 4bda7faf619a609534bb99c860a0a32ec40b8fb6 (patch) | |
tree | 14a6dd93dbac13b9c166dfa1aac78942077e2f1b /drivers/net/wireless/ath/wcn36xx/main.c | |
parent | 546c505bdc64c471be33a5ab525458431d718f5e (diff) | |
download | linux-4bda7faf619a609534bb99c860a0a32ec40b8fb6.tar.xz |
wcn36xx: Cache nv to avoid request_firmware on resume path
If wowlan if off mac80211 will stop / start the driver on suspend /
resume. This causes problems on resume since request_firmware is called
from start. Fix this by caching the nv.
Signed-off-by: Pontus Fuchs <pontus.fuchs@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/ath/wcn36xx/main.c')
-rw-r--r-- | drivers/net/wireless/ath/wcn36xx/main.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/net/wireless/ath/wcn36xx/main.c b/drivers/net/wireless/ath/wcn36xx/main.c index e64a6784079e..a801aaa76037 100644 --- a/drivers/net/wireless/ath/wcn36xx/main.c +++ b/drivers/net/wireless/ath/wcn36xx/main.c @@ -17,6 +17,7 @@ #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt #include <linux/module.h> +#include <linux/firmware.h> #include <linux/platform_device.h> #include "wcn36xx.h" @@ -992,6 +993,7 @@ static int wcn36xx_remove(struct platform_device *pdev) struct wcn36xx *wcn = hw->priv; wcn36xx_dbg(WCN36XX_DBG_MAC, "platform remove\n"); + release_firmware(wcn->nv); mutex_destroy(&wcn->hal_mutex); ieee80211_unregister_hw(hw); |