]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdePkg/Include/Uefi/UefiSpec.h
MdePkg/ProcessorBind: add defines for page allocation granularity
[mirror_edk2.git] / MdePkg / Include / Uefi / UefiSpec.h
index 14ffc60308099e2bc3504c3dabbc8312e617f312..57cb4e804f703e7e21c1cf6ca1b23b3aa65386ab 100644 (file)
@@ -1,8 +1,8 @@
 /** @file\r
   Include file that supports UEFI.\r
 \r
-  This include file must contain things defined in the UEFI 2.5 specification.\r
-  If a code construct is defined in the UEFI 2.5 specification it must be included\r
+  This include file must contain things defined in the UEFI 2.6 specification.\r
+  If a code construct is defined in the UEFI 2.6 specification it must be included\r
   by this include file.\r
 \r
 Copyright (c) 2006 - 2016, Intel Corporation. All rights reserved.<BR>\r
@@ -136,8 +136,7 @@ typedef struct {
                                 MemoryType values in the range 0x70000000..0x7FFFFFFF\r
                                 are reserved for OEM use. MemoryType values in the range\r
                                 0x80000000..0xFFFFFFFF are reserved for use by UEFI OS loaders\r
-                                that are provided by operating system vendors. The only illegal\r
-                                memory type values are those in the range EfiMaxMemoryType..0x6FFFFFFF.\r
+                                that are provided by operating system vendors.\r
   @param[in]       Pages        The number of contiguous 4 KB pages to allocate.\r
   @param[in, out]  Memory       The pointer to a physical address. On input, the way in which the address is\r
                                 used depends on the value of Type.\r
@@ -148,7 +147,7 @@ typedef struct {
                                 2) MemoryType is in the range\r
                                 EfiMaxMemoryType..0x6FFFFFFF.\r
                                 3) Memory is NULL.\r
-                                4) MemoryType was EfiPersistentMemory.\r
+                                4) MemoryType is EfiPersistentMemory.\r
   @retval EFI_OUT_OF_RESOURCES  The pages could not be allocated.\r
   @retval EFI_NOT_FOUND         The requested pages could not be found.\r
 \r
@@ -223,16 +222,16 @@ EFI_STATUS
                                 MemoryType values in the range 0x70000000..0x7FFFFFFF\r
                                 are reserved for OEM use. MemoryType values in the range\r
                                 0x80000000..0xFFFFFFFF are reserved for use by UEFI OS loaders\r
-                                that are provided by operating system vendors. The only illegal\r
-                                memory type values are those in the range EfiMaxMemoryType..0x6FFFFFFF.\r
+                                that are provided by operating system vendors.\r
   @param[in]   Size             The number of bytes to allocate from the pool.\r
   @param[out]  Buffer           A pointer to a pointer to the allocated buffer if the call succeeds;\r
                                 undefined otherwise.\r
 \r
   @retval EFI_SUCCESS           The requested number of bytes was allocated.\r
   @retval EFI_OUT_OF_RESOURCES  The pool requested could not be allocated.\r
-  @retval EFI_INVALID_PARAMETER PoolType was invalid or Buffer is NULL.\r
-                                PoolType was EfiPersistentMemory.\r
+  @retval EFI_INVALID_PARAMETER Buffer is NULL.\r
+                                PoolType is in the range EfiMaxMemoryType..0x6FFFFFFF.\r
+                                PoolType is EfiPersistentMemory.\r
 \r
 **/\r
 typedef\r
@@ -1005,11 +1004,15 @@ EFI_STATUS
 \r
   @param[in]  ResetType         The type of reset to perform.\r
   @param[in]  ResetStatus       The status code for the reset.\r
-  @param[in]  DataSize          The size, in bytes, of WatchdogData.\r
+  @param[in]  DataSize          The size, in bytes, of ResetData.\r
   @param[in]  ResetData         For a ResetType of EfiResetCold, EfiResetWarm, or\r
                                 EfiResetShutdown the data buffer starts with a Null-terminated\r
                                 string, optionally followed by additional binary data.\r
-\r
+                                The string is a description that the caller may use to further\r
+                                indicate the reason for the system reset. ResetData is only\r
+                                valid if ResetStatus is something other than EFI_SUCCESS\r
+                                unless the ResetType is EfiResetPlatformSpecific\r
+                                where a minimum amount of ResetData is always required.\r
 **/\r
 typedef\r
 VOID\r
@@ -1757,6 +1760,7 @@ EFI_STATUS
 // EFI Runtime Services Table\r
 //\r
 #define EFI_SYSTEM_TABLE_SIGNATURE      SIGNATURE_64 ('I','B','I',' ','S','Y','S','T')\r
+#define EFI_2_60_SYSTEM_TABLE_REVISION  ((2 << 16) | (60))\r
 #define EFI_2_50_SYSTEM_TABLE_REVISION  ((2 << 16) | (50))\r
 #define EFI_2_40_SYSTEM_TABLE_REVISION  ((2 << 16) | (40))\r
 #define EFI_2_31_SYSTEM_TABLE_REVISION  ((2 << 16) | (31))\r
@@ -1766,7 +1770,7 @@ EFI_STATUS
 #define EFI_2_00_SYSTEM_TABLE_REVISION  ((2 << 16) | (00))\r
 #define EFI_1_10_SYSTEM_TABLE_REVISION  ((1 << 16) | (10))\r
 #define EFI_1_02_SYSTEM_TABLE_REVISION  ((1 << 16) | (02))\r
-#define EFI_SYSTEM_TABLE_REVISION       EFI_2_50_SYSTEM_TABLE_REVISION\r
+#define EFI_SYSTEM_TABLE_REVISION       EFI_2_60_SYSTEM_TABLE_REVISION\r
 #define EFI_SPECIFICATION_VERSION       EFI_SYSTEM_TABLE_REVISION\r
 \r
 #define EFI_RUNTIME_SERVICES_SIGNATURE  SIGNATURE_64 ('R','U','N','T','S','E','R','V')\r