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

Reply via email to