aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/qla2xxx/qla_isr.c
diff options
context:
space:
mode:
authorMadhuranath Iyengar <madhuranath.iyengar@qlogic.com>2010-09-03 18:20:54 -0400
committerJames Bottomley <James.Bottomley@suse.de>2010-09-05 14:35:01 -0400
commitb1d46989c12ec4d93f274ca8378bb1a6014d244a (patch)
tree3bcae91b1470f09add485e7fcfa5a149d206e29d /drivers/scsi/qla2xxx/qla_isr.c
parentbddd2d65a48c492d3e585e65df0be89c58b4acda (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.c8
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 "