[SCSI] bfa: Fix to copy fpma MAC when requested by user space application.

Copy fpma MAC when requested by user space application.  Added FPMA
mac address to the lport attributes structure.

Signed-off-by: Krishna Gudipati <kgudipat@brocade.com>
Signed-off-by: James Bottomley <James.Bottomley@suse.de>
This commit is contained in:
Krishna Gudipati 2010-03-05 19:35:33 -08:00 committed by James Bottomley
parent 72041ed8fc
commit 86e32dabba
4 changed files with 20 additions and 4 deletions

View file

@ -936,8 +936,13 @@ bfa_fcs_port_get_attr(struct bfa_fcs_port_s *port,
bfa_fcs_port_get_fabric_ipaddr(port),
BFA_FCS_FABRIC_IPADDR_SZ);
if (port->vport != NULL)
if (port->vport != NULL) {
port_attr->port_type = BFA_PPORT_TYPE_VPORT;
port_attr->fpma_mac =
bfa_lps_get_lp_mac(port->vport->lps);
} else
port_attr->fpma_mac =
bfa_lps_get_lp_mac(port->fabric->lps);
} else {
port_attr->port_type = BFA_PPORT_TYPE_UNKNOWN;

View file

@ -613,9 +613,9 @@ bfa_lps_get_max_vport(struct bfa_s *bfa)
bfa_get_attr(bfa, &ioc_attr);
if (ioc_attr.pci_attr.device_id == BFA_PCI_DEVICE_ID_CT)
return (BFA_LPS_MAX_VPORTS_SUPP_CT);
return BFA_LPS_MAX_VPORTS_SUPP_CT;
else
return (BFA_LPS_MAX_VPORTS_SUPP_CB);
return BFA_LPS_MAX_VPORTS_SUPP_CB;
}
/**
@ -837,6 +837,14 @@ bfa_lps_get_lsrjt_expl(struct bfa_lps_s *lps)
return lps->lsrjt_expl;
}
/**
* Return fpma/spma MAC for lport
*/
struct mac_s
bfa_lps_get_lp_mac(struct bfa_lps_s *lps)
{
return lps->lp_mac;
}
/**
* LPS firmware message class handler.

View file

@ -316,6 +316,7 @@ wwn_t bfa_lps_get_peer_pwwn(struct bfa_lps_s *lps);
wwn_t bfa_lps_get_peer_nwwn(struct bfa_lps_s *lps);
u8 bfa_lps_get_lsrjt_rsn(struct bfa_lps_s *lps);
u8 bfa_lps_get_lsrjt_expl(struct bfa_lps_s *lps);
mac_t bfa_lps_get_lp_mac(struct bfa_lps_s *lps);
void bfa_cb_lps_flogi_comp(void *bfad, void *uarg, bfa_status_t status);
void bfa_cb_lps_flogo_comp(void *bfad, void *uarg);
void bfa_cb_lps_fdisc_comp(void *bfad, void *uarg, bfa_status_t status);

View file

@ -185,6 +185,8 @@ struct bfa_port_attr_s {
wwn_t fabric_name; /* attached switch's nwwn */
u8 fabric_ip_addr[BFA_FCS_FABRIC_IPADDR_SZ]; /* attached
* fabric's ip addr */
struct mac_s fpma_mac; /* Lport's FPMA Mac address */
u16 authfail; /* auth failed state */
};
/**
@ -235,7 +237,7 @@ struct bfa_port_aen_data_s {
enum bfa_ioc_type_e ioc_type;
wwn_t pwwn; /* WWN of the physical port */
wwn_t fwwn; /* WWN of the fabric port */
mac_t mac; /* MAC addres of the ethernet port,
mac_t mac; /* MAC address of the ethernet port,
* applicable to CNA port only */
int phy_port_num; /*! For SFP related events */
enum bfa_port_aen_sfp_pom level; /* Only transitions will