]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
wifi: iwlwifi: mvm: remove IWL_MVM_ESR_EXIT_FAIL_ENTRY
authorPagadala Yesu Anjaneyulu <pagadala.yesu.anjaneyulu@intel.com>
Fri, 11 Jul 2025 15:34:15 +0000 (18:34 +0300)
committerMiri Korenblit <miriam.rachel.korenblit@intel.com>
Mon, 14 Jul 2025 16:36:12 +0000 (19:36 +0300)
EHT capable devices will only use iwlmld. So we can remove EMLSR code
from iwlmvm.
As part of removal, remove IWL_MVM_ESR_EXIT_FAIL_ENTRY EMLSR state.

Signed-off-by: Pagadala Yesu Anjaneyulu <pagadala.yesu.anjaneyulu@intel.com>
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
Link: https://patch.msgid.link/20250711183056.a69dc9c6ba49.I7f9fbc1f954b4c118625a4b8d51c72f3c84936da@changeid
drivers/net/wireless/intel/iwlwifi/mvm/link.c
drivers/net/wireless/intel/iwlwifi/mvm/mvm.h
drivers/net/wireless/intel/iwlwifi/mvm/ops.c

index 851869c0bd50c7acf7164036042fac9c255ea44f..9e46ac3e573a1eb0bfcba4934bbeeebcc829fce3 100644 (file)
@@ -18,8 +18,7 @@
        HOW(EXIT_COEX)                  \
        HOW(EXIT_BANDWIDTH)             \
        HOW(EXIT_CSA)                   \
-       HOW(EXIT_LINK_USAGE)            \
-       HOW(EXIT_FAIL_ENTRY)
+       HOW(EXIT_LINK_USAGE)
 
 static const char *const iwl_mvm_esr_states_names[] = {
 #define NAME_ENTRY(x) [ilog2(IWL_MVM_ESR_##x)] = #x,
index cf6177b4326239288cebacfe8945dcb728221df7..5754e83c6fcd7db612e4b17fed5e6ab592661eaf 100644 (file)
@@ -374,7 +374,6 @@ struct iwl_mvm_vif_link_info {
  *     preventing the enablement of EMLSR
  * @IWL_MVM_ESR_EXIT_CSA: CSA happened, so exit EMLSR
  * @IWL_MVM_ESR_EXIT_LINK_USAGE: Exit EMLSR due to low tpt on secondary link
- * @IWL_MVM_ESR_EXIT_FAIL_ENTRY: Exit EMLSR due to entry failure
  */
 enum iwl_mvm_esr_state {
        IWL_MVM_ESR_BLOCKED_PREVENTION  = 0x1,
@@ -390,7 +389,6 @@ enum iwl_mvm_esr_state {
        IWL_MVM_ESR_EXIT_BANDWIDTH      = 0x80000,
        IWL_MVM_ESR_EXIT_CSA            = 0x100000,
        IWL_MVM_ESR_EXIT_LINK_USAGE     = 0x200000,
-       IWL_MVM_ESR_EXIT_FAIL_ENTRY     = 0x400000,
 };
 
 #define IWL_MVM_BLOCK_ESR_REASONS 0xffff
index eb1b2f182be53637511650676ed0fb210b735a90..c7a3fbc49b59075ecf9908552a1061277681ec06 100644 (file)
@@ -161,43 +161,6 @@ static void iwl_mvm_rx_esr_mode_notif(struct iwl_mvm *mvm,
                                  iwl_mvm_get_primary_link(vif));
 }
 
-static void iwl_mvm_rx_esr_trans_fail_notif(struct iwl_mvm *mvm,
-                                           struct iwl_rx_cmd_buffer *rxb)
-{
-       struct iwl_rx_packet *pkt = rxb_addr(rxb);
-       struct iwl_esr_trans_fail_notif *notif = (void *)pkt->data;
-       struct ieee80211_vif *vif = iwl_mvm_get_bss_vif(mvm);
-       u8 fw_link_id = le32_to_cpu(notif->link_id);
-       struct ieee80211_bss_conf *bss_conf;
-
-       if (IS_ERR_OR_NULL(vif))
-               return;
-
-       IWL_DEBUG_INFO(mvm, "Failed to %s eSR on link %d, reason %d\n",
-                      le32_to_cpu(notif->activation) ? "enter" : "exit",
-                      le32_to_cpu(notif->link_id),
-                      le32_to_cpu(notif->err_code));
-
-       /* we couldn't go back to single link, disconnect */
-       if (!le32_to_cpu(notif->activation)) {
-               iwl_mvm_connection_loss(mvm, vif, "emlsr exit failed");
-               return;
-       }
-
-       bss_conf = iwl_mvm_rcu_fw_link_id_to_link_conf(mvm, fw_link_id, false);
-       if (IWL_FW_CHECK(mvm, !bss_conf,
-                        "FW reported failure to activate EMLSR on a non-existing link: %d\n",
-                        fw_link_id))
-               return;
-
-       /*
-        * We failed to activate the second link and enter EMLSR, we need to go
-        * back to single link.
-        */
-       iwl_mvm_exit_esr(mvm, vif, IWL_MVM_ESR_EXIT_FAIL_ENTRY,
-                        bss_conf->link_id);
-}
-
 static void iwl_mvm_rx_monitor_notif(struct iwl_mvm *mvm,
                                     struct iwl_rx_cmd_buffer *rxb)
 {
@@ -526,10 +489,6 @@ static const struct iwl_rx_handlers iwl_mvm_rx_handlers[] = {
        RX_HANDLER_GRP(SCAN_GROUP, CHANNEL_SURVEY_NOTIF,
                       iwl_mvm_rx_channel_survey_notif, RX_HANDLER_ASYNC_LOCKED,
                       struct iwl_umac_scan_channel_survey_notif),
-       RX_HANDLER_GRP(MAC_CONF_GROUP, EMLSR_TRANS_FAIL_NOTIF,
-                      iwl_mvm_rx_esr_trans_fail_notif,
-                      RX_HANDLER_ASYNC_LOCKED_WIPHY,
-                      struct iwl_esr_trans_fail_notif),
 };
 #undef RX_HANDLER
 #undef RX_HANDLER_GRP
@@ -660,7 +619,6 @@ static const struct iwl_hcmd_names iwl_mvm_mac_conf_names[] = {
        HCMD_NAME(STA_REMOVE_CMD),
        HCMD_NAME(STA_DISABLE_TX_CMD),
        HCMD_NAME(ROC_CMD),
-       HCMD_NAME(EMLSR_TRANS_FAIL_NOTIF),
        HCMD_NAME(ROC_NOTIF),
        HCMD_NAME(CHANNEL_SWITCH_ERROR_NOTIF),
        HCMD_NAME(MISSED_VAP_NOTIF),