ArmVirtPkg/XenVirtMemInfoLib: refactor reading of the PA space size
Use the new ArmLib helper to read the CPU's physical address limit so we can drop our own homecooked one. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com> Reviewed-by: Laszlo Ersek <lersek@redhat.com>
This commit is contained in:
@@ -14,15 +14,11 @@
|
||||
|
||||
#include <Base.h>
|
||||
#include <Library/ArmLib.h>
|
||||
#include <Library/BaseLib.h>
|
||||
#include <Library/DebugLib.h>
|
||||
|
||||
STATIC ARM_MEMORY_REGION_DESCRIPTOR mVirtualMemoryTable[2];
|
||||
|
||||
EFI_PHYSICAL_ADDRESS
|
||||
ArmGetPhysAddrTop (
|
||||
VOID
|
||||
);
|
||||
|
||||
/**
|
||||
Return the Virtual Memory Map of your platform
|
||||
|
||||
@@ -42,8 +38,12 @@ ArmVirtGetMemoryMap (
|
||||
OUT ARM_MEMORY_REGION_DESCRIPTOR **VirtualMemoryMap
|
||||
)
|
||||
{
|
||||
EFI_PHYSICAL_ADDRESS TopOfAddressSpace;
|
||||
|
||||
ASSERT (VirtualMemoryMap != NULL);
|
||||
|
||||
TopOfAddressSpace = LShiftU64 (1ULL, ArmGetPhysicalAddressBits ());
|
||||
|
||||
//
|
||||
// Map the entire physical memory space as cached. The only device
|
||||
// we care about is the GIC, which will be stage 2 mapped as a device
|
||||
@@ -51,7 +51,7 @@ ArmVirtGetMemoryMap (
|
||||
//
|
||||
mVirtualMemoryTable[0].PhysicalBase = 0x0;
|
||||
mVirtualMemoryTable[0].VirtualBase = 0x0;
|
||||
mVirtualMemoryTable[0].Length = ArmGetPhysAddrTop ();
|
||||
mVirtualMemoryTable[0].Length = TopOfAddressSpace;
|
||||
mVirtualMemoryTable[0].Attributes = ARM_MEMORY_REGION_ATTRIBUTE_WRITE_BACK;
|
||||
|
||||
mVirtualMemoryTable[1].PhysicalBase = 0x0;
|
||||
|
Reference in New Issue
Block a user