diff options
author | Juuso Oikarinen <juuso.oikarinen@nokia.com> | 2010-09-30 10:43:27 +0200 |
---|---|---|
committer | Luciano Coelho <luciano.coelho@nokia.com> | 2010-10-05 16:27:42 +0300 |
commit | d25611da0c75c4b0f72c73d66887d0470aacef40 (patch) | |
tree | 398e8a3286718a02d0ab58ce9e8d6f5b813a4fae /drivers/net/wireless/wl12xx/wl1271_main.c | |
parent | 117b38d0b9d3efb0adc3e636e73fc67bb53a13d1 (diff) | |
download | op-kernel-dev-d25611da0c75c4b0f72c73d66887d0470aacef40.zip op-kernel-dev-d25611da0c75c4b0f72c73d66887d0470aacef40.tar.gz |
wl1271: Indicate disconnection on hardware failure
In the event of a hardware failure, reconfiguring a live connection back
with the wl1271 chip does not work as expected. The chip has management
features which require setting up the association from scratch to work
correctly. To ensure this is done every time, in managed mode, when associated,
indicate connection loss to the mac80211 before asking to reconfigure the
hardware.
Signed-off-by: Juuso Oikarinen <juuso.oikarinen@nokia.com>
Tested-by: Tuomas Katila <ext-tuomas.2.katila@nokia.com>
Reviewed-by: Luciano Coelho <luciano.coelho@nokia.com>
Signed-off-by: Luciano Coelho <luciano.coelho@nokia.com>
Diffstat (limited to 'drivers/net/wireless/wl12xx/wl1271_main.c')
-rw-r--r-- | drivers/net/wireless/wl12xx/wl1271_main.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/net/wireless/wl12xx/wl1271_main.c b/drivers/net/wireless/wl12xx/wl1271_main.c index 760a581..d826b66 100644 --- a/drivers/net/wireless/wl12xx/wl1271_main.c +++ b/drivers/net/wireless/wl12xx/wl1271_main.c @@ -636,6 +636,9 @@ static void wl1271_recovery_work(struct work_struct *work) wl1271_info("Hardware recovery in progress."); + if (test_bit(WL1271_FLAG_STA_ASSOCIATED, &wl->flags)) + ieee80211_connection_loss(wl->vif); + /* reboot the chipset */ __wl1271_op_remove_interface(wl); ieee80211_restart_hw(wl->hw); |