Commit 33d51fac authored by Vidhya Govindan's avatar Vidhya Govindan Committed by John W. Linville

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: default avatarVidhya Govindan <vidhya.govindan@nokia.com>
Reviewed-by: default avatarJanne Ylalehto <janne.ylalehto@nokia.com>
Signed-off-by: default avatarLuciano Coelho <luciano.coelho@nokia.com>
Signed-off-by: default avatarKalle Valo <kalle.valo@nokia.com>
Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
parent 72b57344
...@@ -463,8 +463,8 @@ struct acx_beacon_filter_ie_table { ...@@ -463,8 +463,8 @@ struct acx_beacon_filter_ie_table {
u8 pad[3]; u8 pad[3];
} __attribute__ ((packed)); } __attribute__ ((packed));
#define SYNCH_FAIL_DEFAULT_THRESHOLD 5 /* number of beacons */ #define SYNCH_FAIL_DEFAULT_THRESHOLD 10 /* number of beacons */
#define NO_BEACON_DEFAULT_TIMEOUT (100) /* TU */ #define NO_BEACON_DEFAULT_TIMEOUT (500) /* in microseconds */
struct acx_conn_monit_params { struct acx_conn_monit_params {
struct acx_header header; struct acx_header header;
......
...@@ -86,6 +86,14 @@ static int wl1251_event_process(struct wl1251 *wl, struct event_mailbox *mbox) ...@@ -86,6 +86,14 @@ static int wl1251_event_process(struct wl1251 *wl, struct event_mailbox *mbox)
ieee80211_beacon_loss(wl->vif); 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; return 0;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment