* [PATCH v2] ath9k: Fix mesh related rx filtering issue for older chips
@ 2012-09-14 14:49 Mohammed Shafi Shajakhan
2012-09-14 15:18 ` Felix Fietkau
0 siblings, 1 reply; 4+ messages in thread
From: Mohammed Shafi Shajakhan @ 2012-09-14 14:49 UTC (permalink / raw)
To: John W. Linville
Cc: linux-wireless, Rodriguez Luis, ath9k-devel, Thomas Wagner,
Javier Cardona, Mohammed Shafi Shajakhan
From: Thomas Wagner <Thomas.Wagner@hs-rm.de>
We need to have the promiscus mode enabled for older
chipsets(i.e, rule out many frames being filtered in the
hardware itself) if 'FIF_OTHER_BSS' flag is set, when we
start the mesh mode. Fix this by enabling promiscus
mode for all the chipsets whose macversion <= AR9160
chipsets. This should fix
https://bugzilla.kernel.org/show_bug.cgi?id=45591
shafi: made the fix generic by having the frame filtering
disabled for chipsets older than AR9280.
Cc: Javier Cardona <javier@cozybit.com>
Signed-off-by: Thomas Wagner <Thomas.Wagner@hs-rm.de>
Signed-off-by: Mohammed Shafi Shajakhan <mohammed@qca.qualcomm.com>
---
drivers/net/wireless/ath/ath9k/recv.c | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/net/wireless/ath/ath9k/recv.c b/drivers/net/wireless/ath/ath9k/recv.c
index 4480c0c..76db0b3 100644
--- a/drivers/net/wireless/ath/ath9k/recv.c
+++ b/drivers/net/wireless/ath/ath9k/recv.c
@@ -424,8 +424,8 @@ u32 ath_calcrxfilter(struct ath_softc *sc)
rfilt |= ATH9K_RX_FILTER_COMP_BAR;
if (sc->nvifs > 1 || (sc->rx.rxfilter & FIF_OTHER_BSS)) {
- /* The following may also be needed for other older chips */
- if (sc->sc_ah->hw_version.macVersion == AR_SREV_VERSION_9160)
+ /* This is needed for older chips, especially for mesh mode */
+ if (sc->sc_ah->hw_version.macVersion <= AR_SREV_VERSION_9160)
rfilt |= ATH9K_RX_FILTER_PROM;
rfilt |= ATH9K_RX_FILTER_MCAST_BCAST_ALL;
}
--
1.7.0.4
^ permalink raw reply related [flat|nested] 4+ messages in thread* Re: [PATCH v2] ath9k: Fix mesh related rx filtering issue for older chips
2012-09-14 14:49 [PATCH v2] ath9k: Fix mesh related rx filtering issue for older chips Mohammed Shafi Shajakhan
@ 2012-09-14 15:18 ` Felix Fietkau
[not found] ` <1518263.XlGm7EvTdD@buri>
0 siblings, 1 reply; 4+ messages in thread
From: Felix Fietkau @ 2012-09-14 15:18 UTC (permalink / raw)
To: Mohammed Shafi Shajakhan
Cc: John W. Linville, linux-wireless, Rodriguez Luis, ath9k-devel,
Thomas Wagner, Javier Cardona
On 2012-09-14 4:49 PM, Mohammed Shafi Shajakhan wrote:
> From: Thomas Wagner <Thomas.Wagner@hs-rm.de>
>
> We need to have the promiscus mode enabled for older
> chipsets(i.e, rule out many frames being filtered in the
> hardware itself) if 'FIF_OTHER_BSS' flag is set, when we
> start the mesh mode. Fix this by enabling promiscus
> mode for all the chipsets whose macversion <= AR9160
> chipsets. This should fix
> https://bugzilla.kernel.org/show_bug.cgi?id=45591
>
> shafi: made the fix generic by having the frame filtering
> disabled for chipsets older than AR9280.
>
> Cc: Javier Cardona <javier@cozybit.com>
> Signed-off-by: Thomas Wagner <Thomas.Wagner@hs-rm.de>
> Signed-off-by: Mohammed Shafi Shajakhan <mohammed@qca.qualcomm.com>
> ---
> drivers/net/wireless/ath/ath9k/recv.c | 4 ++--
> 1 files changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/net/wireless/ath/ath9k/recv.c b/drivers/net/wireless/ath/ath9k/recv.c
> index 4480c0c..76db0b3 100644
> --- a/drivers/net/wireless/ath/ath9k/recv.c
> +++ b/drivers/net/wireless/ath/ath9k/recv.c
> @@ -424,8 +424,8 @@ u32 ath_calcrxfilter(struct ath_softc *sc)
> rfilt |= ATH9K_RX_FILTER_COMP_BAR;
>
> if (sc->nvifs > 1 || (sc->rx.rxfilter & FIF_OTHER_BSS)) {
> - /* The following may also be needed for other older chips */
> - if (sc->sc_ah->hw_version.macVersion == AR_SREV_VERSION_9160)
> + /* This is needed for older chips, especially for mesh mode */
> + if (sc->sc_ah->hw_version.macVersion <= AR_SREV_VERSION_9160)
> rfilt |= ATH9K_RX_FILTER_PROM;
> rfilt |= ATH9K_RX_FILTER_MCAST_BCAST_ALL;
> }
I'm really not sure about this being tied to sc->nvifs. If it's mesh
related, how about just adding a check for the number of mesh interfaces
instead of piggy-backing onto something potentially unrelated.
- Felix
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2012-09-17 15:13 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-09-14 14:49 [PATCH v2] ath9k: Fix mesh related rx filtering issue for older chips Mohammed Shafi Shajakhan
2012-09-14 15:18 ` Felix Fietkau
[not found] ` <1518263.XlGm7EvTdD@buri>
2012-09-17 5:17 ` Mohammed Shafi Shajakhan
2012-09-17 15:12 ` Mohammed Shafi Shajakhan
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).