diff options
Diffstat (limited to 'IntelFrameworkPkg')
-rw-r--r-- | IntelFrameworkPkg/FrameworkSpecConformance.txt | 7 | ||||
-rw-r--r-- | IntelFrameworkPkg/Include/Guid/SmramMemoryReserve.h | 6 |
2 files changed, 11 insertions, 2 deletions
diff --git a/IntelFrameworkPkg/FrameworkSpecConformance.txt b/IntelFrameworkPkg/FrameworkSpecConformance.txt index f70386b728..22f940dfc6 100644 --- a/IntelFrameworkPkg/FrameworkSpecConformance.txt +++ b/IntelFrameworkPkg/FrameworkSpecConformance.txt @@ -1119,13 +1119,18 @@ ##
1. Include/Guid/SmramMemoryReserve.h
typedef struct {
+ UINT32 NumberOfSmmReservedRegions;
...
} EFI_SMRAM_HOB_DESCRIPTOR_BLOCK;
- The name of the definition is *NOT* consistent with Framework SmmCis specification 0.91, in which it's
+ 1) The name of the definition is *NOT* consistent with Framework SmmCis specification 0.91, in which it's
defined as "EFI_HOB_SMRAM_DESCRIPTOR_BLOCK" rather than "EFI_SMRAM_HOB_DESCRIPTOR_BLOCK".
Keeping this inconsistency for backward compatibility.
+ 2) The definition of NumberOfSmmReservedRegions is *NOT* consistent with Framework SmmCis specification 0.91,
+ in which the type of this field is defined as UINTN. However, HOBs are supposed to be CPU neutral, so UINTN
+ is incorrect and UINT32 should be used.
+
2. Include/Guid/SmramMemoryReserve.h
typedef enum {
...
diff --git a/IntelFrameworkPkg/Include/Guid/SmramMemoryReserve.h b/IntelFrameworkPkg/Include/Guid/SmramMemoryReserve.h index 9edec42b9e..04589cf040 100644 --- a/IntelFrameworkPkg/Include/Guid/SmramMemoryReserve.h +++ b/IntelFrameworkPkg/Include/Guid/SmramMemoryReserve.h @@ -42,7 +42,11 @@ typedef struct { /// Designates the number of possible regions in the system
/// that can be usable for SMRAM.
///
- UINTN NumberOfSmmReservedRegions;
+ /// Inconsistent with specification here:
+ /// In Framework SMM CIS 0.91 specification, it defines the field type as UINTN.
+ /// However, HOBs are supposed to be CPU neutral, so UINT32 should be used instead.
+ ///
+ UINT32 NumberOfSmmReservedRegions;
///
/// Used throughout this protocol to describe the candidate
/// regions for SMRAM that are supported by this platform.
|