aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/qla2xxx/qla_bsg.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/scsi/qla2xxx/qla_bsg.c')
-rw-r--r--drivers/scsi/qla2xxx/qla_bsg.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/drivers/scsi/qla2xxx/qla_bsg.c b/drivers/scsi/qla2xxx/qla_bsg.c
index bc3cc6d91117..c68883806c54 100644
--- a/drivers/scsi/qla2xxx/qla_bsg.c
+++ b/drivers/scsi/qla2xxx/qla_bsg.c
@@ -297,7 +297,6 @@ qla2x00_process_els(struct fc_bsg_job *bsg_job)
297 297
298 /* Initialize all required fields of fcport */ 298 /* Initialize all required fields of fcport */
299 fcport->vha = vha; 299 fcport->vha = vha;
300 fcport->vp_idx = vha->vp_idx;
301 fcport->d_id.b.al_pa = 300 fcport->d_id.b.al_pa =
302 bsg_job->request->rqst_data.h_els.port_id[0]; 301 bsg_job->request->rqst_data.h_els.port_id[0];
303 fcport->d_id.b.area = 302 fcport->d_id.b.area =
@@ -483,7 +482,6 @@ qla2x00_process_ct(struct fc_bsg_job *bsg_job)
483 482
484 /* Initialize all required fields of fcport */ 483 /* Initialize all required fields of fcport */
485 fcport->vha = vha; 484 fcport->vha = vha;
486 fcport->vp_idx = vha->vp_idx;
487 fcport->d_id.b.al_pa = bsg_job->request->rqst_data.h_ct.port_id[0]; 485 fcport->d_id.b.al_pa = bsg_job->request->rqst_data.h_ct.port_id[0];
488 fcport->d_id.b.area = bsg_job->request->rqst_data.h_ct.port_id[1]; 486 fcport->d_id.b.area = bsg_job->request->rqst_data.h_ct.port_id[1];
489 fcport->d_id.b.domain = bsg_job->request->rqst_data.h_ct.port_id[2]; 487 fcport->d_id.b.domain = bsg_job->request->rqst_data.h_ct.port_id[2];
@@ -544,7 +542,7 @@ qla81xx_set_internal_loopback(scsi_qla_host_t *vha, uint16_t *config,
544 int rval = 0; 542 int rval = 0;
545 struct qla_hw_data *ha = vha->hw; 543 struct qla_hw_data *ha = vha->hw;
546 544
547 if (!IS_QLA81XX(ha) && !IS_QLA83XX(ha)) 545 if (!IS_QLA81XX(ha) && !IS_QLA8031(ha))
548 goto done_set_internal; 546 goto done_set_internal;
549 547
550 new_config[0] = config[0] | (ENABLE_INTERNAL_LOOPBACK << 1); 548 new_config[0] = config[0] | (ENABLE_INTERNAL_LOOPBACK << 1);
@@ -586,7 +584,7 @@ qla81xx_reset_internal_loopback(scsi_qla_host_t *vha, uint16_t *config,
586 uint16_t new_config[4]; 584 uint16_t new_config[4];
587 struct qla_hw_data *ha = vha->hw; 585 struct qla_hw_data *ha = vha->hw;
588 586
589 if (!IS_QLA81XX(ha) && !IS_QLA83XX(ha)) 587 if (!IS_QLA81XX(ha) && !IS_QLA8031(ha))
590 goto done_reset_internal; 588 goto done_reset_internal;
591 589
592 memset(new_config, 0 , sizeof(new_config)); 590 memset(new_config, 0 , sizeof(new_config));
@@ -710,8 +708,7 @@ qla2x00_process_loopback(struct fc_bsg_job *bsg_job)
710 elreq.options = bsg_job->request->rqst_data.h_vendor.vendor_cmd[1]; 708 elreq.options = bsg_job->request->rqst_data.h_vendor.vendor_cmd[1];
711 709
712 if ((ha->current_topology == ISP_CFG_F || 710 if ((ha->current_topology == ISP_CFG_F ||
713 (atomic_read(&vha->loop_state) == LOOP_DOWN) || 711 ((IS_QLA81XX(ha) || IS_QLA8031(ha)) &&
714 ((IS_QLA81XX(ha) || IS_QLA83XX(ha)) &&
715 le32_to_cpu(*(uint32_t *)req_data) == ELS_OPCODE_BYTE 712 le32_to_cpu(*(uint32_t *)req_data) == ELS_OPCODE_BYTE
716 && req_data_len == MAX_ELS_FRAME_PAYLOAD)) && 713 && req_data_len == MAX_ELS_FRAME_PAYLOAD)) &&
717 elreq.options == EXTERNAL_LOOPBACK) { 714 elreq.options == EXTERNAL_LOOPBACK) {
@@ -1402,6 +1399,9 @@ qla2x00_update_optrom(struct fc_bsg_job *bsg_job)
1402 if (rval) 1399 if (rval)
1403 return rval; 1400 return rval;
1404 1401
1402 /* Set the isp82xx_no_md_cap not to capture minidump */
1403 ha->flags.isp82xx_no_md_cap = 1;
1404
1405 sg_copy_to_buffer(bsg_job->request_payload.sg_list, 1405 sg_copy_to_buffer(bsg_job->request_payload.sg_list,
1406 bsg_job->request_payload.sg_cnt, ha->optrom_buffer, 1406 bsg_job->request_payload.sg_cnt, ha->optrom_buffer,
1407 ha->optrom_region_size); 1407 ha->optrom_region_size);