aboutsummaryrefslogtreecommitdiffstats
path: root/net/mac80211/ieee80211_i.h
diff options
context:
space:
mode:
authorJuuso Oikarinen <juuso.oikarinen@nokia.com>2010-03-19 01:14:53 -0400
committerJohn W. Linville <linville@tuxdriver.com>2010-03-23 16:51:42 -0400
commit1e4dcd012423b6a28f968a55886d2b27896a1586 (patch)
treec2eadaf6a33175840b2f5d8fb7dd6af1d5be76ed /net/mac80211/ieee80211_i.h
parent43ead78ac48b75aaf47de96fcf10cbf5962f32a6 (diff)
mac80211: Add support for connection monitor in hardware
This patch is based on a RFC patch by Kalle Valo. The wl1271 has a feature which handles the connection monitor logic in hardware, basically sending periodically nullfunc frames and reporting to the host if AP is lost, after attempting to recover by sending probe-requests to the AP. Add support to mac80211 by adding a new flag IEEE80211_HW_CONNECTION_MONITOR which prevents conn_mon_timer from triggering during idle periods, and prevents sending probe-requests to the AP if beacon-loss is indicated by the hardware. Cc: Kalle Valo <kalle.valo@nokia.com> Signed-off-by: Juuso Oikarinen <juuso.oikarinen@nokia.com> Reviewed-by: Johannes Berg <johannes@sipsolutions.net> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'net/mac80211/ieee80211_i.h')
-rw-r--r--net/mac80211/ieee80211_i.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/net/mac80211/ieee80211_i.h b/net/mac80211/ieee80211_i.h
index b84126491ab1..ab369e2a5282 100644
--- a/net/mac80211/ieee80211_i.h
+++ b/net/mac80211/ieee80211_i.h
@@ -327,7 +327,7 @@ struct ieee80211_if_managed {
327 struct work_struct work; 327 struct work_struct work;
328 struct work_struct monitor_work; 328 struct work_struct monitor_work;
329 struct work_struct chswitch_work; 329 struct work_struct chswitch_work;
330 struct work_struct beacon_loss_work; 330 struct work_struct beacon_connection_loss_work;
331 331
332 unsigned long probe_timeout; 332 unsigned long probe_timeout;
333 int probe_send_count; 333 int probe_send_count;
@@ -1156,7 +1156,7 @@ void ieee80211_send_nullfunc(struct ieee80211_local *local,
1156 int powersave); 1156 int powersave);
1157void ieee80211_sta_rx_notify(struct ieee80211_sub_if_data *sdata, 1157void ieee80211_sta_rx_notify(struct ieee80211_sub_if_data *sdata,
1158 struct ieee80211_hdr *hdr); 1158 struct ieee80211_hdr *hdr);
1159void ieee80211_beacon_loss_work(struct work_struct *work); 1159void ieee80211_beacon_connection_loss_work(struct work_struct *work);
1160 1160
1161void ieee80211_wake_queues_by_reason(struct ieee80211_hw *hw, 1161void ieee80211_wake_queues_by_reason(struct ieee80211_hw *hw,
1162 enum queue_stop_reason reason); 1162 enum queue_stop_reason reason);