Lines Matching refs:mvm_sta
131 struct iwl_mvm_sta *mvm_sta = iwl_mvm_sta_from_mac80211(sta); in iwl_mvm_sta_send_to_fw() local
133 .sta_id = mvm_sta->deflink.sta_id, in iwl_mvm_sta_send_to_fw()
134 .mac_id_n_color = cpu_to_le32(mvm_sta->mac_id_n_color), in iwl_mvm_sta_send_to_fw()
139 .tid_disable_tx = cpu_to_le16(mvm_sta->tid_disable_agg), in iwl_mvm_sta_send_to_fw()
146 add_sta_cmd.station_type = mvm_sta->sta_type; in iwl_mvm_sta_send_to_fw()
153 cpu_to_le32(mvm_sta->tfd_queue_msk); in iwl_mvm_sta_send_to_fw()
211 mvm_sta->vif->bss_conf.chandef.chan->band == NL80211_BAND_6GHZ) in iwl_mvm_sta_send_to_fw()
217 &mvm_sta->vif->bss_conf, in iwl_mvm_sta_send_to_fw()
224 if (mvm_sta->sta_state >= IEEE80211_STA_ASSOC) in iwl_mvm_sta_send_to_fw()
260 struct iwl_mvm_sta *mvm_sta; in iwl_mvm_rx_agg_session_expired() local
295 mvm_sta = iwl_mvm_sta_from_mac80211(sta); in iwl_mvm_rx_agg_session_expired()
296 ieee80211_rx_ba_timer_expired(mvm_sta->vif, in iwl_mvm_rx_agg_session_expired()
1609 struct iwl_mvm_sta *mvm_sta = iwl_mvm_sta_from_mac80211(sta); in iwl_mvm_realloc_queues_after_restart() local
1611 iwl_mvm_get_wd_timeout(mvm, mvm_sta->vif, false, false); in iwl_mvm_realloc_queues_after_restart()
1614 .sta_id = mvm_sta->deflink.sta_id, in iwl_mvm_realloc_queues_after_restart()
1619 if (mvm_sta->reserved_queue != IEEE80211_INVAL_HW_QUEUE) in iwl_mvm_realloc_queues_after_restart()
1620 mvm->queue_info[mvm_sta->reserved_queue].status = in iwl_mvm_realloc_queues_after_restart()
1624 struct iwl_mvm_tid_data *tid_data = &mvm_sta->tid_data[i]; in iwl_mvm_realloc_queues_after_restart()
1636 mvm_sta->deflink.sta_id, i); in iwl_mvm_realloc_queues_after_restart()
1638 mvm_sta->deflink.sta_id, in iwl_mvm_realloc_queues_after_restart()
1667 mvm_sta->deflink.sta_id, i, in iwl_mvm_realloc_queues_after_restart()
1731 struct iwl_mvm_sta *mvm_sta = iwl_mvm_sta_from_mac80211(sta); in iwl_mvm_sta_init() local
1737 mvm_sta->mac_id_n_color = FW_CMD_ID_AND_COLOR(mvmvif->id, in iwl_mvm_sta_init()
1739 mvm_sta->vif = vif; in iwl_mvm_sta_init()
1748 mvm_sta->deflink.sta_id = sta_id; in iwl_mvm_sta_init()
1749 rcu_assign_pointer(mvm_sta->link[0], &mvm_sta->deflink); in iwl_mvm_sta_init()
1752 mvm_sta->deflink.lq_sta.rs_drv.pers.max_agg_bufsize = in iwl_mvm_sta_init()
1755 mvm_sta->deflink.lq_sta.rs_drv.pers.max_agg_bufsize = in iwl_mvm_sta_init()
1759 mvm_sta->tt_tx_protection = false; in iwl_mvm_sta_init()
1760 mvm_sta->sta_type = sta_type; in iwl_mvm_sta_init()
1762 mvm_sta->tid_disable_agg = 0xffff; /* No aggs at first */ in iwl_mvm_sta_init()
1769 mvm_sta->tid_data[i].txq_id = IWL_MVM_INVALID_QUEUE; in iwl_mvm_sta_init()
1800 mvm_sta->dup_data = dup_data; in iwl_mvm_sta_init()
1815 iwl_mvm_rs_add_sta(mvm, mvm_sta); in iwl_mvm_sta_init()
1817 spin_lock_init(&mvm_sta->deflink.lq_sta.rs_drv.pers.lock); in iwl_mvm_sta_init()
1819 iwl_mvm_toggle_tx_ant(mvm, &mvm_sta->tx_ant); in iwl_mvm_sta_init()
1829 struct iwl_mvm_sta *mvm_sta = iwl_mvm_sta_from_mac80211(sta); in iwl_mvm_add_sta() local
1840 sta_id = mvm_sta->deflink.sta_id; in iwl_mvm_add_sta()
1845 spin_lock_init(&mvm_sta->lock); in iwl_mvm_add_sta()
1851 .type = mvm_sta->sta_type, in iwl_mvm_add_sta()
1968 struct iwl_mvm_sta *mvm_sta = iwl_mvm_sta_from_mac80211(sta); in iwl_mvm_disable_sta_queues() local
1973 for (i = 0; i < ARRAY_SIZE(mvm_sta->tid_data); i++) { in iwl_mvm_disable_sta_queues()
1974 if (mvm_sta->tid_data[i].txq_id == IWL_MVM_INVALID_QUEUE) in iwl_mvm_disable_sta_queues()
1977 iwl_mvm_disable_txq(mvm, sta, mvm_sta->deflink.sta_id, in iwl_mvm_disable_sta_queues()
1978 &mvm_sta->tid_data[i].txq_id, i); in iwl_mvm_disable_sta_queues()
1979 mvm_sta->tid_data[i].txq_id = IWL_MVM_INVALID_QUEUE; in iwl_mvm_disable_sta_queues()
1995 struct iwl_mvm_sta *mvm_sta) in iwl_mvm_wait_sta_queues_empty() argument
1999 for (i = 0; i < ARRAY_SIZE(mvm_sta->tid_data); i++) { in iwl_mvm_wait_sta_queues_empty()
2003 spin_lock_bh(&mvm_sta->lock); in iwl_mvm_wait_sta_queues_empty()
2004 txq_id = mvm_sta->tid_data[i].txq_id; in iwl_mvm_wait_sta_queues_empty()
2005 spin_unlock_bh(&mvm_sta->lock); in iwl_mvm_wait_sta_queues_empty()
2029 struct iwl_mvm_sta *mvm_sta = iwl_mvm_sta_from_mac80211(sta); in iwl_mvm_sta_del() local
2036 rcu_dereference_protected(mvm_sta->link[link_sta->link_id], in iwl_mvm_sta_del()
2041 if (mvm_sta->reserved_queue != IEEE80211_INVAL_HW_QUEUE) { in iwl_mvm_sta_del()
2042 u8 reserved_txq = mvm_sta->reserved_queue; in iwl_mvm_sta_del()
2090 struct iwl_mvm_sta *mvm_sta = iwl_mvm_sta_from_mac80211(sta); in iwl_mvm_rm_sta() local
2095 ret = iwl_mvm_drain_sta(mvm, mvm_sta, true); in iwl_mvm_rm_sta()
2100 ret = iwl_mvm_flush_sta(mvm, mvm_sta, false); in iwl_mvm_rm_sta()
2104 ret = iwl_mvm_wait_sta_queues_empty(mvm, mvm_sta); in iwl_mvm_rm_sta()
2106 u32 q_mask = mvm_sta->tfd_queue_msk; in iwl_mvm_rm_sta()
2114 ret = iwl_mvm_drain_sta(mvm, mvm_sta, false); in iwl_mvm_rm_sta()
2121 ret = iwl_mvm_rm_sta_common(mvm, mvm_sta->deflink.sta_id); in iwl_mvm_rm_sta()
2122 RCU_INIT_POINTER(mvm->fw_id_to_mac_id[mvm_sta->deflink.sta_id], NULL); in iwl_mvm_rm_sta()
2765 struct iwl_mvm_sta *mvm_sta = iwl_mvm_sta_from_mac80211(sta); in iwl_mvm_fw_baid_op_sta() local
2767 .mac_id_n_color = cpu_to_le32(mvm_sta->mac_id_n_color), in iwl_mvm_fw_baid_op_sta()
2768 .sta_id = mvm_sta->deflink.sta_id, in iwl_mvm_fw_baid_op_sta()
2874 struct iwl_mvm_sta *mvm_sta = iwl_mvm_sta_from_mac80211(sta); in iwl_mvm_sta_rx_agg() local
2929 baid = mvm_sta->tid_to_baid[tid]; in iwl_mvm_sta_rx_agg()
2961 mvm_sta->tid_to_baid[tid] = baid; in iwl_mvm_sta_rx_agg()
2974 mvm_sta->deflink.sta_id, tid, baid); in iwl_mvm_sta_rx_agg()
2978 baid = mvm_sta->tid_to_baid[tid]; in iwl_mvm_sta_rx_agg()
3020 struct iwl_mvm_sta *mvm_sta = iwl_mvm_sta_from_mac80211(sta); in iwl_mvm_sta_tx_agg() local
3028 mvm_sta->tfd_queue_msk |= BIT(queue); in iwl_mvm_sta_tx_agg()
3029 mvm_sta->tid_disable_agg &= ~BIT(tid); in iwl_mvm_sta_tx_agg()
3032 mvm_sta->tid_disable_agg |= BIT(tid); in iwl_mvm_sta_tx_agg()
3035 cmd.mac_id_n_color = cpu_to_le32(mvm_sta->mac_id_n_color); in iwl_mvm_sta_tx_agg()
3036 cmd.sta_id = mvm_sta->deflink.sta_id; in iwl_mvm_sta_tx_agg()
3041 cmd.tfd_queue_msk = cpu_to_le32(mvm_sta->tfd_queue_msk); in iwl_mvm_sta_tx_agg()
3042 cmd.tid_disable_tx = cpu_to_le16(mvm_sta->tid_disable_agg); in iwl_mvm_sta_tx_agg()
3812 struct iwl_mvm_sta *mvm_sta = iwl_mvm_sta_from_mac80211(sta); in __iwl_mvm_set_sta_key() local
3814 sta_id = mvm_sta->deflink.sta_id; in __iwl_mvm_set_sta_key()
3853 struct iwl_mvm_sta *mvm_sta; in iwl_mvm_set_sta_key() local
3863 mvm_sta = iwl_mvm_get_key_sta(mvm, vif, sta); in iwl_mvm_set_sta_key()
3864 if (!mvm_sta) { in iwl_mvm_set_sta_key()
3868 sta_id = mvm_sta->deflink.sta_id; in iwl_mvm_set_sta_key()
3954 struct iwl_mvm_sta *mvm_sta; in iwl_mvm_remove_sta_key() local
3961 mvm_sta = iwl_mvm_get_key_sta(mvm, vif, sta); in iwl_mvm_remove_sta_key()
3962 if (mvm_sta) in iwl_mvm_remove_sta_key()
3963 sta_id = mvm_sta->deflink.sta_id; in iwl_mvm_remove_sta_key()
3989 if (sta && !mvm_sta) { in iwl_mvm_remove_sta_key()
4012 struct iwl_mvm_sta *mvm_sta; in iwl_mvm_update_tkip_key() local
4018 mvm_sta = iwl_mvm_get_key_sta(mvm, vif, sta); in iwl_mvm_update_tkip_key()
4019 if (WARN_ON_ONCE(!mvm_sta)) in iwl_mvm_update_tkip_key()
4021 iwl_mvm_send_sta_key(mvm, mvm_sta->deflink.sta_id, keyconf, mcast, in iwl_mvm_update_tkip_key()
4176 struct iwl_mvm_sta *mvm_sta = iwl_mvm_sta_from_mac80211(sta); in iwl_mvm_sta_modify_disable_tx_ap() local
4183 spin_lock_bh(&mvm_sta->lock); in iwl_mvm_sta_modify_disable_tx_ap()
4185 if (mvm_sta->disable_tx == disable) { in iwl_mvm_sta_modify_disable_tx_ap()
4186 spin_unlock_bh(&mvm_sta->lock); in iwl_mvm_sta_modify_disable_tx_ap()
4190 mvm_sta->disable_tx = disable; in iwl_mvm_sta_modify_disable_tx_ap()
4199 iwl_mvm_sta_modify_disable_tx(mvm, mvm_sta, disable); in iwl_mvm_sta_modify_disable_tx_ap()
4201 spin_unlock_bh(&mvm_sta->lock); in iwl_mvm_sta_modify_disable_tx_ap()
4230 struct iwl_mvm_sta *mvm_sta; in iwl_mvm_modify_all_sta_disable_tx() local
4246 mvm_sta = iwl_mvm_sta_from_mac80211(sta); in iwl_mvm_modify_all_sta_disable_tx()
4247 if (mvm_sta->mac_id_n_color != in iwl_mvm_modify_all_sta_disable_tx()