summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGirish Pathak <girish.pathak@arm.com>2018-02-09 15:14:27 +0000
committerLeif Lindholm <leif.lindholm@linaro.org>2018-04-23 18:04:08 +0100
commitc5dd97e9c224fc688ccc92e5f4b276b10dd67c73 (patch)
treedc580afc56591660ada34b72d0cc5468133e49d1
parent6220908d8c2392b10a93d3b2333b95ea9316d68f (diff)
downloadedk2-platforms-c5dd97e9c224fc688ccc92e5f4b276b10dd67c73.tar.xz
ARM/VExpressPkg: Allocate framebuffer using EfiReservedMemoryType
As per the UEFI specification(2.7) section 12.9, the GOP framebuffer memory can be accessed in the pre-boot and the post boot phase (by OS) Therefore the memory type EfiBootServicesData which may no longer exist after ExitBootServices is incorrect for the framebuffer memory allocation. Change EfiBootServicesData with EfiReservedMemoryType so that allocated memory can be accessed in the post boot phase. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Girish Pathak <girish.pathak@arm.com> Signed-off-by: Evan Lloyd <evan.lloyd@arm.com> Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org>
-rw-r--r--Platform/ARM/VExpressPkg/Library/HdLcdArmVExpressLib/HdLcdArmVExpress.c2
-rw-r--r--Platform/ARM/VExpressPkg/Library/PL111LcdArmVExpressLib/PL111LcdArmVExpress.c2
2 files changed, 2 insertions, 2 deletions
diff --git a/Platform/ARM/VExpressPkg/Library/HdLcdArmVExpressLib/HdLcdArmVExpress.c b/Platform/ARM/VExpressPkg/Library/HdLcdArmVExpressLib/HdLcdArmVExpress.c
index f7cae39c9c..f1c497f4b3 100644
--- a/Platform/ARM/VExpressPkg/Library/HdLcdArmVExpressLib/HdLcdArmVExpress.c
+++ b/Platform/ARM/VExpressPkg/Library/HdLcdArmVExpressLib/HdLcdArmVExpress.c
@@ -176,7 +176,7 @@ LcdPlatformGetVram (
}
Status = gBS->AllocatePages (
AllocationType,
- EfiBootServicesData,
+ EfiReservedMemoryType,
EFI_SIZE_TO_PAGES (((UINTN)LCD_VRAM_SIZE)),
VramBaseAddress
);
diff --git a/Platform/ARM/VExpressPkg/Library/PL111LcdArmVExpressLib/PL111LcdArmVExpress.c b/Platform/ARM/VExpressPkg/Library/PL111LcdArmVExpressLib/PL111LcdArmVExpress.c
index 2f4814a2ad..50a53d3fff 100644
--- a/Platform/ARM/VExpressPkg/Library/PL111LcdArmVExpressLib/PL111LcdArmVExpress.c
+++ b/Platform/ARM/VExpressPkg/Library/PL111LcdArmVExpressLib/PL111LcdArmVExpress.c
@@ -232,7 +232,7 @@ LcdPlatformGetVram (
// Allocate the VRAM from the DRAM so that nobody else uses it.
Status = gBS->AllocatePages (
AllocateAddress,
- EfiBootServicesData,
+ EfiReservedMemoryType,
EFI_SIZE_TO_PAGES (((UINTN)LCD_VRAM_SIZE)),
VramBaseAddress
);