mirror of
https://github.com/SCST-project/scst.git
synced 2026-08-17 20:56:24 +00:00
qla2x00t-32gbit: Add retry for exec firmware
Per FW request, Exec FW can fail due to temporary error resulting in driver not attaching to the adapter. Add retry of this command up to 4 retries. Link: https://lore.kernel.org/r/20220110050218.3958-8-njavali@marvell.com Reviewed-by: Himanshu Madhani <himanshu.madhani@oracle.com> Signed-off-by: Quinn Tran <qutran@marvell.com> Signed-off-by: Nilesh Javali <njavali@marvell.com> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com> [ commit 355f5ffe840a upstream ]
This commit is contained in:
@@ -689,7 +689,7 @@ qla2x00_execute_fw(scsi_qla_host_t *vha, uint32_t risc_addr)
|
||||
mbx_cmd_t *mcp = &mc;
|
||||
u8 semaphore = 0;
|
||||
#define EXE_FW_FORCE_SEMAPHORE BIT_7
|
||||
u8 retry = 3;
|
||||
u8 retry = 5;
|
||||
|
||||
ql_dbg(ql_dbg_mbx + ql_dbg_verbose, vha, 0x1025,
|
||||
"Entered %s.\n", __func__);
|
||||
@@ -764,6 +764,12 @@ again:
|
||||
goto again;
|
||||
}
|
||||
|
||||
if (retry) {
|
||||
retry--;
|
||||
ql_dbg(ql_dbg_async, vha, 0x509d,
|
||||
"Exe FW retry: mb[0]=%x retry[%d]\n", mcp->mb[0], retry);
|
||||
goto again;
|
||||
}
|
||||
ql_dbg(ql_dbg_mbx, vha, 0x1026,
|
||||
"Failed=%x mb[0]=%x.\n", rval, mcp->mb[0]);
|
||||
vha->hw_err_cnt++;
|
||||
|
||||
Reference in New Issue
Block a user