summaryrefslogtreecommitdiffstats
path: root/sys/dev
diff options
context:
space:
mode:
authoradrian <adrian@FreeBSD.org>2011-01-29 14:36:31 +0000
committeradrian <adrian@FreeBSD.org>2011-01-29 14:36:31 +0000
commit77d48002a19e638ce8fe8f56eb5287de5c0aab24 (patch)
treeec550763114e4802581e806853f11c788db014cf /sys/dev
parent16700c0fc292f9cfa422807008c4b8a259567dc3 (diff)
downloadFreeBSD-src-77d48002a19e638ce8fe8f56eb5287de5c0aab24.zip
FreeBSD-src-77d48002a19e638ce8fe8f56eb5287de5c0aab24.tar.gz
Avoid writing CCA threshold values for the EXT radios for non-HT40 channels.
Diffstat (limited to 'sys/dev')
-rw-r--r--sys/dev/ath/ath_hal/ar5416/ar5416_cal.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/sys/dev/ath/ath_hal/ar5416/ar5416_cal.c b/sys/dev/ath/ath_hal/ar5416/ar5416_cal.c
index 422fad8..96ef43c 100644
--- a/sys/dev/ath/ath_hal/ar5416/ar5416_cal.c
+++ b/sys/dev/ath/ath_hal/ar5416/ar5416_cal.c
@@ -573,6 +573,12 @@ ar5416LoadNF(struct ath_hal *ah, const struct ieee80211_channel *chan)
h = AH5416(ah)->ah_cal.nfCalHist;
HALDEBUG(ah, HAL_DEBUG_NFCAL, "CCA: ");
for (i = 0; i < AR5416_NUM_NF_READINGS; i ++) {
+
+ /* Don't write to EXT radio CCA registers */
+ /* XXX this check should really be cleaner! */
+ if (i >= 3 && !IEEE80211_IS_CHAN_HT40(chan))
+ continue;
+
if (chainmask & (1 << i)) {
int16_t nf_val;
OpenPOWER on IntegriCloud