Lines Matching defs:vif
38 if (require_valid && ieee80211_vif_is_mld(&sdata->vif))
61 memcpy(sdata->vif.bss_conf.mu_group.membership,
63 memcpy(sdata->vif.bss_conf.mu_group.position,
81 sdata->vif.bss_conf.mu_mimo_owner = mu_mimo_groups || mu_mimo_follow;
146 sdata->vif.mbssid_tx_vif = NULL;
152 if (sdata->vif.type != NL80211_IFTYPE_AP || !params.tx_wdev)
160 sdata->vif.mbssid_tx_vif = &sdata->vif;
162 sdata->vif.mbssid_tx_vif = &tx_sdata->vif;
231 if (ieee80211_vif_is_mld(&sdata->vif))
249 if (sdata->vif.type == NL80211_IFTYPE_MONITOR) {
323 if (sdata->vif.type != NL80211_IFTYPE_NAN)
351 if (sdata->vif.type != NL80211_IFTYPE_NAN)
406 if (sdata->vif.type != NL80211_IFTYPE_NAN ||
534 switch (sdata->vif.type) {
658 ieee80211_key_free(key, sdata->vif.type == NL80211_IFTYPE_STATION);
836 int shift = ieee80211_vif_get_shift(&sta->sdata->vif);
1381 if (sdata->vif.type == NL80211_IFTYPE_AP &&
1425 link_conf->allow_p2p_go_ps = sdata->vif.p2p;
1429 sdata->vif.cfg.s1g = params->chandef.chan->band ==
1432 sdata->vif.cfg.ssid_len = params->ssid_len;
1434 memcpy(sdata->vif.cfg.ssid, params->ssid,
1631 sdata->vif.mbssid_tx_vif = NULL;
1642 sdata->vif.cfg.ssid_len = 0;
1906 if (ieee80211_vif_is_mesh(&sdata->vif)) {
2013 if (ieee80211_vif_is_mesh(&sdata->vif))
2046 if (sdata->vif.type != NL80211_IFTYPE_AP_VLAN &&
2047 sdata->vif.type != NL80211_IFTYPE_AP)
2052 if (ether_addr_equal(mac, sdata->vif.addr))
2059 sdata->vif.type == NL80211_IFTYPE_STATION &&
2139 switch (sdata->vif.type) {
2189 if (sta->sdata->vif.type == NL80211_IFTYPE_AP_VLAN &&
2221 if (sdata->vif.type == NL80211_IFTYPE_STATION &&
2494 memcpy(sdata->vif.bss_conf.mcast_rate, setup->mcast_rate,
2496 sdata->vif.bss_conf.basic_rates = setup->basic_rates;
2498 sdata->vif.bss_conf.beacon_int = setup->beacon_interval;
2499 sdata->vif.bss_conf.dtim_period = setup->dtim_period;
2601 sdata->vif.bss_conf.ht_operation_mode = nconf->ht_opmode;
2836 switch (ieee80211_vif_type_p2p(&sdata->vif)) {
2954 memcpy(sdata->vif.bss_conf.mcast_rate, rate,
3033 if (sdata->vif.type == NL80211_IFTYPE_MONITOR) {
3054 if (txp_type != sdata->vif.bss_conf.txpower_type) {
3056 sdata->vif.bss_conf.txpower_type = txp_type;
3079 if (sdata->vif.type == NL80211_IFTYPE_MONITOR) {
3084 if (txp_type != sdata->vif.bss_conf.txpower_type)
3086 sdata->vif.bss_conf.txpower_type = txp_type;
3089 if (sdata->vif.type == NL80211_IFTYPE_MONITOR)
3100 if (txp_type != sdata->vif.bss_conf.txpower_type)
3102 sdata->vif.bss_conf.txpower_type = txp_type;
3124 *dbm = sdata->vif.bss_conf.txpower;
3146 struct ieee80211_vif *vif = NULL;
3156 vif = &sdata->vif;
3159 return local->ops->testmode_cmd(&local->hw, vif, data, len);
3188 if (WARN_ON_ONCE(sdata->vif.type != NL80211_IFTYPE_STATION))
3245 if (sdata->vif.type != NL80211_IFTYPE_STATION)
3287 struct ieee80211_vif *vif = &sdata->vif;
3288 struct ieee80211_bss_conf *bss_conf = &vif->bss_conf;
3294 if (sdata->vif.driver_flags & IEEE80211_VIF_BEACON_FILTER &&
3295 !(sdata->vif.driver_flags & IEEE80211_VIF_SUPPORTS_CQM_RSSI))
3306 sdata->vif.driver_flags & IEEE80211_VIF_SUPPORTS_CQM_RSSI)
3318 struct ieee80211_vif *vif = &sdata->vif;
3319 struct ieee80211_bss_conf *bss_conf = &vif->bss_conf;
3321 if (sdata->vif.driver_flags & IEEE80211_VIF_BEACON_FILTER)
3332 sdata->vif.driver_flags & IEEE80211_VIF_SUPPORTS_CQM_RSSI)
3358 if (rcu_access_pointer(sdata->vif.bss_conf.chanctx_conf) &&
3359 sdata->vif.bss_conf.chandef.chan) {
3360 u32 basic_rates = sdata->vif.bss_conf.basic_rates;
3361 enum nl80211_band band = sdata->vif.bss_conf.chandef.chan->band;
3570 void ieee80211_csa_finish(struct ieee80211_vif *vif)
3572 struct ieee80211_sub_if_data *sdata = vif_to_sdata(vif);
3577 if (vif->mbssid_tx_vif == vif) {
3588 if (iter == sdata || iter->vif.mbssid_tx_vif != vif)
3601 void ieee80211_channel_switch_disconnect(struct ieee80211_vif *vif, bool block_tx)
3603 struct ieee80211_sub_if_data *sdata = vif_to_sdata(vif);
3618 switch (sdata->vif.type) {
3663 * with multi-vif. once reservation is complete it will re-schedule the
3670 * with multi-vif csa driver may call ieee80211_csa_finish()
3680 if (!cfg80211_chandef_identical(&sdata->vif.bss_conf.chandef,
3684 sdata->vif.bss_conf.csa_active = false;
3690 if (sdata->vif.bss_conf.eht_puncturing != sdata->vif.bss_conf.csa_punct_bitmap) {
3691 sdata->vif.bss_conf.eht_puncturing =
3692 sdata->vif.bss_conf.csa_punct_bitmap;
3709 sdata->vif.bss_conf.eht_puncturing);
3735 if (!sdata->vif.bss_conf.csa_active)
3756 switch (sdata->vif.type) {
3806 if (!sdata->vif.cfg.ibss_joined)
3847 if (sdata->vif.bss_conf.chandef.chan->band !=
3883 sdata->vif.bss_conf.color_change_active = false;
3912 &sdata->vif.bss_conf.chandef))
3916 if (sdata->vif.bss_conf.csa_active)
3920 conf = rcu_dereference_protected(sdata->vif.bss_conf.chanctx_conf,
3959 if (sdata->vif.bss_conf.color_change_active)
3968 if (params->punct_bitmap && !sdata->vif.bss_conf.eht_support)
3973 sdata->vif.bss_conf.csa_active = true;
3974 sdata->vif.bss_conf.csa_punct_bitmap = params->punct_bitmap;
3983 sdata->vif.bss_conf.csa_punct_bitmap);
4073 intf_change = (sdata->vif.probe_req_reg !=
4075 (sdata->vif.rx_mcast_action_reg !=
4077 sdata->vif.probe_req_reg = upd->interface_stypes & preq_mask;
4078 sdata->vif.rx_mcast_action_reg =
4086 sdata->vif.probe_req_reg ?
4154 chanctx_conf = rcu_dereference(sdata->vif.bss_conf.chanctx_conf);
4186 memcpy(nullfunc->addr2, sdata->vif.addr, ETH_ALEN);
4187 memcpy(nullfunc->addr3, sdata->vif.addr, ETH_ALEN);
4243 sdata->vif.type == NL80211_IFTYPE_MONITOR) {
4315 if (sdata->vif.type != NL80211_IFTYPE_STATION)
4377 void ieee80211_nan_func_terminated(struct ieee80211_vif *vif,
4382 struct ieee80211_sub_if_data *sdata = vif_to_sdata(vif);
4386 if (WARN_ON(vif->type != NL80211_IFTYPE_NAN))
4404 cfg80211_nan_func_terminated(ieee80211_vif_to_wdev(vif), inst_id,
4409 void ieee80211_nan_func_match(struct ieee80211_vif *vif,
4413 struct ieee80211_sub_if_data *sdata = vif_to_sdata(vif);
4416 if (WARN_ON(vif->type != NL80211_IFTYPE_NAN))
4430 cfg80211_nan_match(ieee80211_vif_to_wdev(vif), match, gfp);
4507 if (!sdata->vif.txq) {
4511 ieee80211_fill_txq_stats(txqstats, to_txq_info(sdata->vif.txq));
4635 switch (sdata->vif.type) {
4668 switch (sdata->vif.type) {
4703 sdata->vif.bss_conf.he_bss_color.color = color;
4704 sdata->vif.bss_conf.he_bss_color.enabled = enable;
4709 if (!sdata->vif.bss_conf.nontransmitted && sdata->vif.mbssid_tx_vif) {
4714 if (child != sdata && child->vif.mbssid_tx_vif == &sdata->vif) {
4715 child->vif.bss_conf.he_bss_color.color = color;
4716 child->vif.bss_conf.he_bss_color.enabled = enable;
4735 sdata->vif.bss_conf.color_change_active = false;
4744 sdata->vif.bss_conf.color_change_color,
4762 if (!sdata->vif.bss_conf.color_change_active)
4788 void ieee80211_color_change_finish(struct ieee80211_vif *vif)
4790 struct ieee80211_sub_if_data *sdata = vif_to_sdata(vif);
4798 ieee80211_obss_color_collision_notify(struct ieee80211_vif *vif,
4801 struct ieee80211_sub_if_data *sdata = vif_to_sdata(vif);
4804 if (sdata->vif.bss_conf.color_change_active || sdata->vif.bss_conf.csa_active)
4831 if (sdata->vif.bss_conf.nontransmitted)
4839 if (sdata->vif.bss_conf.color_change_active || sdata->vif.bss_conf.csa_active) {
4848 sdata->vif.bss_conf.color_change_active = true;
4849 sdata->vif.bss_conf.color_change_color = params->color;
5030 return local->ops->set_hw_timestamp(&local->hw, &sdata->vif, hwts);