qlcnic: mark device state fail
Device state need to be mark as FAILED, if fail to start firmware. Signed-off-by: Amit Kumar Salecha <amit.salecha@qlogic.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
20c67bd40e
commit
a7fc948f4d
1 changed files with 8 additions and 2 deletions
|
@ -635,9 +635,12 @@ wait_init:
|
|||
|
||||
adapter->need_fw_reset = 0;
|
||||
|
||||
/* fall through and release firmware */
|
||||
qlcnic_release_firmware(adapter);
|
||||
return 0;
|
||||
|
||||
err_out:
|
||||
QLCWR32(adapter, QLCNIC_CRB_DEV_STATE, QLCNIC_DEV_FAILED);
|
||||
dev_err(&adapter->pdev->dev, "Device state set to failed\n");
|
||||
qlcnic_release_firmware(adapter);
|
||||
return err;
|
||||
}
|
||||
|
@ -1100,8 +1103,10 @@ qlcnic_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
|
|||
goto err_out_iounmap;
|
||||
|
||||
err = qlcnic_start_firmware(adapter);
|
||||
if (err)
|
||||
if (err) {
|
||||
dev_err(&pdev->dev, "Loading fw failed.Please Reboot\n");
|
||||
goto err_out_decr_ref;
|
||||
}
|
||||
|
||||
qlcnic_clear_stats(adapter);
|
||||
|
||||
|
@ -2061,6 +2066,7 @@ qlcnic_can_start_firmware(struct qlcnic_adapter *adapter)
|
|||
break;
|
||||
|
||||
case QLCNIC_DEV_FAILED:
|
||||
dev_err(&adapter->pdev->dev, "Device in failed state.\n");
|
||||
qlcnic_api_unlock(adapter);
|
||||
return -1;
|
||||
|
||||
|
|
Reference in a new issue