diff options
author | Eliad Peller <eliad@wizery.com> | 2012-08-01 18:44:22 +0300 |
---|---|---|
committer | Luciano Coelho <luca@coelho.fi> | 2012-09-27 12:13:51 +0300 |
commit | d49524d3e8406e3b858650abcf846531a2104120 (patch) | |
tree | fb2109982596084ba2b164e95eb4e57e6c4ae1ac /drivers/net/wireless/ti | |
parent | 11bc97eb902ddac822f32dc5a890d7b6274b754d (diff) | |
download | blackbird-op-linux-d49524d3e8406e3b858650abcf846531a2104120.tar.gz blackbird-op-linux-d49524d3e8406e3b858650abcf846531a2104120.zip |
wlcore: resume() only if sta is associated
mac80211's resume() callback might get called even if
the sta is not associated (but only up). The
resume sequence in this case results in configuring
the wake-up conditions of a non-started role, which
causes fw assertion.
Fix it by bailing out if the STA is not connected
(like we do on suspend()).
Signed-off-by: Eliad Peller <eliad@wizery.com>
Signed-off-by: Luciano Coelho <luca@coelho.fi>
Diffstat (limited to 'drivers/net/wireless/ti')
-rw-r--r-- | drivers/net/wireless/ti/wlcore/main.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/net/wireless/ti/wlcore/main.c b/drivers/net/wireless/ti/wlcore/main.c index a797ce7201b2..ae2b0fd7e558 100644 --- a/drivers/net/wireless/ti/wlcore/main.c +++ b/drivers/net/wireless/ti/wlcore/main.c @@ -1672,6 +1672,9 @@ static void wl1271_configure_resume(struct wl1271 *wl, if ((!is_ap) && (!is_sta)) return; + if (is_sta && !test_bit(WLVIF_FLAG_STA_ASSOCIATED, &wlvif->flags)) + return; + ret = wl1271_ps_elp_wakeup(wl); if (ret < 0) return; |