ath9k: always use SIFS times from OFDM for 5/10 MHz
authorSimon Wunderlich <simon.wunderlich@s2003.tu-chemnitz.de>
Wed, 14 Aug 2013 06:01:30 +0000 (08:01 +0200)
committerJohn W. Linville <linville@tuxdriver.com>
Fri, 16 Aug 2013 18:17:47 +0000 (14:17 -0400)
5/10 MHz channels should always use SIFS times as defined in IEEE
802.11-2012 18.4.4 (OFDM PHY characteristics). This makes it compatible
to ath5k, which does the same.

Signed-off-by: Simon Wunderlich <siwu@hrz.tu-chemnitz.de>
Signed-off-by: Mathias Kretschmer <mathias.kretschmer@fokus.fraunhofer.de>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
drivers/net/wireless/ath/ath9k/hw.c

index 151443bddbde6a5459abd9ebdb0db28ab464a737..b3a6891fe3d707d025443e9e347fdb85bf47d4b9 100644 (file)
@@ -1069,7 +1069,7 @@ void ath9k_hw_init_global_settings(struct ath_hw *ah)
                if (IS_CHAN_A_FAST_CLOCK(ah, chan))
                    tx_lat += 11;
 
-               sifstime *= 2;
+               sifstime = 32;
                ack_offset = 16;
                slottime = 13;
        } else if (IS_CHAN_QUARTER_RATE(chan)) {
@@ -1079,7 +1079,7 @@ void ath9k_hw_init_global_settings(struct ath_hw *ah)
                if (IS_CHAN_A_FAST_CLOCK(ah, chan))
                    tx_lat += 22;
 
-               sifstime *= 4;
+               sifstime = 64;
                ack_offset = 32;
                slottime = 21;
        } else {
@@ -1116,7 +1116,6 @@ void ath9k_hw_init_global_settings(struct ath_hw *ah)
                ctstimeout += 48 - sifstime - ah->slottime;
        }
 
-
        ath9k_hw_set_sifs_time(ah, sifstime);
        ath9k_hw_setslottime(ah, slottime);
        ath9k_hw_set_ack_timeout(ah, acktimeout);