ath9k_hw: fix MAC clock rate for AR9287 v1.3+
authorFelix Fietkau <nbd@openwrt.org>
Sat, 9 Jul 2011 04:12:49 +0000 (11:12 +0700)
committerJohn W. Linville <linville@tuxdriver.com>
Mon, 11 Jul 2011 19:02:12 +0000 (15:02 -0400)
This chip uses the async FIFO feature and runs the MAC at 117 MHz

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
drivers/net/wireless/ath/ath9k/hw.c

index f69c62e36ed88bf493f2940c9c93a069db605612..d4084d89c6f78f8bb9c5a74aaf88030345d971ae 100644 (file)
@@ -87,7 +87,10 @@ static void ath9k_hw_set_clockrate(struct ath_hw *ah)
        struct ath_common *common = ath9k_hw_common(ah);
        unsigned int clockrate;
 
-       if (!ah->curchan) /* should really check for CCK instead */
+       /* AR9287 v1.3+ uses async FIFO and runs the MAC at 117 MHz */
+       if (AR_SREV_9287(ah) && AR_SREV_9287_13_OR_LATER(ah))
+               clockrate = 117;
+       else if (!ah->curchan) /* should really check for CCK instead */
                clockrate = ATH9K_CLOCK_RATE_CCK;
        else if (conf->channel->band == IEEE80211_BAND_2GHZ)
                clockrate = ATH9K_CLOCK_RATE_2GHZ_OFDM;