diff options
author | Javier Cardona <javier@cozybit.com> | 2009-08-20 22:12:07 -0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2009-08-28 14:40:24 -0400 |
commit | 5eb6ba83aa326e2f2cf9109d20df5d6a497b36bb (patch) | |
tree | af16565f9e4dd6823662ad32f8125d68331553b9 /drivers/net/wireless/ath | |
parent | 9e03fdfd05e733e1136d431973625b174029c5e6 (diff) |
ath9k: Add support FIF_OTHER_BSS filtering mode.
Support for FIF_OTHER_BSS was missing. This patch adds support for this
filtering mode which in turn resolves a problem where mesh interfaces would not
receive broadcast traffic.
Signed-off-by: Javier Cardona <javier@cozybit.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/ath')
-rw-r--r-- | drivers/net/wireless/ath/ath9k/recv.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/drivers/net/wireless/ath/ath9k/recv.c b/drivers/net/wireless/ath/ath9k/recv.c index 7b62c220d5fd..52e62daad3ce 100644 --- a/drivers/net/wireless/ath/ath9k/recv.c +++ b/drivers/net/wireless/ath/ath9k/recv.c | |||
@@ -423,11 +423,12 @@ u32 ath_calcrxfilter(struct ath_softc *sc) | |||
423 | if (sc->rx.rxfilter & FIF_PSPOLL) | 423 | if (sc->rx.rxfilter & FIF_PSPOLL) |
424 | rfilt |= ATH9K_RX_FILTER_PSPOLL; | 424 | rfilt |= ATH9K_RX_FILTER_PSPOLL; |
425 | 425 | ||
426 | if (sc->sec_wiphy) { | 426 | if (sc->sec_wiphy || (sc->rx.rxfilter & FIF_OTHER_BSS)) { |
427 | /* TODO: only needed if more than one BSSID is in use in | 427 | /* TODO: only needed if more than one BSSID is in use in |
428 | * station/adhoc mode */ | 428 | * station/adhoc mode */ |
429 | /* TODO: for older chips, may need to add ATH9K_RX_FILTER_PROM | 429 | /* The following may also be needed for other older chips */ |
430 | */ | 430 | if (sc->sc_ah->hw_version.macVersion == AR_SREV_VERSION_9160) |
431 | rfilt |= ATH9K_RX_FILTER_PROM; | ||
431 | rfilt |= ATH9K_RX_FILTER_MCAST_BCAST_ALL; | 432 | rfilt |= ATH9K_RX_FILTER_MCAST_BCAST_ALL; |
432 | } | 433 | } |
433 | 434 | ||