summaryrefslogtreecommitdiff
path: root/drivers/net/wireless/ath/ath5k/reset.c
diff options
context:
space:
mode:
authorLukáš Turek <8an@praha12.net>2009-12-21 22:50:51 +0100
committerJohn W. Linville <linville@tuxdriver.com>2010-01-12 13:50:08 -0500
commit6e08d228b6d8e93d7b25b3573c6da7da179c2ae1 (patch)
treeb489861f90b416a48f7f46fa4adb23972a5148c3 /drivers/net/wireless/ath/ath5k/reset.c
parent3578e6ebb305e6bf7519f6e86741772892f4d51a (diff)
downloadlinux-3.10-6e08d228b6d8e93d7b25b3573c6da7da179c2ae1.tar.gz
linux-3.10-6e08d228b6d8e93d7b25b3573c6da7da179c2ae1.tar.bz2
linux-3.10-6e08d228b6d8e93d7b25b3573c6da7da179c2ae1.zip
ath5k: Implement mac80211 callback set_coverage_class
The callback sets slot time as specified in IEEE 802.11-2007 section 17.3.8.6 (for 20MHz channels only for now) and raises ACK and CTS timeouts accordingly. The values are persistent, they are restored after device reset. Signed-off-by: Lukas Turek <8an@praha12.net> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/ath/ath5k/reset.c')
-rw-r--r--drivers/net/wireless/ath/ath5k/reset.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/net/wireless/ath/ath5k/reset.c b/drivers/net/wireless/ath/ath5k/reset.c
index 299b33a0397..6690923fd78 100644
--- a/drivers/net/wireless/ath/ath5k/reset.c
+++ b/drivers/net/wireless/ath/ath5k/reset.c
@@ -1316,6 +1316,10 @@ int ath5k_hw_reset(struct ath5k_hw *ah, enum nl80211_iftype op_mode,
/* Restore antenna mode */
ath5k_hw_set_antenna_mode(ah, ah->ah_ant_mode);
+ /* Restore slot time and ACK timeouts */
+ if (ah->ah_coverage_class > 0)
+ ath5k_hw_set_coverage_class(ah, ah->ah_coverage_class);
+
/*
* Configure QCUs/DCUs
*/