summaryrefslogtreecommitdiff
path: root/drivers/net/wireless/ath/ath9k/eeprom.h
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@openwrt.org>2010-07-11 10:48:39 (GMT)
committerJohn W. Linville <linville@tuxdriver.com>2010-07-12 20:05:37 (GMT)
commit601e0cb165e65dc185b31fe7ebd2c0169ea47306 (patch)
treee587bc1ec2b9b90816c783ad00be1762760aa532 /drivers/net/wireless/ath/ath9k/eeprom.h
parente796643eaf0889c346e6b69c5afe777c327b1919 (diff)
downloadlinux-fsl-qoriq-601e0cb165e65dc185b31fe7ebd2c0169ea47306.tar.xz
ath9k_hw: fix antenna diversity on AR9285
On AR9285, the antenna switch configuration register uses more than just 16 bits. Because of an arbitrary mask applied to the EEPROM value that stores this configuration, diversity was broken in some cases, leading to a significant degradation in signal strength. Fix this by changing the callback to return a 32 bit value and remove the arbitrary mask. Signed-off-by: Felix Fietkau <nbd@openwrt.org> Cc: stable@kernel.org Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/ath/ath9k/eeprom.h')
-rw-r--r--drivers/net/wireless/ath/ath9k/eeprom.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/net/wireless/ath/ath9k/eeprom.h b/drivers/net/wireless/ath/ath9k/eeprom.h
index bdd8aa0..8750c55 100644
--- 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);