summaryrefslogtreecommitdiffstats
path: root/sys/dev/ath/if_ath.c
diff options
context:
space:
mode:
authorsam <sam@FreeBSD.org>2003-09-01 03:12:19 +0000
committersam <sam@FreeBSD.org>2003-09-01 03:12:19 +0000
commit61b0f19d61d66e21d7a2b60e555ef14b54c7a5ca (patch)
treebb83fdbc8123729478a365c5ded95528245fa8ca /sys/dev/ath/if_ath.c
parent2a3875111de35589a5b32c989b813346172950d6 (diff)
downloadFreeBSD-src-61b0f19d61d66e21d7a2b60e555ef14b54c7a5ca.zip
FreeBSD-src-61b0f19d61d66e21d7a2b60e555ef14b54c7a5ca.tar.gz
Explicitly enable probe request frame reception when not in station mode;
this is needed for the 5212 which a separate filter bit for these frames. Submitted by: Stephane Laroche <stephane.laroche@colubris.com>
Diffstat (limited to 'sys/dev/ath/if_ath.c')
-rw-r--r--sys/dev/ath/if_ath.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/sys/dev/ath/if_ath.c b/sys/dev/ath/if_ath.c
index fdb0091..9a4c4bd 100644
--- a/sys/dev/ath/if_ath.c
+++ b/sys/dev/ath/if_ath.c
@@ -899,6 +899,8 @@ ath_mode_init(struct ath_softc *sc)
/* receive filter */
rfilt = (ath_hal_getrxfilter(ah) & HAL_RX_FILTER_PHYERR)
| HAL_RX_FILTER_UCAST | HAL_RX_FILTER_BCAST | HAL_RX_FILTER_MCAST;
+ if (ic->ic_opmode != IEEE80211_M_STA)
+ rfilt |= HAL_RX_FILTER_PROBEREQ;
if (ic->ic_opmode != IEEE80211_M_HOSTAP &&
(ifp->if_flags & IFF_PROMISC))
rfilt |= HAL_RX_FILTER_PROM;
@@ -2231,6 +2233,8 @@ ath_newstate(struct ieee80211com *ic, enum ieee80211_state nstate, int arg)
goto bad;
rfilt = (ath_hal_getrxfilter(ah) & HAL_RX_FILTER_PHYERR)
| HAL_RX_FILTER_UCAST | HAL_RX_FILTER_BCAST | HAL_RX_FILTER_MCAST;
+ if (ic->ic_opmode != IEEE80211_M_STA)
+ rfilt |= HAL_RX_FILTER_PROBEREQ;
if (ic->ic_opmode != IEEE80211_M_HOSTAP &&
(ifp->if_flags & IFF_PROMISC))
rfilt |= HAL_RX_FILTER_PROM;
OpenPOWER on IntegriCloud