staging: wfx: align semantic of probe request filter with other filters

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

This patch align the behavior and name of the probe request filter with
the other filters.

Signed-off-by: Jérôme Pouiller <jerome.pouiller@silabs.com>
Link: https://lore.kernel.org/r/20200415161147.69738-14-Jerome.Pouiller@silabs.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
Jérôme Pouiller
2020-04-15 18:11:40 +02:00
committed by Greg Kroah-Hartman
parent b07357e027
commit 6273691fbd
3 changed files with 7 additions and 7 deletions

View File

@@ -90,13 +90,13 @@ int hif_set_macaddr(struct wfx_vif *wvif, u8 *mac)
}
int hif_set_rx_filter(struct wfx_vif *wvif,
bool filter_bssid, bool fwd_probe_req)
bool filter_bssid, bool filter_prbreq)
{
struct hif_mib_rx_filter val = { };
if (filter_bssid)
val.bssid_filter = 1;
if (fwd_probe_req)
if (!filter_prbreq)
val.fwd_probe_req = 1;
return hif_write_mib(wvif->wdev, wvif->id, HIF_MIB_ID_RX_FILTER,
&val, sizeof(val));

View File

@@ -136,7 +136,7 @@ void wfx_update_filtering(struct wfx_vif *wvif)
}
};
hif_set_rx_filter(wvif, wvif->filter_bssid, wvif->fwd_probe_req);
hif_set_rx_filter(wvif, wvif->filter_bssid, wvif->filter_prbreq);
if (!wvif->filter_beacon) {
hif_set_beacon_filter_table(wvif, 0, NULL);
hif_beacon_filter_control(wvif, 0, 1);
@@ -242,11 +242,11 @@ void wfx_configure_filter(struct ieee80211_hw *hw,
}
if (*total_flags & FIF_PROBE_REQ)
wvif->fwd_probe_req = true;
wvif->filter_prbreq = false;
else
wvif->fwd_probe_req = false;
wvif->filter_prbreq = true;
hif_set_rx_filter(wvif, wvif->filter_bssid,
wvif->fwd_probe_req);
wvif->filter_prbreq);
mutex_unlock(&wvif->scan_lock);
}

View File

@@ -89,7 +89,7 @@ struct wfx_vif {
struct work_struct update_tim_work;
bool filter_bssid;
bool fwd_probe_req;
bool filter_prbreq;
bool filter_beacon;
unsigned long uapsd_mask;