diff options
Diffstat (limited to 'net')
-rw-r--r-- | net/mac80211/sta_info.c | 1 | ||||
-rw-r--r-- | net/mac80211/sta_info.h | 81 |
2 files changed, 61 insertions, 21 deletions
diff --git a/net/mac80211/sta_info.c b/net/mac80211/sta_info.c index d8a16b7f6a6b..47d2c1bbfcaa 100644 --- a/net/mac80211/sta_info.c +++ b/net/mac80211/sta_info.c | |||
@@ -135,6 +135,7 @@ struct sta_info *sta_info_get_by_idx(struct ieee80211_local *local, int idx, | |||
135 | /** | 135 | /** |
136 | * __sta_info_free - internal STA free helper | 136 | * __sta_info_free - internal STA free helper |
137 | * | 137 | * |
138 | * @local: pointer to the global information | ||
138 | * @sta: STA info to free | 139 | * @sta: STA info to free |
139 | * | 140 | * |
140 | * This function must undo everything done by sta_info_alloc() | 141 | * This function must undo everything done by sta_info_alloc() |
diff --git a/net/mac80211/sta_info.h b/net/mac80211/sta_info.h index fd228c198e31..94311dcfe043 100644 --- a/net/mac80211/sta_info.h +++ b/net/mac80211/sta_info.h | |||
@@ -160,11 +160,21 @@ struct sta_ampdu_mlme { | |||
160 | * @list: global linked list entry | 160 | * @list: global linked list entry |
161 | * @hnext: hash table linked list pointer | 161 | * @hnext: hash table linked list pointer |
162 | * @local: pointer to the global information | 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 | 172 | * @addr: MAC address of this STA |
164 | * @aid: STA's unique AID (1..2007, 0 = not assigned yet), | 173 | * @aid: STA's unique AID (1..2007, 0 = not assigned yet), |
165 | * only used in AP (and IBSS?) mode | 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 | 178 | * @ps_tx_buf: buffer of frames to transmit to this station |
169 | * when it leaves power saving state | 179 | * when it leaves power saving state |
170 | * @tx_filtered: buffer of frames we already tried to transmit | 180 | * @tx_filtered: buffer of frames we already tried to transmit |
@@ -172,10 +182,41 @@ struct sta_ampdu_mlme { | |||
172 | * power saving state | 182 | * power saving state |
173 | * @rx_packets: Number of MSDUs received from this STA | 183 | * @rx_packets: Number of MSDUs received from this STA |
174 | * @rx_bytes: Number of bytes received from this STA | 184 | * @rx_bytes: Number of bytes received from this STA |
175 | * @supp_rates: Bitmap of supported rates (per band) | 185 | * @wep_weak_iv_count: TBD |
176 | * @ht_info: HT capabilities of this STA | 186 | * @last_rx: TBD |
177 | * @lock: used for locking all fields that require locking, see comments | 187 | * @num_duplicates: number of duplicate frames received from this STA |
178 | * in the header file. | 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 | */ | 220 | */ |
180 | struct sta_info { | 221 | struct sta_info { |
181 | /* General information, mostly static */ | 222 | /* General information, mostly static */ |
@@ -217,14 +258,12 @@ struct sta_info { | |||
217 | unsigned long rx_packets, rx_bytes; | 258 | unsigned long rx_packets, rx_bytes; |
218 | unsigned long wep_weak_iv_count; | 259 | unsigned long wep_weak_iv_count; |
219 | unsigned long last_rx; | 260 | unsigned long last_rx; |
220 | unsigned long num_duplicates; /* number of duplicate frames received | 261 | unsigned long num_duplicates; |
221 | * from this STA */ | 262 | unsigned long rx_fragments; |
222 | unsigned long rx_fragments; /* number of received MPDUs */ | 263 | unsigned long rx_dropped; |
223 | unsigned long rx_dropped; /* number of dropped MPDUs from this STA */ | 264 | int last_signal; |
224 | int last_signal; /* signal of last received frame from this STA */ | 265 | int last_qual; |
225 | int last_qual; /* qual of last received frame from this STA */ | 266 | int last_noise; |
226 | int last_noise; /* noise of last received frame from this STA */ | ||
227 | /* last received seq/frag number from this STA (per RX queue) */ | ||
228 | __le16 last_seq_ctrl[NUM_RX_DATA_QUEUES]; | 267 | __le16 last_seq_ctrl[NUM_RX_DATA_QUEUES]; |
229 | #ifdef CONFIG_MAC80211_DEBUG_COUNTERS | 268 | #ifdef CONFIG_MAC80211_DEBUG_COUNTERS |
230 | unsigned int wme_rx_queue[NUM_RX_DATA_QUEUES]; | 269 | unsigned int wme_rx_queue[NUM_RX_DATA_QUEUES]; |
@@ -241,9 +280,9 @@ struct sta_info { | |||
241 | unsigned int fail_avg; | 280 | unsigned int fail_avg; |
242 | 281 | ||
243 | /* Updated from TX path only, no locking requirements */ | 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; | 286 | int txrate_idx; |
248 | int last_txrate_idx; | 287 | int last_txrate_idx; |
249 | #ifdef CONFIG_MAC80211_DEBUG_COUNTERS | 288 | #ifdef CONFIG_MAC80211_DEBUG_COUNTERS |
@@ -254,18 +293,18 @@ struct sta_info { | |||
254 | * Aggregation information, locked with lock. | 293 | * Aggregation information, locked with lock. |
255 | */ | 294 | */ |
256 | struct sta_ampdu_mlme ampdu_mlme; | 295 | struct sta_ampdu_mlme ampdu_mlme; |
257 | u8 timer_to_tid[STA_TID_NUM]; /* identity mapping to ID timers */ | 296 | u8 timer_to_tid[STA_TID_NUM]; |
258 | u8 tid_to_tx_q[STA_TID_NUM]; /* map tid to tx queue */ | 297 | u8 tid_to_tx_q[STA_TID_NUM]; |
259 | 298 | ||
260 | #ifdef CONFIG_MAC80211_MESH | 299 | #ifdef CONFIG_MAC80211_MESH |
261 | /* | 300 | /* |
262 | * Mesh peer link attributes | 301 | * Mesh peer link attributes |
263 | * TODO: move to a sub-structure that is referenced with pointer? | 302 | * TODO: move to a sub-structure that is referenced with pointer? |
264 | */ | 303 | */ |
265 | __le16 llid; /* Local link ID */ | 304 | __le16 llid; |
266 | __le16 plid; /* Peer link ID */ | 305 | __le16 plid; |
267 | __le16 reason; /* Cancel reason on PLINK_HOLDING state */ | 306 | __le16 reason; |
268 | u8 plink_retries; /* Retries in establishment */ | 307 | u8 plink_retries; |
269 | bool ignore_plink_timer; | 308 | bool ignore_plink_timer; |
270 | enum plink_state plink_state; | 309 | enum plink_state plink_state; |
271 | u32 plink_timeout; | 310 | u32 plink_timeout; |