Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 3 Mar 2011 03:02:06 +0000 (UTC)
From:      Adrian Chadd <adrian@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r219214 - head/sys/dev/ath
Message-ID:  <201103030302.p233268T089304@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: adrian
Date: Thu Mar  3 03:02:06 2011
New Revision: 219214
URL: http://svn.freebsd.org/changeset/base/219214

Log:
  Disable trying to do HT/40 and short-GI TX.
  
  These flags are just plain wrong - they're the node flags from negotiation,
  not the configured flags. I'll jump in later on and figure out exactly
  what should be done to properly set these two flags when in both STA mode
  (ie, what the AP says is possible and what's configured) and AP mode
  (ie, where the AP has a configuration, but then negotiates what's possible
  with each node, so per-node configuration can and will differ.)
  
  This allows the 11n 2.4ghz/ht20 mode to associate (but perform poorly still)
  and exchange MCS rates with atheros reference APs and a Cisco/Linksys
  E3000 AP.

Modified:
  head/sys/dev/ath/if_ath_tx_ht.c

Modified: head/sys/dev/ath/if_ath_tx_ht.c
==============================================================================
--- head/sys/dev/ath/if_ath_tx_ht.c	Thu Mar  3 00:43:35 2011	(r219213)
+++ head/sys/dev/ath/if_ath_tx_ht.c	Thu Mar  3 03:02:06 2011	(r219214)
@@ -128,6 +128,7 @@ ath_rateseries_setup(struct ath_softc *s
 		if (flags & (HAL_TXDESC_RTSENA | HAL_TXDESC_CTSENA))
 			series[i].RateFlags |= HAL_RATESERIES_RTS_CTS;
 
+#if 0
 		if (ni->ni_htcap & IEEE80211_HTCAP_CHWIDTH40)
 			series[i].RateFlags |= HAL_RATESERIES_2040;
 
@@ -138,6 +139,7 @@ ath_rateseries_setup(struct ath_softc *s
 		 */
 		if (ni->ni_htcap & IEEE80211_HTCAP_SHORTGI40)
 			series[i].RateFlags |= HAL_RATESERIES_HALFGI;
+#endif
 
 		series[i].Rate = rt->info[rix[i]].rateCode;
 		/* the short preamble field is only applicable for non-MCS rates */
@@ -150,7 +152,7 @@ ath_rateseries_setup(struct ath_softc *s
 			    ath_computedur_ht(pktlen
 				, series[i].Rate
 				, ic->ic_txstream
-				, (ni->ni_htcap & IEEE80211_HTCAP_CHWIDTH40)
+				, 0 /* disable 20/40 for now */
 				, series[i].RateFlags & HAL_RATESERIES_HALFGI);
 		} else {
 			series[i].PktDuration = ath_hal_computetxtime(ah,



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201103030302.p233268T089304>