All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] rt2x00: rt2800lib: disable HT40 for now as it causes reception problems
@ 2010-04-23 13:05 Helmut Schaa
  2010-04-23 15:21 ` Gertjan van Wingerde
  0 siblings, 1 reply; 3+ messages in thread
From: Helmut Schaa @ 2010-04-23 13:05 UTC (permalink / raw)
  To: John Linville
  Cc: Ivo van Doorn, Gertjan van Wingerde, linux-wireless, rt2x00 Users List

Disable HT40 support for now as it causes rx problems with HT40 capable
11n APs (when mac80211 enables HT40, rx is completely disfunctional).

Once the rt2800 HT code is capable of using HT40 we should enable the
flag again.

I only tested this patch with a rt305x SoC device, nevertheless the
patch disables HT40 also on PCI and USB rt2800 devices.

Signed-off-by: Helmut Schaa <helmut.schaa@googlemail.com>
---

Using this patch I was able to associate a rt305x SoC device with my 11n
capable AP using WPA and the connection basically works although I see lots
of retried frames when sniffing the wireless traffic.

If someone already had success with rt2800 and HT40 capable APs we should
consider to only conditionally unset the HT40 flag for 305x SoC devices.

 drivers/net/wireless/rt2x00/rt2800lib.c |    5 ++++-
 1 files changed, 4 insertions(+), 1 deletions(-)

diff --git a/drivers/net/wireless/rt2x00/rt2800lib.c b/drivers/net/wireless/rt2x00/rt2800lib.c
index 2648f31..aa02ff6 100644
--- a/drivers/net/wireless/rt2x00/rt2800lib.c
+++ b/drivers/net/wireless/rt2x00/rt2800lib.c
@@ -2318,8 +2318,11 @@ int rt2800_probe_hw_mode(struct rt2x00_dev *rt2x00dev)
 	else
 		spec->ht.ht_supported = false;
 
+	/*
+	 * Don't set IEEE80211_HT_CAP_SUP_WIDTH_20_40 for now as it causes
+	 * reception problems with HT40 capable 11n APs
+	 */
 	spec->ht.cap =
-	    IEEE80211_HT_CAP_SUP_WIDTH_20_40 |
 	    IEEE80211_HT_CAP_GRN_FLD |
 	    IEEE80211_HT_CAP_SGI_20 |
 	    IEEE80211_HT_CAP_SGI_40 |
-- 
1.6.4.2


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH] rt2x00: rt2800lib: disable HT40 for now as it causes reception problems
  2010-04-23 13:05 [PATCH] rt2x00: rt2800lib: disable HT40 for now as it causes reception problems Helmut Schaa
@ 2010-04-23 15:21 ` Gertjan van Wingerde
  2010-04-23 18:08   ` Ivo van Doorn
  0 siblings, 1 reply; 3+ messages in thread
From: Gertjan van Wingerde @ 2010-04-23 15:21 UTC (permalink / raw)
  To: Helmut Schaa
  Cc: John Linville, Ivo van Doorn, linux-wireless, rt2x00 Users List

On 04/23/10 15:05, Helmut Schaa wrote:
> Disable HT40 support for now as it causes rx problems with HT40 capable
> 11n APs (when mac80211 enables HT40, rx is completely disfunctional).
> 
> Once the rt2800 HT code is capable of using HT40 we should enable the
> flag again.
> 
> I only tested this patch with a rt305x SoC device, nevertheless the
> patch disables HT40 also on PCI and USB rt2800 devices.
> 
> Signed-off-by: Helmut Schaa <helmut.schaa@googlemail.com>

I can confirm that this also helps for PCI and USB devices.
With this patch applied all my rt28xx and rt30xx based devices starting working correctly.

So, definately,

Acked-by: Gertjan van Wingerde <gwingerde@gmail.com>

> ---
> 
> Using this patch I was able to associate a rt305x SoC device with my 11n
> capable AP using WPA and the connection basically works although I see lots
> of retried frames when sniffing the wireless traffic.
> 
> If someone already had success with rt2800 and HT40 capable APs we should
> consider to only conditionally unset the HT40 flag for 305x SoC devices.
> 
>  drivers/net/wireless/rt2x00/rt2800lib.c |    5 ++++-
>  1 files changed, 4 insertions(+), 1 deletions(-)
> 
> diff --git a/drivers/net/wireless/rt2x00/rt2800lib.c b/drivers/net/wireless/rt2x00/rt2800lib.c
> index 2648f31..aa02ff6 100644
> --- a/drivers/net/wireless/rt2x00/rt2800lib.c
> +++ b/drivers/net/wireless/rt2x00/rt2800lib.c
> @@ -2318,8 +2318,11 @@ int rt2800_probe_hw_mode(struct rt2x00_dev *rt2x00dev)
>  	else
>  		spec->ht.ht_supported = false;
>  
> +	/*
> +	 * Don't set IEEE80211_HT_CAP_SUP_WIDTH_20_40 for now as it causes
> +	 * reception problems with HT40 capable 11n APs
> +	 */
>  	spec->ht.cap =
> -	    IEEE80211_HT_CAP_SUP_WIDTH_20_40 |
>  	    IEEE80211_HT_CAP_GRN_FLD |
>  	    IEEE80211_HT_CAP_SGI_20 |
>  	    IEEE80211_HT_CAP_SGI_40 |


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] rt2x00: rt2800lib: disable HT40 for now as it causes reception problems
  2010-04-23 15:21 ` Gertjan van Wingerde
@ 2010-04-23 18:08   ` Ivo van Doorn
  0 siblings, 0 replies; 3+ messages in thread
From: Ivo van Doorn @ 2010-04-23 18:08 UTC (permalink / raw)
  To: Gertjan van Wingerde
  Cc: Helmut Schaa, John Linville, linux-wireless, rt2x00 Users List

On Friday 23 April 2010, Gertjan van Wingerde wrote:
> On 04/23/10 15:05, Helmut Schaa wrote:
> > Disable HT40 support for now as it causes rx problems with HT40 capable
> > 11n APs (when mac80211 enables HT40, rx is completely disfunctional).
> > 
> > Once the rt2800 HT code is capable of using HT40 we should enable the
> > flag again.
> > 
> > I only tested this patch with a rt305x SoC device, nevertheless the
> > patch disables HT40 also on PCI and USB rt2800 devices.
> > 
> > Signed-off-by: Helmut Schaa <helmut.schaa@googlemail.com>
> 
> I can confirm that this also helps for PCI and USB devices.
> With this patch applied all my rt28xx and rt30xx based devices starting working correctly.
> 
> So, definately,
> 
> Acked-by: Gertjan van Wingerde <gwingerde@gmail.com>

And also thanks for figuring this out, this at least gives a good starting
point for investigation for resolving the last issues. :)

Acked-by: Ivo van Doorn <IvDoorn@gmail.com>

> > ---
> > 
> > Using this patch I was able to associate a rt305x SoC device with my 11n
> > capable AP using WPA and the connection basically works although I see lots
> > of retried frames when sniffing the wireless traffic.
> > 
> > If someone already had success with rt2800 and HT40 capable APs we should
> > consider to only conditionally unset the HT40 flag for 305x SoC devices.
> > 
> >  drivers/net/wireless/rt2x00/rt2800lib.c |    5 ++++-
> >  1 files changed, 4 insertions(+), 1 deletions(-)
> > 
> > diff --git a/drivers/net/wireless/rt2x00/rt2800lib.c b/drivers/net/wireless/rt2x00/rt2800lib.c
> > index 2648f31..aa02ff6 100644
> > --- a/drivers/net/wireless/rt2x00/rt2800lib.c
> > +++ b/drivers/net/wireless/rt2x00/rt2800lib.c
> > @@ -2318,8 +2318,11 @@ int rt2800_probe_hw_mode(struct rt2x00_dev *rt2x00dev)
> >  	else
> >  		spec->ht.ht_supported = false;
> >  
> > +	/*
> > +	 * Don't set IEEE80211_HT_CAP_SUP_WIDTH_20_40 for now as it causes
> > +	 * reception problems with HT40 capable 11n APs
> > +	 */
> >  	spec->ht.cap =
> > -	    IEEE80211_HT_CAP_SUP_WIDTH_20_40 |
> >  	    IEEE80211_HT_CAP_GRN_FLD |
> >  	    IEEE80211_HT_CAP_SGI_20 |
> >  	    IEEE80211_HT_CAP_SGI_40 |
> 
> 



^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2010-04-23 18:08 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-04-23 13:05 [PATCH] rt2x00: rt2800lib: disable HT40 for now as it causes reception problems Helmut Schaa
2010-04-23 15:21 ` Gertjan van Wingerde
2010-04-23 18:08   ` Ivo van Doorn

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.