diff options
author | nbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2012-05-12 17:41:05 +0000 |
---|---|---|
committer | nbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2012-05-12 17:41:05 +0000 |
commit | d5ff41feb356f206e3e0a9323f17c62f956710ab (patch) | |
tree | fc955ceb0ec6720741b41ffa9f7c37e158ac1a1c /package/mac80211/patches | |
parent | 5768b3dac74dd4b0bb51ea8c6d106dc37a2704ed (diff) |
ath9k: fix ar9330 internal regulator setup
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@31692 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package/mac80211/patches')
-rw-r--r-- | package/mac80211/patches/563-ath9k_fix_ar9330_internal_regulator.patch | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/package/mac80211/patches/563-ath9k_fix_ar9330_internal_regulator.patch b/package/mac80211/patches/563-ath9k_fix_ar9330_internal_regulator.patch new file mode 100644 index 0000000000..8df5e736b2 --- /dev/null +++ b/package/mac80211/patches/563-ath9k_fix_ar9330_internal_regulator.patch @@ -0,0 +1,33 @@ +--- a/drivers/net/wireless/ath/ath9k/ar9003_eeprom.c ++++ b/drivers/net/wireless/ath/ath9k/ar9003_eeprom.c +@@ -3809,7 +3809,7 @@ static bool is_pmu_set(struct ath_hw *ah + return true; + } + +-static void ar9003_hw_internal_regulator_apply(struct ath_hw *ah) ++void ar9003_hw_internal_regulator_apply(struct ath_hw *ah) + { + int internal_regulator = + ath9k_hw_ar9300_get_eeprom(ah, EEP_INTERNAL_REGULATOR); +--- a/drivers/net/wireless/ath/ath9k/ar9003_eeprom.h ++++ b/drivers/net/wireless/ath/ath9k/ar9003_eeprom.h +@@ -334,4 +334,7 @@ u8 *ar9003_get_spur_chan_ptr(struct ath_ + + unsigned int ar9003_get_paprd_scale_factor(struct ath_hw *ah, + struct ath9k_channel *chan); ++ ++void ar9003_hw_internal_regulator_apply(struct ath_hw *ah); ++ + #endif +--- a/drivers/net/wireless/ath/ath9k/hw.c ++++ b/drivers/net/wireless/ath/ath9k/hw.c +@@ -1477,6 +1477,9 @@ static bool ath9k_hw_chip_reset(struct a + return false; + + ah->chip_fullsleep = false; ++ ++ if (AR_SREV_9330(ah)) ++ ar9003_hw_internal_regulator_apply(ah); + ath9k_hw_init_pll(ah, chan); + ath9k_hw_set_rfmode(ah, chan); + |