]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdePkg/Include/Protocol/Smbios.h
MdePkg: Add UEFI2.5 USB Function I/O protocol definitions
[mirror_edk2.git] / MdePkg / Include / Protocol / Smbios.h
index 2a8fafbce7b0a8fa986eb1f7d3c30d7addc44aac..0f79e419d99a5fe67ff643b1b83ecc63599ba42c 100644 (file)
@@ -13,8 +13,8 @@
   requiring an update to MajorVersion and MinorVersion.\r
   The SMBIOS protocol can only be called a TPL < TPL_NOTIFY.\r
 \r
-  Copyright (c) 2006 - 2008, Intel Corporation                                                         \r
-  All rights reserved. This program and the accompanying materials                          \r
+  Copyright (c) 2006 - 2011, 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
@@ -31,8 +31,8 @@
     { 0x3583ff6, 0xcb36, 0x4940, { 0x94, 0x7e, 0xb9, 0xb3, 0x9f, 0x4a, 0xfa, 0xf7 }}\r
     \r
 //\r
-// SMBIOS type macros which is according to SMBIOS specification.\r
-//    \r
+// SMBIOS type macros which is according to SMBIOS 2.7 specification.\r
+//\r
 #define EFI_SMBIOS_TYPE_BIOS_INFORMATION                    0\r
 #define EFI_SMBIOS_TYPE_SYSTEM_INFORMATION                  1\r
 #define EFI_SMBIOS_TYPE_BASEBOARD_INFORMATION               2\r
@@ -73,6 +73,9 @@
 #define EFI_SMBIOS_TYPE_MEMORY_CHANNEL                      37\r
 #define EFI_SMBIOS_TYPE_IPMI_DEVICE_INFORMATION             38\r
 #define EFI_SMBIOS_TYPE_SYSTEM_POWER_SUPPLY                 39\r
+#define EFI_SMBIOS_TYPE_ADDITIONAL_INFORMATION              40\r
+#define EFI_SMBIOS_TYPE_ONBOARD_DEVICES_EXTENDED_INFORMATION 41\r
+#define EFI_SMBIOS_TYPE_MANAGEMENT_CONTROLLER_HOST_INTERFACE 42\r
 #define EFI_SMBIOS_TYPE_INACTIVE                            126\r
 #define EFI_SMBIOS_TYPE_END_OF_TABLE                        127\r
 #define EFI_SMBIOS_OEM_BEGIN                                128\r
@@ -83,7 +86,7 @@
 /// the formatted portion of the structure. This method of returning string information eliminates the need for\r
 /// application software to deal with pointers embedded in the SMBIOS structure. Each string is terminated with a null\r
 /// (00h) BYTE and the set of strings is terminated with an additional null (00h) BYTE. When the formatted portion of\r
-/// a SMBIOS structure references a string, it does so by specifying a non-zero string number within the structures\r
+/// a SMBIOS structure references a string, it does so by specifying a non-zero string number within the structure's\r
 /// string-set. For example, if a string field contains 02h, it references the second string following the formatted portion\r
 /// of the SMBIOS structure. If a string field references no string, a null (0) is placed in that string field. If the\r
 /// formatted portion of the structure contains string-reference fields and all the string fields are set to 0 (no string\r
@@ -98,7 +101,7 @@ typedef UINT8  EFI_SMBIOS_STRING;
 typedef UINT8  EFI_SMBIOS_TYPE;\r
 \r
 ///\r
-/// Specifies the structures handle, a unique 16-bit number in the range 0 to 0FFFEh (for version\r
+/// Specifies the structure's handle, a unique 16-bit number in the range 0 to 0FFFEh (for version\r
 /// 2.0) or 0 to 0FEFFh (for version 2.1 and later). The handle can be used with the Get SMBIOS\r
 /// Structure function to retrieve a specific structure; the handle numbers are not required to be\r
 /// contiguous. For v2.1 and later, handle values in the range 0FF00h to 0FFFFh are reserved for\r
@@ -133,8 +136,8 @@ typedef struct _EFI_SMBIOS_PROTOCOL EFI_SMBIOS_PROTOCOL;
   \r
   @param[in]        This                The EFI_SMBIOS_PROTOCOL instance.\r
   @param[in]        ProducerHandle      The handle of the controller or driver associated with the SMBIOS information. NULL means no handle.\r
-  @param[in, out]   SmbiosHandle        On entry, if non-zero, the handle of the SMBIOS record. If zero, then a unique handle\r
-                                        will be assigned to the SMBIOS record. If the SMBIOS handle is already in use\r
+  @param[in, out]   SmbiosHandle        On entry, the handle of the SMBIOS record to add. If FFFEh, then a unique handle\r
+                                        will be assigned to the SMBIOS record. If the SMBIOS handle is already in use,\r
                                         EFI_ALREADY_STARTED is returned and the SMBIOS record is not updated.\r
   @param[in]        Record              The data for the fixed portion of the SMBIOS record. The format of the record is\r
                                         determined by EFI_SMBIOS_TABLE_HEADER.Type. The size of the formatted\r
@@ -167,7 +170,7 @@ EFI_STATUS
   \r
   @retval EFI_SUCCESS           SmbiosHandle had its StringNumber String updated.\r
   @retval EFI_INVALID_PARAMETER SmbiosHandle does not exist.\r
-  @retval EFI_UNSUPPORTED       String was not added since it's longer than 64 significant characters.\r
+  @retval EFI_UNSUPPORTED       String was not added because it is longer than the SMBIOS Table supports.\r
   @retval EFI_NOT_FOUND         The StringNumber.is not valid for this SMBIOS record.    \r
 **/\r
 typedef\r
@@ -205,8 +208,8 @@ EFI_STATUS
   \r
   @param[in]        This            The EFI_SMBIOS_PROTOCOL instance.\r
   @param[in, out]   SmbiosHandle    On entry, points to the previous handle of the SMBIOS record. On exit, points to the\r
-                                    next SMBIOS record handle. If it is zero on entry, then the first SMBIOS record\r
-                                    handle will be returned. If it returns zero on exit, then there are no more SMBIOS records.\r
+                                    next SMBIOS record handle. If it is FFFEh on entry, then the first SMBIOS record\r
+                                    handle will be returned. If it returns FFFEh on exit, then there are no more SMBIOS records.\r
   @param[in]        Type            On entry, it points to the type of the next SMBIOS record to return. If NULL, it\r
                                     indicates that the next record of any type will be returned. Type is not\r
                                     modified by the this function.\r