STRUCT STA_AMPDU_MLM(9)

NAME
struct_sta_ampdu_mlme - STA aggregation information.

SYNOPSIS

struct sta_ampdu_mlme {
  struct mutex mtx;
  struct tid_ampdu_rx __rcu * tid_rx[IEEE80211_NUM_TIDS];
  unsigned long tid_rx_timer_expired[BITS_TO_LONGS(IEEE80211_NUM_TIDS)];
  unsigned long tid_rx_stop_requested[BITS_TO_LONGS(IEEE80211_NUM_TIDS)];
  struct work_struct work;
  struct tid_ampdu_tx __rcu * tid_tx[IEEE80211_NUM_TIDS];
  struct tid_ampdu_tx * tid_start_tx[IEEE80211_NUM_TIDS];
  unsigned long last_addba_req_time[IEEE80211_NUM_TIDS];
  u8 addba_req_num[IEEE80211_NUM_TIDS];
  u8 dialog_token_allocator;
};

MEMBERS

mtx
    mutex to protect all TX data (except non-NULL assignments to tid_tx[idx], which are protected by the sta spinlock) tid_start_tx is also protected by sta->lock.

tid_rx[IEEE80211_NUM_TIDS]
    aggregation info for Rx per TID -- RCU protected

tid_rx_timer_expired[BITS_TO_LONGS(IEEE80211_NUM_TIDS)]
    bitmap indicating on which TIDs the RX timer expired until the work for it runs

tid_rx_stop_requested[BITS_TO_LONGS(IEEE80211_NUM_TIDS)]
    bitmap indicating which BA sessions per TID the driver requested to close until the work for it runs

work
    work struct for starting/stopping aggregation

tid_tx[IEEE80211_NUM_TIDS]
    aggregation info for Tx per TID

tid_start_tx[IEEE80211_NUM_TIDS]
    sessions where start was requested

last_addba_req_time[IEEE80211_NUM_TIDS]
    timestamp of the last addBA request.

addba_req_num[IEEE80211_NUM_TIDS]
    number of times addBA request has been sent.

dialog_token_allocator
    dialog token enumerator for each new session;

AUTHOR

Johannes Berg <johannes@sipsolutions.net>
    Author.

COPYRIGHT