mirror of https://github.com/acidanthera/audk.git
CorebootPayloadPkg/CbSupportPei: Fix the memory map issue
When coreboot reports memory range across 1MB, the current code cannot handle it properly. In this case the range should be adjusted to start from 1MB instead since the memory resource below 1MB has been preprocessed by CbSupportPei module. This patch fixed the coreboot + UEFI payload hang issue when running on QEMU due to incorrect memory map. Cc: Prince Agyeman <prince.agyeman@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Maurice Ma <maurice.ma@intel.com> Reviewed-by: Prince Agyeman <prince.agyeman@intel.com>
This commit is contained in:
parent
28b3a713b6
commit
4e7872d2f7
|
@ -169,6 +169,11 @@ CbMemInfoCallback (
|
|||
EFI_RESOURCE_ATTRIBUTE_WRITE_THROUGH_CACHEABLE |
|
||||
EFI_RESOURCE_ATTRIBUTE_WRITE_BACK_CACHEABLE;
|
||||
|
||||
if ((Base < 0x100000) && ((Base + Size) > 0x100000)) {
|
||||
Size -= (0x100000 - Base);
|
||||
Base = 0x100000;
|
||||
}
|
||||
|
||||
MemInfo = (CB_MEM_INFO *)Param;
|
||||
if (Base >= 0x100000) {
|
||||
if (Type == CB_MEM_RAM) {
|
||||
|
|
Loading…
Reference in New Issue