Lines Matching defs:vif
180 struct ieee80211_vif *vif,
191 if (vif) {
192 sdata = vif_to_sdata(vif);
193 short_preamble = sdata->vif.bss_conf.use_short_preamble;
196 shift = ieee80211_vif_get_shift(vif);
207 struct ieee80211_vif *vif, size_t frame_len,
225 if (vif) {
226 sdata = vif_to_sdata(vif);
227 short_preamble = sdata->vif.bss_conf.use_short_preamble;
230 shift = ieee80211_vif_get_shift(vif);
250 struct ieee80211_vif *vif,
268 if (vif) {
269 sdata = vif_to_sdata(vif);
270 short_preamble = sdata->vif.bss_conf.use_short_preamble;
273 shift = ieee80211_vif_get_shift(vif);
314 struct ieee80211_sub_if_data *sdata = vif_to_sdata(txq->vif);
333 struct ieee80211_vif *vif = &sdata->vif;
346 if (sdata->vif.type == NL80211_IFTYPE_AP)
374 if (!vif->txq)
377 txqi = to_txq_info(vif->txq);
380 (ps && atomic_read(&ps->num_sta_ps)) || ac != vif->txq->ac)
416 int ac_queue = sdata->vif.hw_queue[ac];
419 sdata->vif.cab_queue == i)
553 if (WARN_ON(!info->control.vif)) {
579 if (WARN_ON(!info->control.vif)) {
679 queues |= BIT(sdata->vif.hw_queue[ac]);
680 if (sdata->vif.cab_queue != IEEE80211_INVAL_HW_QUEUE)
681 queues |= BIT(sdata->vif.cab_queue);
742 struct ieee80211_vif *vif),
749 switch (sdata->vif.type) {
766 iterator(data, sdata->vif.addr,
767 &sdata->vif);
776 iterator(data, sdata->vif.addr, &sdata->vif);
782 struct ieee80211_vif *vif),
796 struct ieee80211_vif *vif),
811 struct ieee80211_vif *vif),
858 return &sdata->vif;
862 struct wireless_dev *ieee80211_vif_to_wdev(struct ieee80211_vif *vif)
864 if (!vif)
867 return &vif_to_sdata(vif)->wdev;
1667 if (sdata->vif.type != NL80211_IFTYPE_AP &&
1668 sdata->vif.type != NL80211_IFTYPE_STATION)
1672 chanctx_conf = rcu_dereference(sdata->vif.bss_conf.chanctx_conf);
1688 if (sdata->vif.type == NL80211_IFTYPE_AP)
1726 is_ocb = (sdata->vif.type == NL80211_IFTYPE_OCB);
1801 if (sdata->vif.type != NL80211_IFTYPE_MONITOR &&
1802 sdata->vif.type != NL80211_IFTYPE_P2P_DEVICE &&
1803 sdata->vif.type != NL80211_IFTYPE_NAN) {
1820 bool multi_link = ieee80211_vif_is_mld(&sdata->vif);
1836 memcpy(mle.basic.mld_mac_addr, sdata->vif.addr, ETH_ALEN);
1851 memcpy(mgmt->sa, sdata->vif.addr, ETH_ALEN);
1889 memcpy(mgmt->sa, sdata->vif.addr, ETH_ALEN);
1905 if (sdata->vif.type != NL80211_IFTYPE_STATION ||
2117 he_cap = ieee80211_get_he_iftype_cap_vif(sband, &sdata->vif);
2126 eht_cap = ieee80211_get_eht_iftype_cap_vif(sband, &sdata->vif);
2133 sdata->vif.type == NL80211_IFTYPE_AP);
2144 he_cap = ieee80211_get_he_iftype_cap_vif(sband6, &sdata->vif);
2148 ieee80211_vif_type_p2p(&sdata->vif);
2232 chandef.width = sdata->vif.bss_conf.chandef.width;
2274 rate_flags = ieee80211_chandef_rate_flags(&sdata->vif.bss_conf.chandef);
2275 shift = ieee80211_vif_get_shift(&sdata->vif);
2458 ieee80211_nan_func_terminated(&sdata->vif,
2478 if (!(sdata->vif.active_links & BIT(link_id)))
2602 if (sdata->vif.type != NL80211_IFTYPE_AP_VLAN &&
2603 sdata->vif.type != NL80211_IFTYPE_MONITOR &&
2617 if (sdata->vif.type != NL80211_IFTYPE_AP_VLAN &&
2618 sdata->vif.type != NL80211_IFTYPE_MONITOR &&
2667 if (ieee80211_vif_is_mld(&sdata->vif)) {
2669 [0] = &sdata->vif.bss_conf,
2672 if (sdata->vif.type == NL80211_IFTYPE_STATION) {
2674 active_links = sdata->vif.active_links;
2676 sdata->vif.active_links = BIT(link_id);
2680 sdata->vif.active_links,
2685 link_id < ARRAY_SIZE(sdata->vif.link_conf);
2687 if (ieee80211_vif_is_mld(&sdata->vif) &&
2688 !(sdata->vif.active_links & BIT(link_id)))
2698 switch (sdata->vif.type) {
2703 if (sdata->vif.cfg.ibss_joined)
2716 if (sdata->vif.bss_conf.mu_mimo_owner)
2719 if (!ieee80211_vif_is_mld(&sdata->vif))
2722 switch (sdata->vif.type) {
2724 if (!ieee80211_vif_is_mld(&sdata->vif)) {
2733 if (sdata->vif.bss_conf.max_idle_period ||
2734 sdata->vif.bss_conf.protected_keep_alive)
2737 if (sdata->vif.bss_conf.eht_puncturing)
2762 if (ieee80211_vif_is_mld(&sdata->vif))
2768 if (sdata->vif.bss_conf.ftm_responder == 1 &&
2773 if (sdata->vif.type == NL80211_IFTYPE_AP) {
2776 if (ieee80211_vif_is_mld(&sdata->vif)) {
2789 if (sdata->vif.bss_conf.enable_beacon) {
2819 ieee80211_set_active_links(&sdata->vif, active_links);
2832 if (sdata->vif.type != NL80211_IFTYPE_STATION)
2847 switch (sdata->vif.type) {
2946 if (sdata->vif.type == NL80211_IFTYPE_STATION)
2968 if (sdata->vif.type == NL80211_IFTYPE_STATION)
2980 static void ieee80211_reconfig_disconnect(struct ieee80211_vif *vif, u8 flag)
2986 if (WARN_ON(!vif))
2989 sdata = vif_to_sdata(vif);
3000 if (WARN_ON(vif->type != NL80211_IFTYPE_STATION))
3011 void ieee80211_hw_restart_disconnect(struct ieee80211_vif *vif)
3013 ieee80211_reconfig_disconnect(vif, IEEE80211_SDATA_DISCONNECT_HW_RESTART);
3017 void ieee80211_resume_disconnect(struct ieee80211_vif *vif)
3019 ieee80211_reconfig_disconnect(vif, IEEE80211_SDATA_DISCONNECT_RESUME);
3060 for (i = 0; i < ARRAY_SIZE(sdata->vif.link_conf); i++) {
3067 bss_conf = rcu_dereference(sdata->vif.link_conf[i]);
3287 enum nl80211_iftype iftype = ieee80211_vif_type_p2p(&sdata->vif);
3839 enum nl80211_iftype iftype = ieee80211_vif_type_p2p(&sdata->vif);
3844 struct ieee80211_bss_conf *bss_conf = &sdata->vif.bss_conf;
4048 u32 basic_rates = sdata->vif.bss_conf.basic_rates;
4051 shift = ieee80211_vif_get_shift(&sdata->vif);
4052 rate_flags = ieee80211_chandef_rate_flags(&sdata->vif.bss_conf.chandef);
4092 u32 basic_rates = sdata->vif.bss_conf.basic_rates;
4095 rate_flags = ieee80211_chandef_rate_flags(&sdata->vif.bss_conf.chandef);
4096 shift = ieee80211_vif_get_shift(&sdata->vif);
4133 int ieee80211_ave_rssi(struct ieee80211_vif *vif)
4135 struct ieee80211_sub_if_data *sdata = vif_to_sdata(vif);
4137 if (WARN_ON_ONCE(sdata->vif.type != NL80211_IFTYPE_STATION))
4348 chandef = sdata->vif.bss_conf.chandef;
4507 if (sdata->vif.type != NL80211_IFTYPE_ADHOC &&
4508 sdata->vif.type != NL80211_IFTYPE_MESH_POINT)
4525 memcpy(mgmt->sa, sdata->vif.addr, ETH_ALEN);
4526 if (ieee80211_vif_is_mesh(&sdata->vif)) {
4527 memcpy(mgmt->bssid, sdata->vif.addr, ETH_ALEN);
4555 if (ieee80211_vif_is_mesh(&sdata->vif)) {
4735 u16 beacon_int = sdata->vif.bss_conf.beacon_int * 1024;
4736 u8 dtim_period = sdata->vif.bss_conf.dtim_period;
4743 if (sdata->vif.type == NL80211_IFTYPE_AP ||
4744 sdata->vif.type == NL80211_IFTYPE_AP_VLAN) {
4749 } else if (ieee80211_vif_is_mesh(&sdata->vif)) {
4830 if (sdata->vif.type == NL80211_IFTYPE_AP ||
4831 sdata->vif.type == NL80211_IFTYPE_MESH_POINT) {
4837 params.new_beacon_int = sdata->vif.bss_conf.beacon_int;
4941 if (WARN_ON(sdata->vif.type != NL80211_IFTYPE_STATION))