Lines Matching refs:new_ctx
856 struct ieee80211_chanctx *new_ctx) in ieee80211_assign_link_chanctx() argument
878 if (new_ctx) { in ieee80211_assign_link_chanctx()
880 ieee80211_recalc_chanctx_min_def(local, new_ctx, link); in ieee80211_assign_link_chanctx()
882 ret = drv_assign_vif_chanctx(local, sdata, link->conf, new_ctx); in ieee80211_assign_link_chanctx()
886 conf = &new_ctx->conf; in ieee80211_assign_link_chanctx()
888 &new_ctx->assigned_links); in ieee80211_assign_link_chanctx()
903 if (new_ctx && ieee80211_chanctx_num_assigned(local, new_ctx) > 0) { in ieee80211_assign_link_chanctx()
905 ieee80211_recalc_chanctx_min_def(local, new_ctx, NULL); in ieee80211_assign_link_chanctx()
1109 struct ieee80211_chanctx *new_ctx, *curr_ctx, *ctx; in ieee80211_link_reserve_chanctx() local
1117 new_ctx = ieee80211_find_reservation_chanctx(local, chandef, mode); in ieee80211_link_reserve_chanctx()
1118 if (!new_ctx) { in ieee80211_link_reserve_chanctx()
1120 new_ctx = ieee80211_new_chanctx(local, chandef, mode); in ieee80211_link_reserve_chanctx()
1121 if (IS_ERR(new_ctx)) in ieee80211_link_reserve_chanctx()
1122 return PTR_ERR(new_ctx); in ieee80211_link_reserve_chanctx()
1174 new_ctx = ieee80211_alloc_chanctx(local, chandef, mode); in ieee80211_link_reserve_chanctx()
1175 if (!new_ctx) in ieee80211_link_reserve_chanctx()
1178 new_ctx->replace_ctx = curr_ctx; in ieee80211_link_reserve_chanctx()
1179 new_ctx->replace_state = in ieee80211_link_reserve_chanctx()
1182 curr_ctx->replace_ctx = new_ctx; in ieee80211_link_reserve_chanctx()
1186 list_add_rcu(&new_ctx->list, &local->chanctx_list); in ieee80211_link_reserve_chanctx()
1190 list_add(&link->reserved_chanctx_list, &new_ctx->reserved_links); in ieee80211_link_reserve_chanctx()
1191 link->reserved_chanctx = new_ctx; in ieee80211_link_reserve_chanctx()
1263 struct ieee80211_chanctx *old_ctx, *new_ctx; in ieee80211_link_use_reserved_reassign() local
1271 new_ctx = link->reserved_chanctx; in ieee80211_link_use_reserved_reassign()
1277 if (WARN_ON(!new_ctx)) in ieee80211_link_use_reserved_reassign()
1283 if (WARN_ON(new_ctx->replace_state == in ieee80211_link_use_reserved_reassign()
1287 chandef = ieee80211_chanctx_non_reserved_chandef(local, new_ctx, in ieee80211_link_use_reserved_reassign()
1297 _ieee80211_change_chanctx(local, new_ctx, old_ctx, chandef, link); in ieee80211_link_use_reserved_reassign()
1301 vif_chsw[0].new_ctx = &new_ctx->conf; in ieee80211_link_use_reserved_reassign()
1310 if (ieee80211_chanctx_refcount(local, new_ctx) == 0) in ieee80211_link_use_reserved_reassign()
1311 ieee80211_free_chanctx(local, new_ctx); in ieee80211_link_use_reserved_reassign()
1316 list_move(&link->assigned_chanctx_list, &new_ctx->assigned_links); in ieee80211_link_use_reserved_reassign()
1317 rcu_assign_pointer(link_conf->chanctx_conf, &new_ctx->conf); in ieee80211_link_use_reserved_reassign()
1327 ieee80211_recalc_chanctx_min_def(local, new_ctx, NULL); in ieee80211_link_use_reserved_reassign()
1328 ieee80211_recalc_smps_chanctx(local, new_ctx); in ieee80211_link_use_reserved_reassign()
1329 ieee80211_recalc_radar_chanctx(local, new_ctx); in ieee80211_link_use_reserved_reassign()
1344 struct ieee80211_chanctx *old_ctx, *new_ctx; in ieee80211_link_use_reserved_assign() local
1349 new_ctx = link->reserved_chanctx; in ieee80211_link_use_reserved_assign()
1357 if (WARN_ON(!new_ctx)) in ieee80211_link_use_reserved_assign()
1360 if (WARN_ON(new_ctx->replace_state == in ieee80211_link_use_reserved_assign()
1364 chandef = ieee80211_chanctx_non_reserved_chandef(local, new_ctx, in ieee80211_link_use_reserved_assign()
1369 ieee80211_change_chanctx(local, new_ctx, new_ctx, chandef); in ieee80211_link_use_reserved_assign()
1374 err = ieee80211_assign_link_chanctx(link, new_ctx); in ieee80211_link_use_reserved_assign()
1376 if (ieee80211_chanctx_refcount(local, new_ctx) == 0) in ieee80211_link_use_reserved_assign()
1377 ieee80211_free_chanctx(local, new_ctx); in ieee80211_link_use_reserved_assign()
1391 struct ieee80211_chanctx *old_ctx, *new_ctx; in ieee80211_link_has_in_place_reservation() local
1395 new_ctx = link->reserved_chanctx; in ieee80211_link_has_in_place_reservation()
1401 if (WARN_ON(!new_ctx)) in ieee80211_link_has_in_place_reservation()
1407 if (new_ctx->replace_state != IEEE80211_CHANCTX_REPLACES_OTHER) in ieee80211_link_has_in_place_reservation()
1414 struct ieee80211_chanctx *new_ctx) in ieee80211_chsw_switch_hwconf() argument
1421 chandef = ieee80211_chanctx_reserved_chandef(local, new_ctx, NULL); in ieee80211_chsw_switch_hwconf()
1425 local->hw.conf.radar_enabled = new_ctx->conf.radar_enabled; in ieee80211_chsw_switch_hwconf()
1465 vif_chsw[i].new_ctx = &ctx->conf; in ieee80211_chsw_switch_vifs()
1522 struct ieee80211_chanctx *new_ctx = NULL; in ieee80211_vif_use_reserved_switch() local
1557 new_ctx = ctx; in ieee80211_vif_use_reserved_switch()
1614 WARN_ON(!new_ctx && !local->use_chanctx)) { in ieee80211_vif_use_reserved_switch()
1637 err = ieee80211_chsw_switch_hwconf(local, new_ctx); in ieee80211_vif_use_reserved_switch()
1883 struct ieee80211_chanctx *new_ctx; in ieee80211_link_use_reserved_context() local
1890 new_ctx = link->reserved_chanctx; in ieee80211_link_use_reserved_context()
1893 if (WARN_ON(!new_ctx)) in ieee80211_link_use_reserved_context()
1896 if (WARN_ON(new_ctx->replace_state == in ieee80211_link_use_reserved_context()
1905 if (new_ctx->replace_state == IEEE80211_CHANCTX_REPLACE_NONE) { in ieee80211_link_use_reserved_context()
1925 new_ctx->replace_state == IEEE80211_CHANCTX_REPLACES_OTHER) { in ieee80211_link_use_reserved_context()
1928 if (new_ctx->replace_state == in ieee80211_link_use_reserved_context()