a9800beb32c1006bb21c8da39e0180ea440b7badGarrett D'Amore * CDDL HEADER START
a9800beb32c1006bb21c8da39e0180ea440b7badGarrett D'Amore * The contents of this file are subject to the terms of the
a9800beb32c1006bb21c8da39e0180ea440b7badGarrett D'Amore * Common Development and Distribution License (the "License").
a9800beb32c1006bb21c8da39e0180ea440b7badGarrett D'Amore * You may not use this file except in compliance with the License.
8f23e9fa8abcb5857661066b954e63400d589b65Hans Rosenfeld * You can obtain a copy of the license at
8f23e9fa8abcb5857661066b954e63400d589b65Hans Rosenfeld * http://www.opensource.org/licenses/cddl1.txt.
a9800beb32c1006bb21c8da39e0180ea440b7badGarrett D'Amore * See the License for the specific language governing permissions
a9800beb32c1006bb21c8da39e0180ea440b7badGarrett D'Amore * and limitations under the License.
a9800beb32c1006bb21c8da39e0180ea440b7badGarrett D'Amore * When distributing Covered Code, include this CDDL HEADER in each
a9800beb32c1006bb21c8da39e0180ea440b7badGarrett D'Amore * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
a9800beb32c1006bb21c8da39e0180ea440b7badGarrett D'Amore * If applicable, add the following below this CDDL HEADER, with the
a9800beb32c1006bb21c8da39e0180ea440b7badGarrett D'Amore * fields enclosed by brackets "[]" replaced with your own identifying
a9800beb32c1006bb21c8da39e0180ea440b7badGarrett D'Amore * information: Portions Copyright [yyyy] [name of copyright owner]
a9800beb32c1006bb21c8da39e0180ea440b7badGarrett D'Amore * CDDL HEADER END
8f23e9fa8abcb5857661066b954e63400d589b65Hans Rosenfeld * Copyright (c) 2004-2012 Emulex. All rights reserved.
a9800beb32c1006bb21c8da39e0180ea440b7badGarrett D'Amore * Use is subject to license terms.
a9800beb32c1006bb21c8da39e0180ea440b7badGarrett D'Amore/* Internal generic events */
a9800beb32c1006bb21c8da39e0180ea440b7badGarrett D'Amore/* External async fabric events */
a9800beb32c1006bb21c8da39e0180ea440b7badGarrett D'Amore/* Internal async events */
a9800beb32c1006bb21c8da39e0180ea440b7badGarrett D'Amore#define FCF_REASON_SEND_FAILED 6 /* status */
a9800beb32c1006bb21c8da39e0180ea440b7badGarrett D'Amore#define FCF_REASON_MBOX_FAILED 7 /* status */
8f23e9fa8abcb5857661066b954e63400d589b65Hans Rosenfeld#define FCF_REASON_OP_FAILED 13 /* attempts */
a9800beb32c1006bb21c8da39e0180ea440b7badGarrett D'Amore uint32_t rx_id; /* Used for unsol exchanges */
a9800beb32c1006bb21c8da39e0180ea440b7badGarrett D'Amore#define EMLXS_RPI_VPI 0x00000010 /* rpi_online set */
a9800beb32c1006bb21c8da39e0180ea440b7badGarrett D'Amore#define EMLXS_RPI_PAUSED 0x00000020 /* rpi_paused set */
a9800beb32c1006bb21c8da39e0180ea440b7badGarrett D'Amore uint32_t xri_count; /* Managed by XRIobj_t */
a9800beb32c1006bb21c8da39e0180ea440b7badGarrett D'Amore /* Node info */
a9800beb32c1006bb21c8da39e0180ea440b7badGarrett D'Amore#define EMLXS_VPI_VFI 0x00000010 /* vpi_online set */
a9800beb32c1006bb21c8da39e0180ea440b7badGarrett D'Amore#define EMLXS_VPI_VFI_LOGI 0x00000020 /* logi_count set */
8f23e9fa8abcb5857661066b954e63400d589b65Hans Rosenfeld RPIobj_t fabric_rpi; /* Reserved Fabric RPI object */
8f23e9fa8abcb5857661066b954e63400d589b65Hans Rosenfeld RPIobj_t *fabric_rpip; /* Fabric RPI pointer (&fabric_rpi) */
a9800beb32c1006bb21c8da39e0180ea440b7badGarrett D'Amore struct VFIobj *vfip; /* Managed by VFIobj_t */
a9800beb32c1006bb21c8da39e0180ea440b7badGarrett D'Amore uint32_t rpi_online; /* Managed by RPIobj_t */
a9800beb32c1006bb21c8da39e0180ea440b7badGarrett D'Amore uint32_t rpi_paused; /* Managed by RPIobj_t */
a9800beb32c1006bb21c8da39e0180ea440b7badGarrett D'Amore#define EMLXS_VFI_FCFI 0x00000010 /* vfi_online set */
8f23e9fa8abcb5857661066b954e63400d589b65Hans Rosenfeld SERV_PARM sparam; /* Last registered sparams */
8f23e9fa8abcb5857661066b954e63400d589b65Hans Rosenfeld struct FCFIobj *fcfp; /* Managed by FCFIobj_t */
8f23e9fa8abcb5857661066b954e63400d589b65Hans Rosenfeld uint32_t vpi_online; /* Managed by VPIobj_t */
8f23e9fa8abcb5857661066b954e63400d589b65Hans Rosenfeld uint32_t logi_count; /* Managed by VPIobj_t */
8f23e9fa8abcb5857661066b954e63400d589b65Hans Rosenfeld struct VPIobj *flogi_vpip; /* Managed by VPIobj_t */
a9800beb32c1006bb21c8da39e0180ea440b7badGarrett D'Amore#define EMLXS_FCFI_FCFTAB 0x00000010 /* fcfi_online set */
a9800beb32c1006bb21c8da39e0180ea440b7badGarrett D'Amore#define EMLXS_FCFI_SELECTED 0x00002000 /* in use */
a9800beb32c1006bb21c8da39e0180ea440b7badGarrett D'Amore /* struct VFTable vftab */
a9800beb32c1006bb21c8da39e0180ea440b7badGarrett D'Amore uint32_t vfi_online; /* Managed by VFIobj_t */
8f23e9fa8abcb5857661066b954e63400d589b65Hans Rosenfeld/* Common states */
8f23e9fa8abcb5857661066b954e63400d589b65Hans Rosenfeld/* FCOE states */
8f23e9fa8abcb5857661066b954e63400d589b65Hans Rosenfeld#define FCOE_FCFTAB_STATE_SHUTDOWN FCFTAB_STATE_SHUTDOWN
8f23e9fa8abcb5857661066b954e63400d589b65Hans Rosenfeld#define FCOE_FCFTAB_STATE_OFFLINE FCFTAB_STATE_OFFLINE
8f23e9fa8abcb5857661066b954e63400d589b65Hans Rosenfeld/* FC states */
8f23e9fa8abcb5857661066b954e63400d589b65Hans Rosenfeld#define FC_FCFTAB_STATE_SHUTDOWN FCFTAB_STATE_SHUTDOWN
8f23e9fa8abcb5857661066b954e63400d589b65Hans Rosenfeld#define FC_FCFTAB_STATE_OFFLINE FCFTAB_STATE_OFFLINE
8f23e9fa8abcb5857661066b954e63400d589b65Hans Rosenfeld/* Common flags */
8f23e9fa8abcb5857661066b954e63400d589b65Hans Rosenfeld/* FCOE flags */
8f23e9fa8abcb5857661066b954e63400d589b65Hans Rosenfeld#define EMLXS_FCOE_FCFTAB_OFFLINE_REQ 0x00000004
8f23e9fa8abcb5857661066b954e63400d589b65Hans Rosenfeld/* FC flags */
8f23e9fa8abcb5857661066b954e63400d589b65Hans Rosenfeld#define EMLXS_FC_FCFTAB_CFGLINK_REQ 0x00000002
8f23e9fa8abcb5857661066b954e63400d589b65Hans Rosenfeld#define EMLXS_FC_FCFTAB_OFFLINE_REQ 0x00000008
a9800beb32c1006bb21c8da39e0180ea440b7badGarrett D'Amore uint32_t fcfi_online; /* Managed by FCFIobj_t */
a9800beb32c1006bb21c8da39e0180ea440b7badGarrett D'Amore#endif /* _EMLXS_FCF_H */