|
@@ -3140,13 +3140,15 @@ static void ath5k_configure_filter(struct ieee80211_hw *hw,
|
|
|
|
|
|
if (changed_flags & (FIF_PROMISC_IN_BSS | FIF_OTHER_BSS)) {
|
|
|
if (*new_flags & FIF_PROMISC_IN_BSS) {
|
|
|
- rfilt |= AR5K_RX_FILTER_PROM;
|
|
|
__set_bit(ATH_STAT_PROMISC, sc->status);
|
|
|
} else {
|
|
|
__clear_bit(ATH_STAT_PROMISC, sc->status);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ if (test_bit(ATH_STAT_PROMISC, sc->status))
|
|
|
+ rfilt |= AR5K_RX_FILTER_PROM;
|
|
|
+
|
|
|
/* Note, AR5K_RX_FILTER_MCAST is already enabled */
|
|
|
if (*new_flags & FIF_ALLMULTI) {
|
|
|
mfilt[0] = ~0;
|