summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authornbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>2010-12-11 21:29:48 +0000
committernbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>2010-12-11 21:29:48 +0000
commit760531231992ba835e908240b98cb027f645f6e2 (patch)
treef686c0285a0b665a43e9ee479d09add01cf27b3e
parent14c4949aded16a688a727db4f8b3f6136778a226 (diff)
ath9k: do not adjust the slot time setting for long distance, it seems to cause long latencies and low throughput
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@24498 3c298f89-4303-0410-b956-a3cf2f4a3e73
-rw-r--r--package/mac80211/patches/520-ath9k_slottime_init.patch11
-rw-r--r--package/mac80211/patches/521-ath9k_fix_distance_setting.patch11
2 files changed, 22 insertions, 0 deletions
diff --git a/package/mac80211/patches/520-ath9k_slottime_init.patch b/package/mac80211/patches/520-ath9k_slottime_init.patch
new file mode 100644
index 000000000..1eb83583b
--- /dev/null
+++ b/package/mac80211/patches/520-ath9k_slottime_init.patch
@@ -0,0 +1,11 @@
+--- a/drivers/net/wireless/ath/ath9k/hw.c
++++ b/drivers/net/wireless/ath/ath9k/hw.c
+@@ -417,7 +417,7 @@ static void ath9k_hw_init_defaults(struc
+ AR_STA_ID1_MCAST_KSRCH;
+ ah->beacon_interval = 100;
+ ah->enable_32kHz_clock = DONT_USE_32KHZ;
+- ah->slottime = (u32) -1;
++ ah->slottime = 9;
+ ah->globaltxtimeout = (u32) -1;
+ ah->power_mode = ATH9K_PM_UNDEFINED;
+ }
diff --git a/package/mac80211/patches/521-ath9k_fix_distance_setting.patch b/package/mac80211/patches/521-ath9k_fix_distance_setting.patch
new file mode 100644
index 000000000..6d54945d1
--- /dev/null
+++ b/package/mac80211/patches/521-ath9k_fix_distance_setting.patch
@@ -0,0 +1,11 @@
+--- a/drivers/net/wireless/ath/ath9k/hw.c
++++ b/drivers/net/wireless/ath/ath9k/hw.c
+@@ -813,7 +813,7 @@ void ath9k_hw_init_global_settings(struc
+ if (conf->channel && conf->channel->band == IEEE80211_BAND_2GHZ)
+ acktimeout += 64 - sifstime - ah->slottime;
+
+- ath9k_hw_setslottime(ah, slottime);
++ ath9k_hw_setslottime(ah, ah->slottime);
+ ath9k_hw_set_ack_timeout(ah, acktimeout);
+ ath9k_hw_set_cts_timeout(ah, acktimeout);
+ if (ah->globaltxtimeout != (u32) -1)