mirror of https://github.com/acidanthera/audk.git
The definition of NumberOfSmmReservedRegions is incorrect in 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 UINT32 should be used. Here the code is updated and comments in FrameworkSpecConformance.txt is added.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10813 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
parent
9e375eb11f
commit
7ae58ec2ea
|
@ -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 {
|
||||
...
|
||||
|
|
|
@ -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.
|
||||
|
|
Loading…
Reference in New Issue