]> git.proxmox.com Git - mirror_edk2.git/commitdiff
The definition of NumberOfSmmReservedRegions is incorrect in Framework SmmCis specifi...
authorxli24 <xli24@6f19259b-4bc3-4df7-8a09-765794883524>
Fri, 20 Aug 2010 17:32:04 +0000 (17:32 +0000)
committerxli24 <xli24@6f19259b-4bc3-4df7-8a09-765794883524>
Fri, 20 Aug 2010 17:32:04 +0000 (17:32 +0000)
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10813 6f19259b-4bc3-4df7-8a09-765794883524

IntelFrameworkPkg/FrameworkSpecConformance.txt
IntelFrameworkPkg/Include/Guid/SmramMemoryReserve.h

index f70386b728dbe357b3a03733dcfcd411dbf61cb7..22f940dfc6f951b6f34d2ec9d670af6c31f4e4c6 100644 (file)
 ##\r
   1. Include/Guid/SmramMemoryReserve.h\r
     typedef struct {\r
+      UINT32                NumberOfSmmReservedRegions;\r
       ...\r
     } EFI_SMRAM_HOB_DESCRIPTOR_BLOCK;\r
 \r
-    The name of the definition is *NOT* consistent with Framework SmmCis specification 0.91, in which it's \r
+    1) The name of the definition is *NOT* consistent with Framework SmmCis specification 0.91, in which it's \r
     defined as "EFI_HOB_SMRAM_DESCRIPTOR_BLOCK" rather than "EFI_SMRAM_HOB_DESCRIPTOR_BLOCK". \r
     Keeping this inconsistency for backward compatibility.\r
 \r
+    2) The definition of NumberOfSmmReservedRegions is *NOT* consistent with Framework SmmCis specification 0.91,\r
+    in which the type of this field is defined as UINTN. However, HOBs are supposed to be CPU neutral, so UINTN\r
+    is incorrect and UINT32 should be used.\r
+\r
   2. Include/Guid/SmramMemoryReserve.h\r
     typedef enum {\r
       ...\r
index 9edec42b9ed56751156c93bbe7f24cc22fbb28ef..04589cf040eebbd03178f422c58a1cb2c6412610 100644 (file)
@@ -42,7 +42,11 @@ typedef struct {
   /// Designates the number of possible regions in the system\r
   /// that can be usable for SMRAM. \r
   ///\r
-  UINTN                 NumberOfSmmReservedRegions;\r
+  /// Inconsistent with specification here:  \r
+  /// In Framework SMM CIS 0.91 specification, it defines the field type as UINTN.\r
+  /// However, HOBs are supposed to be CPU neutral, so UINT32 should be used instead.\r
+  ///\r
+  UINT32                NumberOfSmmReservedRegions;\r
   ///\r
   /// Used throughout this protocol to describe the candidate\r
   /// regions for SMRAM that are supported by this platform. \r