Lines Matching defs:sta
144 struct sta_info *sta = link_sta->sta;
248 ieee80211_sta_recalc_aggregates(&sta->sta);
287 if (sta->sdata->vif.type == NL80211_IFTYPE_AP ||
288 sta->sdata->vif.type == NL80211_IFTYPE_AP_VLAN) {
315 void ieee80211_sta_tear_down_BA_sessions(struct sta_info *sta,
320 mutex_lock(&sta->ampdu_mlme.mtx);
322 ___ieee80211_stop_rx_ba_session(sta, i, WLAN_BACK_RECIPIENT,
328 ___ieee80211_stop_tx_ba_session(sta, i, reason);
329 mutex_unlock(&sta->ampdu_mlme.mtx);
337 cancel_work_sync(&sta->ampdu_mlme.work);
339 mutex_lock(&sta->ampdu_mlme.mtx);
342 rcu_dereference_protected_tid_tx(sta, i);
348 ieee80211_stop_tx_ba_cb(sta, i, tid_tx);
350 mutex_unlock(&sta->ampdu_mlme.mtx);
356 struct sta_info *sta =
363 blocked = test_sta_flag(sta, WLAN_STA_BLOCK_BA);
365 mutex_lock(&sta->ampdu_mlme.mtx);
367 if (test_and_clear_bit(tid, sta->ampdu_mlme.tid_rx_timer_expired))
369 sta, tid, WLAN_BACK_RECIPIENT,
373 sta->ampdu_mlme.tid_rx_stop_requested))
375 sta, tid, WLAN_BACK_RECIPIENT,
380 sta->ampdu_mlme.tid_rx_manage_offl))
381 ___ieee80211_start_rx_ba_session(sta, 0, 0, 0, 1, tid,
386 sta->ampdu_mlme.tid_rx_manage_offl))
388 sta, tid, WLAN_BACK_RECIPIENT,
391 spin_lock_bh(&sta->lock);
393 tid_tx = sta->ampdu_mlme.tid_start_tx[tid];
395 struct txq_info *txqi = to_txq_info(sta->sta.txq[tid]);
411 spin_unlock_bh(&sta->lock);
418 mutex_unlock(&sta->ampdu_mlme.mtx);
431 sta->ampdu_mlme.tid_start_tx[tid] = NULL;
433 if (sta->ampdu_mlme.tid_tx[tid])
436 ieee80211_assign_tid_tx(sta, tid, tid_tx);
437 spin_unlock_bh(&sta->lock);
439 ieee80211_tx_ba_session_handle_start(sta, tid);
442 spin_unlock_bh(&sta->lock);
444 tid_tx = rcu_dereference_protected_tid_tx(sta, tid);
450 ieee80211_start_tx_ba_cb(sta, tid, tid_tx);
452 ___ieee80211_stop_tx_ba_session(sta, tid,
455 ieee80211_stop_tx_ba_cb(sta, tid, tid_tx);
457 mutex_unlock(&sta->ampdu_mlme.mtx);
503 struct sta_info *sta,
519 __ieee80211_stop_rx_ba_session(sta, tid, WLAN_BACK_INITIATOR, 0,
522 __ieee80211_stop_tx_ba_session(sta, tid, AGG_STOP_PEER_REQUEST);