On Thu, Feb 12, 2015 at 01:16:07PM +0100, Laszlo Ersek wrote: > SVN r16411 delayed ACPI table installation until PCI enumeration was > complete, because on QEMU the ACPI-related fw_cfg files should only be > downloaded after PCI enumeration. > > However, InitializeXen() in "OvmfPkg/PlatformPei/Xen.c" sets > PcdPciDisableBusEnumeration to TRUE. This causes > PciBusDriverBindingStart() in "MdeModulePkg/Bus/Pci/PciBusDxe/PciBus.c" to > set gFullEnumeration to FALSE, which in turn makes PciEnumerator() in > "MdeModulePkg/Bus/Pci/PciBusDxe/PciEnumerator.c" branch to > PciEnumeratorLight(). The installation of > EFI_PCI_ENUMERATION_COMPLETE_PROTOCOL at the end of PciEnumerator() is not > reached. > > Which means that starting with SVN r16411, AcpiPlatformDxe is never > dispatched on Xen. > > This patch replaces the EFI_PCI_ENUMERATION_COMPLETE_PROTOCOL depex with a > matching protocol registration callback for the PCI enumeration enabled > (ie. QEMU) case. When PCI enumeration is disabled (ie. when running on > Xen), AcpiPlatformDxe doesn't wait for > EFI_PCI_ENUMERATION_COMPLETE_PROTOCOL. > > Contributed-under: TianoCore Contribution Agreement 1.0 > Signed-off-by: Laszlo Ersek <ler...@redhat.com>
This patch fixes the bug I have. Thanks! Tested-by: Wei Liu <wei.l...@citrix.com> Wei. _______________________________________________ Xen-devel mailing list Xen-devel@lists.xen.org http://lists.xen.org/xen-devel