aboutsummaryrefslogtreecommitdiff
path: root/drivers/net/wireless/wl12xx/wl1251_event.c
diff options
context:
space:
mode:
authorVidhya Govindan <vidhya.govindan@nokia.com>2009-11-17 18:49:23 +0200
committerJohn W. Linville <linville@tuxdriver.com>2009-11-18 17:09:22 -0500
commit33d51facad8360cb9c55fd696431e2a477f16cc1 (patch)
tree7f74accddf8ce730dc7f526e205f5ddda52ebaab /drivers/net/wireless/wl12xx/wl1251_event.c
parent72b57344a2a1f98c6838c2268fdc5ed5fae54cd8 (diff)
wl1251: Increase the beacon loss timeout value and handle regain event
This patch increases the number of beacons to be missed before generating SYNC TIMEOUT event. It increases the beacon timeout period to 500 microseconds, which gives enough time for the firmware to receive probe response or beacon. Also handled the regain event from firmware once it receives a probe response or beacon. Signed-off-by: Vidhya Govindan <vidhya.govindan@nokia.com> Reviewed-by: Janne Ylalehto <janne.ylalehto@nokia.com> Signed-off-by: Luciano Coelho <luciano.coelho@nokia.com> Signed-off-by: Kalle Valo <kalle.valo@nokia.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/wl12xx/wl1251_event.c')
-rw-r--r--drivers/net/wireless/wl12xx/wl1251_event.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/net/wireless/wl12xx/wl1251_event.c b/drivers/net/wireless/wl12xx/wl1251_event.c
index 18c301ddcd7..020d764f9c1 100644
--- a/drivers/net/wireless/wl12xx/wl1251_event.c
+++ b/drivers/net/wireless/wl12xx/wl1251_event.c
@@ -86,6 +86,14 @@ static int wl1251_event_process(struct wl1251 *wl, struct event_mailbox *mbox)
ieee80211_beacon_loss(wl->vif);
}
+ if (vector & REGAINED_BSS_EVENT_ID) {
+ if (wl->psm_requested) {
+ ret = wl1251_ps_set_mode(wl, STATION_POWER_SAVE_MODE);
+ if (ret < 0)
+ return ret;
+ }
+ }
+
return 0;
}