|
@@ -83,7 +83,9 @@ enum ieee80211_sta_state {
|
|
|
|
|
|
#define STA_TID_NUM 16
|
|
|
#define ADDBA_RESP_INTERVAL HZ
|
|
|
-#define HT_AGG_MAX_RETRIES 0x3
|
|
|
+#define HT_AGG_MAX_RETRIES 15
|
|
|
+#define HT_AGG_BURST_RETRIES 3
|
|
|
+#define HT_AGG_RETRIES_PERIOD (15 * HZ)
|
|
|
|
|
|
#define HT_AGG_STATE_DRV_READY 0
|
|
|
#define HT_AGG_STATE_RESPONSE_RECEIVED 1
|
|
@@ -179,6 +181,7 @@ struct tid_ampdu_rx {
|
|
|
* @tid_tx: aggregation info for Tx per TID
|
|
|
* @tid_start_tx: sessions where start was requested
|
|
|
* @addba_req_num: number of times addBA request has been sent.
|
|
|
+ * @last_addba_req_time: timestamp of the last addBA request.
|
|
|
* @dialog_token_allocator: dialog token enumerator for each new session;
|
|
|
* @work: work struct for starting/stopping aggregation
|
|
|
* @tid_rx_timer_expired: bitmap indicating on which TIDs the
|
|
@@ -198,6 +201,7 @@ struct sta_ampdu_mlme {
|
|
|
struct work_struct work;
|
|
|
struct tid_ampdu_tx __rcu *tid_tx[STA_TID_NUM];
|
|
|
struct tid_ampdu_tx *tid_start_tx[STA_TID_NUM];
|
|
|
+ unsigned long last_addba_req_time[STA_TID_NUM];
|
|
|
u8 addba_req_num[STA_TID_NUM];
|
|
|
u8 dialog_token_allocator;
|
|
|
};
|