madwifi: fix selection of phy errors in the rx filter
[openwrt/svn-archive/archive.git] / package / madwifi / patches / 423-phyerr_handling.patch
1 --- a/ath/if_ath.c
2 +++ b/ath/if_ath.c
3 @@ -4390,13 +4390,12 @@ ath_key_update_end(struct ieee80211vap *
4 static u_int32_t
5 ath_calcrxfilter(struct ath_softc *sc)
6 {
7 -#define RX_FILTER_PRESERVE (HAL_RX_FILTER_PHYERR | HAL_RX_FILTER_PHYRADAR)
8 struct ieee80211com *ic = &sc->sc_ic;
9 struct net_device *dev = ic->ic_dev;
10 struct ath_hal *ah = sc->sc_ah;
11 u_int32_t rfilt;
12
13 - rfilt = (ath_hal_getrxfilter(ah) & RX_FILTER_PRESERVE) |
14 + rfilt = ath_hal_getrxfilter(ah) |
15 HAL_RX_FILTER_UCAST | HAL_RX_FILTER_BCAST |
16 HAL_RX_FILTER_MCAST;
17 if (ic->ic_opmode != IEEE80211_M_STA)
18 @@ -4415,9 +4414,8 @@ ath_calcrxfilter(struct ath_softc *sc)
19 if (sc->sc_hasintmit && !sc->sc_needmib && ath_hal_getintmit(ah, NULL))
20 rfilt |= HAL_RX_FILTER_PHYERR;
21 if (sc->sc_curchan.privFlags & CHANNEL_DFS)
22 - rfilt |= (HAL_RX_FILTER_PHYERR | HAL_RX_FILTER_PHYRADAR);
23 + rfilt |= HAL_RX_FILTER_PHYRADAR;
24 return rfilt;
25 -#undef RX_FILTER_PRESERVE
26 }
27
28 /*