mirror of
https://github.com/acidanthera/audk.git
synced 2025-07-26 23:24:03 +02:00
OvmfPkg: clean up memory map
Fix IO-APIC range size. Add HPET. Take LAPIC base from PCD and fix range size. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13572 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
parent
53de44aade
commit
cb678aa85e
@ -188,29 +188,25 @@ MemMapInitialization (
|
|||||||
0x4000
|
0x4000
|
||||||
);
|
);
|
||||||
|
|
||||||
//
|
|
||||||
// Add PCI MMIO space available to PCI resource allocations
|
|
||||||
//
|
|
||||||
if (TopOfMemory < BASE_2GB) {
|
|
||||||
AddIoMemoryBaseSizeHob (BASE_2GB, 0xFC000000 - BASE_2GB);
|
|
||||||
} else {
|
|
||||||
AddIoMemoryBaseSizeHob (TopOfMemory, 0xFC000000 - TopOfMemory);
|
|
||||||
}
|
|
||||||
|
|
||||||
//
|
|
||||||
// Local APIC range
|
|
||||||
//
|
|
||||||
AddIoMemoryBaseSizeHob (0xFEC80000, SIZE_512KB);
|
|
||||||
|
|
||||||
//
|
|
||||||
// I/O APIC range
|
|
||||||
//
|
|
||||||
AddIoMemoryBaseSizeHob (0xFEC00000, SIZE_512KB);
|
|
||||||
|
|
||||||
//
|
//
|
||||||
// Video memory + Legacy BIOS region
|
// Video memory + Legacy BIOS region
|
||||||
//
|
//
|
||||||
AddIoMemoryRangeHob (0x0A0000, BASE_1MB);
|
AddIoMemoryRangeHob (0x0A0000, BASE_1MB);
|
||||||
|
|
||||||
|
//
|
||||||
|
// address purpose size
|
||||||
|
// ------------ -------- -------------------------
|
||||||
|
// max(top, 2g) PCI MMIO 0xFEC00000 - max(top, 2g)
|
||||||
|
// 0xFEC00000 IO-APIC 4 KB
|
||||||
|
// 0xFEC01000 gap 1020 KB
|
||||||
|
// 0xFED00000 HPET 1 KB
|
||||||
|
// 0xFED00400 gap 1023 KB
|
||||||
|
// 0xFEE00000 LAPIC 1 MB
|
||||||
|
//
|
||||||
|
AddIoMemoryRangeHob (TopOfMemory < BASE_2GB ? BASE_2GB : TopOfMemory, 0xFEC00000);
|
||||||
|
AddIoMemoryBaseSizeHob (0xFEC00000, SIZE_4KB);
|
||||||
|
AddIoMemoryBaseSizeHob (0xFED00000, SIZE_1KB);
|
||||||
|
AddIoMemoryBaseSizeHob (PcdGet32(PcdCpuLocalApicBaseAddress), SIZE_1MB);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -55,6 +55,7 @@
|
|||||||
PeiServicesTablePointerLib
|
PeiServicesTablePointerLib
|
||||||
PeimEntryPoint
|
PeimEntryPoint
|
||||||
MtrrLib
|
MtrrLib
|
||||||
|
PcdLib
|
||||||
|
|
||||||
[Pcd]
|
[Pcd]
|
||||||
gUefiOvmfPkgTokenSpaceGuid.PcdOvmfMemFvBase
|
gUefiOvmfPkgTokenSpaceGuid.PcdOvmfMemFvBase
|
||||||
@ -63,6 +64,7 @@
|
|||||||
gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareSize
|
gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareSize
|
||||||
gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableSize
|
gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableSize
|
||||||
gEfiMdeModulePkgTokenSpaceGuid.PcdEmuVariableNvStoreReserved
|
gEfiMdeModulePkgTokenSpaceGuid.PcdEmuVariableNvStoreReserved
|
||||||
|
gUefiCpuPkgTokenSpaceGuid.PcdCpuLocalApicBaseAddress
|
||||||
|
|
||||||
[Ppis]
|
[Ppis]
|
||||||
gEfiPeiMasterBootModePpiGuid
|
gEfiPeiMasterBootModePpiGuid
|
||||||
|
Loading…
x
Reference in New Issue
Block a user