]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdePkg/Include/Protocol/AdapterInformation.h
MdePkg: Replace BSD License with BSD+Patent License
[mirror_edk2.git] / MdePkg / Include / Protocol / AdapterInformation.h
index 63b560a106bfc7797a1c225e691dd1af2db58895..3fd0b9a4f07984c5816e5edbb500930cedf09f5b 100644 (file)
@@ -3,14 +3,8 @@
   The EFI Adapter Information Protocol is used to dynamically and quickly discover\r
   or set device information for an adapter.\r
 \r
-  Copyright (c) 2014, Intel Corporation. All rights reserved.<BR>\r
-  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
-  http://opensource.org/licenses/bsd-license.php\r
-\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
+  Copyright (c) 2014 - 2018, Intel Corporation. All rights reserved.<BR>\r
+  SPDX-License-Identifier: BSD-2-Clause-Patent\r
 \r
   @par Revision Reference:\r
   This Protocol is introduced in UEFI Specification 2.4\r
     0x114da5ef, 0x2cf1, 0x4e12, {0x9b, 0xbb, 0xc4, 0x70, 0xb5, 0x52, 0x5, 0xd9 } \\r
   }\r
 \r
+#define EFI_ADAPTER_INFO_UNDI_IPV6_SUPPORT_GUID \\r
+  { \\r
+    0x4bd56be3, 0x4975, 0x4d8a, {0xa0, 0xad, 0xc4, 0x91, 0x20, 0x4b, 0x5d, 0x4d} \\r
+  }\r
+\r
+#define EFI_ADAPTER_INFO_MEDIA_TYPE_GUID \\r
+  { \\r
+    0x8484472f, 0x71ec, 0x411a, { 0xb3, 0x9c, 0x62, 0xcd, 0x94, 0xd9, 0x91, 0x6e } \\r
+  }\r
+\r
+\r
 typedef struct _EFI_ADAPTER_INFORMATION_PROTOCOL EFI_ADAPTER_INFORMATION_PROTOCOL;\r
 \r
 ///\r
@@ -48,13 +53,26 @@ typedef struct _EFI_ADAPTER_INFORMATION_PROTOCOL EFI_ADAPTER_INFORMATION_PROTOCO
 ///\r
 typedef struct {\r
   ///\r
-  /// Returns the current media state status. MediaState can have any of the following values: \r
-  /// EFI_SUCCESS: There is media attached to the network adapter. EFI_NOT_READY: This detects a bounced state. \r
-  /// There was media attached to the network adapter, but it was removed and reattached. EFI_NO_MEDIA: There is \r
+  /// Returns the current media state status. MediaState can have any of the following values:\r
+  /// EFI_SUCCESS: There is media attached to the network adapter. EFI_NOT_READY: This detects a bounced state.\r
+  /// There was media attached to the network adapter, but it was removed and reattached. EFI_NO_MEDIA: There is\r
   /// not any media attached to the network.\r
   ///\r
   EFI_STATUS                    MediaState;\r
-}EFI_ADAPTER_INFO_MEDIA_STATE;\r
+} EFI_ADAPTER_INFO_MEDIA_STATE;\r
+\r
+///\r
+/// EFI_ADAPTER_INFO_MEDIA_TYPE\r
+///\r
+typedef struct {\r
+  ///\r
+  /// Indicates the current media type. MediaType can have any of the following values:\r
+  /// 1: Ethernet Network Adapter\r
+  /// 2: Ethernet Wireless Network Adapter\r
+  /// 3~255: Reserved\r
+  ///\r
+  UINT8 MediaType;\r
+} EFI_ADAPTER_INFO_MEDIA_TYPE;\r
 \r
 ///\r
 /// EFI_ADAPTER_INFO_NETWORK_BOOT\r
@@ -96,7 +114,7 @@ typedef struct {
   /// TRUE if the adapter is currently configured to boot from FCoE targets.\r
   ///\r
   BOOLEAN                       FCoeBoot;\r
-}EFI_ADAPTER_INFO_NETWORK_BOOT;\r
+} EFI_ADAPTER_INFO_NETWORK_BOOT;\r
 \r
 ///\r
 /// EFI_ADAPTER_INFO_SAN_MAC_ADDRESS\r
@@ -107,14 +125,24 @@ typedef struct {
   /// networking and Fibre-Channel Over Ethernet (FCOE), this conveys the FCOE SAN MAC address from the adapter.\r
   ///\r
   EFI_MAC_ADDRESS                    SanMacAddress;\r
-}EFI_ADAPTER_INFO_SAN_MAC_ADDRESS;\r
+} EFI_ADAPTER_INFO_SAN_MAC_ADDRESS;\r
+\r
+///\r
+/// EFI_ADAPTER_INFO_UNDI_IPV6_SUPPORT\r
+///\r
+typedef struct {\r
+  ///\r
+  /// Returns capability of UNDI to support IPv6 traffic.\r
+  ///\r
+  BOOLEAN                            Ipv6Support;\r
+} EFI_ADAPTER_INFO_UNDI_IPV6_SUPPORT;\r
 \r
 /**\r
   Returns the current state information for the adapter.\r
 \r
   This function returns information of type InformationType from the adapter.\r
   If an adapter does not support the requested informational type, then\r
-  EFI_UNSUPPORTED is returned. \r
+  EFI_UNSUPPORTED is returned.\r
 \r
   @param[in]  This                   A pointer to the EFI_ADAPTER_INFORMATION_PROTOCOL instance.\r
   @param[in]  InformationType        A pointer to an EFI_GUID that defines the contents of InformationBlock.\r
@@ -126,8 +154,8 @@ typedef struct {
   @retval EFI_UNSUPPORTED            The InformationType is not known.\r
   @retval EFI_DEVICE_ERROR           The device reported an error.\r
   @retval EFI_OUT_OF_RESOURCES       The request could not be completed due to a lack of resources.\r
-  @retval EFI_INVALID_PARAMETER      This is NULL. \r
-  @retval EFI_INVALID_PARAMETER      InformationBlock is NULL. \r
+  @retval EFI_INVALID_PARAMETER      This is NULL.\r
+  @retval EFI_INVALID_PARAMETER      InformationBlock is NULL.\r
   @retval EFI_INVALID_PARAMETER      InformationBlockSize is NULL.\r
 \r
 **/\r
@@ -221,4 +249,6 @@ extern EFI_GUID gEfiAdapterInfoNetworkBootGuid;
 \r
 extern EFI_GUID gEfiAdapterInfoSanMacAddressGuid;\r
 \r
+extern EFI_GUID gEfiAdapterInfoUndiIpv6SupportGuid;\r
+\r
 #endif\r