summaryrefslogtreecommitdiff
path: root/drivers/net/wireless/intel/iwlwifi/mvm/mac80211.c
diff options
context:
space:
mode:
authorJohannes Berg <johannes.berg@intel.com>2024-12-27 10:01:11 +0200
committerJohannes Berg <johannes.berg@intel.com>2025-01-13 15:26:39 +0100
commit7391b2a4f7dbb7be7dd763bc87506c10f570a8d3 (patch)
treebf93c69a81695b5d2aa97332c4b790da34f8ab90 /drivers/net/wireless/intel/iwlwifi/mvm/mac80211.c
parent2d15d213e3d83108f1e29a80b230f9adb8b6e0c9 (diff)
downloadlinux-7391b2a4f7dbb7be7dd763bc87506c10f570a8d3.tar.gz
linux-7391b2a4f7dbb7be7dd763bc87506c10f570a8d3.tar.bz2
linux-7391b2a4f7dbb7be7dd763bc87506c10f570a8d3.zip
wifi: iwlwifi: rework firmware error handling
In order to later add the ability to do deeper resets of the device when it crashes, first restructure the firmware error handling. Instead of having just a single nic_error() method that handles all, split it: - nic_error() just handles and prints the error itself, - dump_error() synchronously creates an error dump, and - sw_reset() will be called to request doing a SW reset. This changes the architecture so that the transport is now responsible for deciding how to do the reset, and therefore the handling of reprobe if error occurs during reconfig moves there, which necessitates adding a method there that notifies the transport that the recovery was completed. Actually introducing the model under which deeper resets can be done will be in future patches. Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com> Link: https://patch.msgid.link/20241227095718.6d4f741ae907.I96a9243e7877808ed6d1bff6967c15d6c24882f0@changeid Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'drivers/net/wireless/intel/iwlwifi/mvm/mac80211.c')
-rw-r--r--drivers/net/wireless/intel/iwlwifi/mvm/mac80211.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/net/wireless/intel/iwlwifi/mvm/mac80211.c b/drivers/net/wireless/intel/iwlwifi/mvm/mac80211.c
index b82a2ac50d5b..3e0f34dc6e1a 100644
--- a/drivers/net/wireless/intel/iwlwifi/mvm/mac80211.c
+++ b/drivers/net/wireless/intel/iwlwifi/mvm/mac80211.c
@@ -1340,6 +1340,7 @@ static void iwl_mvm_restart_complete(struct iwl_mvm *mvm)
iwl_mvm_teardown_tdls_peers(mvm);
IWL_INFO(mvm, "restart completed\n");
+ iwl_trans_finish_sw_reset(mvm->trans);
}
void iwl_mvm_mac_reconfig_complete(struct ieee80211_hw *hw,