From 245bee86803d4305e9f91cde569ec866eb32464b Mon Sep 17 00:00:00 2001 From: Andrew Vasquez Date: Mon, 8 Oct 2012 12:43:26 +0530 Subject: [PATCH] qla2xxx: Use correct Request-Q-Out register during bidirectional request processing Original code was not corrected for ISP83xx support. Instead code should used the cached reference from the req_que structure, rather than the legacy 'if (ISP-TYPE(X))... else if (ISP-TYPE(Y))...' codes. JIRA Key: V2632FC-284 Acked-by: Chad Dupuis Acked-by: Giridhar Malavali Acked-by: Atul Deshmukh Signed-off-by: Andrew Vasquez Signed-off-by: Saurav Kashyap Signed-off-by: Jerry Snitselaar --- drivers/scsi/qla2xxx/qla_iocb.c | 11 +---------- 1 file changed, 1 insertion(+), 10 deletions(-) diff --git a/drivers/scsi/qla2xxx/qla_iocb.c b/drivers/scsi/qla2xxx/qla_iocb.c index a98bbebe8c5c..7d9b240bf2e7 100644 --- a/drivers/scsi/qla2xxx/qla_iocb.c +++ b/drivers/scsi/qla2xxx/qla_iocb.c @@ -2725,7 +2725,6 @@ qla2x00_start_bidir(srb_t *sp, struct scsi_qla_host *vha, uint32_t tot_dsds) struct rsp_que *rsp; struct req_que *req; int rval = EXT_STATUS_OK; - device_reg_t __iomem *reg = ISP_QUE_REG(ha, vha->req->id); rval = QLA_SUCCESS; @@ -2763,15 +2762,7 @@ qla2x00_start_bidir(srb_t *sp, struct scsi_qla_host *vha, uint32_t tot_dsds) /* Check for room on request queue. */ if (req->cnt < req_cnt + 2) { - if (ha->mqenable) - cnt = RD_REG_DWORD(®->isp25mq.req_q_out); - else if (IS_QLA82XX(ha)) - cnt = RD_REG_DWORD(®->isp82.req_q_out); - else if (IS_FWI2_CAPABLE(ha)) - cnt = RD_REG_DWORD(®->isp24.req_q_out); - else - cnt = qla2x00_debounce_register( - ISP_REQ_Q_OUT(ha, ®->isp)); + cnt = RD_REG_DWORD_RELAXED(req->req_q_out); if (req->ring_index < cnt) req->cnt = cnt - req->ring_index; -- 2.50.1