diff options
author | Joe Carnuccio <joe.carnuccio@qlogic.com> | 2016-07-06 11:14:29 -0400 |
---|---|---|
committer | Martin K. Petersen <martin.petersen@oracle.com> | 2016-07-15 15:35:49 -0400 |
commit | 41233cd3a454b6f0a6fe9bf4d1c7fc39d9a5179e (patch) | |
tree | b7503a4e6acb31eb79a83366a0230c4dbcf6f196 | |
parent | 40f3862ba91ec1a76ecd848e483db9fc20d279b8 (diff) |
qla2xxx: Add support to handle Loop Init error Asynchronus event.
Signed-off-by: Joe Carnuccio <joe.carnuccio@qlogic.com>
Signed-off-by: Himanshu Madhani <himanshu.madhani@qlogic.com>
Reviewed-by: Hannes Reinecke <hare@suse.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
-rw-r--r-- | drivers/scsi/qla2xxx/qla_dbg.c | 2 | ||||
-rw-r--r-- | drivers/scsi/qla2xxx/qla_isr.c | 11 |
2 files changed, 10 insertions, 3 deletions
diff --git a/drivers/scsi/qla2xxx/qla_dbg.c b/drivers/scsi/qla2xxx/qla_dbg.c index eebd1a585cdd..288338d59327 100644 --- a/drivers/scsi/qla2xxx/qla_dbg.c +++ b/drivers/scsi/qla2xxx/qla_dbg.c | |||
@@ -30,7 +30,7 @@ | |||
30 | * | | | 0x5047 | | 30 | * | | | 0x5047 | |
31 | * | | | 0x5084,0x5075 | | 31 | * | | | 0x5084,0x5075 | |
32 | * | | | 0x503d,0x5044 | | 32 | * | | | 0x503d,0x5044 | |
33 | * | | | 0x507b,0x505f | | 33 | * | | | 0x505f | |
34 | * | Timer Routines | 0x6012 | | | 34 | * | Timer Routines | 0x6012 | | |
35 | * | User Space Interactions | 0x70e3 | 0x7018,0x702e | | 35 | * | User Space Interactions | 0x70e3 | 0x7018,0x702e | |
36 | * | | | 0x7020,0x7024 | | 36 | * | | | 0x7020,0x7024 | |
diff --git a/drivers/scsi/qla2xxx/qla_isr.c b/drivers/scsi/qla2xxx/qla_isr.c index 6b5f97e8c07b..6be2ab4f19a6 100644 --- a/drivers/scsi/qla2xxx/qla_isr.c +++ b/drivers/scsi/qla2xxx/qla_isr.c | |||
@@ -710,16 +710,23 @@ skip_rio: | |||
710 | 710 | ||
711 | case MBA_RSP_TRANSFER_ERR: /* Response Transfer Error */ | 711 | case MBA_RSP_TRANSFER_ERR: /* Response Transfer Error */ |
712 | ql_log(ql_log_warn, vha, 0x5007, | 712 | ql_log(ql_log_warn, vha, 0x5007, |
713 | "ISP Response Transfer Error.\n"); | 713 | "ISP Response Transfer Error (%x).\n", mb[1]); |
714 | 714 | ||
715 | set_bit(ISP_ABORT_NEEDED, &vha->dpc_flags); | 715 | set_bit(ISP_ABORT_NEEDED, &vha->dpc_flags); |
716 | break; | 716 | break; |
717 | 717 | ||
718 | case MBA_WAKEUP_THRES: /* Request Queue Wake-up */ | 718 | case MBA_WAKEUP_THRES: /* Request Queue Wake-up */ |
719 | ql_dbg(ql_dbg_async, vha, 0x5008, | 719 | ql_dbg(ql_dbg_async, vha, 0x5008, |
720 | "Asynchronous WAKEUP_THRES.\n"); | 720 | "Asynchronous WAKEUP_THRES (%x).\n", mb[1]); |
721 | break; | ||
721 | 722 | ||
723 | case MBA_LOOP_INIT_ERR: | ||
724 | ql_log(ql_log_warn, vha, 0x507b, | ||
725 | "LOOP INIT ERROR (%x).\n", mb[1]); | ||
726 | ha->isp_ops->fw_dump(vha, 1); | ||
727 | set_bit(ISP_ABORT_NEEDED, &vha->dpc_flags); | ||
722 | break; | 728 | break; |
729 | |||
723 | case MBA_LIP_OCCURRED: /* Loop Initialization Procedure */ | 730 | case MBA_LIP_OCCURRED: /* Loop Initialization Procedure */ |
724 | ql_dbg(ql_dbg_async, vha, 0x5009, | 731 | ql_dbg(ql_dbg_async, vha, 0x5009, |
725 | "LIP occurred (%x).\n", mb[1]); | 732 | "LIP occurred (%x).\n", mb[1]); |