Lines Matching refs:mvmvif
959 struct iwl_mvm_vif *mvmvif; in iwl_mvm_mac_ampdu_action() local
964 mvmvif = iwl_mvm_vif_from_mac80211(vif); in iwl_mvm_mac_ampdu_action()
965 cancel_delayed_work(&mvmvif->uapsd_nonagg_detected_wk); in iwl_mvm_mac_ampdu_action()
1027 struct iwl_mvm_vif *mvmvif = iwl_mvm_vif_from_mac80211(vif); in iwl_mvm_cleanup_iterator() local
1029 mvmvif->uploaded = false; in iwl_mvm_cleanup_iterator()
1030 mvmvif->ap_sta_id = IWL_MVM_INVALID_STA; in iwl_mvm_cleanup_iterator()
1033 iwl_mvm_te_clear_data(mvm, &mvmvif->time_event_data); in iwl_mvm_cleanup_iterator()
1036 mvmvif->phy_ctxt = NULL; in iwl_mvm_cleanup_iterator()
1037 memset(&mvmvif->bf_data, 0, sizeof(mvmvif->bf_data)); in iwl_mvm_cleanup_iterator()
1332 struct iwl_mvm_vif *mvmvif = iwl_mvm_vif_from_mac80211(vif); in iwl_mvm_mac_add_interface() local
1335 mvmvif->mvm = mvm; in iwl_mvm_mac_add_interface()
1356 mvmvif->beacon_stats.accu_num_beacons += in iwl_mvm_mac_add_interface()
1357 mvmvif->beacon_stats.num_beacons; in iwl_mvm_mac_add_interface()
1391 ret = iwl_mvm_allocate_int_sta(mvm, &mvmvif->mcast_sta, in iwl_mvm_mac_add_interface()
1401 mvmvif->features |= hw->netdev_features; in iwl_mvm_mac_add_interface()
1418 mvm->bf_allowed_vif = mvmvif; in iwl_mvm_mac_add_interface()
1430 mvmvif->phy_ctxt = iwl_mvm_get_free_phy_ctxt(mvm); in iwl_mvm_mac_add_interface()
1431 if (!mvmvif->phy_ctxt) { in iwl_mvm_mac_add_interface()
1436 iwl_mvm_phy_ctxt_ref(mvm, mvmvif->phy_ctxt); in iwl_mvm_mac_add_interface()
1461 iwl_mvm_phy_ctxt_unref(mvm, mvmvif->phy_ctxt); in iwl_mvm_mac_add_interface()
1463 if (mvm->bf_allowed_vif == mvmvif) { in iwl_mvm_mac_add_interface()
1469 mvmvif->phy_ctxt = NULL; in iwl_mvm_mac_add_interface()
1499 struct iwl_mvm_vif *mvmvif = iwl_mvm_vif_from_mac80211(vif); in iwl_mvm_mac_remove_interface() local
1509 if (mvm->bf_allowed_vif == mvmvif) { in iwl_mvm_mac_remove_interface()
1529 iwl_mvm_dealloc_int_sta(mvm, &mvmvif->mcast_sta); in iwl_mvm_mac_remove_interface()
1538 iwl_mvm_phy_ctxt_unref(mvm, mvmvif->phy_ctxt); in iwl_mvm_mac_remove_interface()
1539 mvmvif->phy_ctxt = NULL; in iwl_mvm_mac_remove_interface()
1750 struct iwl_mvm_vif *mvmvif = iwl_mvm_vif_from_mac80211(vif); in iwl_mvm_bcast_filter_iterator() local
1754 if (WARN_ON(mvmvif->id >= ARRAY_SIZE(cmd->macs))) in iwl_mvm_bcast_filter_iterator()
1757 bcast_mac = &cmd->macs[mvmvif->id]; in iwl_mvm_bcast_filter_iterator()
1931 struct iwl_mvm_vif *mvmvif = iwl_mvm_vif_from_mac80211(vif); in iwl_mvm_cfg_he_sta() local
2047 &mvmvif->queue_params[i].mu_edca_param_rec; in iwl_mvm_cfg_he_sta()
2049 if (!mvmvif->queue_params[i].mu_edca) { in iwl_mvm_cfg_he_sta()
2094 struct iwl_mvm_vif *mvmvif = iwl_mvm_vif_from_mac80211(vif); in iwl_mvm_bss_info_changed_station() local
2105 iwl_mvm_cfg_he_sta(mvm, vif, mvmvif->ap_sta_id); in iwl_mvm_bss_info_changed_station()
2116 if (changes & BSS_CHANGED_BSSID && !mvmvif->associated) in iwl_mvm_bss_info_changed_station()
2117 memcpy(mvmvif->bssid, bss_conf->bssid, ETH_ALEN); in iwl_mvm_bss_info_changed_station()
2119 ret = iwl_mvm_mac_ctxt_changed(mvm, vif, false, mvmvif->bssid); in iwl_mvm_bss_info_changed_station()
2124 memcpy(mvmvif->bssid, bss_conf->bssid, ETH_ALEN); in iwl_mvm_bss_info_changed_station()
2125 mvmvif->associated = bss_conf->assoc; in iwl_mvm_bss_info_changed_station()
2131 memset(&mvmvif->beacon_stats, 0, in iwl_mvm_bss_info_changed_station()
2132 sizeof(mvmvif->beacon_stats)); in iwl_mvm_bss_info_changed_station()
2170 } else if (mvmvif->ap_sta_id != IWL_MVM_INVALID_STA) { in iwl_mvm_bss_info_changed_station()
2193 mvmvif->ap_sta_id); in iwl_mvm_bss_info_changed_station()
2198 if (mvm->d0i3_ap_sta_id == mvmvif->ap_sta_id) in iwl_mvm_bss_info_changed_station()
2201 mvmvif->ap_sta_id = IWL_MVM_INVALID_STA; in iwl_mvm_bss_info_changed_station()
2236 mvmvif->bf_data.ave_beacon_signal = 0; in iwl_mvm_bss_info_changed_station()
2277 mvmvif->bf_data.last_cqm_event = 0; in iwl_mvm_bss_info_changed_station()
2278 if (mvmvif->bf_data.bf_enabled) { in iwl_mvm_bss_info_changed_station()
2296 struct iwl_mvm_vif *mvmvif = iwl_mvm_vif_from_mac80211(vif); in iwl_mvm_start_ap_ibss() local
2321 mvmvif->ap_assoc_sta_count = 0; in iwl_mvm_start_ap_ibss()
2369 mvmvif->ap_ibss_active = true; in iwl_mvm_start_ap_ibss()
2394 mvmvif->ap_ibss_active = false; in iwl_mvm_start_ap_ibss()
2411 struct iwl_mvm_vif *mvmvif = iwl_mvm_vif_from_mac80211(vif); in iwl_mvm_stop_ap_ibss() local
2419 iwl_mvm_remove_time_event(mvm, mvmvif, in iwl_mvm_stop_ap_ibss()
2420 &mvmvif->time_event_data); in iwl_mvm_stop_ap_ibss()
2422 mvmvif->csa_countdown = false; in iwl_mvm_stop_ap_ibss()
2430 mvmvif->ap_ibss_active = false; in iwl_mvm_stop_ap_ibss()
2471 struct iwl_mvm_vif *mvmvif = iwl_mvm_vif_from_mac80211(vif); in iwl_mvm_bss_info_changed_ap_ibss() local
2474 if (!mvmvif->ap_ibss_active) in iwl_mvm_bss_info_changed_ap_ibss()
2845 struct iwl_mvm_vif *mvmvif = iwl_mvm_vif_from_mac80211(vif); in iwl_mvm_mac_sta_state() local
2853 if (WARN_ON_ONCE(!mvmvif->phy_ctxt)) in iwl_mvm_mac_sta_state()
2930 mvmvif->ap_assoc_sta_count++; in iwl_mvm_mac_sta_state()
2934 iwl_mvm_rs_rate_init(mvm, sta, mvmvif->phy_ctxt->channel->band); in iwl_mvm_mac_sta_state()
2950 iwl_mvm_rs_rate_init(mvm, sta, mvmvif->phy_ctxt->channel->band); in iwl_mvm_mac_sta_state()
2961 mvmvif->ap_assoc_sta_count--; in iwl_mvm_mac_sta_state()
3019 struct iwl_mvm_vif *mvmvif = iwl_mvm_vif_from_mac80211(vif); in iwl_mvm_mac_conf_tx() local
3021 mvmvif->queue_params[ac] = *params; in iwl_mvm_mac_conf_tx()
3348 struct iwl_mvm_vif *mvmvif = iwl_mvm_vif_from_mac80211(vif); in iwl_mvm_send_aux_roc_cmd() local
3349 struct iwl_mvm_time_event_data *te_data = &mvmvif->hs_time_event_data; in iwl_mvm_send_aux_roc_cmd()
3462 struct iwl_mvm_vif *mvmvif = iwl_mvm_vif_from_mac80211(vif); in iwl_mvm_roc() local
3501 if (phy_ctxt->ref == 0 || mvmvif->phy_ctxt == phy_ctxt) in iwl_mvm_roc()
3513 iwl_mvm_phy_ctxt_unref(mvm, mvmvif->phy_ctxt); in iwl_mvm_roc()
3516 mvmvif->phy_ctxt = phy_ctxt; in iwl_mvm_roc()
3522 iwl_mvm_phy_ctxt_ref(mvm, mvmvif->phy_ctxt); in iwl_mvm_roc()
3528 if (channel == mvmvif->phy_ctxt->channel) in iwl_mvm_roc()
3537 if (mvmvif->phy_ctxt->ref == 1) { in iwl_mvm_roc()
3538 ret = iwl_mvm_phy_ctxt_changed(mvm, mvmvif->phy_ctxt, in iwl_mvm_roc()
3566 iwl_mvm_phy_ctxt_unref(mvm, mvmvif->phy_ctxt); in iwl_mvm_roc()
3569 mvmvif->phy_ctxt = phy_ctxt; in iwl_mvm_roc()
3575 iwl_mvm_phy_ctxt_ref(mvm, mvmvif->phy_ctxt); in iwl_mvm_roc()
3713 struct iwl_mvm_vif *mvmvif = iwl_mvm_vif_from_mac80211(vif); in __iwl_mvm_assign_vif_chanctx() local
3718 mvmvif->phy_ctxt = phy_ctxt; in __iwl_mvm_assign_vif_chanctx()
3724 mvmvif->ap_ibss_active = true; in __iwl_mvm_assign_vif_chanctx()
3735 mvmvif->csa_bcn_pending = false; in __iwl_mvm_assign_vif_chanctx()
3739 mvmvif->ps_disabled = true; in __iwl_mvm_assign_vif_chanctx()
3761 mvmvif->monitor_active = true; in __iwl_mvm_assign_vif_chanctx()
3792 mvmvif->csa_bcn_pending = true; in __iwl_mvm_assign_vif_chanctx()
3809 mvmvif->phy_ctxt = NULL; in __iwl_mvm_assign_vif_chanctx()
3831 struct iwl_mvm_vif *mvmvif = iwl_mvm_vif_from_mac80211(vif); in __iwl_mvm_unassign_vif_chanctx() local
3836 iwl_mvm_remove_time_event(mvm, mvmvif, &mvmvif->time_event_data); in __iwl_mvm_unassign_vif_chanctx()
3842 mvmvif->monitor_active = false; in __iwl_mvm_unassign_vif_chanctx()
3843 mvmvif->ps_disabled = false; in __iwl_mvm_unassign_vif_chanctx()
3848 if (!switching_chanctx || !mvmvif->ap_ibss_active) in __iwl_mvm_unassign_vif_chanctx()
3851 mvmvif->csa_countdown = false; in __iwl_mvm_unassign_vif_chanctx()
3854 iwl_mvm_modify_all_sta_disable_tx(mvm, mvmvif, true); in __iwl_mvm_unassign_vif_chanctx()
3859 mvmvif->ap_ibss_active = false; in __iwl_mvm_unassign_vif_chanctx()
3877 mvmvif->phy_ctxt = NULL; in __iwl_mvm_unassign_vif_chanctx()
4124 struct iwl_mvm_vif *mvmvif = iwl_mvm_vif_from_mac80211(vif); in iwl_mvm_pre_channel_switch() local
4130 mvmvif->csa_failed = false; in iwl_mvm_pre_channel_switch()
4159 if (WARN_ONCE(mvmvif->csa_countdown, in iwl_mvm_pre_channel_switch()
4165 mvmvif->csa_target_freq = chsw->chandef.chan->center_freq; in iwl_mvm_pre_channel_switch()
4187 if (mvmvif->bf_data.bf_enabled) { in iwl_mvm_pre_channel_switch()
4198 mvmvif->ps_disabled = true; in iwl_mvm_pre_channel_switch()
4216 struct iwl_mvm_vif *mvmvif = iwl_mvm_vif_from_mac80211(vif); in iwl_mvm_post_channel_switch() local
4222 if (mvmvif->csa_failed) { in iwl_mvm_post_channel_switch()
4223 mvmvif->csa_failed = false; in iwl_mvm_post_channel_switch()
4231 mvmvif->csa_bcn_pending = false; in iwl_mvm_post_channel_switch()
4233 mvmvif->ap_sta_id); in iwl_mvm_post_channel_switch()
4251 mvmvif->ps_disabled = false; in iwl_mvm_post_channel_switch()
4299 struct iwl_mvm_vif *mvmvif; in iwl_mvm_mac_flush() local
4317 mvmvif = iwl_mvm_vif_from_mac80211(vif); in iwl_mvm_mac_flush()
4331 WARN_ON(i != mvmvif->ap_sta_id && !sta->tdls); in iwl_mvm_mac_flush()
4408 struct iwl_mvm_vif *mvmvif = iwl_mvm_vif_from_mac80211(vif); in iwl_mvm_mac_sta_statistics() local
4429 if (mvmvif->ap_sta_id != mvmsta->sta_id) in iwl_mvm_mac_sta_statistics()
4435 sinfo->rx_beacon = mvmvif->beacon_stats.num_beacons + in iwl_mvm_mac_sta_statistics()
4436 mvmvif->beacon_stats.accu_num_beacons; in iwl_mvm_mac_sta_statistics()
4438 if (mvmvif->beacon_stats.avg_signal) { in iwl_mvm_mac_sta_statistics()
4440 sinfo->rx_beacon_signal_avg = mvmvif->beacon_stats.avg_signal; in iwl_mvm_mac_sta_statistics()