Skip to content

Commit

Permalink
wifi: iwlwifi: mld: Restart firmware on iwl_mld_no_wowlan_resume() error
Browse files Browse the repository at this point in the history
Commit 4460536 ("iwlwifi: mld: fix building with CONFIG_PM_SLEEP
disabled") sought to fix build breakage, but inadvertently introduced
a new issue:

iwl_mld_mac80211_start() no longer calls iwl_mld_start_fw() after having
called iwl_mld_stop_fw() in the error path of iwl_mld_no_wowlan_resume().

Fix it.

Fixes: 4460536 ("iwlwifi: mld: fix building with CONFIG_PM_SLEEP disabled")
Reported-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
Closes: https://lore.kernel.org/r/MW5PR11MB58106D6BC6403845C330C7AAA3A22@MW5PR11MB5810.namprd11.prod.outlook.com/
Signed-off-by: Lukas Wunner <lukas@wunner.de>
Acked-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Link: https://patch.msgid.link/d3ba1006a1b72ceb58c593fa62b9bd7c73e2e4ed.1744366815.git.lukas@wunner.de
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
  • Loading branch information
Lukas Wunner authored and Johannes Berg committed Apr 11, 2025
1 parent 5f05c14 commit 575fe08
Showing 1 changed file with 2 additions and 2 deletions.
4 changes: 2 additions & 2 deletions drivers/net/wireless/intel/iwlwifi/mld/mac80211.c
Original file line number Diff line number Diff line change
Expand Up @@ -475,8 +475,8 @@ static
int iwl_mld_mac80211_start(struct ieee80211_hw *hw)
{
struct iwl_mld *mld = IWL_MAC80211_GET_MLD(hw);
int ret;
bool in_d3 = false;
int ret = 0;

lockdep_assert_wiphy(mld->wiphy);

Expand All @@ -501,7 +501,7 @@ int iwl_mld_mac80211_start(struct ieee80211_hw *hw)
iwl_mld_restart_cleanup(mld);
}

if (!in_d3) {
if (!in_d3 || ret) {
ret = iwl_mld_start_fw(mld);
if (ret)
goto error;
Expand Down

0 comments on commit 575fe08

Please sign in to comment.