diff options
author | Felix Fietkau <nbd@openwrt.org> | 2011-07-09 11:12:53 +0700 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2011-07-11 15:02:15 -0400 |
commit | 7d865c7080b3cb9d95eaf7d40343712e582fc3e7 (patch) | |
tree | 298f1574e4923b9e7c12f834797eff14da62269a /drivers/net/wireless/ath | |
parent | 0407cf1c7f0fdbecab7efbd8214ac2d1196a67f9 (diff) | |
download | talos-obmc-linux-7d865c7080b3cb9d95eaf7d40343712e582fc3e7.tar.gz talos-obmc-linux-7d865c7080b3cb9d95eaf7d40343712e582fc3e7.zip |
ath9k_hw: fix synth delay for half/quarter channels
The radio needs twice / four times as much time to stabilize 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/net/wireless/ath')
-rw-r--r-- | drivers/net/wireless/ath/ath9k/ar5008_phy.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/net/wireless/ath/ath9k/ar5008_phy.c b/drivers/net/wireless/ath/ath9k/ar5008_phy.c index 441bb33f17ad..fac2c6da6ca4 100644 --- a/drivers/net/wireless/ath/ath9k/ar5008_phy.c +++ b/drivers/net/wireless/ath/ath9k/ar5008_phy.c @@ -627,6 +627,11 @@ static void ar5008_hw_init_bb(struct ath_hw *ah, else synthDelay /= 10; + if (IS_CHAN_HALF_RATE(chan)) + synthDelay *= 2; + else if (IS_CHAN_QUARTER_RATE(chan)) + synthDelay *= 4; + REG_WRITE(ah, AR_PHY_ACTIVE, AR_PHY_ACTIVE_EN); udelay(synthDelay + BASE_ACTIVATE_DELAY); |