From 1f4a550847316d9c238e631b6164381b8b07394a Mon Sep 17 00:00:00 2001 From: Felix Fietkau Date: Sun, 11 Jul 2010 03:50:46 +0000 Subject: 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 --- .../patches/520-ath9k_ar9285_diversity_fix.patch | 77 ++++++++++++++++++++++ 1 file changed, 77 insertions(+) create mode 100644 package/mac80211/patches/520-ath9k_ar9285_diversity_fix.patch (limited to 'package/mac80211/patches/520-ath9k_ar9285_diversity_fix.patch') 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; -- cgit v1.2.3