[PATCH 12/20] staging: wfx: align semantic of beacon filter with other filters

Jerome Pouiller
2020-04-15T16:14:42Z

Filters provided by HIF API are sometime inclusive, sometime exclusive.

This patch align the behavior and name of the beacon filter with the
other filters. Also avoid double negation: "disable filter"

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
---
drivers/staging/wfx/sta.c | 10 +++++-----
drivers/staging/wfx/wfx.h | 2 +-
2 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/drivers/staging/wfx/sta.c b/drivers/staging/wfx/sta.c
index 8d2365a2e35b..963cac83b6a8 100644
--- a/drivers/staging/wfx/sta.c
+++ b/drivers/staging/wfx/sta.c
@@ -137,7 +137,7 @@ void wfx_update_filtering(struct wfx_vif *wvif)
};

hif_set_rx_filter(wvif, wvif->filter_bssid, wvif->fwd_probe_req);
- if (wvif->disable_beacon_filter) {
+ if (!wvif->filter_beacon) {
hif_set_beacon_filter_table(wvif, 0, NULL);
hif_beacon_filter_control(wvif, 0, 1);
} else {
@@ -215,9 +215,9 @@ void wfx_configure_filter(struct ieee80211_hw *hw,
// Note: FIF_BCN_PRBRESP_PROMISC covers probe response and
// beacons from other BSS
if (*total_flags & FIF_BCN_PRBRESP_PROMISC)
- wvif->disable_beacon_filter = true;
+ wvif->filter_beacon = false;
else
- wvif->disable_beacon_filter = false;
+ wvif->filter_beacon = true;

if (*total_flags & FIF_ALLMULTI) {
wvif->mcast_filter.enable = false;
@@ -504,7 +504,7 @@ static void wfx_do_join(struct wfx_vif *wvif)
* Disable filtering temporary to make sure the stack
* receives at least one
*/
- wvif->disable_beacon_filter = true;
+ wvif->filter_beacon = false;
wfx_update_filtering(wvif);
}
wfx_tx_unlock(wvif->wdev);
@@ -706,7 +706,7 @@ void wfx_bss_info_changed(struct ieee80211_hw *hw,
info->dtim_period);
// We temporary forwarded beacon for join process. It is now no
// more necessary.
- wvif->disable_beacon_filter = false;
+ wvif->filter_beacon = true;
wfx_update_filtering(wvif);
}

diff --git a/drivers/staging/wfx/wfx.h b/drivers/staging/wfx/wfx.h
index a69d9c9c37b6..53ed4c137b19 100644
--- a/drivers/staging/wfx/wfx.h
+++ b/drivers/staging/wfx/wfx.h
@@ -90,7 +90,7 @@ struct wfx_vif {

bool filter_bssid;
bool fwd_probe_req;
- bool disable_beacon_filter;
+ bool filter_beacon;

unsigned long uapsd_mask;
struct hif_req_set_bss_params bss_params;
--
2.25.1