b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * CDDL HEADER START
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * The contents of this file are subject to the terms of the
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * Common Development and Distribution License (the "License").
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * You may not use this file except in compliance with the License.
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * or http://www.opensolaris.org/os/licensing.
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * See the License for the specific language governing permissions
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * and limitations under the License.
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * When distributing Covered Code, include this CDDL HEADER in each
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * If applicable, add the following below this CDDL HEADER, with the
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * fields enclosed by brackets "[]" replaced with your own identifying
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * information: Portions Copyright [yyyy] [name of copyright owner]
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * CDDL HEADER END
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * Sizes of various objects in FIP headers
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * EoIB Pkeys and Qkeys
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * EoIB Advertise and Solicit MCG GUIDs
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan#define EIB_GUID_ADVERTISE_PREFIX 0xFF12E01B00060000
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan#define EIB_GUID_SOLICIT_PREFIX 0xFF12E01B00070000
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * FIP_Protocol_Version
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * Basic FIP Header: Opcodes and subcodes for EoIB
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * Basic FIP Header: Flags relevant to EoIB
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * FIP_Basic_Header
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * FIP_Descriptor_Infiniband_Address
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * FIP Solicitation Control Message:
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * FIP_Protocol_Version
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * FIP_Basic_Header
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * FIP_Descriptor_Infiniband_Address
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * FIP_Descriptor_EoIB_Gateway_Information
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan#define FIP_GWI_HOST_ADMIND_VNICS_MASK 0x80
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * FIP_Descriptor_Gateway_Identifier
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * FIP_Descriptor_Keep_Alive_Parameters
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * FIP Advertise Control Message:
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * FIP_Protocol_Version
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * FIP_Basic_Header
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * FIP_Descriptor_Infiniband_Address
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * FIP_Descriptor_EoIB_Gateway_Information
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * FIP_Descriptor_Gateway_Identifier
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * FIP_Descriptor_Keep_Alive_Parameters
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * FIP_Descriptor_vNIC_Login
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan uint8_t vl_gw_mgid_prefix[FIP_MGID_PREFIX_LEN];
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * Flags, masks and error codes for FIP_Descriptor_vNIC_Login
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * FIP_Descriptor_Partition
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * FIP Login Control Message:
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * FIP_Protocol_Version
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * FIP_Basic_Header
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * FIP_Descriptor_Infiniband_Address
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * FIP_Descriptor_vNIC_Login
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * FIP Login ACK Control Message:
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * FIP_Protocol_Version
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * FIP_Basic_Header
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * FIP_Descriptor_Infiniband_Address
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * FIP_Descriptor_vNIC_Login
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * FIP_Descriptor_Partition
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * FIP_Descriptor_vNIC_Identity
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * FIP Keep Alive Control Message:
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * FIP_Protocol_Version
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * FIP_Basic_Header
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * FIP_Descriptor_vNIC_Identity
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan fip_desc_vnic_identity_t ka_vnic_identity;
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * FIP_vHUB_Table_Entry
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan#define FIP_VHUB_TABLE_ENTRY_SZ (sizeof (fip_vhub_table_entry_t))
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan#define FIP_VHUB_TABLE_ENTRY_WORDS (FIP_VHUB_TABLE_ENTRY_SZ >> 2)
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * FIP_Descriptor_vHUB_Update
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * FIP_Descriptor_vHUB_Table
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * FIP_vHUB_Table_Entry
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * FIP_vHUB_Table_Entry
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * uint32_t Checksum
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan#define FIP_DESC_VHUB_TABLE_SZ (sizeof (fip_desc_vhub_table_t))
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan#define FIP_DESC_VHUB_TABLE_WORDS (FIP_DESC_VHUB_TABLE_SZ >> 2)
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * FIP vHUB Table Message:
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * FIP_Protocol_Version
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * FIP_Basic_Header
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * FIP_Descriptor_vHUB_Table
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * FIP vHUB Update Message:
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * FIP_Protocol_Version
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * FIP_Basic_Header
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * FIP_Descriptor_vHUB_Update
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan * Just a generic container to handle either type of VHUB
b494511a9cf72b1fc4eb13a0e593f55c624ab829Venki Rajagopalan#endif /* _SYS_IB_EOIB_FIP_H */