Lines Matching defs:sdata
72 struct ieee80211_local *local __maybe_unused = link->sdata->local;
242 ieee80211_get_max_required_bw(struct ieee80211_sub_if_data *sdata,
248 list_for_each_entry_rcu(sta, &sdata->local->sta_list, list) {
249 if (sdata != sta->sdata &&
250 !(sta->sdata->bss && sta->sdata->bss == sdata->bss))
260 ieee80211_get_chanctx_vif_max_required_bw(struct ieee80211_sub_if_data *sdata,
265 struct ieee80211_vif *vif = &sdata->vif;
269 for (link_id = 0; link_id < ARRAY_SIZE(sdata->link); link_id++) {
272 rcu_dereference(sdata->link[link_id]);
284 width = ieee80211_get_max_required_bw(sdata, link_id);
293 ieee80211_get_max_required_bw(sdata, link_id));
324 struct ieee80211_sub_if_data *sdata;
328 list_for_each_entry_rcu(sdata, &local->interfaces, list) {
331 if (!ieee80211_sdata_running(sdata))
334 width = ieee80211_get_chanctx_vif_max_required_bw(sdata, ctx,
341 sdata = rcu_dereference(local->monitor_sdata);
342 if (sdata &&
343 rcu_access_pointer(sdata->vif.bss_conf.chanctx_conf) == &ctx->conf)
410 struct ieee80211_sub_if_data *sdata = sta->sdata;
414 if (!ieee80211_sdata_running(sta->sdata))
417 for (link_id = 0; link_id < ARRAY_SIZE(sta->sdata->link); link_id++) {
419 rcu_dereference(sdata->vif.link_conf[link_id]);
573 struct ieee80211_sub_if_data *sdata;
578 list_for_each_entry_rcu(sdata, &local->interfaces, list) {
581 for (link_id = 0; link_id < ARRAY_SIZE(sdata->link); link_id++) {
584 link = rcu_dereference(sdata->link[link_id]);
602 struct ieee80211_sub_if_data *sdata;
609 list_for_each_entry_rcu(sdata, &local->interfaces, list) {
612 if (!ieee80211_sdata_running(sdata))
614 for (link_id = 0; link_id < ARRAY_SIZE(sdata->link); link_id++) {
617 link = rcu_dereference(sdata->link[link_id]);
769 struct ieee80211_sub_if_data *sdata;
776 list_for_each_entry_rcu(sdata, &local->interfaces, list) {
779 if (!ieee80211_sdata_running(sdata))
782 if (sdata->vif.type == NL80211_IFTYPE_AP_VLAN)
785 for (link_id = 0; link_id < ARRAY_SIZE(sdata->link); link_id++) {
787 rcu_dereference(sdata->vif.link_conf[link_id]);
858 struct ieee80211_sub_if_data *sdata = link->sdata;
859 struct ieee80211_local *local = sdata->local;
864 if (WARN_ON(sdata->vif.type == NL80211_IFTYPE_NAN))
873 drv_unassign_vif_chanctx(local, sdata, link->conf, curr_ctx);
882 ret = drv_assign_vif_chanctx(local, sdata, link->conf, new_ctx);
894 sdata->vif.cfg.idle = !conf;
904 ieee80211_recalc_txpower(sdata, false);
908 if (sdata->vif.type != NL80211_IFTYPE_P2P_DEVICE &&
909 sdata->vif.type != NL80211_IFTYPE_MONITOR)
910 ieee80211_vif_cfg_change_notify(sdata, BSS_CHANGED_IDLE);
912 ieee80211_check_fast_xmit_iface(sdata);
920 struct ieee80211_sub_if_data *sdata;
929 list_for_each_entry_rcu(sdata, &local->interfaces, list) {
933 if (!ieee80211_sdata_running(sdata))
936 switch (sdata->vif.type) {
938 if (!sdata->u.mgd.associated)
950 for (link_id = 0; link_id < ARRAY_SIZE(sdata->link); link_id++) {
953 link = rcu_dereference(sdata->link[link_id]);
986 sdata = rcu_dereference(local->monitor_sdata);
987 if (sdata &&
988 rcu_access_pointer(sdata->vif.bss_conf.chanctx_conf) == &chanctx->conf)
1016 struct ieee80211_sub_if_data *sdata = link->sdata;
1019 struct ieee80211_local *local __maybe_unused = sdata->local;
1023 if (WARN_ON(sdata->vif.type != NL80211_IFTYPE_AP))
1042 list_for_each_entry(vlan, &sdata->u.ap.vlans, u.vlan.list) {
1057 struct ieee80211_local *local = link->sdata->local;
1068 struct ieee80211_sub_if_data *sdata = link->sdata;
1071 lockdep_assert_held(&sdata->local->chanctx_mtx);
1079 if (ieee80211_chanctx_refcount(sdata->local, ctx) == 0) {
1095 ieee80211_free_chanctx(sdata->local, ctx);
1107 struct ieee80211_sub_if_data *sdata = link->sdata;
1108 struct ieee80211_local *local = sdata->local;
1202 struct ieee80211_sub_if_data *sdata = link->sdata;
1204 switch (sdata->vif.type) {
1209 ieee80211_queue_work(&sdata->local->hw,
1213 wiphy_delayed_work_queue(sdata->local->hw.wiphy,
1234 struct ieee80211_sub_if_data *sdata = link->sdata;
1240 if (sdata->vif.type != NL80211_IFTYPE_AP)
1244 list_for_each_entry(vlan, &sdata->u.ap.vlans, u.vlan.list) {
1259 struct ieee80211_sub_if_data *sdata = link->sdata;
1261 struct ieee80211_local *local = sdata->local;
1299 vif_chsw[0].vif = &sdata->vif;
1319 if (sdata->vif.type == NL80211_IFTYPE_AP)
1322 ieee80211_check_fast_xmit_iface(sdata);
1332 ieee80211_link_info_change_notify(sdata, link, changed);
1342 struct ieee80211_sub_if_data *sdata = link->sdata;
1343 struct ieee80211_local *local = sdata->local;
1390 struct ieee80211_sub_if_data *sdata = link->sdata;
1393 lockdep_assert_held(&sdata->local->chanctx_mtx);
1463 vif_chsw[i].vif = &link->sdata->vif;
1659 struct ieee80211_sub_if_data *sdata = link->sdata;
1669 if (sdata->vif.type == NL80211_IFTYPE_AP)
1673 ieee80211_check_fast_xmit_iface(sdata);
1682 ieee80211_link_info_change_notify(sdata,
1686 ieee80211_recalc_txpower(sdata, false);
1736 &link->sdata->wdev,
1779 struct ieee80211_sub_if_data *sdata = link->sdata;
1781 struct ieee80211_local *local = sdata->local;
1818 struct ieee80211_sub_if_data *sdata = link->sdata;
1819 struct ieee80211_local *local = sdata->local;
1826 if (sdata->vif.active_links &&
1827 !(sdata->vif.active_links & BIT(link->link_id))) {
1836 sdata->wdev.iftype);
1844 ret = ieee80211_check_combinations(sdata, chandef, mode,
1881 struct ieee80211_sub_if_data *sdata = link->sdata;
1882 struct ieee80211_local *local = sdata->local;
1914 * a) sdata is taking part in the swapping itself and is the last one
1915 * b) sdata has switched with a re-assign reservation to an existing
1919 * sdata already switched successfully. Just spill an extra warning.
1945 struct ieee80211_sub_if_data *sdata = link->sdata;
1947 struct ieee80211_local *local = sdata->local;
1953 if (!cfg80211_chandef_usable(sdata->local->hw.wiphy, chandef,
2017 struct ieee80211_sub_if_data *sdata = link->sdata;
2019 mutex_lock(&sdata->local->chanctx_mtx);
2021 lockdep_assert_held(&sdata->local->mtx);
2024 mutex_unlock(&sdata->local->chanctx_mtx);
2029 struct ieee80211_sub_if_data *sdata = link->sdata;
2033 struct ieee80211_local *local = sdata->local;
2037 if (WARN_ON(sdata->vif.type != NL80211_IFTYPE_AP_VLAN || !sdata->bss))
2040 ap = container_of(sdata->bss, struct ieee80211_sub_if_data, u.ap);