diff options
author | Andrew Vasquez <andrew.vasquez@qlogic.com> | 2009-04-07 01:33:38 -0400 |
---|---|---|
committer | James Bottomley <James.Bottomley@HansenPartnership.com> | 2009-05-20 18:21:07 -0400 |
commit | bad7001c200458c24864df6f2b1b66548bca7c75 (patch) | |
tree | 84bd053f821cbbfd06710c1d59e3fc26624ad3ab /drivers/scsi/qla2xxx/qla_mbx.c | |
parent | d53b48d512ef477c939aba09c7e258b8dc331b6a (diff) |
[SCSI] qla2xxx: Export additional FCoE attributes for application support.
Cull and export VN_Port MAC address and VLAN_ID information on
supported FCoE ISPs.
Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com>
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
Diffstat (limited to 'drivers/scsi/qla2xxx/qla_mbx.c')
-rw-r--r-- | drivers/scsi/qla2xxx/qla_mbx.c | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/drivers/scsi/qla2xxx/qla_mbx.c b/drivers/scsi/qla2xxx/qla_mbx.c index 14584380ad26..dc5a1fe19210 100644 --- a/drivers/scsi/qla2xxx/qla_mbx.c +++ b/drivers/scsi/qla2xxx/qla_mbx.c | |||
@@ -931,6 +931,8 @@ qla2x00_get_adapter_id(scsi_qla_host_t *vha, uint16_t *id, uint8_t *al_pa, | |||
931 | mcp->mb[9] = vha->vp_idx; | 931 | mcp->mb[9] = vha->vp_idx; |
932 | mcp->out_mb = MBX_9|MBX_0; | 932 | mcp->out_mb = MBX_9|MBX_0; |
933 | mcp->in_mb = MBX_9|MBX_7|MBX_6|MBX_3|MBX_2|MBX_1|MBX_0; | 933 | mcp->in_mb = MBX_9|MBX_7|MBX_6|MBX_3|MBX_2|MBX_1|MBX_0; |
934 | if (IS_QLA81XX(vha->hw)) | ||
935 | mcp->in_mb |= MBX_13|MBX_12|MBX_11|MBX_10; | ||
934 | mcp->tov = MBX_TOV_SECONDS; | 936 | mcp->tov = MBX_TOV_SECONDS; |
935 | mcp->flags = 0; | 937 | mcp->flags = 0; |
936 | rval = qla2x00_mailbox_command(vha, mcp); | 938 | rval = qla2x00_mailbox_command(vha, mcp); |
@@ -952,9 +954,19 @@ qla2x00_get_adapter_id(scsi_qla_host_t *vha, uint16_t *id, uint8_t *al_pa, | |||
952 | DEBUG2_3_11(printk("qla2x00_get_adapter_id(%ld): failed=%x.\n", | 954 | DEBUG2_3_11(printk("qla2x00_get_adapter_id(%ld): failed=%x.\n", |
953 | vha->host_no, rval)); | 955 | vha->host_no, rval)); |
954 | } else { | 956 | } else { |
955 | /*EMPTY*/ | ||
956 | DEBUG11(printk("qla2x00_get_adapter_id(%ld): done.\n", | 957 | DEBUG11(printk("qla2x00_get_adapter_id(%ld): done.\n", |
957 | vha->host_no)); | 958 | vha->host_no)); |
959 | |||
960 | if (IS_QLA81XX(vha->hw)) { | ||
961 | vha->fcoe_vlan_id = mcp->mb[9] & 0xfff; | ||
962 | vha->fcoe_fcf_idx = mcp->mb[10]; | ||
963 | vha->fcoe_vn_port_mac[5] = mcp->mb[11] >> 8; | ||
964 | vha->fcoe_vn_port_mac[4] = mcp->mb[11] & 0xff; | ||
965 | vha->fcoe_vn_port_mac[3] = mcp->mb[12] >> 8; | ||
966 | vha->fcoe_vn_port_mac[2] = mcp->mb[12] & 0xff; | ||
967 | vha->fcoe_vn_port_mac[1] = mcp->mb[13] >> 8; | ||
968 | vha->fcoe_vn_port_mac[0] = mcp->mb[13] & 0xff; | ||
969 | } | ||
958 | } | 970 | } |
959 | 971 | ||
960 | return rval; | 972 | return rval; |