wifi: iwlwifi: mvm: refactor duplicate chanctx condition
authorJohannes Berg <johannes.berg@intel.com>
Mon, 29 Jan 2024 19:22:03 +0000 (21:22 +0200)
committerJohannes Berg <johannes.berg@intel.com>
Fri, 2 Feb 2024 13:04:43 +0000 (14:04 +0100)
Refactor the check for using a chanctx's def vs. min_def,
to have the same in both places and reuse it later.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
Link: https://msgid.link/20240129211905.6fcde4051adf.I343934874612d21727ed167accaa967958b2c25b@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
drivers/net/wireless/intel/iwlwifi/mvm/mac80211.c
drivers/net/wireless/intel/iwlwifi/mvm/mvm.h

index 0cee752584d937f99c8b80e23b7e93b886e22303..4bc25d4a87b6ebf1f39ee1a0fbb8469220920516 100644 (file)
@@ -4808,8 +4808,8 @@ static void iwl_mvm_ftm_responder_chanctx_iter(void *_data, u8 *mac,
                data->responder = true;
 }
 
-static bool iwl_mvm_is_ftm_responder_chanctx(struct iwl_mvm *mvm,
-                                            struct ieee80211_chanctx_conf *ctx)
+bool iwl_mvm_is_ftm_responder_chanctx(struct iwl_mvm *mvm,
+                                     struct ieee80211_chanctx_conf *ctx)
 {
        struct iwl_mvm_ftm_responder_iter_data data = {
                .responder = false,
@@ -4828,9 +4828,7 @@ static int __iwl_mvm_add_chanctx(struct iwl_mvm *mvm,
 {
        u16 *phy_ctxt_id = (u16 *)ctx->drv_priv;
        struct iwl_mvm_phy_ctxt *phy_ctxt;
-       bool use_def = iwl_mvm_is_ftm_responder_chanctx(mvm, ctx) ||
-               iwl_mvm_enable_fils(mvm, ctx);
-       struct cfg80211_chan_def *def = use_def ? &ctx->def : &ctx->min_def;
+       struct cfg80211_chan_def *def = iwl_mvm_chanctx_def(mvm, ctx);
        int ret;
 
        lockdep_assert_held(&mvm->mutex);
@@ -4896,9 +4894,7 @@ void iwl_mvm_change_chanctx(struct ieee80211_hw *hw,
        struct iwl_mvm *mvm = IWL_MAC80211_GET_MVM(hw);
        u16 *phy_ctxt_id = (u16 *)ctx->drv_priv;
        struct iwl_mvm_phy_ctxt *phy_ctxt = &mvm->phy_ctxts[*phy_ctxt_id];
-       bool use_def = iwl_mvm_is_ftm_responder_chanctx(mvm, ctx) ||
-               iwl_mvm_enable_fils(mvm, ctx);
-       struct cfg80211_chan_def *def = use_def ? &ctx->def : &ctx->min_def;
+       struct cfg80211_chan_def *def = iwl_mvm_chanctx_def(mvm, ctx);
 
        if (WARN_ONCE((phy_ctxt->ref > 1) &&
                      (changed & ~(IEEE80211_CHANCTX_CHANGE_WIDTH |
index e148ef02ff737ec499083329a7deaf4650aff86b..d414007c4755e482bcba2e9b0fe938a2c0424294 100644 (file)
@@ -2752,4 +2752,17 @@ void iwl_mvm_mld_select_links(struct iwl_mvm *mvm, struct ieee80211_vif *vif,
 int iwl_mvm_mld_get_primary_link(struct iwl_mvm *mvm,
                                 struct ieee80211_vif *vif,
                                 unsigned long usable_links);
+
+bool iwl_mvm_is_ftm_responder_chanctx(struct iwl_mvm *mvm,
+                                     struct ieee80211_chanctx_conf *ctx);
+
+static inline struct cfg80211_chan_def *
+iwl_mvm_chanctx_def(struct iwl_mvm *mvm, struct ieee80211_chanctx_conf *ctx)
+{
+       bool use_def = iwl_mvm_is_ftm_responder_chanctx(mvm, ctx) ||
+               iwl_mvm_enable_fils(mvm, ctx);
+
+       return use_def ? &ctx->def : &ctx->min_def;
+}
+
 #endif /* __IWL_MVM_H__ */