svn commit: r219214 - head/sys/dev/ath
Adrian Chadd
adrian at FreeBSD.org
Thu Mar 3 03:02:06 UTC 2011
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,
More information about the svn-src-head
mailing list