diff options
Diffstat (limited to 'drivers/net/wireless/ath9k/core.h')
-rw-r--r-- | drivers/net/wireless/ath9k/core.h | 32 |
1 files changed, 27 insertions, 5 deletions
diff --git a/drivers/net/wireless/ath9k/core.h b/drivers/net/wireless/ath9k/core.h index 872f0c5a0b0e..cb3e61e57c4d 100644 --- a/drivers/net/wireless/ath9k/core.h +++ b/drivers/net/wireless/ath9k/core.h | |||
@@ -84,9 +84,6 @@ struct ath_node; | |||
84 | #define TSF_TO_TU(_h,_l) \ | 84 | #define TSF_TO_TU(_h,_l) \ |
85 | ((((u32)(_h)) << 22) | (((u32)(_l)) >> 10)) | 85 | ((((u32)(_h)) << 22) | (((u32)(_l)) >> 10)) |
86 | 86 | ||
87 | /* XXX: remove */ | ||
88 | #define memzero(_buf, _len) memset(_buf, 0, _len) | ||
89 | |||
90 | #define ATH9K_BH_STATUS_INTACT 0 | 87 | #define ATH9K_BH_STATUS_INTACT 0 |
91 | #define ATH9K_BH_STATUS_CHANGE 1 | 88 | #define ATH9K_BH_STATUS_CHANGE 1 |
92 | 89 | ||
@@ -184,7 +181,7 @@ void ath_update_chainmask(struct ath_softc *sc, int is_ht); | |||
184 | (_bf)->bf_lastbf = NULL; \ | 181 | (_bf)->bf_lastbf = NULL; \ |
185 | (_bf)->bf_lastfrm = NULL; \ | 182 | (_bf)->bf_lastfrm = NULL; \ |
186 | (_bf)->bf_next = NULL; \ | 183 | (_bf)->bf_next = NULL; \ |
187 | memzero(&((_bf)->bf_state), \ | 184 | memset(&((_bf)->bf_state), 0, \ |
188 | sizeof(struct ath_buf_state)); \ | 185 | sizeof(struct ath_buf_state)); \ |
189 | } while (0) | 186 | } while (0) |
190 | 187 | ||
@@ -312,7 +309,7 @@ void ath_descdma_cleanup(struct ath_softc *sc, | |||
312 | #define ATH_RX_TIMEOUT 40 /* 40 milliseconds */ | 309 | #define ATH_RX_TIMEOUT 40 /* 40 milliseconds */ |
313 | #define WME_NUM_TID 16 | 310 | #define WME_NUM_TID 16 |
314 | #define IEEE80211_BAR_CTL_TID_M 0xF000 /* tid mask */ | 311 | #define IEEE80211_BAR_CTL_TID_M 0xF000 /* tid mask */ |
315 | #define IEEE80211_BAR_CTL_TID_S 2 /* tid shift */ | 312 | #define IEEE80211_BAR_CTL_TID_S 12 /* tid shift */ |
316 | 313 | ||
317 | enum ATH_RX_TYPE { | 314 | enum ATH_RX_TYPE { |
318 | ATH_RX_NON_CONSUMED = 0, | 315 | ATH_RX_NON_CONSUMED = 0, |
@@ -803,6 +800,28 @@ void ath_slow_ant_div(struct ath_antdiv *antdiv, | |||
803 | struct ath_rx_status *rx_stats); | 800 | struct ath_rx_status *rx_stats); |
804 | void ath_setdefantenna(void *sc, u32 antenna); | 801 | void ath_setdefantenna(void *sc, u32 antenna); |
805 | 802 | ||
803 | /*******/ | ||
804 | /* ANI */ | ||
805 | /*******/ | ||
806 | |||
807 | /* ANI values for STA only. | ||
808 | FIXME: Add appropriate values for AP later */ | ||
809 | |||
810 | #define ATH_ANI_POLLINTERVAL 100 /* 100 milliseconds between ANI poll */ | ||
811 | #define ATH_SHORT_CALINTERVAL 1000 /* 1 second between calibrations */ | ||
812 | #define ATH_LONG_CALINTERVAL 30000 /* 30 seconds between calibrations */ | ||
813 | #define ATH_RESTART_CALINTERVAL 1200000 /* 20 minutes between calibrations */ | ||
814 | |||
815 | struct ath_ani { | ||
816 | bool sc_caldone; | ||
817 | int16_t sc_noise_floor; | ||
818 | unsigned int sc_longcal_timer; | ||
819 | unsigned int sc_shortcal_timer; | ||
820 | unsigned int sc_resetcal_timer; | ||
821 | unsigned int sc_checkani_timer; | ||
822 | struct timer_list timer; | ||
823 | }; | ||
824 | |||
806 | /********************/ | 825 | /********************/ |
807 | /* LED Control */ | 826 | /* LED Control */ |
808 | /********************/ | 827 | /********************/ |
@@ -1031,6 +1050,9 @@ struct ath_softc { | |||
1031 | 1050 | ||
1032 | /* Rfkill */ | 1051 | /* Rfkill */ |
1033 | struct ath_rfkill rf_kill; | 1052 | struct ath_rfkill rf_kill; |
1053 | |||
1054 | /* ANI */ | ||
1055 | struct ath_ani sc_ani; | ||
1034 | }; | 1056 | }; |
1035 | 1057 | ||
1036 | int ath_init(u16 devid, struct ath_softc *sc); | 1058 | int ath_init(u16 devid, struct ath_softc *sc); |