aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/ath/ath9k/hw.h
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@openwrt.org>2010-07-01 18:09:50 -0400
committerJohn W. Linville <linville@tuxdriver.com>2010-07-02 13:44:36 -0400
commitf2552e28375cb34073a2f940ee9a8439c37d9ec2 (patch)
tree85c718798e4f64cbc2ddd1beb93541722719d69e /drivers/net/wireless/ath/ath9k/hw.h
parentba17bc5e55ba541d2a8765fca53b6883b667ab21 (diff)
ath9k_hw: sanitize noise floor values properly on all chips
This refactors the noise floor range checks to make them generic, and adds proper ranges for each supported chip type. Signed-off-by: Felix Fietkau <nbd@openwrt.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/ath/ath9k/hw.h')
-rw-r--r--drivers/net/wireless/ath/ath9k/hw.h14
1 files changed, 9 insertions, 5 deletions
diff --git a/drivers/net/wireless/ath/ath9k/hw.h b/drivers/net/wireless/ath/ath9k/hw.h
index bb99e2e1f94..6a4b6925710 100644
--- a/drivers/net/wireless/ath/ath9k/hw.h
+++ b/drivers/net/wireless/ath/ath9k/hw.h
@@ -630,6 +630,12 @@ struct ath_hw_ops {
630 void (*ani_monitor)(struct ath_hw *ah, struct ath9k_channel *chan); 630 void (*ani_monitor)(struct ath_hw *ah, struct ath9k_channel *chan);
631}; 631};
632 632
633struct ath_nf_limits {
634 s16 max;
635 s16 min;
636 s16 nominal;
637};
638
633struct ath_hw { 639struct ath_hw {
634 struct ieee80211_hw *hw; 640 struct ieee80211_hw *hw;
635 struct ath_common common; 641 struct ath_common common;
@@ -651,10 +657,9 @@ struct ath_hw {
651 bool is_pciexpress; 657 bool is_pciexpress;
652 bool need_an_top2_fixup; 658 bool need_an_top2_fixup;
653 u16 tx_trig_level; 659 u16 tx_trig_level;
654 s16 nf_2g_max; 660
655 s16 nf_2g_min; 661 struct ath_nf_limits nf_2g;
656 s16 nf_5g_max; 662 struct ath_nf_limits nf_5g;
657 s16 nf_5g_min;
658 u16 rfsilent; 663 u16 rfsilent;
659 u32 rfkill_gpio; 664 u32 rfkill_gpio;
660 u32 rfkill_polarity; 665 u32 rfkill_polarity;
@@ -943,7 +948,6 @@ void ar9002_hw_enable_wep_aggregation(struct ath_hw *ah);
943 * Code specific to AR9003, we stuff these here to avoid callbacks 948 * Code specific to AR9003, we stuff these here to avoid callbacks
944 * for older families 949 * for older families
945 */ 950 */
946void ar9003_hw_set_nf_limits(struct ath_hw *ah);
947void ar9003_hw_bb_watchdog_config(struct ath_hw *ah); 951void ar9003_hw_bb_watchdog_config(struct ath_hw *ah);
948void ar9003_hw_bb_watchdog_read(struct ath_hw *ah); 952void ar9003_hw_bb_watchdog_read(struct ath_hw *ah);
949void ar9003_hw_bb_watchdog_dbg_info(struct ath_hw *ah); 953void ar9003_hw_bb_watchdog_dbg_info(struct ath_hw *ah);