]> git.proxmox.com Git - mirror_edk2.git/blobdiff - IntelFrameworkPkg/Include/Guid/SmramMemoryReserve.h
Refine include file of GUID HOB for SMRAM memory reserve, according to review comments.
[mirror_edk2.git] / IntelFrameworkPkg / Include / Guid / SmramMemoryReserve.h
index fcdcf1d83cbd0d982c8e93d92bae4db21fca3787..ca54e69cc424e1fb43c5a435ff736550380966e7 100644 (file)
@@ -1,5 +1,12 @@
 /** @file\r
-  GUID for use in reserving SMRAM regions.\r
+  Definition of GUIDed HOB for reserving SMRAM regions.\r
+\r
+  This file defines:\r
+  * the GUID used to identify the GUID HOB for reserving SMRAM regions.\r
+  * the data structure of SMRAM descriptor to describe SMRAM candidate regions\r
+  * values of state of SMRAM candidate regions\r
+  * the GUID specific data structure of HOB for reserving SMRAM regions.\r
+  This GUIDed HOB can be used to convey the existence of the T-SEG reservation and H-SEG usage\r
 \r
   Copyright (c) 2007 - 2009, Intel Corporation\r
   All rights reserved. This program and the accompanying materials\r
@@ -10,8 +17,6 @@
   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
-  Module Name:  SmramMemoryReserve.h\r
-\r
   @par Revision Reference:\r
   GUIDs defined in SmmCis spec version 0.9\r
 \r
     0x6dadf1d1, 0xd4cc, 0x4910, {0xbb, 0x6e, 0x82, 0xb1, 0xfd, 0x80, 0xff, 0x3d } \\r
   }\r
 \r
-//\r
-// *******************************************************\r
-//  EFI_SMRAM_DESCRIPTOR\r
-// *******************************************************\r
-//\r
+///\r
+/// Describes the candidate regions for SMRAM that are\r
+/// supported by this platform.\r
+///\r
 typedef struct {\r
-  EFI_PHYSICAL_ADDRESS  PhysicalStart;  ///< Phsyical location in DRAM\r
-  EFI_PHYSICAL_ADDRESS  CpuStart;       ///< Address CPU uses to access the SMI handler\r
-  // May or may not match PhysicalStart\r
-  //\r
-  UINT64                PhysicalSize;\r
-  UINT64                RegionState;\r
+  EFI_PHYSICAL_ADDRESS  PhysicalStart;  ///< Designates the physical address of the SMRAM in memory.\r
+  EFI_PHYSICAL_ADDRESS  CpuStart;       ///< Designates the address of the SMRAM, as seen by software executing on the processors. \r
+  UINT64                PhysicalSize;   ///< Describes the number of bytes in the SMRAM region.\r
+  UINT64                RegionState;    ///< Describes the accessibility attributes of the SMRAM.\r
 } EFI_SMRAM_DESCRIPTOR;\r
 \r
 //\r
-// *******************************************************\r
-//  EFI_SMRAM_STATE\r
-// *******************************************************\r
+// Definition of SMRAM states, used as value for EFI_SMRAM_DESCRIPTOR.RegionState.\r
 //\r
 #define EFI_SMRAM_OPEN                0x00000001\r
 #define EFI_SMRAM_CLOSED              0x00000002\r
 #define EFI_SMRAM_LOCKED              0x00000004\r
 #define EFI_CACHEABLE                 0x00000008\r
 #define EFI_ALLOCATED                 0x00000010\r
-#define EFI_NEEDS_TESTING             0x00000020\r
-#define EFI_NEEDS_ECC_INITIALIZATION  0x00000040\r
 \r
-//\r
-// *******************************************************\r
-//  EFI_SMRAM_HOB_DESCRIPTOR_BLOCK\r
-// *******************************************************\r
-//\r
+///\r
+/// GUID specific data structure of HOB for reserving SMRAM regions.\r
+///\r
 typedef struct {\r
+  ///\r
+  /// Designates the number of possible regions in the system\r
+  /// that can be usable for SMRAM. \r
+  ///\r
   UINTN                 NumberOfSmmReservedRegions;\r
+  ///\r
+  /// Used throughout this protocol to describe the candidate\r
+  /// regions for SMRAM that are supported by this platform. \r
+  ///\r
   EFI_SMRAM_DESCRIPTOR  Descriptor[1];\r
-} EFI_SMRAM_HOB_DESCRIPTOR_BLOCK;\r
+} EFI_HOB_SMRAM_DESCRIPTOR_BLOCK;\r
 \r
 extern EFI_GUID gEfiSmmPeiSmramMemoryReserveGuid;\r
 \r