/** @file\r
EFI Network Interface Identifier Protocol\r
\r
- Copyright (c) 2006 - 2008, Intel Corporation \r
+ Copyright (c) 2006 - 2009, Intel Corporation \r
All rights reserved. This program and the accompanying materials \r
are licensed and made available under the terms and conditions of the BSD License \r
which accompanies this distribution. The full text of the license may be found at \r
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, \r
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. \r
\r
+ @par Revision Reference: \r
+ This Protocol is introduced in EFI Specification 1.10\r
\r
**/\r
\r
/// \r
typedef EFI_NETWORK_INTERFACE_IDENTIFIER_PROTOCOL EFI_NETWORK_INTERFACE_IDENTIFIER_INTERFACE;\r
\r
-typedef enum {\r
- EfiNetworkInterfaceUndi = 1\r
-} EFI_NETWORK_PROTOCOL_TYPE;\r
-\r
-/** \r
- @par Protocol Description:\r
- An optional protocol that is used to describe details about the software \r
- layer that is used to produce the Simple Network Protocol. \r
-\r
- @param Revision\r
- The revision of the EFI_NETWORK_INTERFACE_IDENTIFIER protocol.\r
-\r
- @param Id\r
- Address of the first byte of the identifying structure for this network \r
- interface. This is only valid when the network interface is started \r
- (see Start()). When the network interface is not started, this field is set to zero.\r
-\r
- @param ImageAddr\r
- Address of the unrelocated network interface image.\r
-\r
- @param ImageSize\r
- Size of unrelocated network interface image.\r
-\r
- @param StringId\r
- A four-character ASCII string that is sent in the class identifier field of\r
- option 60 in DHCP. For a Type of EfiNetworkInterfaceUndi, this field is UNDI.\r
-\r
- @param Type\r
- Network interface type. This will be set to one of the values \r
- in EFI_NETWORK_INTERFACE_TYPE.\r
-\r
- @param MajorVer\r
- Major version number.\r
-\r
- @param MinorVer\r
- Minor version number.\r
-\r
- @param Ipv6Supported\r
- TRUE if the network interface supports IPv6; otherwise FALSE.\r
-\r
- @param IfNum\r
- The network interface number that is being identified by this Network \r
- Interface Identifier Protocol. This field must be less than or equal \r
- to the IFcnt field in the !PXE structure.\r
-\r
-**/\r
+///\r
+/// An optional protocol that is used to describe details about the software \r
+/// layer that is used to produce the Simple Network Protocol. \r
+///\r
struct _EFI_NETWORK_INTERFACE_IDENTIFIER_PROTOCOL {\r
+ UINT64 Revision; ///< The revision of the EFI_NETWORK_INTERFACE_IDENTIFIER protocol.\r
+ UINT64 Id; ///< Address of the first byte of the identifying structure for this network \r
+ ///< interface. This is only valid when the network interface is started \r
+ ///< (see Start()). When the network interface is not started, this field is set to zero.\r
+ UINT64 ImageAddr; ///< Address of the first byte of the identifying structure for this\r
+ ///< network interface. This is set to zero if there is no structure.\r
+ UINT32 ImageSize; ///< Size of unrelocated network interface image.\r
+ CHAR8 StringId[4];///< A four-character ASCII string that is sent in the class identifier field of\r
+ ///< option 60 in DHCP. For a Type of EfiNetworkInterfaceUndi, this field is UNDI.\r
+ UINT8 Type; ///< Network interface type. This will be set to one of the values \r
+ ///< in EFI_NETWORK_INTERFACE_TYPE.\r
+ UINT8 MajorVer; ///< Major version number.\r
+ UINT8 MinorVer; ///< Minor version number.\r
+ BOOLEAN Ipv6Supported; ///< TRUE if the network interface supports IPv6; otherwise FALSE.\r
+ UINT8 IfNum; ///< The network interface number that is being identified by this Network \r
+ ///< Interface Identifier Protocol. This field must be less than or equal \r
+ ///< to the IFcnt field in the !PXE structure.\r
\r
- UINT64 Revision;\r
- //\r
- // Revision of the network interface identifier protocol interface.\r
- //\r
- UINT64 ID;\r
- //\r
- // Address of the first byte of the identifying structure for this\r
- // network interface. This is set to zero if there is no structure.\r
- //\r
- // For PXE/UNDI this is the first byte of the !PXE structure.\r
- //\r
- UINT64 ImageAddr;\r
- //\r
- // Address of the UNrelocated driver/ROM image. This is set\r
- // to zero if there is no driver/ROM image.\r
- //\r
- // For 16-bit UNDI, this is the first byte of the option ROM in\r
- // upper memory.\r
- //\r
- // For 32/64-bit S/W UNDI, this is the first byte of the EFI ROM\r
- // image.\r
- //\r
- // For H/W UNDI, this is set to zero.\r
- //\r
- UINT32 ImageSize;\r
- //\r
- // Size of the UNrelocated driver/ROM image of this network interface.\r
- // This is set to zero if there is no driver/ROM image.\r
- //\r
- CHAR8 StringId[4];\r
- //\r
- // 4 char ASCII string to go in class identifier (option 60) in DHCP\r
- // and Boot Server discover packets.\r
- // For EfiNetworkInterfaceUndi this field is "UNDI".\r
- // For EfiNetworkInterfaceSnp this field is "SNPN".\r
- //\r
- UINT8 Type;\r
- UINT8 MajorVer;\r
- UINT8 MinorVer;\r
- //\r
- // Information to be placed into the PXE DHCP and Discover packets.\r
- // This is the network interface type and version number that will\r
- // be placed into DHCP option 94 (client network interface identifier).\r
- //\r
- BOOLEAN Ipv6Supported;\r
- UINT8 IfNum; // interface number to be used with pxeid structure\r
};\r
\r
+///\r
+///*******************************************************\r
+/// EFI_NETWORK_INTERFACE_TYPE\r
+///*******************************************************\r
+///\r
+typedef enum {\r
+ EfiNetworkInterfaceUndi = 1\r
+} EFI_NETWORK_INTERFACE_TYPE;\r
+\r
extern EFI_GUID gEfiNetworkInterfaceIdentifierProtocolGuid;\r
extern EFI_GUID gEfiNetworkInterfaceIdentifierProtocolGuid_31;\r
\r
-#endif // _EFI_NII_H\r
+#endif\r