Search Linux Wireless

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

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



From: Jérôme Pouiller <jerome.pouiller@xxxxxxxxxx>

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@xxxxxxxxxx>
---
 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





[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Wireless Personal Area Network]     [Linux Bluetooth]     [Wireless Regulations]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Hiking]     [MIPS Linux]     [ARM Linux]     [Linux RAID]

  Powered by Linux