Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 7729
b: refs/heads/master
c: ad3e0ed
h: refs/heads/master
i:
  7727: 5585c66
v: v3
  • Loading branch information
Andrew Vasquez authored and James Bottomley committed Sep 5, 2005
1 parent b9ec6e0 commit ce667e6
Show file tree
Hide file tree
Showing 5 changed files with 27 additions and 1 deletion.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 7524f9b9e72cd36f0a70defcd424eba81c180f42
refs/heads/master: ad3e0edaceb9771be7ffbd7aa24fb444a7ed85bf
4 changes: 4 additions & 0 deletions trunk/drivers/scsi/qla2xxx/qla_attr.c
Original file line number Diff line number Diff line change
Expand Up @@ -304,10 +304,13 @@ struct fc_function_template qla2xxx_transport_functions = {

.show_host_node_name = 1,
.show_host_port_name = 1,
.show_host_supported_classes = 1,

.get_host_port_id = qla2x00_get_host_port_id,
.show_host_port_id = 1,

.dd_fcrport_size = sizeof(struct fc_port *),
.show_rport_supported_classes = 1,

.get_starget_node_name = qla2x00_get_starget_node_name,
.show_starget_node_name = 1,
Expand All @@ -329,4 +332,5 @@ qla2x00_init_host_attr(scsi_qla_host_t *ha)
be64_to_cpu(*(uint64_t *)ha->init_cb->node_name);
fc_host_port_name(ha->host) =
be64_to_cpu(*(uint64_t *)ha->init_cb->port_name);
fc_host_supported_classes(ha->host) = FC_COS_CLASS3;
}
1 change: 1 addition & 0 deletions trunk/drivers/scsi/qla2xxx/qla_def.h
Original file line number Diff line number Diff line change
Expand Up @@ -1673,6 +1673,7 @@ typedef struct fc_port {
uint8_t cur_path; /* current path id */

struct fc_rport *rport;
u32 supported_classes;
} fc_port_t;

/*
Expand Down
7 changes: 7 additions & 0 deletions trunk/drivers/scsi/qla2xxx/qla_init.c
Original file line number Diff line number Diff line change
Expand Up @@ -1697,6 +1697,7 @@ qla2x00_alloc_fcport(scsi_qla_host_t *ha, int flags)
fcport->iodesc_idx_sent = IODESC_INVALID_INDEX;
atomic_set(&fcport->state, FCS_UNCONFIGURED);
fcport->flags = FCF_RLC_SUPPORT;
fcport->supported_classes = FC_COS_UNSPECIFIED;

return (fcport);
}
Expand Down Expand Up @@ -2075,6 +2076,7 @@ qla2x00_reg_remote_port(scsi_qla_host_t *ha, fc_port_t *fcport)
return;
}
rport->dd_data = fcport;
rport->supported_classes = fcport->supported_classes;

rport_ids.roles = FC_RPORT_ROLE_UNKNOWN;
if (fcport->port_type == FCT_INITIATOR)
Expand Down Expand Up @@ -2794,6 +2796,11 @@ qla2x00_fabric_login(scsi_qla_host_t *ha, fc_port_t *fcport,
}
}

if (mb[10] & BIT_0)
fcport->supported_classes |= FC_COS_CLASS2;
if (mb[10] & BIT_1)
fcport->supported_classes |= FC_COS_CLASS3;

rval = QLA_SUCCESS;
break;
} else if (mb[0] == MBS_LOOP_ID_USED) {
Expand Down
14 changes: 14 additions & 0 deletions trunk/drivers/scsi/qla2xxx/qla_mbx.c
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@
#include "qla_def.h"

#include <linux/delay.h>
#include <scsi/scsi_transport_fc.h>

static void
qla2x00_mbx_sem_timeout(unsigned long data)
Expand Down Expand Up @@ -1326,6 +1327,10 @@ qla2x00_get_port_database(scsi_qla_host_t *ha, fc_port_t *fcport, uint8_t opt)
fcport->port_type = FCT_INITIATOR;
else
fcport->port_type = FCT_TARGET;

/* Passback COS information. */
fcport->supported_classes = (pd->options & BIT_4) ?
FC_COS_CLASS2: FC_COS_CLASS3;
}

gpd_error_out:
Expand Down Expand Up @@ -1661,6 +1666,13 @@ qla24xx_login_fabric(scsi_qla_host_t *ha, uint16_t loop_id, uint8_t domain,
mb[1] |= BIT_1;
} else
mb[1] = BIT_0;

/* Passback COS information. */
mb[10] = 0;
if (lg->io_parameter[7] || lg->io_parameter[8])
mb[10] |= BIT_0; /* Class 2. */
if (lg->io_parameter[9] || lg->io_parameter[10])
mb[10] |= BIT_1; /* Class 3. */
}

dma_pool_free(ha->s_dma_pool, lg, lg_dma);
Expand Down Expand Up @@ -1723,6 +1735,8 @@ qla2x00_login_fabric(scsi_qla_host_t *ha, uint16_t loop_id, uint8_t domain,
mb[2] = mcp->mb[2];
mb[6] = mcp->mb[6];
mb[7] = mcp->mb[7];
/* COS retrieved from Get-Port-Database mailbox command. */
mb[10] = 0;
}

if (rval != QLA_SUCCESS) {
Expand Down

0 comments on commit ce667e6

Please sign in to comment.