aboutsummaryrefslogtreecommitdiffstats
path: root/package/mac80211/patches/520-ath9k_ar9285_diversity_fix.patch
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@openwrt.org>2010-07-11 03:50:46 +0000
committerFelix Fietkau <nbd@openwrt.org>2010-07-11 03:50:46 +0000
commit1f4a550847316d9c238e631b6164381b8b07394a (patch)
tree644acbdd6ddac63ffee535ab141f4382e6047ae2 /package/mac80211/patches/520-ath9k_ar9285_diversity_fix.patch
parent422138d2f330aefc2147cce89f8fb0f4b484086b (diff)
downloadupstream-1f4a550847316d9c238e631b6164381b8b07394a.tar.gz
upstream-1f4a550847316d9c238e631b6164381b8b07394a.tar.bz2
upstream-1f4a550847316d9c238e631b6164381b8b07394a.zip
ath9k: add another batch of stability updates and misc fixes
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@22123 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package/mac80211/patches/520-ath9k_ar9285_diversity_fix.patch')
-rw-r--r--package/mac80211/patches/520-ath9k_ar9285_diversity_fix.patch77
1 files changed, 77 insertions, 0 deletions
diff --git a/package/mac80211/patches/520-ath9k_ar9285_diversity_fix.patch b/package/mac80211/patches/520-ath9k_ar9285_diversity_fix.patch
new file mode 100644
index 0000000000..a79667421d
--- /dev/null
+++ b/package/mac80211/patches/520-ath9k_ar9285_diversity_fix.patch
@@ -0,0 +1,77 @@
+--- a/drivers/net/wireless/ath/ath9k/eeprom.h
++++ b/drivers/net/wireless/ath/ath9k/eeprom.h
+@@ -670,7 +670,7 @@ struct eeprom_ops {
+ int (*get_eeprom_ver)(struct ath_hw *hw);
+ int (*get_eeprom_rev)(struct ath_hw *hw);
+ u8 (*get_num_ant_config)(struct ath_hw *hw, enum ieee80211_band band);
+- u16 (*get_eeprom_antenna_cfg)(struct ath_hw *hw,
++ u32 (*get_eeprom_antenna_cfg)(struct ath_hw *hw,
+ struct ath9k_channel *chan);
+ void (*set_board_values)(struct ath_hw *hw, struct ath9k_channel *chan);
+ void (*set_addac)(struct ath_hw *hw, struct ath9k_channel *chan);
+--- a/drivers/net/wireless/ath/ath9k/eeprom_9287.c
++++ b/drivers/net/wireless/ath/ath9k/eeprom_9287.c
+@@ -1130,13 +1130,13 @@ static u8 ath9k_hw_ar9287_get_num_ant_co
+ return 1;
+ }
+
+-static u16 ath9k_hw_ar9287_get_eeprom_antenna_cfg(struct ath_hw *ah,
++static u32 ath9k_hw_ar9287_get_eeprom_antenna_cfg(struct ath_hw *ah,
+ struct ath9k_channel *chan)
+ {
+ struct ar9287_eeprom *eep = &ah->eeprom.map9287;
+ struct modal_eep_ar9287_header *pModal = &eep->modalHeader;
+
+- return pModal->antCtrlCommon & 0xFFFF;
++ return pModal->antCtrlCommon;
+ }
+
+ static u16 ath9k_hw_ar9287_get_spur_channel(struct ath_hw *ah,
+--- a/drivers/net/wireless/ath/ath9k/eeprom_def.c
++++ b/drivers/net/wireless/ath/ath9k/eeprom_def.c
+@@ -1438,14 +1438,14 @@ static u8 ath9k_hw_def_get_num_ant_confi
+ return num_ant_config;
+ }
+
+-static u16 ath9k_hw_def_get_eeprom_antenna_cfg(struct ath_hw *ah,
++static u32 ath9k_hw_def_get_eeprom_antenna_cfg(struct ath_hw *ah,
+ struct ath9k_channel *chan)
+ {
+ struct ar5416_eeprom_def *eep = &ah->eeprom.def;
+ struct modal_eep_header *pModal =
+ &(eep->modalHeader[IS_CHAN_2GHZ(chan)]);
+
+- return pModal->antCtrlCommon & 0xFFFF;
++ return pModal->antCtrlCommon;
+ }
+
+ static u16 ath9k_hw_def_get_spur_channel(struct ath_hw *ah, u16 i, bool is2GHz)
+--- a/drivers/net/wireless/ath/ath9k/eeprom_4k.c
++++ b/drivers/net/wireless/ath/ath9k/eeprom_4k.c
+@@ -1150,13 +1150,13 @@ static void ath9k_hw_4k_set_board_values
+ }
+ }
+
+-static u16 ath9k_hw_4k_get_eeprom_antenna_cfg(struct ath_hw *ah,
++static u32 ath9k_hw_4k_get_eeprom_antenna_cfg(struct ath_hw *ah,
+ struct ath9k_channel *chan)
+ {
+ struct ar5416_eeprom_4k *eep = &ah->eeprom.map4k;
+ struct modal_eep_4k_header *pModal = &eep->modalHeader;
+
+- return pModal->antCtrlCommon & 0xFFFF;
++ return pModal->antCtrlCommon;
+ }
+
+ static u8 ath9k_hw_4k_get_num_ant_config(struct ath_hw *ah,
+--- a/drivers/net/wireless/ath/ath9k/ar9003_eeprom.c
++++ b/drivers/net/wireless/ath/ath9k/ar9003_eeprom.c
+@@ -951,7 +951,7 @@ static u8 ath9k_hw_ar9300_get_num_ant_co
+ return 1;
+ }
+
+-static u16 ath9k_hw_ar9300_get_eeprom_antenna_cfg(struct ath_hw *ah,
++static u32 ath9k_hw_ar9300_get_eeprom_antenna_cfg(struct ath_hw *ah,
+ struct ath9k_channel *chan)
+ {
+ return -EINVAL;