diff options
Diffstat (limited to 'drivers/net/wireless/iwmc3200wifi/iwm.h')
-rw-r--r-- | drivers/net/wireless/iwmc3200wifi/iwm.h | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/drivers/net/wireless/iwmc3200wifi/iwm.h b/drivers/net/wireless/iwmc3200wifi/iwm.h index 1b02a4e2a1ac..79ffa3b98d73 100644 --- a/drivers/net/wireless/iwmc3200wifi/iwm.h +++ b/drivers/net/wireless/iwmc3200wifi/iwm.h | |||
@@ -65,6 +65,8 @@ struct iwm_conf { | |||
65 | u32 sdio_ior_timeout; | 65 | u32 sdio_ior_timeout; |
66 | unsigned long calib_map; | 66 | unsigned long calib_map; |
67 | unsigned long expected_calib_map; | 67 | unsigned long expected_calib_map; |
68 | u8 ct_kill_entry; | ||
69 | u8 ct_kill_exit; | ||
68 | bool reset_on_fatal_err; | 70 | bool reset_on_fatal_err; |
69 | bool auto_connect; | 71 | bool auto_connect; |
70 | bool wimax_not_present; | 72 | bool wimax_not_present; |
@@ -79,7 +81,6 @@ struct iwm_conf { | |||
79 | u32 assoc_timeout; | 81 | u32 assoc_timeout; |
80 | u32 roam_timeout; | 82 | u32 roam_timeout; |
81 | u32 wireless_mode; | 83 | u32 wireless_mode; |
82 | u32 coexist_mode; | ||
83 | 84 | ||
84 | u8 ibss_band; | 85 | u8 ibss_band; |
85 | u8 ibss_channel; | 86 | u8 ibss_channel; |
@@ -129,11 +130,18 @@ struct iwm_notif { | |||
129 | unsigned long buf_size; | 130 | unsigned long buf_size; |
130 | }; | 131 | }; |
131 | 132 | ||
133 | struct iwm_tid_info { | ||
134 | __le16 last_seq_num; | ||
135 | bool stopped; | ||
136 | struct mutex mutex; | ||
137 | }; | ||
138 | |||
132 | struct iwm_sta_info { | 139 | struct iwm_sta_info { |
133 | u8 addr[ETH_ALEN]; | 140 | u8 addr[ETH_ALEN]; |
134 | bool valid; | 141 | bool valid; |
135 | bool qos; | 142 | bool qos; |
136 | u8 color; | 143 | u8 color; |
144 | struct iwm_tid_info tid_info[IWM_UMAC_TID_NR]; | ||
137 | }; | 145 | }; |
138 | 146 | ||
139 | struct iwm_tx_info { | 147 | struct iwm_tx_info { |
@@ -183,6 +191,8 @@ struct iwm_key { | |||
183 | struct iwm_tx_queue { | 191 | struct iwm_tx_queue { |
184 | int id; | 192 | int id; |
185 | struct sk_buff_head queue; | 193 | struct sk_buff_head queue; |
194 | struct sk_buff_head stopped_queue; | ||
195 | spinlock_t lock; | ||
186 | struct workqueue_struct *wq; | 196 | struct workqueue_struct *wq; |
187 | struct work_struct worker; | 197 | struct work_struct worker; |
188 | u8 concat_buf[IWM_HAL_CONCATENATE_BUF_SIZE]; | 198 | u8 concat_buf[IWM_HAL_CONCATENATE_BUF_SIZE]; |
@@ -276,12 +286,14 @@ struct iwm_priv { | |||
276 | struct iw_statistics wstats; | 286 | struct iw_statistics wstats; |
277 | struct delayed_work stats_request; | 287 | struct delayed_work stats_request; |
278 | struct delayed_work disconnect; | 288 | struct delayed_work disconnect; |
289 | struct delayed_work ct_kill_delay; | ||
279 | 290 | ||
280 | struct iwm_debugfs dbg; | 291 | struct iwm_debugfs dbg; |
281 | 292 | ||
282 | u8 *eeprom; | 293 | u8 *eeprom; |
283 | struct timer_list watchdog; | 294 | struct timer_list watchdog; |
284 | struct work_struct reset_worker; | 295 | struct work_struct reset_worker; |
296 | struct work_struct auth_retry_worker; | ||
285 | struct mutex mutex; | 297 | struct mutex mutex; |
286 | 298 | ||
287 | u8 *req_ie; | 299 | u8 *req_ie; |
@@ -290,6 +302,8 @@ struct iwm_priv { | |||
290 | int resp_ie_len; | 302 | int resp_ie_len; |
291 | 303 | ||
292 | struct iwm_fw_error_hdr *last_fw_err; | 304 | struct iwm_fw_error_hdr *last_fw_err; |
305 | char umac_version[8]; | ||
306 | char lmac_version[8]; | ||
293 | 307 | ||
294 | char private[0] __attribute__((__aligned__(NETDEV_ALIGN))); | 308 | char private[0] __attribute__((__aligned__(NETDEV_ALIGN))); |
295 | }; | 309 | }; |
@@ -335,6 +349,7 @@ int iwm_up(struct iwm_priv *iwm); | |||
335 | int iwm_down(struct iwm_priv *iwm); | 349 | int iwm_down(struct iwm_priv *iwm); |
336 | 350 | ||
337 | /* TX API */ | 351 | /* TX API */ |
352 | int iwm_tid_to_queue(u16 tid); | ||
338 | void iwm_tx_credit_inc(struct iwm_priv *iwm, int id, int total_freed_pages); | 353 | void iwm_tx_credit_inc(struct iwm_priv *iwm, int id, int total_freed_pages); |
339 | void iwm_tx_worker(struct work_struct *work); | 354 | void iwm_tx_worker(struct work_struct *work); |
340 | int iwm_xmit_frame(struct sk_buff *skb, struct net_device *netdev); | 355 | int iwm_xmit_frame(struct sk_buff *skb, struct net_device *netdev); |