aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/qla2xxx/qla_isr.c
diff options
context:
space:
mode:
authorAnirban Chakraborty <anirban.chakraborty@qlogic.com>2009-02-08 23:50:11 -0500
committerJames Bottomley <James.Bottomley@HansenPartnership.com>2009-02-10 11:15:19 -0500
commit618a752319503a64d1b66615e8ea2a0e7edaf914 (patch)
tree194fc6230e5264c2795b42fb99956d9477590ce4 /drivers/scsi/qla2xxx/qla_isr.c
parente916141c6889e2a35869d7057ef1cc5e5a2e86eb (diff)
[SCSI] qla2xxx: Remove interrupt request bit check in the response processing path in multiq mode.
Correct response-queue-0 processing by instructing the firmware to run with interrupt-handshaking disabled, similarly to what is now done for all non-0 response queues. Since all response-queues now run in the same mode, the driver no longer needs the hot-path 'is-disabled-HCCR' test. Signed-off-by: Anirban Chakraborty <anirban.chakraborty@qlogic.com> Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
Diffstat (limited to 'drivers/scsi/qla2xxx/qla_isr.c')
-rw-r--r--drivers/scsi/qla2xxx/qla_isr.c10
1 files changed, 0 insertions, 10 deletions
diff --git a/drivers/scsi/qla2xxx/qla_isr.c b/drivers/scsi/qla2xxx/qla_isr.c
index e28ad81baf1e..b5554ea4693b 100644
--- a/drivers/scsi/qla2xxx/qla_isr.c
+++ b/drivers/scsi/qla2xxx/qla_isr.c
@@ -1707,7 +1707,6 @@ qla25xx_msix_rsp_q(int irq, void *dev_id)
1707 struct qla_hw_data *ha; 1707 struct qla_hw_data *ha;
1708 struct rsp_que *rsp; 1708 struct rsp_que *rsp;
1709 struct device_reg_24xx __iomem *reg; 1709 struct device_reg_24xx __iomem *reg;
1710 uint16_t msix_disabled_hccr = 0;
1711 1710
1712 rsp = (struct rsp_que *) dev_id; 1711 rsp = (struct rsp_que *) dev_id;
1713 if (!rsp) { 1712 if (!rsp) {
@@ -1720,17 +1719,8 @@ qla25xx_msix_rsp_q(int irq, void *dev_id)
1720 1719
1721 spin_lock_irq(&ha->hardware_lock); 1720 spin_lock_irq(&ha->hardware_lock);
1722 1721
1723 msix_disabled_hccr = rsp->options;
1724 if (!rsp->id)
1725 msix_disabled_hccr &= __constant_cpu_to_le32(BIT_22);
1726 else
1727 msix_disabled_hccr &= __constant_cpu_to_le32(BIT_6);
1728
1729 qla24xx_process_response_queue(rsp); 1722 qla24xx_process_response_queue(rsp);
1730 1723
1731 if (!msix_disabled_hccr)
1732 WRT_REG_DWORD(&reg->hccr, HCCRX_CLR_RISC_INT);
1733
1734 spin_unlock_irq(&ha->hardware_lock); 1724 spin_unlock_irq(&ha->hardware_lock);
1735 1725
1736 return IRQ_HANDLED; 1726 return IRQ_HANDLED;