/* * VF states
*/ enum bfa_vf_state {
BFA_VF_UNINIT = 0, /* fabric is not yet initialized */
BFA_VF_LINK_DOWN = 1, /* link is down */
BFA_VF_FLOGI = 2, /* flogi is in progress */
BFA_VF_AUTH = 3, /* authentication in progress */
BFA_VF_NOFABRIC = 4, /* fabric is not present */
BFA_VF_ONLINE = 5, /* login to fabric is complete */
BFA_VF_EVFP = 6, /* EVFP is in progress */
BFA_VF_ISOLATED = 7, /* port isolated due to vf_id mismatch */
};
/* * VF statistics
*/ struct bfa_vf_stats_s {
u32 flogi_sent; /* Num FLOGIs sent */
u32 flogi_rsp_err; /* FLOGI response errors */
u32 flogi_acc_err; /* FLOGI accept errors */
u32 flogi_accepts; /* FLOGI accepts received */
u32 flogi_rejects; /* FLOGI rejects received */
u32 flogi_unknown_rsp; /* Unknown responses for FLOGI */
u32 flogi_alloc_wait; /* Allocation waits prior to sending FLOGI */
u32 flogi_rcvd; /* FLOGIs received */
u32 flogi_rejected; /* Incoming FLOGIs rejected */
u32 fabric_onlines; /* Internal fabric online notification sent
* to other modules */
u32 fabric_offlines; /* Internal fabric offline notification sent
* to other modules */
u32 resvd; /* padding for 64 bit alignment */
};
/* * VF attributes returned in queries
*/ struct bfa_vf_attr_s { enum bfa_vf_state state; /* VF state */
u32 rsvd;
wwn_t fabric_name; /* fabric name */
};
/* * symbolic names for base port/virtual port
*/ #define BFA_SYMNAME_MAXLEN 128 /* 128 bytes */ struct bfa_lport_symname_s { char symname[BFA_SYMNAME_MAXLEN];
};
/* * Roles of FCS port: * - FCP IM and FCP TM roles cannot be enabled together for a FCS port * - Create multiple ports if both IM and TM functions required. * - Atleast one role must be specified.
*/ enum bfa_lport_role {
BFA_LPORT_ROLE_FCP_IM = 0x01, /* FCP initiator role */
BFA_LPORT_ROLE_FCP_MAX = BFA_LPORT_ROLE_FCP_IM,
};
/* * FCS port configuration.
*/ struct bfa_lport_cfg_s {
wwn_t pwwn; /* port wwn */
wwn_t nwwn; /* node wwn */ struct bfa_lport_symname_s sym_name; /* vm port symbolic name */ struct bfa_lport_symname_s node_sym_name; /* Node symbolic name */ enum bfa_lport_role roles; /* FCS port roles */
u32 rsvd;
bfa_boolean_t preboot_vp; /* vport created from PBC */
u8 tag[16]; /* opaque tag from application */
u8 padding[4];
};
/* * FCS port states
*/ enum bfa_lport_state {
BFA_LPORT_UNINIT = 0, /* PORT is not yet initialized */
BFA_LPORT_FDISC = 1, /* FDISC is in progress */
BFA_LPORT_ONLINE = 2, /* login to fabric is complete */
BFA_LPORT_OFFLINE = 3, /* No login to fabric */
};
u32 logo_alloc_wait;/* logo req (fcxp) alloc wait */
u32 logo_sent; /* logo sent */
u32 logo_accepts; /* logo accepts */
u32 logo_rejects; /* logo rejects */
u32 logo_rsp_err; /* logo rsp errors */
u32 logo_unknown_rsp; /* logo rsp unknown errors */
u32 fab_no_npiv; /* fabric does not support npiv */
u32 fab_offline; /* offline events from fab SM */
u32 fab_online; /* online events from fab SM */
u32 fab_cleanup; /* cleanup request from fab SM */
u32 rsvd;
};
/* * BFA vport attribute returned in queries
*/ struct bfa_vport_attr_s { struct bfa_lport_attr_s port_attr; /* base class (port) attributes */ enum bfa_vport_state vport_state; /* vport state */
u32 rsvd;
};
/* * FCS remote port states
*/ enum bfa_rport_state {
BFA_RPORT_UNINIT = 0, /* PORT is not yet initialized */
BFA_RPORT_OFFLINE = 1, /* rport is offline */
BFA_RPORT_PLOGI = 2, /* PLOGI to rport is in progress */
BFA_RPORT_ONLINE = 3, /* login to rport is complete */
BFA_RPORT_PLOGI_RETRY = 4, /* retrying login to rport */
BFA_RPORT_NSQUERY = 5, /* nameserver query */
BFA_RPORT_ADISC = 6, /* ADISC authentication */
BFA_RPORT_LOGO = 7, /* logging out with rport */
BFA_RPORT_LOGORCV = 8, /* handling LOGO from rport */
BFA_RPORT_NSDISC = 9, /* re-discover rport */
};
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.