Lines Matching refs:vif

116 					  struct ieee80211_vif *vif,  in iwl_mvm_beacon_filter_set_cqm_params()  argument
120 struct iwl_mvm_vif *mvmvif = iwl_mvm_vif_from_mac80211(vif); in iwl_mvm_beacon_filter_set_cqm_params()
122 if (vif->bss_conf.cqm_rssi_thold && !d0i3) { in iwl_mvm_beacon_filter_set_cqm_params()
124 cpu_to_le32(vif->bss_conf.cqm_rssi_hyst); in iwl_mvm_beacon_filter_set_cqm_params()
127 cpu_to_le32(-vif->bss_conf.cqm_rssi_thold); in iwl_mvm_beacon_filter_set_cqm_params()
170 struct ieee80211_vif *vif, in iwl_mvm_power_configure_uapsd() argument
173 struct iwl_mvm_vif *mvmvif = iwl_mvm_vif_from_mac80211(vif); in iwl_mvm_power_configure_uapsd()
263 struct ieee80211_vif *vif) in iwl_mvm_power_allow_uapsd() argument
265 struct iwl_mvm_vif *mvmvif = iwl_mvm_vif_from_mac80211(vif); in iwl_mvm_power_allow_uapsd()
267 if (!memcmp(mvmvif->uapsd_misbehaving_bssid, vif->bss_conf.bssid, in iwl_mvm_power_allow_uapsd()
271 if (vif->p2p && in iwl_mvm_power_allow_uapsd()
278 if (vif->p2p && in iwl_mvm_power_allow_uapsd()
279 (vif->bss_conf.p2p_noa_attr.oppps_ctwindow & in iwl_mvm_power_allow_uapsd()
293 static bool iwl_mvm_power_is_radar(struct ieee80211_vif *vif) in iwl_mvm_power_is_radar() argument
300 chanctx_conf = rcu_dereference(vif->chanctx_conf); in iwl_mvm_power_is_radar()
312 struct ieee80211_vif *vif, in iwl_mvm_power_config_skip_dtim() argument
316 int dtimper = vif->bss_conf.dtim_period ?: 1; in iwl_mvm_power_config_skip_dtim()
323 if (iwl_mvm_power_is_radar(vif)) in iwl_mvm_power_config_skip_dtim()
336 int dtimper_tu = dtimper * vif->bss_conf.beacon_int; in iwl_mvm_power_config_skip_dtim()
350 struct ieee80211_vif *vif, in iwl_mvm_power_build_cmd() argument
357 iwl_mvm_vif_from_mac80211(vif); in iwl_mvm_power_build_cmd()
361 dtimper = vif->bss_conf.dtim_period; in iwl_mvm_power_build_cmd()
362 bi = vif->bss_conf.beacon_int; in iwl_mvm_power_build_cmd()
380 if (!vif->bss_conf.ps || !mvmvif->pm_enabled) in iwl_mvm_power_build_cmd()
383 if (iwl_mvm_vif_low_latency(mvmvif) && vif->p2p && in iwl_mvm_power_build_cmd()
391 if (vif->bss_conf.beacon_rate && in iwl_mvm_power_build_cmd()
392 (vif->bss_conf.beacon_rate->bitrate == 10 || in iwl_mvm_power_build_cmd()
393 vif->bss_conf.beacon_rate->bitrate == 60)) { in iwl_mvm_power_build_cmd()
398 iwl_mvm_power_config_skip_dtim(mvm, vif, cmd, host_awake); in iwl_mvm_power_build_cmd()
405 } else if (iwl_mvm_vif_low_latency(mvmvif) && vif->p2p && in iwl_mvm_power_build_cmd()
419 if (iwl_mvm_power_allow_uapsd(mvm, vif)) in iwl_mvm_power_build_cmd()
420 iwl_mvm_power_configure_uapsd(mvm, vif, cmd); in iwl_mvm_power_build_cmd()
469 struct ieee80211_vif *vif) in iwl_mvm_power_send_cmd() argument
473 iwl_mvm_power_build_cmd(mvm, vif, &cmd, in iwl_mvm_power_send_cmd()
477 memcpy(&iwl_mvm_vif_from_mac80211(vif)->mac_pwr_cmd, &cmd, sizeof(cmd)); in iwl_mvm_power_send_cmd()
510 void iwl_mvm_power_vif_assoc(struct iwl_mvm *mvm, struct ieee80211_vif *vif) in iwl_mvm_power_vif_assoc() argument
512 struct iwl_mvm_vif *mvmvif = iwl_mvm_vif_from_mac80211(vif); in iwl_mvm_power_vif_assoc()
514 if (memcmp(vif->bss_conf.bssid, mvmvif->uapsd_misbehaving_bssid, in iwl_mvm_power_vif_assoc()
520 struct ieee80211_vif *vif) in iwl_mvm_power_uapsd_misbehav_ap_iterator() argument
523 struct iwl_mvm_vif *mvmvif = iwl_mvm_vif_from_mac80211(vif); in iwl_mvm_power_uapsd_misbehav_ap_iterator()
529 memcpy(mvmvif->uapsd_misbehaving_bssid, vif->bss_conf.bssid, in iwl_mvm_power_uapsd_misbehav_ap_iterator()
559 struct ieee80211_vif *vif) in iwl_mvm_power_disable_pm_iterator() argument
561 struct iwl_mvm_vif *mvmvif = iwl_mvm_vif_from_mac80211(vif); in iwl_mvm_power_disable_pm_iterator()
567 struct ieee80211_vif *vif) in iwl_mvm_power_ps_disabled_iterator() argument
569 struct iwl_mvm_vif *mvmvif = iwl_mvm_vif_from_mac80211(vif); in iwl_mvm_power_ps_disabled_iterator()
578 struct ieee80211_vif *vif) in iwl_mvm_power_get_vifs_iterator() argument
580 struct iwl_mvm_vif *mvmvif = iwl_mvm_vif_from_mac80211(vif); in iwl_mvm_power_get_vifs_iterator()
583 switch (ieee80211_vif_type_p2p(vif)) { in iwl_mvm_power_get_vifs_iterator()
591 power_iterator->ap_vif = vif; in iwl_mvm_power_get_vifs_iterator()
600 power_iterator->monitor_vif = vif; in iwl_mvm_power_get_vifs_iterator()
609 power_iterator->p2p_vif = vif; in iwl_mvm_power_get_vifs_iterator()
618 power_iterator->bss_vif = vif; in iwl_mvm_power_get_vifs_iterator()
625 power_iterator->bf_vif = vif; in iwl_mvm_power_get_vifs_iterator()
710 struct ieee80211_vif *vif, char *buf, in iwl_mvm_power_mac_dbgfs_read() argument
713 struct iwl_mvm_vif *mvmvif = iwl_mvm_vif_from_mac80211(vif); in iwl_mvm_power_mac_dbgfs_read()
784 iwl_mvm_beacon_filter_debugfs_parameters(struct ieee80211_vif *vif, in iwl_mvm_beacon_filter_debugfs_parameters() argument
787 struct iwl_mvm_vif *mvmvif = iwl_mvm_vif_from_mac80211(vif); in iwl_mvm_beacon_filter_debugfs_parameters()
819 struct ieee80211_vif *vif, in _iwl_mvm_enable_beacon_filter() argument
824 struct iwl_mvm_vif *mvmvif = iwl_mvm_vif_from_mac80211(vif); in _iwl_mvm_enable_beacon_filter()
827 if (mvmvif != mvm->bf_allowed_vif || !vif->bss_conf.dtim_period || in _iwl_mvm_enable_beacon_filter()
828 vif->type != NL80211_IFTYPE_STATION || vif->p2p) in _iwl_mvm_enable_beacon_filter()
831 iwl_mvm_beacon_filter_set_cqm_params(mvm, vif, cmd, d0i3); in _iwl_mvm_enable_beacon_filter()
833 iwl_mvm_beacon_filter_debugfs_parameters(vif, cmd); in _iwl_mvm_enable_beacon_filter()
844 struct ieee80211_vif *vif, in iwl_mvm_enable_beacon_filter() argument
852 return _iwl_mvm_enable_beacon_filter(mvm, vif, &cmd, flags, false); in iwl_mvm_enable_beacon_filter()
856 struct ieee80211_vif *vif, in iwl_mvm_update_beacon_abort() argument
859 struct iwl_mvm_vif *mvmvif = iwl_mvm_vif_from_mac80211(vif); in iwl_mvm_update_beacon_abort()
872 return _iwl_mvm_enable_beacon_filter(mvm, vif, &cmd, 0, false); in iwl_mvm_update_beacon_abort()
876 struct ieee80211_vif *vif, in iwl_mvm_disable_beacon_filter() argument
880 struct iwl_mvm_vif *mvmvif = iwl_mvm_vif_from_mac80211(vif); in iwl_mvm_disable_beacon_filter()
883 if (vif->type != NL80211_IFTYPE_STATION || vif->p2p) in iwl_mvm_disable_beacon_filter()
997 struct ieee80211_vif *vif, in iwl_mvm_update_d0i3_power_mode() argument
1001 struct iwl_mvm_vif *mvmvif = iwl_mvm_vif_from_mac80211(vif); in iwl_mvm_update_d0i3_power_mode()
1004 if (vif->type != NL80211_IFTYPE_STATION || vif->p2p) in iwl_mvm_update_d0i3_power_mode()
1007 if (!vif->bss_conf.assoc) in iwl_mvm_update_d0i3_power_mode()
1010 iwl_mvm_power_build_cmd(mvm, vif, &cmd, !enable); in iwl_mvm_update_d0i3_power_mode()
1030 ret = _iwl_mvm_enable_beacon_filter(mvm, vif, &cmd_bf, in iwl_mvm_update_d0i3_power_mode()
1034 ret = iwl_mvm_enable_beacon_filter(mvm, vif, flags); in iwl_mvm_update_d0i3_power_mode()
1036 ret = iwl_mvm_disable_beacon_filter(mvm, vif, flags); in iwl_mvm_update_d0i3_power_mode()