diff options
author | Madhuranath Iyengar <madhuranath.iyengar@qlogic.com> | 2010-09-03 18:20:54 -0400 |
---|---|---|
committer | James Bottomley <James.Bottomley@suse.de> | 2010-09-05 14:35:01 -0400 |
commit | b1d46989c12ec4d93f274ca8378bb1a6014d244a (patch) | |
tree | 3bcae91b1470f09add485e7fcfa5a149d206e29d /drivers/scsi/qla2xxx/qla_isr.c | |
parent | bddd2d65a48c492d3e585e65df0be89c58b4acda (diff) |
[SCSI] qla2xxx: Handle MPI timeout indicated by AE8002
In case the MPI times out, the FW issues an async event AE8002
to indicate this to every FCoE function. The FC/FCoE driver is
required to handle this, by doing a soft reset and issuing a
Write MPI register mailbox command to reset the MPI.
Signed-off-by: Giridhar Malavali <giridhar.malavali@qlogic.com>
Signed-off-by: James Bottomley <James.Bottomley@suse.de>
Diffstat (limited to 'drivers/scsi/qla2xxx/qla_isr.c')
-rw-r--r-- | drivers/scsi/qla2xxx/qla_isr.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/drivers/scsi/qla2xxx/qla_isr.c b/drivers/scsi/qla2xxx/qla_isr.c index 6982ba70e12a..bb4d63a792aa 100644 --- a/drivers/scsi/qla2xxx/qla_isr.c +++ b/drivers/scsi/qla2xxx/qla_isr.c | |||
@@ -412,8 +412,14 @@ skip_rio: | |||
412 | "Unrecoverable Hardware Error: adapter " | 412 | "Unrecoverable Hardware Error: adapter " |
413 | "marked OFFLINE!\n"); | 413 | "marked OFFLINE!\n"); |
414 | vha->flags.online = 0; | 414 | vha->flags.online = 0; |
415 | } else | 415 | } else { |
416 | /* Check to see if MPI timeout occured */ | ||
417 | if ((mbx & MBX_3) && (ha->flags.port0)) | ||
418 | set_bit(MPI_RESET_NEEDED, | ||
419 | &vha->dpc_flags); | ||
420 | |||
416 | set_bit(ISP_ABORT_NEEDED, &vha->dpc_flags); | 421 | set_bit(ISP_ABORT_NEEDED, &vha->dpc_flags); |
422 | } | ||
417 | } else if (mb[1] == 0) { | 423 | } else if (mb[1] == 0) { |
418 | qla_printk(KERN_INFO, ha, | 424 | qla_printk(KERN_INFO, ha, |
419 | "Unrecoverable Hardware Error: adapter marked " | 425 | "Unrecoverable Hardware Error: adapter marked " |