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 | |
parent | 6220908d8c2392b10a93d3b2333b95ea9316d68f (diff) |
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.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 f7cae39c..f1c497f4 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 2f4814a2..50a53d3f 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
);
|