ath9k: Set RX filter based to allow broadcast Action frame RX
Advertise support for multicast frame registration and update the RX filter based on the recently added FIF_MCAST_ACTION to allow broadcast Action frames to be received. This is needed for Device Provisioning Protocol (DPP) use cases that use broadcast Public Action frames. Signed-off-by: Jouni Malinen <jouni@codeaurora.org> Signed-off-by: Kalle Valo <kvalo@codeaurora.org> Link: https://lore.kernel.org/r/20200426084733.7889-1-jouni@codeaurora.org
This commit is contained in:
parent
b1cb6ad735
commit
c01c320d24
@ -1012,6 +1012,8 @@ static void ath9k_set_hw_capab(struct ath_softc *sc, struct ieee80211_hw *hw)
|
||||
|
||||
wiphy_ext_feature_set(hw->wiphy, NL80211_EXT_FEATURE_CQM_RSSI_LIST);
|
||||
wiphy_ext_feature_set(hw->wiphy, NL80211_EXT_FEATURE_AIRTIME_FAIRNESS);
|
||||
wiphy_ext_feature_set(hw->wiphy,
|
||||
NL80211_EXT_FEATURE_MULTICAST_REGISTRATIONS);
|
||||
}
|
||||
|
||||
int ath9k_init_device(u16 devid, struct ath_softc *sc,
|
||||
|
@ -1476,6 +1476,7 @@ static int ath9k_config(struct ieee80211_hw *hw, u32 changed)
|
||||
FIF_OTHER_BSS | \
|
||||
FIF_BCN_PRBRESP_PROMISC | \
|
||||
FIF_PROBE_REQ | \
|
||||
FIF_MCAST_ACTION | \
|
||||
FIF_FCSFAIL)
|
||||
|
||||
/* FIXME: sc->sc_full_reset ? */
|
||||
|
@ -413,7 +413,8 @@ u32 ath_calcrxfilter(struct ath_softc *sc)
|
||||
if (sc->cur_chandef.width != NL80211_CHAN_WIDTH_20_NOHT)
|
||||
rfilt |= ATH9K_RX_FILTER_COMP_BAR;
|
||||
|
||||
if (sc->cur_chan->nvifs > 1 || (sc->cur_chan->rxfilter & FIF_OTHER_BSS)) {
|
||||
if (sc->cur_chan->nvifs > 1 ||
|
||||
(sc->cur_chan->rxfilter & (FIF_OTHER_BSS | FIF_MCAST_ACTION))) {
|
||||
/* This is needed for older chips */
|
||||
if (sc->sc_ah->hw_version.macVersion <= AR_SREV_VERSION_9160)
|
||||
rfilt |= ATH9K_RX_FILTER_PROM;
|
||||
|
Loading…
Reference in New Issue
Block a user