diff options
author | Rajkumar Manoharan <rmanoharan@atheros.com> | 2010-09-21 03:28:09 -0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2010-09-24 15:54:32 -0400 |
commit | 9cf13668a5f8165a81349defc5f82c57a4a8279b (patch) | |
tree | a04f7cec0ef9e0aa449c5906931313179c6e8a98 /drivers/net/wireless/ath/ath9k | |
parent | 9094537c3a9ef9e127e844254a74186735c9a90b (diff) |
ath9k_htc: Fix beacon distribution in IBSS mode
This patch ensures fair beacon distribution in IBSS mode
by configuring proper CWmin based on slot time.
Signed-off-by: Rajkumar Manoharan <rmanoharan@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/ath/ath9k')
-rw-r--r-- | drivers/net/wireless/ath/ath9k/htc_drv_beacon.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/drivers/net/wireless/ath/ath9k/htc_drv_beacon.c b/drivers/net/wireless/ath/ath9k/htc_drv_beacon.c index bd1506e69105..1b72aa482ac7 100644 --- a/drivers/net/wireless/ath/ath9k/htc_drv_beacon.c +++ b/drivers/net/wireless/ath/ath9k/htc_drv_beacon.c | |||
@@ -235,7 +235,14 @@ void ath9k_htc_beaconq_config(struct ath9k_htc_priv *priv) | |||
235 | ath9k_hw_get_txq_props(ah, qnum, &qi_be); | 235 | ath9k_hw_get_txq_props(ah, qnum, &qi_be); |
236 | 236 | ||
237 | qi.tqi_aifs = qi_be.tqi_aifs; | 237 | qi.tqi_aifs = qi_be.tqi_aifs; |
238 | qi.tqi_cwmin = 4*qi_be.tqi_cwmin; | 238 | /* For WIFI Beacon Distribution |
239 | * Long slot time : 2x cwmin | ||
240 | * Short slot time : 4x cwmin | ||
241 | */ | ||
242 | if (ah->slottime == ATH9K_SLOT_TIME_20) | ||
243 | qi.tqi_cwmin = 2*qi_be.tqi_cwmin; | ||
244 | else | ||
245 | qi.tqi_cwmin = 4*qi_be.tqi_cwmin; | ||
239 | qi.tqi_cwmax = qi_be.tqi_cwmax; | 246 | qi.tqi_cwmax = qi_be.tqi_cwmax; |
240 | 247 | ||
241 | if (!ath9k_hw_set_txq_props(ah, priv->beaconq, &qi)) { | 248 | if (!ath9k_hw_set_txq_props(ah, priv->beaconq, &qi)) { |