From 5942ea61deb9b0373c597399e0a3f23e8c19690d Mon Sep 17 00:00:00 2001 From: Laszlo Ersek Date: Thu, 15 Mar 2018 15:20:08 +0100 Subject: [PATCH] OvmfPkg/PlatformBootManagerLib: hoist PciAcpiInitialization() PlatformBootManagerAfterConsole() <--------------------------------+ PlatformBdsConnectSequence() | ConnectDevicesFromQemu() / EfiBootManagerConnectAll() | PciAcpiInitialization() ---------------------------------+ TryRunningQemuKernel() Functionally this is a no-op: - PciAcpiInitialization() iterates over PciIo protocol instances, which are available just the same at the new call site. - The PCI interrupt line register exists only to inform system software (it doesn't affect hardware) and UEFI drivers don't use PCI interrupts anyway. (More background in commits 2e70cf8ade0d and 5218c27950c4.) This change will let us move TryRunningQemuKernel() between PciAcpiInitialization() and PlatformBdsConnectSequence() in the next patch. Cc: "Gabriel L. Somlo" Cc: Ard Biesheuvel Cc: Jordan Justen Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Laszlo Ersek Acked-by: Gabriel Somlo Reviewed-by: Ard Biesheuvel Tested-by: Gabriel Somlo --- OvmfPkg/Library/PlatformBootManagerLib/BdsPlatform.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/OvmfPkg/Library/PlatformBootManagerLib/BdsPlatform.c b/OvmfPkg/Library/PlatformBootManagerLib/BdsPlatform.c index b155639f3c..b624b8f225 100644 --- a/OvmfPkg/Library/PlatformBootManagerLib/BdsPlatform.c +++ b/OvmfPkg/Library/PlatformBootManagerLib/BdsPlatform.c @@ -1359,8 +1359,6 @@ PlatformBdsConnectSequence ( DEBUG ((DEBUG_INFO, "EfiBootManagerConnectAll\n")); EfiBootManagerConnectAll (); } - - PciAcpiInitialization (); } /** @@ -1446,6 +1444,11 @@ PlatformBootManagerAfterConsole ( // BootLogoEnableLogo (); + // + // Set PCI Interrupt Line registers and ACPI SCI_EN + // + PciAcpiInitialization (); + // // Perform some platform specific connect sequence // -- 2.39.2