aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/qla2xxx/qla_isr.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/scsi/qla2xxx/qla_isr.c')
-rw-r--r--drivers/scsi/qla2xxx/qla_isr.c32
1 files changed, 3 insertions, 29 deletions
diff --git a/drivers/scsi/qla2xxx/qla_isr.c b/drivers/scsi/qla2xxx/qla_isr.c
index f250e5b7897c..d04981848e56 100644
--- a/drivers/scsi/qla2xxx/qla_isr.c
+++ b/drivers/scsi/qla2xxx/qla_isr.c
@@ -852,9 +852,6 @@ qla2x00_process_completed_request(struct scsi_qla_host *vha,
852 /* Free outstanding command slot. */ 852 /* Free outstanding command slot. */
853 req->outstanding_cmds[index] = NULL; 853 req->outstanding_cmds[index] = NULL;
854 854
855 CMD_COMPL_STATUS(sp->cmd) = 0L;
856 CMD_SCSI_STATUS(sp->cmd) = 0L;
857
858 /* Save ISP completion status */ 855 /* Save ISP completion status */
859 sp->cmd->result = DID_OK << 16; 856 sp->cmd->result = DID_OK << 16;
860 857
@@ -955,7 +952,6 @@ qla2x00_handle_sense(srb_t *sp, uint8_t *sense_data, uint32_t sense_len)
955 if (sense_len >= SCSI_SENSE_BUFFERSIZE) 952 if (sense_len >= SCSI_SENSE_BUFFERSIZE)
956 sense_len = SCSI_SENSE_BUFFERSIZE; 953 sense_len = SCSI_SENSE_BUFFERSIZE;
957 954
958 CMD_ACTUAL_SNSLEN(cp) = sense_len;
959 sp->request_sense_length = sense_len; 955 sp->request_sense_length = sense_len;
960 sp->request_sense_ptr = cp->sense_buffer; 956 sp->request_sense_ptr = cp->sense_buffer;
961 if (sp->request_sense_length > 32) 957 if (sp->request_sense_length > 32)
@@ -973,8 +969,7 @@ qla2x00_handle_sense(srb_t *sp, uint8_t *sense_data, uint32_t sense_len)
973 cp->device->channel, cp->device->id, cp->device->lun, cp, 969 cp->device->channel, cp->device->id, cp->device->lun, cp,
974 cp->serial_number)); 970 cp->serial_number));
975 if (sense_len) 971 if (sense_len)
976 DEBUG5(qla2x00_dump_buffer(cp->sense_buffer, 972 DEBUG5(qla2x00_dump_buffer(cp->sense_buffer, sense_len));
977 CMD_ACTUAL_SNSLEN(cp)));
978} 973}
979 974
980/** 975/**
@@ -1043,9 +1038,6 @@ qla2x00_status_entry(scsi_qla_host_t *vha, struct rsp_que *rsp, void *pkt)
1043 } 1038 }
1044 1039
1045 lscsi_status = scsi_status & STATUS_MASK; 1040 lscsi_status = scsi_status & STATUS_MASK;
1046 CMD_ENTRY_STATUS(cp) = sts->entry_status;
1047 CMD_COMPL_STATUS(cp) = comp_status;
1048 CMD_SCSI_STATUS(cp) = scsi_status;
1049 1041
1050 fcport = sp->fcport; 1042 fcport = sp->fcport;
1051 1043
@@ -1104,7 +1096,6 @@ qla2x00_status_entry(scsi_qla_host_t *vha, struct rsp_que *rsp, void *pkt)
1104 if (scsi_status & (SS_RESIDUAL_UNDER | SS_RESIDUAL_OVER)) { 1096 if (scsi_status & (SS_RESIDUAL_UNDER | SS_RESIDUAL_OVER)) {
1105 resid = resid_len; 1097 resid = resid_len;
1106 scsi_set_resid(cp, resid); 1098 scsi_set_resid(cp, resid);
1107 CMD_RESID_LEN(cp) = resid;
1108 1099
1109 if (!lscsi_status && 1100 if (!lscsi_status &&
1110 ((unsigned)(scsi_bufflen(cp) - resid) < 1101 ((unsigned)(scsi_bufflen(cp) - resid) <
@@ -1160,7 +1151,6 @@ qla2x00_status_entry(scsi_qla_host_t *vha, struct rsp_que *rsp, void *pkt)
1160 1151
1161 if (scsi_status & SS_RESIDUAL_UNDER) { 1152 if (scsi_status & SS_RESIDUAL_UNDER) {
1162 scsi_set_resid(cp, resid); 1153 scsi_set_resid(cp, resid);
1163 CMD_RESID_LEN(cp) = resid;
1164 } else { 1154 } else {
1165 DEBUG2(printk(KERN_INFO 1155 DEBUG2(printk(KERN_INFO
1166 "scsi(%ld:%d:%d) UNDERRUN status detected " 1156 "scsi(%ld:%d:%d) UNDERRUN status detected "
@@ -1499,7 +1489,6 @@ qla24xx_mbx_completion(scsi_qla_host_t *vha, uint16_t mb0)
1499void 1489void
1500qla24xx_process_response_queue(struct rsp_que *rsp) 1490qla24xx_process_response_queue(struct rsp_que *rsp)
1501{ 1491{
1502 struct qla_hw_data *ha = rsp->hw;
1503 struct sts_entry_24xx *pkt; 1492 struct sts_entry_24xx *pkt;
1504 struct scsi_qla_host *vha; 1493 struct scsi_qla_host *vha;
1505 1494
@@ -1553,7 +1542,7 @@ qla24xx_process_response_queue(struct rsp_que *rsp)
1553 } 1542 }
1554 1543
1555 /* Adjust ring index */ 1544 /* Adjust ring index */
1556 ha->isp_ops->wrt_rsp_reg(ha, rsp->id, rsp->ring_index); 1545 WRT_REG_DWORD(rsp->rsp_q_out, rsp->ring_index);
1557} 1546}
1558 1547
1559static void 1548static void
@@ -2029,7 +2018,7 @@ skip_msix:
2029skip_msi: 2018skip_msi:
2030 2019
2031 ret = request_irq(ha->pdev->irq, ha->isp_ops->intr_handler, 2020 ret = request_irq(ha->pdev->irq, ha->isp_ops->intr_handler,
2032 IRQF_DISABLED|IRQF_SHARED, QLA2XXX_DRIVER_NAME, rsp); 2021 IRQF_SHARED, QLA2XXX_DRIVER_NAME, rsp);
2033 if (ret) { 2022 if (ret) {
2034 qla_printk(KERN_WARNING, ha, 2023 qla_printk(KERN_WARNING, ha,
2035 "Failed to reserve interrupt %d already in use.\n", 2024 "Failed to reserve interrupt %d already in use.\n",
@@ -2117,18 +2106,3 @@ int qla25xx_request_irq(struct rsp_que *rsp)
2117 msix->rsp = rsp; 2106 msix->rsp = rsp;
2118 return ret; 2107 return ret;
2119} 2108}
2120
2121void
2122qla25xx_wrt_rsp_reg(struct qla_hw_data *ha, uint16_t id, uint16_t index)
2123{
2124 device_reg_t __iomem *reg = (void *) ha->mqiobase + QLA_QUE_PAGE * id;
2125 WRT_REG_DWORD(&reg->isp25mq.rsp_q_out, index);
2126}
2127
2128void
2129qla24xx_wrt_rsp_reg(struct qla_hw_data *ha, uint16_t id, uint16_t index)
2130{
2131 device_reg_t __iomem *reg = (void *) ha->iobase;
2132 WRT_REG_DWORD(&reg->isp24.rsp_q_out, index);
2133}
2134