diff options
author | Andrew Vasquez <andrew.vasquez@qlogic.com> | 2009-04-07 01:33:48 -0400 |
---|---|---|
committer | James Bottomley <James.Bottomley@HansenPartnership.com> | 2009-05-20 18:21:10 -0400 |
commit | b469a7cbe9bf68939c90f4ac6bc2bb99e47d7229 (patch) | |
tree | c3cbabe580d0a98ace262611e3152a105357e838 /drivers/scsi/qla2xxx | |
parent | a13d8ac057705c479b8bf15e5303f18f899502f9 (diff) |
[SCSI] qla2xxx: Don't try to 'stop' firmware if already in ROM code.
Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com>
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
Diffstat (limited to 'drivers/scsi/qla2xxx')
-rw-r--r-- | drivers/scsi/qla2xxx/qla_init.c | 2 | ||||
-rw-r--r-- | drivers/scsi/qla2xxx/qla_mbx.c | 2 |
2 files changed, 3 insertions, 1 deletions
diff --git a/drivers/scsi/qla2xxx/qla_init.c b/drivers/scsi/qla2xxx/qla_init.c index a4a6a146fccd..138ae88e9e4d 100644 --- a/drivers/scsi/qla2xxx/qla_init.c +++ b/drivers/scsi/qla2xxx/qla_init.c | |||
@@ -4153,7 +4153,7 @@ qla2x00_try_to_stop_firmware(scsi_qla_host_t *vha) | |||
4153 | 4153 | ||
4154 | ret = qla2x00_stop_firmware(vha); | 4154 | ret = qla2x00_stop_firmware(vha); |
4155 | for (retries = 5; ret != QLA_SUCCESS && ret != QLA_FUNCTION_TIMEOUT && | 4155 | for (retries = 5; ret != QLA_SUCCESS && ret != QLA_FUNCTION_TIMEOUT && |
4156 | retries ; retries--) { | 4156 | ret != QLA_INVALID_COMMAND && retries ; retries--) { |
4157 | ha->isp_ops->reset_chip(vha); | 4157 | ha->isp_ops->reset_chip(vha); |
4158 | if (ha->isp_ops->chip_diag(vha) != QLA_SUCCESS) | 4158 | if (ha->isp_ops->chip_diag(vha) != QLA_SUCCESS) |
4159 | continue; | 4159 | continue; |
diff --git a/drivers/scsi/qla2xxx/qla_mbx.c b/drivers/scsi/qla2xxx/qla_mbx.c index 258c39d8f448..7d0eeec9ba57 100644 --- a/drivers/scsi/qla2xxx/qla_mbx.c +++ b/drivers/scsi/qla2xxx/qla_mbx.c | |||
@@ -2477,6 +2477,8 @@ qla2x00_stop_firmware(scsi_qla_host_t *vha) | |||
2477 | if (rval != QLA_SUCCESS) { | 2477 | if (rval != QLA_SUCCESS) { |
2478 | DEBUG2_3_11(printk("%s(%ld): failed=%x.\n", __func__, | 2478 | DEBUG2_3_11(printk("%s(%ld): failed=%x.\n", __func__, |
2479 | vha->host_no, rval)); | 2479 | vha->host_no, rval)); |
2480 | if (mcp->mb[0] == MBS_INVALID_COMMAND) | ||
2481 | rval = QLA_INVALID_COMMAND; | ||
2480 | } else { | 2482 | } else { |
2481 | DEBUG11(printk("%s(%ld): done.\n", __func__, vha->host_no)); | 2483 | DEBUG11(printk("%s(%ld): done.\n", __func__, vha->host_no)); |
2482 | } | 2484 | } |