aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/qla4xxx/ql4_mbx.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2011-01-07 15:47:02 -0500
committerLinus Torvalds <torvalds@linux-foundation.org>2011-01-07 15:47:02 -0500
commitda40d036fd716f0efb2917076220814b1e927ae1 (patch)
tree567893573a48e2954d82421e77606034d3b32f84 /drivers/scsi/qla4xxx/ql4_mbx.c
parentaa58abc20fa85328a9f048e2626c0893691ff284 (diff)
parentc32e061fa19893ce4acf95d97d5613a161f0f1b7 (diff)
Merge git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6: (147 commits) [SCSI] arcmsr: fix write to device check [SCSI] lpfc: lower stack use in lpfc_fc_frame_check [SCSI] eliminate an unnecessary local variable from scsi_remove_target() [SCSI] libiscsi: use bh locking instead of irq with session lock [SCSI] libiscsi: do not take host lock in queuecommand [SCSI] be2iscsi: fix null ptr when accessing task hdr [SCSI] be2iscsi: fix gfp use in alloc_pdu [SCSI] libiscsi: add more informative failure message during iscsi scsi eh [SCSI] gdth: Add missing call to gdth_ioctl_free [SCSI] bfa: remove unused defintions and misc cleanups [SCSI] bfa: remove inactive functions [SCSI] bfa: replace bfa_assert with WARN_ON [SCSI] qla2xxx: Use sg_next to fetch next sg element while walking sg list. [SCSI] qla2xxx: Fix to avoid recursive lock failure during BSG timeout. [SCSI] qla2xxx: Remove code to not reset ISP82xx on failure. [SCSI] qla2xxx: Display mailbox register 4 during 8012 AEN for ISP82XX parts. [SCSI] qla2xxx: Don't perform a BIG_HAMMER if Get-ID (0x20) mailbox command fails on CNAs. [SCSI] qla2xxx: Remove redundant module parameter permission bits [SCSI] qla2xxx: Add sysfs node for displaying board temperature. [SCSI] qla2xxx: Code cleanup to remove unwanted comments and code. ...
Diffstat (limited to 'drivers/scsi/qla4xxx/ql4_mbx.c')
-rw-r--r--drivers/scsi/qla4xxx/ql4_mbx.c22
1 files changed, 3 insertions, 19 deletions
diff --git a/drivers/scsi/qla4xxx/ql4_mbx.c b/drivers/scsi/qla4xxx/ql4_mbx.c
index 2d2f9c879bfd..f65626aec7c1 100644
--- a/drivers/scsi/qla4xxx/ql4_mbx.c
+++ b/drivers/scsi/qla4xxx/ql4_mbx.c
@@ -1,6 +1,6 @@
1/* 1/*
2 * QLogic iSCSI HBA Driver 2 * QLogic iSCSI HBA Driver
3 * Copyright (c) 2003-2006 QLogic Corporation 3 * Copyright (c) 2003-2010 QLogic Corporation
4 * 4 *
5 * See LICENSE.qla4xxx for copyright and licensing details. 5 * See LICENSE.qla4xxx for copyright and licensing details.
6 */ 6 */
@@ -81,23 +81,7 @@ int qla4xxx_mailbox_command(struct scsi_qla_host *ha, uint8_t inCount,
81 */ 81 */
82 spin_lock_irqsave(&ha->hardware_lock, flags); 82 spin_lock_irqsave(&ha->hardware_lock, flags);
83 83
84 if (is_qla8022(ha)) { 84 if (!is_qla8022(ha)) {
85 intr_status = readl(&ha->qla4_8xxx_reg->host_int);
86 if (intr_status & ISRX_82XX_RISC_INT) {
87 /* Service existing interrupt */
88 DEBUG2(printk("scsi%ld: %s: "
89 "servicing existing interrupt\n",
90 ha->host_no, __func__));
91 intr_status = readl(&ha->qla4_8xxx_reg->host_status);
92 ha->isp_ops->interrupt_service_routine(ha, intr_status);
93 clear_bit(AF_MBOX_COMMAND_DONE, &ha->flags);
94 if (test_bit(AF_INTERRUPTS_ON, &ha->flags) &&
95 test_bit(AF_INTx_ENABLED, &ha->flags))
96 qla4_8xxx_wr_32(ha,
97 ha->nx_legacy_intr.tgt_mask_reg,
98 0xfbff);
99 }
100 } else {
101 intr_status = readl(&ha->reg->ctrl_status); 85 intr_status = readl(&ha->reg->ctrl_status);
102 if (intr_status & CSR_SCSI_PROCESSOR_INTR) { 86 if (intr_status & CSR_SCSI_PROCESSOR_INTR) {
103 /* Service existing interrupt */ 87 /* Service existing interrupt */
@@ -934,7 +918,7 @@ int qla4xxx_abort_task(struct scsi_qla_host *ha, struct srb *srb)
934 return status; 918 return status;
935 919
936 mbox_cmd[0] = MBOX_CMD_ABORT_TASK; 920 mbox_cmd[0] = MBOX_CMD_ABORT_TASK;
937 mbox_cmd[1] = srb->fw_ddb_index; 921 mbox_cmd[1] = srb->ddb->fw_ddb_index;
938 mbox_cmd[2] = index; 922 mbox_cmd[2] = index;
939 /* Immediate Command Enable */ 923 /* Immediate Command Enable */
940 mbox_cmd[5] = 0x01; 924 mbox_cmd[5] = 0x01;