aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/qla2xxx/qla_isr.c
diff options
context:
space:
mode:
authorSawan Chandak <sawan.chandak@qlogic.com>2013-10-30 03:38:10 -0400
committerJames Bottomley <JBottomley@Parallels.com>2013-12-19 10:38:57 -0500
commit7fa3e239c0104a388913976210c0cfc657ec6f2b (patch)
treed59f55c9dd1e50947085d9bb6ec016266634ec89 /drivers/scsi/qla2xxx/qla_isr.c
parent3b6e5b9d5f4001b20b8354190755b0affc2a9130 (diff)
[SCSI] qla2xxx: Disable INTx interrupt for ISP82XX
Signed-off-by: Sawan Chandak <sawan.chandak@qlogic.com> Signed-off-by: Saurav Kashyap <saurav.kashyap@qlogic.com> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
Diffstat (limited to 'drivers/scsi/qla2xxx/qla_isr.c')
-rw-r--r--drivers/scsi/qla2xxx/qla_isr.c13
1 files changed, 7 insertions, 6 deletions
diff --git a/drivers/scsi/qla2xxx/qla_isr.c b/drivers/scsi/qla2xxx/qla_isr.c
index ff9c86b1a0d8..6e649d733353 100644
--- a/drivers/scsi/qla2xxx/qla_isr.c
+++ b/drivers/scsi/qla2xxx/qla_isr.c
@@ -2937,7 +2937,7 @@ msix_out:
2937int 2937int
2938qla2x00_request_irqs(struct qla_hw_data *ha, struct rsp_que *rsp) 2938qla2x00_request_irqs(struct qla_hw_data *ha, struct rsp_que *rsp)
2939{ 2939{
2940 int ret; 2940 int ret = QLA_FUNCTION_FAILED;
2941 device_reg_t __iomem *reg = ha->iobase; 2941 device_reg_t __iomem *reg = ha->iobase;
2942 scsi_qla_host_t *vha = pci_get_drvdata(ha->pdev); 2942 scsi_qla_host_t *vha = pci_get_drvdata(ha->pdev);
2943 2943
@@ -2971,10 +2971,12 @@ qla2x00_request_irqs(struct qla_hw_data *ha, struct rsp_que *rsp)
2971 ha->chip_revision, ha->fw_attributes); 2971 ha->chip_revision, ha->fw_attributes);
2972 goto clear_risc_ints; 2972 goto clear_risc_ints;
2973 } 2973 }
2974 ql_log(ql_log_info, vha, 0x0037, 2974
2975 "MSI-X Falling back-to MSI mode -%d.\n", ret);
2976skip_msix: 2975skip_msix:
2977 2976
2977 ql_log(ql_log_info, vha, 0x0037,
2978 "Falling back-to MSI mode -%d.\n", ret);
2979
2978 if (!IS_QLA24XX(ha) && !IS_QLA2532(ha) && !IS_QLA8432(ha) && 2980 if (!IS_QLA24XX(ha) && !IS_QLA2532(ha) && !IS_QLA8432(ha) &&
2979 !IS_QLA8001(ha) && !IS_P3P_TYPE(ha) && !IS_QLAFX00(ha)) 2981 !IS_QLA8001(ha) && !IS_P3P_TYPE(ha) && !IS_QLAFX00(ha))
2980 goto skip_msi; 2982 goto skip_msi;
@@ -2986,14 +2988,13 @@ skip_msix:
2986 ha->flags.msi_enabled = 1; 2988 ha->flags.msi_enabled = 1;
2987 } else 2989 } else
2988 ql_log(ql_log_warn, vha, 0x0039, 2990 ql_log(ql_log_warn, vha, 0x0039,
2989 "MSI-X; Falling back-to INTa mode -- %d.\n", ret); 2991 "Falling back-to INTa mode -- %d.\n", ret);
2992skip_msi:
2990 2993
2991 /* Skip INTx on ISP82xx. */ 2994 /* Skip INTx on ISP82xx. */
2992 if (!ha->flags.msi_enabled && IS_QLA82XX(ha)) 2995 if (!ha->flags.msi_enabled && IS_QLA82XX(ha))
2993 return QLA_FUNCTION_FAILED; 2996 return QLA_FUNCTION_FAILED;
2994 2997
2995skip_msi:
2996
2997 ret = request_irq(ha->pdev->irq, ha->isp_ops->intr_handler, 2998 ret = request_irq(ha->pdev->irq, ha->isp_ops->intr_handler,
2998 ha->flags.msi_enabled ? 0 : IRQF_SHARED, 2999 ha->flags.msi_enabled ? 0 : IRQF_SHARED,
2999 QLA2XXX_DRIVER_NAME, rsp); 3000 QLA2XXX_DRIVER_NAME, rsp);