Lines Matching refs:new_ctx
855 struct ieee80211_chanctx *new_ctx, in ieee80211_assign_link_chanctx() argument
879 if (new_ctx) { in ieee80211_assign_link_chanctx()
881 ieee80211_recalc_chanctx_min_def(local, new_ctx, link, false); in ieee80211_assign_link_chanctx()
883 ret = drv_assign_vif_chanctx(local, sdata, link->conf, new_ctx); in ieee80211_assign_link_chanctx()
890 conf = &new_ctx->conf; in ieee80211_assign_link_chanctx()
892 &new_ctx->assigned_links); in ieee80211_assign_link_chanctx()
907 if (new_ctx && ieee80211_chanctx_num_assigned(local, new_ctx) > 0) { in ieee80211_assign_link_chanctx()
909 ieee80211_recalc_chanctx_min_def(local, new_ctx, NULL, false); in ieee80211_assign_link_chanctx()
1102 struct ieee80211_chanctx *new_ctx, *ctx; in ieee80211_replace_chanctx() local
1154 new_ctx = ieee80211_alloc_chanctx(local, chanreq, mode, -1); in ieee80211_replace_chanctx()
1155 if (!new_ctx) in ieee80211_replace_chanctx()
1158 new_ctx->replace_ctx = curr_ctx; in ieee80211_replace_chanctx()
1159 new_ctx->replace_state = IEEE80211_CHANCTX_REPLACES_OTHER; in ieee80211_replace_chanctx()
1161 curr_ctx->replace_ctx = new_ctx; in ieee80211_replace_chanctx()
1164 list_add_rcu(&new_ctx->list, &local->chanctx_list); in ieee80211_replace_chanctx()
1166 return new_ctx; in ieee80211_replace_chanctx()
1204 struct ieee80211_chanctx *new_ctx, *curr_ctx; in ieee80211_link_reserve_chanctx() local
1213 new_ctx = ieee80211_find_reservation_chanctx(local, chanreq, mode); in ieee80211_link_reserve_chanctx()
1214 if (!new_ctx) { in ieee80211_link_reserve_chanctx()
1217 new_ctx = ieee80211_new_chanctx(local, chanreq, mode, in ieee80211_link_reserve_chanctx()
1220 new_ctx = ieee80211_replace_chanctx(local, chanreq, in ieee80211_link_reserve_chanctx()
1222 if (IS_ERR(new_ctx)) in ieee80211_link_reserve_chanctx()
1223 return PTR_ERR(new_ctx); in ieee80211_link_reserve_chanctx()
1226 list_add(&link->reserved_chanctx_list, &new_ctx->reserved_links); in ieee80211_link_reserve_chanctx()
1227 link->reserved_chanctx = new_ctx; in ieee80211_link_reserve_chanctx()
1298 struct ieee80211_chanctx *old_ctx, *new_ctx; in ieee80211_link_use_reserved_reassign() local
1306 new_ctx = link->reserved_chanctx; in ieee80211_link_use_reserved_reassign()
1312 if (WARN_ON(!new_ctx)) in ieee80211_link_use_reserved_reassign()
1318 if (WARN_ON(new_ctx->replace_state == in ieee80211_link_use_reserved_reassign()
1322 chanreq = ieee80211_chanctx_non_reserved_chandef(local, new_ctx, in ieee80211_link_use_reserved_reassign()
1333 _ieee80211_change_chanctx(local, new_ctx, old_ctx, chanreq, link); in ieee80211_link_use_reserved_reassign()
1337 vif_chsw[0].new_ctx = &new_ctx->conf; in ieee80211_link_use_reserved_reassign()
1346 if (ieee80211_chanctx_refcount(local, new_ctx) == 0) in ieee80211_link_use_reserved_reassign()
1347 ieee80211_free_chanctx(local, new_ctx, false); in ieee80211_link_use_reserved_reassign()
1352 list_move(&link->assigned_chanctx_list, &new_ctx->assigned_links); in ieee80211_link_use_reserved_reassign()
1353 rcu_assign_pointer(link_conf->chanctx_conf, &new_ctx->conf); in ieee80211_link_use_reserved_reassign()
1363 ieee80211_recalc_chanctx_min_def(local, new_ctx, NULL, false); in ieee80211_link_use_reserved_reassign()
1364 ieee80211_recalc_smps_chanctx(local, new_ctx); in ieee80211_link_use_reserved_reassign()
1365 ieee80211_recalc_radar_chanctx(local, new_ctx); in ieee80211_link_use_reserved_reassign()
1380 struct ieee80211_chanctx *old_ctx, *new_ctx; in ieee80211_link_use_reserved_assign() local
1386 new_ctx = link->reserved_chanctx; in ieee80211_link_use_reserved_assign()
1394 if (WARN_ON(!new_ctx)) in ieee80211_link_use_reserved_assign()
1397 if (WARN_ON(new_ctx->replace_state == in ieee80211_link_use_reserved_assign()
1401 chanreq = ieee80211_chanctx_non_reserved_chandef(local, new_ctx, in ieee80211_link_use_reserved_assign()
1407 ieee80211_change_chanctx(local, new_ctx, new_ctx, chanreq); in ieee80211_link_use_reserved_assign()
1412 err = ieee80211_assign_link_chanctx(link, new_ctx, false); in ieee80211_link_use_reserved_assign()
1414 if (ieee80211_chanctx_refcount(local, new_ctx) == 0) in ieee80211_link_use_reserved_assign()
1415 ieee80211_free_chanctx(local, new_ctx, false); in ieee80211_link_use_reserved_assign()
1429 struct ieee80211_chanctx *old_ctx, *new_ctx; in ieee80211_link_has_in_place_reservation() local
1433 new_ctx = link->reserved_chanctx; in ieee80211_link_has_in_place_reservation()
1439 if (WARN_ON(!new_ctx)) in ieee80211_link_has_in_place_reservation()
1445 if (new_ctx->replace_state != IEEE80211_CHANCTX_REPLACES_OTHER) in ieee80211_link_has_in_place_reservation()
1483 vif_chsw[i].new_ctx = &ctx->conf; in ieee80211_chsw_switch_vifs()
1927 struct ieee80211_chanctx *new_ctx; in ieee80211_link_use_reserved_context() local
1933 new_ctx = link->reserved_chanctx; in ieee80211_link_use_reserved_context()
1936 if (WARN_ON(!new_ctx)) in ieee80211_link_use_reserved_context()
1939 if (WARN_ON(new_ctx->replace_state == in ieee80211_link_use_reserved_context()
1948 if (new_ctx->replace_state == IEEE80211_CHANCTX_REPLACE_NONE) { in ieee80211_link_use_reserved_context()
1968 new_ctx->replace_state == IEEE80211_CHANCTX_REPLACES_OTHER) { in ieee80211_link_use_reserved_context()
1971 if (new_ctx->replace_state == in ieee80211_link_use_reserved_context()