diff options
Diffstat (limited to 'drivers/scsi/qla2xxx/qla_mid.c')
-rw-r--r-- | drivers/scsi/qla2xxx/qla_mid.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/drivers/scsi/qla2xxx/qla_mid.c b/drivers/scsi/qla2xxx/qla_mid.c index 785c61279e6e..e2bd36e7e885 100644 --- a/drivers/scsi/qla2xxx/qla_mid.c +++ b/drivers/scsi/qla2xxx/qla_mid.c | |||
@@ -584,6 +584,7 @@ qla25xx_create_req_que(struct qla_hw_data *ha, uint16_t options, | |||
584 | struct req_que *req = NULL; | 584 | struct req_que *req = NULL; |
585 | struct scsi_qla_host *base_vha = pci_get_drvdata(ha->pdev); | 585 | struct scsi_qla_host *base_vha = pci_get_drvdata(ha->pdev); |
586 | uint16_t que_id = 0; | 586 | uint16_t que_id = 0; |
587 | device_reg_t __iomem *reg; | ||
587 | 588 | ||
588 | req = kzalloc(sizeof(struct req_que), GFP_KERNEL); | 589 | req = kzalloc(sizeof(struct req_que), GFP_KERNEL); |
589 | if (req == NULL) { | 590 | if (req == NULL) { |
@@ -631,6 +632,9 @@ qla25xx_create_req_que(struct qla_hw_data *ha, uint16_t options, | |||
631 | req->ring_index = 0; | 632 | req->ring_index = 0; |
632 | req->cnt = req->length; | 633 | req->cnt = req->length; |
633 | req->id = que_id; | 634 | req->id = que_id; |
635 | reg = ISP_QUE_REG(ha, que_id); | ||
636 | req->req_q_in = ®->isp25mq.req_q_in; | ||
637 | req->req_q_out = ®->isp25mq.req_q_out; | ||
634 | req->max_q_depth = ha->req_q_map[0]->max_q_depth; | 638 | req->max_q_depth = ha->req_q_map[0]->max_q_depth; |
635 | mutex_unlock(&ha->vport_lock); | 639 | mutex_unlock(&ha->vport_lock); |
636 | 640 | ||
@@ -658,7 +662,8 @@ qla25xx_create_rsp_que(struct qla_hw_data *ha, uint16_t options, | |||
658 | int ret = 0; | 662 | int ret = 0; |
659 | struct rsp_que *rsp = NULL; | 663 | struct rsp_que *rsp = NULL; |
660 | struct scsi_qla_host *base_vha = pci_get_drvdata(ha->pdev); | 664 | struct scsi_qla_host *base_vha = pci_get_drvdata(ha->pdev); |
661 | uint16_t que_id = 0;; | 665 | uint16_t que_id = 0; |
666 | device_reg_t __iomem *reg; | ||
662 | 667 | ||
663 | rsp = kzalloc(sizeof(struct rsp_que), GFP_KERNEL); | 668 | rsp = kzalloc(sizeof(struct rsp_que), GFP_KERNEL); |
664 | if (rsp == NULL) { | 669 | if (rsp == NULL) { |
@@ -706,6 +711,9 @@ qla25xx_create_rsp_que(struct qla_hw_data *ha, uint16_t options, | |||
706 | rsp->ring_ptr = rsp->ring; | 711 | rsp->ring_ptr = rsp->ring; |
707 | rsp->ring_index = 0; | 712 | rsp->ring_index = 0; |
708 | rsp->id = que_id; | 713 | rsp->id = que_id; |
714 | reg = ISP_QUE_REG(ha, que_id); | ||
715 | rsp->rsp_q_in = ®->isp25mq.rsp_q_in; | ||
716 | rsp->rsp_q_out = ®->isp25mq.rsp_q_out; | ||
709 | mutex_unlock(&ha->vport_lock); | 717 | mutex_unlock(&ha->vport_lock); |
710 | 718 | ||
711 | ret = qla25xx_request_irq(rsp); | 719 | ret = qla25xx_request_irq(rsp); |