mirror of https://gitee.com/openkylin/linux.git
bnxt_en: Log FW health status info, if reset is aborted.
If firmware does not come out of reset, log FW health status info to provide more information on firmware status. Signed-off-by: Michael Chan <michael.chan@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
87f7ab8d6f
commit
fc8864e0b6
|
@ -11365,7 +11365,7 @@ static void bnxt_fw_reset_task(struct work_struct *work)
|
||||||
if (time_after(jiffies, bp->fw_reset_timestamp +
|
if (time_after(jiffies, bp->fw_reset_timestamp +
|
||||||
(bp->fw_reset_max_dsecs * HZ / 10))) {
|
(bp->fw_reset_max_dsecs * HZ / 10))) {
|
||||||
netdev_err(bp->dev, "Firmware reset aborted\n");
|
netdev_err(bp->dev, "Firmware reset aborted\n");
|
||||||
goto fw_reset_abort;
|
goto fw_reset_abort_status;
|
||||||
}
|
}
|
||||||
bnxt_queue_fw_reset_work(bp, HZ / 5);
|
bnxt_queue_fw_reset_work(bp, HZ / 5);
|
||||||
return;
|
return;
|
||||||
|
@ -11399,6 +11399,13 @@ static void bnxt_fw_reset_task(struct work_struct *work)
|
||||||
}
|
}
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
fw_reset_abort_status:
|
||||||
|
if (bp->fw_health->status_reliable ||
|
||||||
|
(bp->fw_cap & BNXT_FW_CAP_ERROR_RECOVERY)) {
|
||||||
|
u32 sts = bnxt_fw_health_readl(bp, BNXT_FW_HEALTH_REG);
|
||||||
|
|
||||||
|
netdev_err(bp->dev, "fw_health_status 0x%x\n", sts);
|
||||||
|
}
|
||||||
fw_reset_abort:
|
fw_reset_abort:
|
||||||
clear_bit(BNXT_STATE_IN_FW_RESET, &bp->state);
|
clear_bit(BNXT_STATE_IN_FW_RESET, &bp->state);
|
||||||
if (bp->fw_reset_state != BNXT_FW_RESET_STATE_POLL_VF)
|
if (bp->fw_reset_state != BNXT_FW_RESET_STATE_POLL_VF)
|
||||||
|
|
Loading…
Reference in New Issue