diff options
author | Felix Fietkau <nbd@openwrt.org> | 2012-04-19 23:18:25 +0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2012-04-23 23:35:31 +0400 |
commit | 3e61d3f9b2f6381f6f30d3d0ff874251a3491d05 (patch) | |
tree | a3086662b7ecc7b23b213785f96dfe96a19c2507 /drivers | |
parent | 08685ce30f1f4d26c91f0bde1a07df1135fb5755 (diff) | |
download | linux-3e61d3f9b2f6381f6f30d3d0ff874251a3491d05.tar.xz |
ath9k_hw: increase symbol overlap window for half/quarter channels
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/net/wireless/ath/ath9k/ar9003_phy.c | 4 | ||||
-rw-r--r-- | drivers/net/wireless/ath/ath9k/ar9003_phy.h | 3 |
2 files changed, 7 insertions, 0 deletions
diff --git a/drivers/net/wireless/ath/ath9k/ar9003_phy.c b/drivers/net/wireless/ath/ath9k/ar9003_phy.c index be6069bc4831..4c8d0d770945 100644 --- a/drivers/net/wireless/ath/ath9k/ar9003_phy.c +++ b/drivers/net/wireless/ath/ath9k/ar9003_phy.c @@ -728,6 +728,10 @@ static void ar9003_hw_set_rfmode(struct ath_hw *ah, if (IS_CHAN_HALF_RATE(chan)) rfMode |= AR_PHY_MODE_HALF; + if (rfMode & (AR_PHY_MODE_QUARTER | AR_PHY_MODE_HALF)) + REG_RMW_FIELD(ah, AR_PHY_FRAME_CTL, + AR_PHY_FRAME_CTL_CF_OVERLAP_WINDOW, 3); + REG_WRITE(ah, AR_PHY_MODE, rfMode); } diff --git a/drivers/net/wireless/ath/ath9k/ar9003_phy.h b/drivers/net/wireless/ath/ath9k/ar9003_phy.h index d834d97fe727..7268a48a92a1 100644 --- a/drivers/net/wireless/ath/ath9k/ar9003_phy.h +++ b/drivers/net/wireless/ath/ath9k/ar9003_phy.h @@ -468,6 +468,9 @@ #define AR_PHY_ADDAC_PARA_CTL (AR_SM_BASE + 0x150) #define AR_PHY_XPA_CFG (AR_SM_BASE + 0x158) +#define AR_PHY_FRAME_CTL_CF_OVERLAP_WINDOW 3 +#define AR_PHY_FRAME_CTL_CF_OVERLAP_WINDOW_S 0 + #define AR_PHY_SPUR_MASK_A_CF_PUNC_MASK_IDX_A 0x0001FC00 #define AR_PHY_SPUR_MASK_A_CF_PUNC_MASK_IDX_A_S 10 #define AR_PHY_SPUR_MASK_A_CF_PUNC_MASK_A 0x3FF |