Lines Matching refs:local
67 struct ieee80211_local *local = sdata->local; in ieee80211_send_addba_request() local
72 skb = dev_alloc_skb(sizeof(*mgmt) + local->hw.extra_tx_headroom); in ieee80211_send_addba_request()
77 skb_reserve(skb, local->hw.extra_tx_headroom); in ieee80211_send_addba_request()
117 struct ieee80211_local *local = sdata->local; in ieee80211_send_bar() local
122 skb = dev_alloc_skb(sizeof(*bar) + local->hw.extra_tx_headroom); in ieee80211_send_bar()
126 skb_reserve(skb, local->hw.extra_tx_headroom); in ieee80211_send_bar()
171 if (atomic_inc_return(&sdata->local->agg_queue_stop[queue]) == 1) in __acquires()
173 &sdata->local->hw, queue, in __acquires()
184 if (atomic_dec_return(&sdata->local->agg_queue_stop[queue]) == 0) in __releases()
186 &sdata->local->hw, queue, in __releases()
226 drv_wake_tx_queue(sta->sdata->local, txqi); in ieee80211_agg_start_txq()
237 struct ieee80211_local *local = sdata->local; in __acquires() local
249 spin_lock_irqsave(&local->queue_stop_reason_lock, flags); in __acquires()
252 &local->pending[queue]); in __acquires()
253 spin_unlock_irqrestore(&local->queue_stop_reason_lock, flags); in __acquires()
296 struct ieee80211_local *local = sta->local; in ___ieee80211_stop_tx_ba_session() local
333 ret = drv_ampdu_action(local, sta->sdata, in ___ieee80211_stop_tx_ba_session()
384 ret = drv_ampdu_action(local, sta->sdata, action, in ___ieee80211_stop_tx_ba_session()
446 struct ieee80211_local *local = sta->local; in ieee80211_tx_ba_session_handle_start() local
472 ret = drv_ampdu_action(local, sdata, IEEE80211_AMPDU_TX_START, in ieee80211_tx_ba_session_handle_start()
551 struct ieee80211_local *local = sdata->local; in ieee80211_start_tx_ba_session() local
564 if (WARN_ON_ONCE(!local->ops->ampdu_action)) in ieee80211_start_tx_ba_session()
568 !ieee80211_hw_check(&local->hw, AMPDU_AGGREGATION) || in ieee80211_start_tx_ba_session()
569 ieee80211_hw_check(&local->hw, TX_AMPDU_SETUP_IN_HW)) in ieee80211_start_tx_ba_session()
674 ieee80211_queue_work(&local->hw, &sta->ampdu_mlme.work); in ieee80211_start_tx_ba_session()
683 static void ieee80211_agg_tx_operational(struct ieee80211_local *local, in ieee80211_agg_tx_operational() argument
695 drv_ampdu_action(local, sta->sdata, in ieee80211_agg_tx_operational()
723 struct ieee80211_local *local = sdata->local; in ieee80211_start_tx_ba_cb() local
735 mutex_lock(&local->sta_mtx); in ieee80211_start_tx_ba_cb()
738 mutex_unlock(&local->sta_mtx); in ieee80211_start_tx_ba_cb()
755 ieee80211_agg_tx_operational(local, sta, tid); in ieee80211_start_tx_ba_cb()
759 mutex_unlock(&local->sta_mtx); in ieee80211_start_tx_ba_cb()
766 struct ieee80211_local *local = sdata->local; in ieee80211_start_tx_ba_cb_irqsafe() local
779 ieee80211_queue_work(&local->hw, &sdata->work); in ieee80211_start_tx_ba_cb_irqsafe()
801 struct ieee80211_local *local = sdata->local; in ieee80211_stop_tx_ba_session() local
807 if (!local->ops->ampdu_action) in ieee80211_stop_tx_ba_session()
831 ieee80211_queue_work(&local->hw, &sta->ampdu_mlme.work); in ieee80211_stop_tx_ba_session()
842 struct ieee80211_local *local = sdata->local; in ieee80211_stop_tx_ba_cb() local
857 mutex_lock(&local->sta_mtx); in ieee80211_stop_tx_ba_cb()
890 mutex_unlock(&local->sta_mtx); in ieee80211_stop_tx_ba_cb()
897 struct ieee80211_local *local = sdata->local; in ieee80211_stop_tx_ba_cb_irqsafe() local
910 ieee80211_queue_work(&local->hw, &sdata->work); in ieee80211_stop_tx_ba_cb_irqsafe()
915 void ieee80211_process_addba_resp(struct ieee80211_local *local, in ieee80211_process_addba_resp() argument
929 buf_size = min(buf_size, local->hw.max_tx_aggregation_subframes); in ieee80211_process_addba_resp()
979 ieee80211_agg_tx_operational(local, sta, tid); in ieee80211_process_addba_resp()