diff options
author | Girish Pathak <girish.pathak@arm.com> | 2018-02-09 15:14:27 +0000 |
---|---|---|
committer | Leif Lindholm <leif.lindholm@linaro.org> | 2018-04-23 18:04:08 +0100 |
commit | c5dd97e9c224fc688ccc92e5f4b276b10dd67c73 (patch) | |
tree | dc580afc56591660ada34b72d0cc5468133e49d1 /Platform/ARM | |
parent | 6220908d8c2392b10a93d3b2333b95ea9316d68f (diff) | |
download | edk2-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>
Diffstat (limited to 'Platform/ARM')
-rw-r--r-- | Platform/ARM/VExpressPkg/Library/HdLcdArmVExpressLib/HdLcdArmVExpress.c | 2 | ||||
-rw-r--r-- | Platform/ARM/VExpressPkg/Library/PL111LcdArmVExpressLib/PL111LcdArmVExpress.c | 2 |
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
);
|