From: Kalle Valo <kalle.valo@xxxxxxxxx> wl1271 has a feature so that it handles the connection monitor logic in hardware, basically sending periodically nullfunc frames and reporting to the host if AP is lost. Add support to mac80211 by adding a new flag IEEE80211_HW_CONNECTION_MONITOR which prevents conn_mon_timer from triggering during idle periods. Signed-off-by: Kalle Valo <kalle.valo@xxxxxxxxx> --- include/net/mac80211.h | 1 + net/mac80211/mlme.c | 3 +++ 2 files changed, 4 insertions(+), 0 deletions(-) diff --git a/include/net/mac80211.h b/include/net/mac80211.h index 80eb7cc..1d28fcc 100644 --- a/include/net/mac80211.h +++ b/include/net/mac80211.h @@ -975,6 +975,7 @@ enum ieee80211_hw_flags { IEEE80211_HW_SUPPORTS_DYNAMIC_SMPS = 1<<16, IEEE80211_HW_SUPPORTS_UAPSD = 1<<17, IEEE80211_HW_REPORTS_TX_ACK_STATUS = 1<<18, + IEEE80211_HW_CONNECTION_MONITOR = 1<<19, }; /** diff --git a/net/mac80211/mlme.c b/net/mac80211/mlme.c index 4b9596f..3fa8e6a 100644 --- a/net/mac80211/mlme.c +++ b/net/mac80211/mlme.c @@ -850,6 +850,9 @@ void ieee80211_sta_rx_notify(struct ieee80211_sub_if_data *sdata, if (is_multicast_ether_addr(hdr->addr1)) return; + if (sdata->local->hw.flags & IEEE80211_HW_CONNECTION_MONITOR) + return; + mod_timer(&sdata->u.mgd.conn_mon_timer, round_jiffies_up(jiffies + IEEE80211_CONNECTION_IDLE_TIME)); } -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html