From: Shahar S Matityahu <[email protected]>

After the FW image was loaded for the first time,
fwrt->smem_cfg.num_lmacs value will no longer be zero since we don't
clean it when we stop the device. So if we load the image once and then
we fail on a consecutive attempt, the driver will abort any dumping.

Solve this by removing the condition. It is safe to remove since
when we do the actual dumping in iwl_fw_dbg_collect_sync we check
that STATUS_DEVICE_ENABLED bit is still active.

Signed-off-by: Shahar S Matityahu <[email protected]>
Signed-off-by: Luca Coelho <[email protected]>
---
 drivers/net/wireless/intel/iwlwifi/fw/dbg.c | 16 ----------------
 1 file changed, 16 deletions(-)

diff --git a/drivers/net/wireless/intel/iwlwifi/fw/dbg.c 
b/drivers/net/wireless/intel/iwlwifi/fw/dbg.c
index 202f96e9ca0c..b189a605ec13 100644
--- a/drivers/net/wireless/intel/iwlwifi/fw/dbg.c
+++ b/drivers/net/wireless/intel/iwlwifi/fw/dbg.c
@@ -1592,22 +1592,6 @@ int iwl_fw_dbg_collect_desc(struct iwl_fw_runtime *fwrt,
                            bool monitor_only,
                            unsigned int delay)
 {
-       /*
-        * If the loading of the FW completed successfully, the next step is to
-        * get the SMEM config data. Thus, if fwrt->smem_cfg.num_lmacs is non
-        * zero, the FW was already loaded successully. If the state is "NO_FW"
-        * in such a case - exit, since FW may be dead. Otherwise, we
-        * can try to collect the data, since FW might just not be fully
-        * loaded (no "ALIVE" yet), and the debug data is accessible.
-        *
-        * Corner case: got the FW alive but crashed before getting the SMEM
-        *      config. In such a case, due to HW access problems, we might
-        *      collect garbage.
-        */
-       if (fwrt->trans->state == IWL_TRANS_NO_FW &&
-           fwrt->smem_cfg.num_lmacs)
-               return -EIO;
-
        if (test_and_set_bit(IWL_FWRT_STATUS_DUMPING, &fwrt->status))
                return -EBUSY;
 
-- 
2.20.1

Reply via email to