summaryrefslogtreecommitdiffstats
path: root/OvmfPkg/PlatformPei/Platform.c
diff options
context:
space:
mode:
authorLaszlo Ersek <lersek@redhat.com>2017-05-06 16:02:47 +0200
committerLaszlo Ersek <lersek@redhat.com>2017-05-18 23:38:46 +0200
commitc9e7907d09eaf2702ae5c6963f24ab53fc57dc33 (patch)
tree6f7f1b74bbe0409bc7a453c71b341875058781ca /OvmfPkg/PlatformPei/Platform.c
parent7e8329267ecb62670263bfc6afec93f37bfa19d2 (diff)
downloadedk2-c9e7907d09eaf2702ae5c6963f24ab53fc57dc33.tar.gz
edk2-c9e7907d09eaf2702ae5c6963f24ab53fc57dc33.tar.bz2
edk2-c9e7907d09eaf2702ae5c6963f24ab53fc57dc33.zip
OvmfPkg/PlatformPei: align EmuVariableNvStore at any page boundary
EmuVariableFvbRuntimeDxe now uses a 4KB (EFI_PAGE_SIZE) block size. Cc: Jordan Justen <jordan.l.justen@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Regression-tested-by: Gary Lin <glin@suse.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
Diffstat (limited to 'OvmfPkg/PlatformPei/Platform.c')
-rw-r--r--OvmfPkg/PlatformPei/Platform.c20
1 files changed, 4 insertions, 16 deletions
diff --git a/OvmfPkg/PlatformPei/Platform.c b/OvmfPkg/PlatformPei/Platform.c
index 1b4dc00b01..3e9fda7c7a 100644
--- a/OvmfPkg/PlatformPei/Platform.c
+++ b/OvmfPkg/PlatformPei/Platform.c
@@ -504,7 +504,6 @@ ReserveEmuVariableNvStore (
{
EFI_PHYSICAL_ADDRESS VariableStore;
RETURN_STATUS PcdStatus;
- UINT32 Alignment;
//
// Allocate storage for NV variables early on so it will be
@@ -512,26 +511,15 @@ ReserveEmuVariableNvStore (
// across reboots, this allows the NV variable storage to survive
// a VM reboot.
//
- Alignment = PcdGet32 (PcdFlashNvStorageFtwSpareSize);
- if ((Alignment & (Alignment - 1)) != 0) {
- //
- // Round up Alignment to the next power of two.
- //
- Alignment = GetPowerOfTwo32 (Alignment) << 1;
- }
-
VariableStore =
(EFI_PHYSICAL_ADDRESS)(UINTN)
- AllocateAlignedRuntimePages (
- EFI_SIZE_TO_PAGES (2 * PcdGet32 (PcdFlashNvStorageFtwSpareSize)),
- Alignment
+ AllocateRuntimePages (
+ EFI_SIZE_TO_PAGES (2 * PcdGet32 (PcdFlashNvStorageFtwSpareSize))
);
DEBUG ((EFI_D_INFO,
- "Reserved variable store memory: 0x%lX; size: %dkb, "
- "alignment: 0x%x\n",
+ "Reserved variable store memory: 0x%lX; size: %dkb\n",
VariableStore,
- (2 * PcdGet32 (PcdFlashNvStorageFtwSpareSize)) / 1024,
- Alignment
+ (2 * PcdGet32 (PcdFlashNvStorageFtwSpareSize)) / 1024
));
PcdStatus = PcdSet64S (PcdEmuVariableNvStoreReserved, VariableStore);
ASSERT_RETURN_ERROR (PcdStatus);