From 5b66d8a5ade74a7063f4dace08ff25cfe3f99bc6 Mon Sep 17 00:00:00 2001 From: Adrian Chadd Date: Mon, 20 May 2013 07:10:43 +0000 Subject: [PATCH] Make the HT rate duration calculation work for MCS rates > 15. --- sys/dev/ath/ath_hal/ah.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/dev/ath/ath_hal/ah.c b/sys/dev/ath/ath_hal/ah.c index 9a30dba7ef72..574e46cd71b2 100644 --- a/sys/dev/ath/ath_hal/ah.c +++ b/sys/dev/ath/ath_hal/ah.c @@ -327,9 +327,9 @@ ath_computedur_ht(uint32_t frameLen, uint16_t rate, int streams, KASSERT((rate &~ IEEE80211_RATE_MCS) < 31, ("bad mcs 0x%x", rate)); if (isht40) - bitsPerSymbol = ht40_bps[rate & 0xf]; + bitsPerSymbol = ht40_bps[rate & 0x1f]; else - bitsPerSymbol = ht20_bps[rate & 0xf]; + bitsPerSymbol = ht20_bps[rate & 0x1f]; numBits = OFDM_PLCP_BITS + (frameLen << 3); numSymbols = howmany(numBits, bitsPerSymbol); if (isShortGI)