diff options
Diffstat (limited to 'drivers/net/wireless/ath/ath9k/ar9002_phy.c')
-rw-r--r-- | drivers/net/wireless/ath/ath9k/ar9002_phy.c | 16 |
1 files changed, 6 insertions, 10 deletions
diff --git a/drivers/net/wireless/ath/ath9k/ar9002_phy.c b/drivers/net/wireless/ath/ath9k/ar9002_phy.c index 18cfe1a9781..ed314e89bfe 100644 --- a/drivers/net/wireless/ath/ath9k/ar9002_phy.c +++ b/drivers/net/wireless/ath/ath9k/ar9002_phy.c | |||
@@ -455,16 +455,12 @@ static u32 ar9002_hw_compute_pll_control(struct ath_hw *ah, | |||
455 | pll |= SM(0x2, AR_RTC_9160_PLL_CLKSEL); | 455 | pll |= SM(0x2, AR_RTC_9160_PLL_CLKSEL); |
456 | 456 | ||
457 | if (chan && IS_CHAN_5GHZ(chan)) { | 457 | if (chan && IS_CHAN_5GHZ(chan)) { |
458 | pll |= SM(0x28, AR_RTC_9160_PLL_DIV); | 458 | if (IS_CHAN_A_FAST_CLOCK(ah, chan)) |
459 | 459 | pll = 0x142c; | |
460 | 460 | else if (AR_SREV_9280_20(ah)) | |
461 | if (AR_SREV_9280_20(ah)) { | 461 | pll = 0x2850; |
462 | if (((chan->channel % 20) == 0) | 462 | else |
463 | || ((chan->channel % 10) == 0)) | 463 | pll |= SM(0x28, AR_RTC_9160_PLL_DIV); |
464 | pll = 0x2850; | ||
465 | else | ||
466 | pll = 0x142c; | ||
467 | } | ||
468 | } else { | 464 | } else { |
469 | pll |= SM(0x2c, AR_RTC_9160_PLL_DIV); | 465 | pll |= SM(0x2c, AR_RTC_9160_PLL_DIV); |
470 | } | 466 | } |