diff options
Diffstat (limited to 'drivers/net/wireless/iwlwifi/iwl-3945.h')
-rw-r--r-- | drivers/net/wireless/iwlwifi/iwl-3945.h | 45 |
1 files changed, 35 insertions, 10 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl-3945.h b/drivers/net/wireless/iwlwifi/iwl-3945.h index 21679bf3a1a..2b0d65c5780 100644 --- a/drivers/net/wireless/iwlwifi/iwl-3945.h +++ b/drivers/net/wireless/iwlwifi/iwl-3945.h | |||
@@ -46,7 +46,7 @@ extern struct pci_device_id iwl3945_hw_card_ids[]; | |||
46 | #include "iwl-debug.h" | 46 | #include "iwl-debug.h" |
47 | #include "iwl-power.h" | 47 | #include "iwl-power.h" |
48 | #include "iwl-dev.h" | 48 | #include "iwl-dev.h" |
49 | #include "iwl-3945-led.h" | 49 | #include "iwl-led.h" |
50 | 50 | ||
51 | /* Highest firmware API version supported */ | 51 | /* Highest firmware API version supported */ |
52 | #define IWL3945_UCODE_API_MAX 2 | 52 | #define IWL3945_UCODE_API_MAX 2 |
@@ -74,8 +74,41 @@ extern struct pci_device_id iwl3945_hw_card_ids[]; | |||
74 | /* Module parameters accessible from iwl-*.c */ | 74 | /* Module parameters accessible from iwl-*.c */ |
75 | extern struct iwl_mod_params iwl3945_mod_params; | 75 | extern struct iwl_mod_params iwl3945_mod_params; |
76 | 76 | ||
77 | struct iwl3945_rate_scale_data { | ||
78 | u64 data; | ||
79 | s32 success_counter; | ||
80 | s32 success_ratio; | ||
81 | s32 counter; | ||
82 | s32 average_tpt; | ||
83 | unsigned long stamp; | ||
84 | }; | ||
85 | |||
86 | struct iwl3945_rs_sta { | ||
87 | spinlock_t lock; | ||
88 | struct iwl_priv *priv; | ||
89 | s32 *expected_tpt; | ||
90 | unsigned long last_partial_flush; | ||
91 | unsigned long last_flush; | ||
92 | u32 flush_time; | ||
93 | u32 last_tx_packets; | ||
94 | u32 tx_packets; | ||
95 | u8 tgg; | ||
96 | u8 flush_pending; | ||
97 | u8 start_rate; | ||
98 | u8 ibss_sta_added; | ||
99 | struct timer_list rate_scale_flush; | ||
100 | struct iwl3945_rate_scale_data win[IWL_RATE_COUNT_3945]; | ||
101 | #ifdef CONFIG_MAC80211_DEBUGFS | ||
102 | struct dentry *rs_sta_dbgfs_stats_table_file; | ||
103 | #endif | ||
104 | |||
105 | /* used to be in sta_info */ | ||
106 | int last_txrate_idx; | ||
107 | }; | ||
108 | |||
109 | |||
77 | struct iwl3945_sta_priv { | 110 | struct iwl3945_sta_priv { |
78 | struct iwl3945_rs_sta *rs_sta; | 111 | struct iwl3945_rs_sta rs_sta; |
79 | }; | 112 | }; |
80 | 113 | ||
81 | enum iwl3945_antenna { | 114 | enum iwl3945_antenna { |
@@ -130,12 +163,6 @@ struct iwl3945_frame { | |||
130 | #define SN_TO_SEQ(ssn) (((ssn) << 4) & IEEE80211_SCTL_SEQ) | 163 | #define SN_TO_SEQ(ssn) (((ssn) << 4) & IEEE80211_SCTL_SEQ) |
131 | #define MAX_SN ((IEEE80211_SCTL_SEQ) >> 4) | 164 | #define MAX_SN ((IEEE80211_SCTL_SEQ) >> 4) |
132 | 165 | ||
133 | /* | ||
134 | * RX related structures and functions | ||
135 | */ | ||
136 | #define RX_FREE_BUFFERS 64 | ||
137 | #define RX_LOW_WATERMARK 8 | ||
138 | |||
139 | #define SUP_RATE_11A_MAX_NUM_CHANNELS 8 | 166 | #define SUP_RATE_11A_MAX_NUM_CHANNELS 8 |
140 | #define SUP_RATE_11B_MAX_NUM_CHANNELS 4 | 167 | #define SUP_RATE_11B_MAX_NUM_CHANNELS 4 |
141 | #define SUP_RATE_11G_MAX_NUM_CHANNELS 12 | 168 | #define SUP_RATE_11G_MAX_NUM_CHANNELS 12 |
@@ -280,8 +307,6 @@ extern void iwl3945_config_ap(struct iwl_priv *priv); | |||
280 | */ | 307 | */ |
281 | extern u8 iwl3945_hw_find_station(struct iwl_priv *priv, const u8 *bssid); | 308 | extern u8 iwl3945_hw_find_station(struct iwl_priv *priv, const u8 *bssid); |
282 | 309 | ||
283 | extern int iwl3945_hw_channel_switch(struct iwl_priv *priv, u16 channel); | ||
284 | |||
285 | /* | 310 | /* |
286 | * Forward declare iwl-3945.c functions for iwl-base.c | 311 | * Forward declare iwl-3945.c functions for iwl-base.c |
287 | */ | 312 | */ |