diff options
author | Vikas Chaudhary <vikas.chaudhary@qlogic.com> | 2012-02-13 08:00:45 -0500 |
---|---|---|
committer | James Bottomley <JBottomley@Parallels.com> | 2012-02-19 10:33:01 -0500 |
commit | 46801ba698b3366cf8d293d9f3d4253b6fd5210b (patch) | |
tree | d088dda7648b25ef7826ce2dd87064f116b55132 | |
parent | badc5b9996005a388e94223d43eebba6698b7ac4 (diff) |
[SCSI] qla4xxx: Proper detection of firmware abort error code for ISP82xx
Signed-off-by: Vikas Chaudhary <vikas.chaudhary@qlogic.com>
Reviewed-by: Mike Christie <michaelc@cs.wisc.edu>
Signed-off-by: James Bottomley <JBottomley@Parallels.com>
-rw-r--r-- | drivers/scsi/qla4xxx/ql4_def.h | 2 | ||||
-rw-r--r-- | drivers/scsi/qla4xxx/ql4_nx.h | 1 | ||||
-rw-r--r-- | drivers/scsi/qla4xxx/ql4_os.c | 2 |
3 files changed, 2 insertions, 3 deletions
diff --git a/drivers/scsi/qla4xxx/ql4_def.h b/drivers/scsi/qla4xxx/ql4_def.h index bfe68545203f..ec48dc30b9a2 100644 --- a/drivers/scsi/qla4xxx/ql4_def.h +++ b/drivers/scsi/qla4xxx/ql4_def.h | |||
@@ -150,8 +150,6 @@ | |||
150 | #define QL4_SESS_RECOVERY_TMO 120 /* iSCSI session */ | 150 | #define QL4_SESS_RECOVERY_TMO 120 /* iSCSI session */ |
151 | /* recovery timeout */ | 151 | /* recovery timeout */ |
152 | 152 | ||
153 | #define MSB(x) ((uint8_t)((uint16_t)(x) >> 8)) | ||
154 | #define LSW(x) ((uint16_t)(x)) | ||
155 | #define LSDW(x) ((u32)((u64)(x))) | 153 | #define LSDW(x) ((u32)((u64)(x))) |
156 | #define MSDW(x) ((u32)((((u64)(x)) >> 16) >> 16)) | 154 | #define MSDW(x) ((u32)((((u64)(x)) >> 16) >> 16)) |
157 | 155 | ||
diff --git a/drivers/scsi/qla4xxx/ql4_nx.h b/drivers/scsi/qla4xxx/ql4_nx.h index dc45ac923691..dc7500e47b8b 100644 --- a/drivers/scsi/qla4xxx/ql4_nx.h +++ b/drivers/scsi/qla4xxx/ql4_nx.h | |||
@@ -623,6 +623,7 @@ struct crb_addr_pair { | |||
623 | 623 | ||
624 | #define ADDR_ERROR ((unsigned long) 0xffffffff) | 624 | #define ADDR_ERROR ((unsigned long) 0xffffffff) |
625 | #define MAX_CTL_CHECK 1000 | 625 | #define MAX_CTL_CHECK 1000 |
626 | #define QLA82XX_FWERROR_CODE(code) ((code >> 8) & 0x1fffff) | ||
626 | 627 | ||
627 | /*************************************************************************** | 628 | /*************************************************************************** |
628 | * PCI related defines. | 629 | * PCI related defines. |
diff --git a/drivers/scsi/qla4xxx/ql4_os.c b/drivers/scsi/qla4xxx/ql4_os.c index 3339cc1e3390..2cd20775836f 100644 --- a/drivers/scsi/qla4xxx/ql4_os.c +++ b/drivers/scsi/qla4xxx/ql4_os.c | |||
@@ -2165,7 +2165,7 @@ void qla4_8xxx_watchdog(struct scsi_qla_host *ha) | |||
2165 | halt_status = qla4_8xxx_rd_32(ha, | 2165 | halt_status = qla4_8xxx_rd_32(ha, |
2166 | QLA82XX_PEG_HALT_STATUS1); | 2166 | QLA82XX_PEG_HALT_STATUS1); |
2167 | 2167 | ||
2168 | if (LSW(MSB(halt_status)) == 0x67) | 2168 | if (QLA82XX_FWERROR_CODE(halt_status) == 0x67) |
2169 | ql4_printk(KERN_ERR, ha, "%s:" | 2169 | ql4_printk(KERN_ERR, ha, "%s:" |
2170 | " Firmware aborted with" | 2170 | " Firmware aborted with" |
2171 | " error code 0x00006700." | 2171 | " error code 0x00006700." |