From: Jérôme Pouiller <jerome.pouiller@xxxxxxxxxx> Device is able to automatically reply to probe request (therefore, the probe requests are not forwarded to host). This feature is enabled by wfx_start_ap(). However, further calls to wfx_configure_filter() can disable it. So, relocate the handling of probe request filtering in wfx_configure_filter(). Note that wfx_configure_filter() is always called by mac80211 when an AP start. Signed-off-by: Jérôme Pouiller <jerome.pouiller@xxxxxxxxxx> --- drivers/staging/wfx/sta.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/drivers/staging/wfx/sta.c b/drivers/staging/wfx/sta.c index 0b2ef2d3023b..b785b1b7d583 100644 --- a/drivers/staging/wfx/sta.c +++ b/drivers/staging/wfx/sta.c @@ -241,6 +241,13 @@ void wfx_configure_filter(struct ieee80211_hw *hw, else wvif->filter_bssid = true; + // In AP mode, chip can reply to probe request itself + if (*total_flags & FIF_PROBE_REQ && + wvif->vif->type == NL80211_IFTYPE_AP) { + dev_dbg(wdev->dev, "do not forward probe request in AP mode\n"); + *total_flags &= ~FIF_PROBE_REQ; + } + if (*total_flags & FIF_PROBE_REQ) wfx_fwd_probe_req(wvif, true); else @@ -577,7 +584,6 @@ int wfx_start_ap(struct ieee80211_hw *hw, struct ieee80211_vif *vif) wvif->state = WFX_STATE_AP; wfx_update_filtering(wvif); wfx_upload_ap_templates(wvif); - wfx_fwd_probe_req(wvif, false); hif_start(wvif, &vif->bss_conf, wvif->channel); return 0; } -- 2.25.1 _______________________________________________ devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel