mac80211: add initial support for AR9330
[openwrt/svn-archive/archive.git] / package / mac80211 / patches / 553-ath9k-configure-RF-channel-frequency-for-AR9330.patch
1 diff --git a/drivers/net/wireless/ath/ath9k/ar9003_phy.c b/drivers/net/wireless/ath/ath9k/ar9003_phy.c
2 index 1194eeb..a0ca1eb 100644
3 --- a/drivers/net/wireless/ath/ath9k/ar9003_phy.c
4 +++ b/drivers/net/wireless/ath/ath9k/ar9003_phy.c
5 @@ -75,7 +75,19 @@ static int ar9003_hw_set_channel(struct ath_hw *ah, struct ath9k_channel *chan)
6 freq = centers.synth_center;
7
8 if (freq < 4800) { /* 2 GHz, fractional mode */
9 - if (AR_SREV_9485(ah)) {
10 + if (AR_SREV_9330(ah)) {
11 + u32 chan_frac;
12 + u32 div;
13 +
14 + if (ah->is_clk_25mhz)
15 + div = 75;
16 + else
17 + div = 120;
18 +
19 + channelSel = (freq * 4) / div;
20 + chan_frac = (((freq * 4) % div) * 0x20000) / div;
21 + channelSel = (channelSel << 17) | chan_frac;
22 + } else if (AR_SREV_9485(ah)) {
23 u32 chan_frac;
24
25 /*