aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSawan Chandak <sawan.chandak@cavium.com>2017-03-31 17:37:03 -0400
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2017-04-21 03:31:21 -0400
commit64e746983c4c8c88393866485cbca1782071aeb1 (patch)
treecf52c272a50dfb1a4cecc3405684e8b0cec3129a
parent82d181d7540fed18ee48487d252dc60920c16d18 (diff)
scsi: qla2xxx: Add fix to read correct register value for ISP82xx.
commit bf6061b17a8d47ef0d9344d3ef576a4ff0edf793 upstream. Add fix to read correct register value for ISP82xx, during check for register disconnect.ISP82xx has different base register. Fixes: a465537ad1a4 ("qla2xxx: Disable the adapter and skip error recovery in case of register disconnect") Signed-off-by: Sawan Chandak <sawan.chandak@cavium.com> Signed-off-by: Himanshu Madhani <himanshu.madhani@cavium.com> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--drivers/scsi/qla2xxx/qla_os.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/drivers/scsi/qla2xxx/qla_os.c b/drivers/scsi/qla2xxx/qla_os.c
index 4f361d8d84be..734e592a247e 100644
--- a/drivers/scsi/qla2xxx/qla_os.c
+++ b/drivers/scsi/qla2xxx/qla_os.c
@@ -968,8 +968,13 @@ static inline
968uint32_t qla2x00_isp_reg_stat(struct qla_hw_data *ha) 968uint32_t qla2x00_isp_reg_stat(struct qla_hw_data *ha)
969{ 969{
970 struct device_reg_24xx __iomem *reg = &ha->iobase->isp24; 970 struct device_reg_24xx __iomem *reg = &ha->iobase->isp24;
971 struct device_reg_82xx __iomem *reg82 = &ha->iobase->isp82;
971 972
972 return ((RD_REG_DWORD(&reg->host_status)) == ISP_REG_DISCONNECT); 973 if (IS_P3P_TYPE(ha))
974 return ((RD_REG_DWORD(&reg82->host_int)) == ISP_REG_DISCONNECT);
975 else
976 return ((RD_REG_DWORD(&reg->host_status)) ==
977 ISP_REG_DISCONNECT);
973} 978}
974 979
975/************************************************************************** 980/**************************************************************************