mirror of
https://github.com/acidanthera/audk.git
synced 2025-07-31 01:24:12 +02:00
OvmfPkg: enable Xen specific path
This patch sets PcdPciDisableBusEnumeration to true then makes use of PublishPeiMemory and XenMemMapInitialization to construct memory map for Xen guest. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Wei Liu <wei.liu2@citrix.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@14946 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
parent
bb6a9a9305
commit
447d264115
@ -322,6 +322,7 @@
|
|||||||
gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableBase64|0
|
gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableBase64|0
|
||||||
gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingBase|0
|
gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingBase|0
|
||||||
gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareBase|0
|
gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareBase|0
|
||||||
|
gEfiMdeModulePkgTokenSpaceGuid.PcdPciDisableBusEnumeration|FALSE
|
||||||
|
|
||||||
|
|
||||||
################################################################################
|
################################################################################
|
||||||
@ -386,7 +387,10 @@
|
|||||||
UefiCpuPkg/CpuDxe/CpuDxe.inf
|
UefiCpuPkg/CpuDxe/CpuDxe.inf
|
||||||
PcAtChipsetPkg/8254TimerDxe/8254Timer.inf
|
PcAtChipsetPkg/8254TimerDxe/8254Timer.inf
|
||||||
PcAtChipsetPkg/PciHostBridgeDxe/PciHostBridgeDxe.inf
|
PcAtChipsetPkg/PciHostBridgeDxe/PciHostBridgeDxe.inf
|
||||||
MdeModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf
|
MdeModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf {
|
||||||
|
<LibraryClasses>
|
||||||
|
PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
|
||||||
|
}
|
||||||
PcAtChipsetPkg/KbcResetDxe/Reset.inf
|
PcAtChipsetPkg/KbcResetDxe/Reset.inf
|
||||||
MdeModulePkg/Universal/Metronome/Metronome.inf {
|
MdeModulePkg/Universal/Metronome/Metronome.inf {
|
||||||
<LibraryClasses>
|
<LibraryClasses>
|
||||||
|
@ -328,6 +328,7 @@
|
|||||||
gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableBase64|0
|
gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableBase64|0
|
||||||
gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingBase|0
|
gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingBase|0
|
||||||
gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareBase|0
|
gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareBase|0
|
||||||
|
gEfiMdeModulePkgTokenSpaceGuid.PcdPciDisableBusEnumeration|FALSE
|
||||||
|
|
||||||
|
|
||||||
################################################################################
|
################################################################################
|
||||||
@ -393,7 +394,10 @@
|
|||||||
UefiCpuPkg/CpuDxe/CpuDxe.inf
|
UefiCpuPkg/CpuDxe/CpuDxe.inf
|
||||||
PcAtChipsetPkg/8254TimerDxe/8254Timer.inf
|
PcAtChipsetPkg/8254TimerDxe/8254Timer.inf
|
||||||
PcAtChipsetPkg/PciHostBridgeDxe/PciHostBridgeDxe.inf
|
PcAtChipsetPkg/PciHostBridgeDxe/PciHostBridgeDxe.inf
|
||||||
MdeModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf
|
MdeModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf {
|
||||||
|
<LibraryClasses>
|
||||||
|
PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
|
||||||
|
}
|
||||||
PcAtChipsetPkg/KbcResetDxe/Reset.inf
|
PcAtChipsetPkg/KbcResetDxe/Reset.inf
|
||||||
MdeModulePkg/Universal/Metronome/Metronome.inf {
|
MdeModulePkg/Universal/Metronome/Metronome.inf {
|
||||||
<LibraryClasses>
|
<LibraryClasses>
|
||||||
|
@ -327,6 +327,7 @@
|
|||||||
gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableBase64|0
|
gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableBase64|0
|
||||||
gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingBase|0
|
gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingBase|0
|
||||||
gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareBase|0
|
gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareBase|0
|
||||||
|
gEfiMdeModulePkgTokenSpaceGuid.PcdPciDisableBusEnumeration|FALSE
|
||||||
|
|
||||||
|
|
||||||
################################################################################
|
################################################################################
|
||||||
@ -391,7 +392,10 @@
|
|||||||
UefiCpuPkg/CpuDxe/CpuDxe.inf
|
UefiCpuPkg/CpuDxe/CpuDxe.inf
|
||||||
PcAtChipsetPkg/8254TimerDxe/8254Timer.inf
|
PcAtChipsetPkg/8254TimerDxe/8254Timer.inf
|
||||||
PcAtChipsetPkg/PciHostBridgeDxe/PciHostBridgeDxe.inf
|
PcAtChipsetPkg/PciHostBridgeDxe/PciHostBridgeDxe.inf
|
||||||
MdeModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf
|
MdeModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf {
|
||||||
|
<LibraryClasses>
|
||||||
|
PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
|
||||||
|
}
|
||||||
PcAtChipsetPkg/KbcResetDxe/Reset.inf
|
PcAtChipsetPkg/KbcResetDxe/Reset.inf
|
||||||
MdeModulePkg/Universal/Metronome/Metronome.inf {
|
MdeModulePkg/Universal/Metronome/Metronome.inf {
|
||||||
<LibraryClasses>
|
<LibraryClasses>
|
||||||
|
@ -412,13 +412,20 @@ InitializePlatform (
|
|||||||
EFI_PHYSICAL_ADDRESS TopOfMemory;
|
EFI_PHYSICAL_ADDRESS TopOfMemory;
|
||||||
UINT32 XenLeaf;
|
UINT32 XenLeaf;
|
||||||
|
|
||||||
|
TopOfMemory = 0;
|
||||||
|
|
||||||
DEBUG ((EFI_D_ERROR, "Platform PEIM Loaded\n"));
|
DEBUG ((EFI_D_ERROR, "Platform PEIM Loaded\n"));
|
||||||
|
|
||||||
DebugDumpCmos ();
|
DebugDumpCmos ();
|
||||||
|
|
||||||
XenLeaf = XenDetect ();
|
XenLeaf = XenDetect ();
|
||||||
|
|
||||||
|
if (XenLeaf != 0) {
|
||||||
|
PublishPeiMemory ();
|
||||||
|
PcdSetBool (PcdPciDisableBusEnumeration, TRUE);
|
||||||
|
} else {
|
||||||
TopOfMemory = MemDetect ();
|
TopOfMemory = MemDetect ();
|
||||||
|
}
|
||||||
|
|
||||||
if (XenLeaf != 0) {
|
if (XenLeaf != 0) {
|
||||||
DEBUG ((EFI_D_INFO, "Xen was detected\n"));
|
DEBUG ((EFI_D_INFO, "Xen was detected\n"));
|
||||||
@ -429,7 +436,11 @@ InitializePlatform (
|
|||||||
|
|
||||||
PeiFvInitialization ();
|
PeiFvInitialization ();
|
||||||
|
|
||||||
|
if (XenLeaf != 0) {
|
||||||
|
XenMemMapInitialization ();
|
||||||
|
} else {
|
||||||
MemMapInitialization (TopOfMemory);
|
MemMapInitialization (TopOfMemory);
|
||||||
|
}
|
||||||
|
|
||||||
MiscInitialization ();
|
MiscInitialization ();
|
||||||
|
|
||||||
|
@ -65,6 +65,7 @@
|
|||||||
gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareSize
|
gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareSize
|
||||||
gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableSize
|
gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableSize
|
||||||
gEfiMdeModulePkgTokenSpaceGuid.PcdEmuVariableNvStoreReserved
|
gEfiMdeModulePkgTokenSpaceGuid.PcdEmuVariableNvStoreReserved
|
||||||
|
gEfiMdeModulePkgTokenSpaceGuid.PcdPciDisableBusEnumeration
|
||||||
gUefiCpuPkgTokenSpaceGuid.PcdCpuLocalApicBaseAddress
|
gUefiCpuPkgTokenSpaceGuid.PcdCpuLocalApicBaseAddress
|
||||||
|
|
||||||
[Ppis]
|
[Ppis]
|
||||||
|
Loading…
x
Reference in New Issue
Block a user