mirror of
git://projects.qi-hardware.com/openwrt-xburst.git
synced 2025-04-21 12:27:27 +03:00
ath9k: fix sifs time for half/quarter and remove some unnecessary defines
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@27565 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
@@ -1,6 +1,20 @@
|
||||
--- a/drivers/net/wireless/ath/ath9k/hw.c
|
||||
+++ b/drivers/net/wireless/ath/ath9k/hw.c
|
||||
@@ -951,25 +951,60 @@ static bool ath9k_hw_set_global_txtimeou
|
||||
@@ -914,6 +914,13 @@ static void ath9k_hw_init_interrupt_mask
|
||||
}
|
||||
}
|
||||
|
||||
+static void ath9k_hw_set_sifs_time(struct ath_hw *ah, u32 us)
|
||||
+{
|
||||
+ u32 val = ath9k_hw_mac_to_clks(ah, us - 2);
|
||||
+ val = min(val, (u32) 0xFFFF);
|
||||
+ REG_WRITE(ah, AR_D_GBL_IFS_SIFS, val);
|
||||
+}
|
||||
+
|
||||
static void ath9k_hw_setslottime(struct ath_hw *ah, u32 us)
|
||||
{
|
||||
u32 val = ath9k_hw_mac_to_clks(ah, us);
|
||||
@@ -951,25 +958,60 @@ static bool ath9k_hw_set_global_txtimeou
|
||||
|
||||
void ath9k_hw_init_global_settings(struct ath_hw *ah)
|
||||
{
|
||||
@@ -68,11 +82,12 @@
|
||||
|
||||
/*
|
||||
* Workaround for early ACK timeouts, add an offset to match the
|
||||
@@ -981,11 +1016,19 @@ void ath9k_hw_init_global_settings(struc
|
||||
@@ -981,11 +1023,20 @@ 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, ah->slottime);
|
||||
+ ath9k_hw_set_sifs_time(ah, sifstime);
|
||||
+ ath9k_hw_setslottime(ah, slottime);
|
||||
ath9k_hw_set_ack_timeout(ah, acktimeout);
|
||||
ath9k_hw_set_cts_timeout(ah, acktimeout);
|
||||
|
||||
Reference in New Issue
Block a user