diff options
Diffstat (limited to 'net/mac80211/sta_info.h')
-rw-r--r-- | net/mac80211/sta_info.h | 27 |
1 files changed, 9 insertions, 18 deletions
diff --git a/net/mac80211/sta_info.h b/net/mac80211/sta_info.h index 4a581a5b5766..daedfa9e1c63 100644 --- a/net/mac80211/sta_info.h +++ b/net/mac80211/sta_info.h | |||
@@ -167,8 +167,6 @@ struct sta_ampdu_mlme { | |||
167 | * @lock: used for locking all fields that require locking, see comments | 167 | * @lock: used for locking all fields that require locking, see comments |
168 | * in the header file. | 168 | * in the header file. |
169 | * @flaglock: spinlock for flags accesses | 169 | * @flaglock: spinlock for flags accesses |
170 | * @ht_info: HT capabilities of this STA | ||
171 | * @supp_rates: Bitmap of supported rates (per band) | ||
172 | * @addr: MAC address of this STA | 170 | * @addr: MAC address of this STA |
173 | * @aid: STA's unique AID (1..2007, 0 = not assigned yet), | 171 | * @aid: STA's unique AID (1..2007, 0 = not assigned yet), |
174 | * only used in AP (and IBSS?) mode | 172 | * only used in AP (and IBSS?) mode |
@@ -195,15 +193,11 @@ struct sta_ampdu_mlme { | |||
195 | * @tx_filtered_count: TBD | 193 | * @tx_filtered_count: TBD |
196 | * @tx_retry_failed: TBD | 194 | * @tx_retry_failed: TBD |
197 | * @tx_retry_count: TBD | 195 | * @tx_retry_count: TBD |
198 | * @tx_num_consecutive_failures: TBD | ||
199 | * @tx_num_mpdu_ok: TBD | ||
200 | * @tx_num_mpdu_fail: TBD | ||
201 | * @fail_avg: moving percentage of failed MSDUs | 196 | * @fail_avg: moving percentage of failed MSDUs |
202 | * @tx_packets: number of RX/TX MSDUs | 197 | * @tx_packets: number of RX/TX MSDUs |
203 | * @tx_bytes: TBD | 198 | * @tx_bytes: TBD |
204 | * @tx_fragments: number of transmitted MPDUs | 199 | * @tx_fragments: number of transmitted MPDUs |
205 | * @txrate_idx: TBD | 200 | * @last_txrate_idx: Index of the last used transmit rate |
206 | * @last_txrate_idx: TBD | ||
207 | * @tid_seq: TBD | 201 | * @tid_seq: TBD |
208 | * @wme_tx_queue: TBD | 202 | * @wme_tx_queue: TBD |
209 | * @ampdu_mlme: TBD | 203 | * @ampdu_mlme: TBD |
@@ -218,6 +212,7 @@ struct sta_ampdu_mlme { | |||
218 | * @plink_timeout: TBD | 212 | * @plink_timeout: TBD |
219 | * @plink_timer: TBD | 213 | * @plink_timer: TBD |
220 | * @debugfs: debug filesystem info | 214 | * @debugfs: debug filesystem info |
215 | * @sta: station information we share with the driver | ||
221 | */ | 216 | */ |
222 | struct sta_info { | 217 | struct sta_info { |
223 | /* General information, mostly static */ | 218 | /* General information, mostly static */ |
@@ -230,10 +225,7 @@ struct sta_info { | |||
230 | void *rate_ctrl_priv; | 225 | void *rate_ctrl_priv; |
231 | spinlock_t lock; | 226 | spinlock_t lock; |
232 | spinlock_t flaglock; | 227 | spinlock_t flaglock; |
233 | struct ieee80211_ht_info ht_info; | 228 | |
234 | u64 supp_rates[IEEE80211_NUM_BANDS]; | ||
235 | u8 addr[ETH_ALEN]; | ||
236 | u16 aid; | ||
237 | u16 listen_interval; | 229 | u16 listen_interval; |
238 | 230 | ||
239 | /* | 231 | /* |
@@ -273,10 +265,6 @@ struct sta_info { | |||
273 | /* Updated from TX status path only, no locking requirements */ | 265 | /* Updated from TX status path only, no locking requirements */ |
274 | unsigned long tx_filtered_count; | 266 | unsigned long tx_filtered_count; |
275 | unsigned long tx_retry_failed, tx_retry_count; | 267 | unsigned long tx_retry_failed, tx_retry_count; |
276 | /* TODO: update in generic code not rate control? */ | ||
277 | u32 tx_num_consecutive_failures; | ||
278 | u32 tx_num_mpdu_ok; | ||
279 | u32 tx_num_mpdu_fail; | ||
280 | /* moving percentage of failed MSDUs */ | 268 | /* moving percentage of failed MSDUs */ |
281 | unsigned int fail_avg; | 269 | unsigned int fail_avg; |
282 | 270 | ||
@@ -284,8 +272,7 @@ struct sta_info { | |||
284 | unsigned long tx_packets; | 272 | unsigned long tx_packets; |
285 | unsigned long tx_bytes; | 273 | unsigned long tx_bytes; |
286 | unsigned long tx_fragments; | 274 | unsigned long tx_fragments; |
287 | int txrate_idx; | 275 | unsigned int last_txrate_idx; |
288 | int last_txrate_idx; | ||
289 | u16 tid_seq[IEEE80211_QOS_CTL_TID_MASK + 1]; | 276 | u16 tid_seq[IEEE80211_QOS_CTL_TID_MASK + 1]; |
290 | #ifdef CONFIG_MAC80211_DEBUG_COUNTERS | 277 | #ifdef CONFIG_MAC80211_DEBUG_COUNTERS |
291 | unsigned int wme_tx_queue[NUM_RX_DATA_QUEUES]; | 278 | unsigned int wme_tx_queue[NUM_RX_DATA_QUEUES]; |
@@ -327,6 +314,9 @@ struct sta_info { | |||
327 | struct dentry *agg_status; | 314 | struct dentry *agg_status; |
328 | } debugfs; | 315 | } debugfs; |
329 | #endif | 316 | #endif |
317 | |||
318 | /* keep last! */ | ||
319 | struct ieee80211_sta sta; | ||
330 | }; | 320 | }; |
331 | 321 | ||
332 | static inline enum plink_state sta_plink_state(struct sta_info *sta) | 322 | static inline enum plink_state sta_plink_state(struct sta_info *sta) |
@@ -452,7 +442,6 @@ int sta_info_insert(struct sta_info *sta); | |||
452 | * has already unlinked it. | 442 | * has already unlinked it. |
453 | */ | 443 | */ |
454 | void sta_info_unlink(struct sta_info **sta); | 444 | void sta_info_unlink(struct sta_info **sta); |
455 | void __sta_info_unlink(struct sta_info **sta); | ||
456 | 445 | ||
457 | void sta_info_destroy(struct sta_info *sta); | 446 | void sta_info_destroy(struct sta_info *sta); |
458 | void sta_info_set_tim_bit(struct sta_info *sta); | 447 | void sta_info_set_tim_bit(struct sta_info *sta); |
@@ -464,5 +453,7 @@ void sta_info_stop(struct ieee80211_local *local); | |||
464 | int sta_info_flush(struct ieee80211_local *local, | 453 | int sta_info_flush(struct ieee80211_local *local, |
465 | struct ieee80211_sub_if_data *sdata); | 454 | struct ieee80211_sub_if_data *sdata); |
466 | void sta_info_flush_delayed(struct ieee80211_sub_if_data *sdata); | 455 | void sta_info_flush_delayed(struct ieee80211_sub_if_data *sdata); |
456 | void ieee80211_sta_expire(struct ieee80211_sub_if_data *sdata, | ||
457 | unsigned long exp_time); | ||
467 | 458 | ||
468 | #endif /* STA_INFO_H */ | 459 | #endif /* STA_INFO_H */ |