sta_info.h (28f49d8fec19833672a6a813bfde0068fee50bc9) | sta_info.h (6ef307bc561911c8cdda98ef3896b5982b602a43) |
---|---|
1/* 2 * Copyright 2002-2005, Devicescape Software, Inc. 3 * 4 * This program is free software; you can redistribute it and/or modify 5 * it under the terms of the GNU General Public License version 2 as 6 * published by the Free Software Foundation. 7 */ 8 --- 146 unchanged lines hidden (view full) --- 155 * struct sta_info - STA information 156 * 157 * This structure collects information about a station that 158 * mac80211 is communicating with. 159 * 160 * @list: global linked list entry 161 * @hnext: hash table linked list pointer 162 * @local: pointer to the global information | 1/* 2 * Copyright 2002-2005, Devicescape Software, Inc. 3 * 4 * This program is free software; you can redistribute it and/or modify 5 * it under the terms of the GNU General Public License version 2 as 6 * published by the Free Software Foundation. 7 */ 8 --- 146 unchanged lines hidden (view full) --- 155 * struct sta_info - STA information 156 * 157 * This structure collects information about a station that 158 * mac80211 is communicating with. 159 * 160 * @list: global linked list entry 161 * @hnext: hash table linked list pointer 162 * @local: pointer to the global information |
163 * @sdata: TBD 164 * @key: TBD 165 * @rate_ctrl: TBD 166 * @rate_ctrl_priv: TBD 167 * @lock: used for locking all fields that require locking, see comments 168 * in the header file. 169 * @flaglock: spinlock for flags accesses 170 * @ht_info: HT capabilities of this STA 171 * @supp_rates: Bitmap of supported rates (per band) |
|
163 * @addr: MAC address of this STA 164 * @aid: STA's unique AID (1..2007, 0 = not assigned yet), 165 * only used in AP (and IBSS?) mode | 172 * @addr: MAC address of this STA 173 * @aid: STA's unique AID (1..2007, 0 = not assigned yet), 174 * only used in AP (and IBSS?) mode |
175 * @listen_interval: TBD 176 * @pin_status: TBD |
|
166 * @flags: STA flags, see &enum ieee80211_sta_info_flags | 177 * @flags: STA flags, see &enum ieee80211_sta_info_flags |
167 * @flaglock: spinlock for flags accesses | |
168 * @ps_tx_buf: buffer of frames to transmit to this station 169 * when it leaves power saving state 170 * @tx_filtered: buffer of frames we already tried to transmit 171 * but were filtered by hardware due to STA having entered 172 * power saving state 173 * @rx_packets: Number of MSDUs received from this STA 174 * @rx_bytes: Number of bytes received from this STA | 178 * @ps_tx_buf: buffer of frames to transmit to this station 179 * when it leaves power saving state 180 * @tx_filtered: buffer of frames we already tried to transmit 181 * but were filtered by hardware due to STA having entered 182 * power saving state 183 * @rx_packets: Number of MSDUs received from this STA 184 * @rx_bytes: Number of bytes received from this STA |
175 * @supp_rates: Bitmap of supported rates (per band) 176 * @ht_info: HT capabilities of this STA 177 * @lock: used for locking all fields that require locking, see comments 178 * in the header file. | 185 * @wep_weak_iv_count: TBD 186 * @last_rx: TBD 187 * @num_duplicates: number of duplicate frames received from this STA 188 * @rx_fragments: number of received MPDUs 189 * @rx_dropped: number of dropped MPDUs from this STA 190 * @last_signal: signal of last received frame from this STA 191 * @last_qual: qual of last received frame from this STA 192 * @last_noise: noise of last received frame from this STA 193 * @last_seq_ctrl: last received seq/frag number from this STA (per RX queue) 194 * @wme_rx_queue: TBD 195 * @tx_filtered_count: TBD 196 * @tx_retry_failed: TBD 197 * @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 202 * @tx_packets: number of RX/TX MSDUs 203 * @tx_bytes: TBD 204 * @tx_fragments: number of transmitted MPDUs 205 * @txrate_idx: TBD 206 * @last_txrate_idx: TBD 207 * @wme_tx_queue: TBD 208 * @ampdu_mlme: TBD 209 * @timer_to_tid: identity mapping to ID timers 210 * @tid_to_tx_q: map tid to tx queue 211 * @llid: Local link ID 212 * @plid: Peer link ID 213 * @reason: Cancel reason on PLINK_HOLDING state 214 * @plink_retries: Retries in establishment 215 * @ignore_plink_timer: TBD 216 * @plink_state plink_state: TBD 217 * @plink_timeout: TBD 218 * @plink_timer: TBD 219 * @debugfs: debug filesystem info |
179 */ 180struct sta_info { 181 /* General information, mostly static */ 182 struct list_head list; 183 struct sta_info *hnext; 184 struct ieee80211_local *local; 185 struct ieee80211_sub_if_data *sdata; 186 struct ieee80211_key *key; --- 25 unchanged lines hidden (view full) --- 212 */ 213 struct sk_buff_head ps_tx_buf; 214 struct sk_buff_head tx_filtered; 215 216 /* Updated from RX path only, no locking requirements */ 217 unsigned long rx_packets, rx_bytes; 218 unsigned long wep_weak_iv_count; 219 unsigned long last_rx; | 220 */ 221struct sta_info { 222 /* General information, mostly static */ 223 struct list_head list; 224 struct sta_info *hnext; 225 struct ieee80211_local *local; 226 struct ieee80211_sub_if_data *sdata; 227 struct ieee80211_key *key; --- 25 unchanged lines hidden (view full) --- 253 */ 254 struct sk_buff_head ps_tx_buf; 255 struct sk_buff_head tx_filtered; 256 257 /* Updated from RX path only, no locking requirements */ 258 unsigned long rx_packets, rx_bytes; 259 unsigned long wep_weak_iv_count; 260 unsigned long last_rx; |
220 unsigned long num_duplicates; /* number of duplicate frames received 221 * from this STA */ 222 unsigned long rx_fragments; /* number of received MPDUs */ 223 unsigned long rx_dropped; /* number of dropped MPDUs from this STA */ 224 int last_signal; /* signal of last received frame from this STA */ 225 int last_qual; /* qual of last received frame from this STA */ 226 int last_noise; /* noise of last received frame from this STA */ 227 /* last received seq/frag number from this STA (per RX queue) */ | 261 unsigned long num_duplicates; 262 unsigned long rx_fragments; 263 unsigned long rx_dropped; 264 int last_signal; 265 int last_qual; 266 int last_noise; |
228 __le16 last_seq_ctrl[NUM_RX_DATA_QUEUES]; 229#ifdef CONFIG_MAC80211_DEBUG_COUNTERS 230 unsigned int wme_rx_queue[NUM_RX_DATA_QUEUES]; 231#endif 232 233 /* Updated from TX status path only, no locking requirements */ 234 unsigned long tx_filtered_count; 235 unsigned long tx_retry_failed, tx_retry_count; 236 /* TODO: update in generic code not rate control? */ 237 u32 tx_num_consecutive_failures; 238 u32 tx_num_mpdu_ok; 239 u32 tx_num_mpdu_fail; 240 /* moving percentage of failed MSDUs */ 241 unsigned int fail_avg; 242 243 /* Updated from TX path only, no locking requirements */ | 267 __le16 last_seq_ctrl[NUM_RX_DATA_QUEUES]; 268#ifdef CONFIG_MAC80211_DEBUG_COUNTERS 269 unsigned int wme_rx_queue[NUM_RX_DATA_QUEUES]; 270#endif 271 272 /* Updated from TX status path only, no locking requirements */ 273 unsigned long tx_filtered_count; 274 unsigned long tx_retry_failed, tx_retry_count; 275 /* TODO: update in generic code not rate control? */ 276 u32 tx_num_consecutive_failures; 277 u32 tx_num_mpdu_ok; 278 u32 tx_num_mpdu_fail; 279 /* moving percentage of failed MSDUs */ 280 unsigned int fail_avg; 281 282 /* Updated from TX path only, no locking requirements */ |
244 unsigned long tx_packets; /* number of RX/TX MSDUs */ | 283 unsigned long tx_packets; |
245 unsigned long tx_bytes; | 284 unsigned long tx_bytes; |
246 unsigned long tx_fragments; /* number of transmitted MPDUs */ | 285 unsigned long tx_fragments; |
247 int txrate_idx; 248 int last_txrate_idx; 249#ifdef CONFIG_MAC80211_DEBUG_COUNTERS 250 unsigned int wme_tx_queue[NUM_RX_DATA_QUEUES]; 251#endif 252 253 /* 254 * Aggregation information, locked with lock. 255 */ 256 struct sta_ampdu_mlme ampdu_mlme; | 286 int txrate_idx; 287 int last_txrate_idx; 288#ifdef CONFIG_MAC80211_DEBUG_COUNTERS 289 unsigned int wme_tx_queue[NUM_RX_DATA_QUEUES]; 290#endif 291 292 /* 293 * Aggregation information, locked with lock. 294 */ 295 struct sta_ampdu_mlme ampdu_mlme; |
257 u8 timer_to_tid[STA_TID_NUM]; /* identity mapping to ID timers */ 258 u8 tid_to_tx_q[STA_TID_NUM]; /* map tid to tx queue */ | 296 u8 timer_to_tid[STA_TID_NUM]; 297 u8 tid_to_tx_q[STA_TID_NUM]; |
259 260#ifdef CONFIG_MAC80211_MESH 261 /* 262 * Mesh peer link attributes 263 * TODO: move to a sub-structure that is referenced with pointer? 264 */ | 298 299#ifdef CONFIG_MAC80211_MESH 300 /* 301 * Mesh peer link attributes 302 * TODO: move to a sub-structure that is referenced with pointer? 303 */ |
265 __le16 llid; /* Local link ID */ 266 __le16 plid; /* Peer link ID */ 267 __le16 reason; /* Cancel reason on PLINK_HOLDING state */ 268 u8 plink_retries; /* Retries in establishment */ | 304 __le16 llid; 305 __le16 plid; 306 __le16 reason; 307 u8 plink_retries; |
269 bool ignore_plink_timer; 270 enum plink_state plink_state; 271 u32 plink_timeout; 272 struct timer_list plink_timer; 273#endif 274 275#ifdef CONFIG_MAC80211_DEBUGFS 276 struct sta_info_debugfsdentries { --- 151 unchanged lines hidden --- | 308 bool ignore_plink_timer; 309 enum plink_state plink_state; 310 u32 plink_timeout; 311 struct timer_list plink_timer; 312#endif 313 314#ifdef CONFIG_MAC80211_DEBUGFS 315 struct sta_info_debugfsdentries { --- 151 unchanged lines hidden --- |