summaryrefslogtreecommitdiffstats
path: root/OvmfPkg
diff options
context:
space:
mode:
authorLaszlo Ersek <lersek@redhat.com>2018-03-15 15:20:08 +0100
committerLaszlo Ersek <lersek@redhat.com>2018-03-16 19:58:27 +0100
commit5942ea61deb9b0373c597399e0a3f23e8c19690d (patch)
treeed5bf15788357998b1bf01896ffde2a329680288 /OvmfPkg
parentfe1b9e8e085bede968958f494cba0be5ab3add99 (diff)
downloadedk2-5942ea61deb9b0373c597399e0a3f23e8c19690d.tar.gz
edk2-5942ea61deb9b0373c597399e0a3f23e8c19690d.tar.bz2
edk2-5942ea61deb9b0373c597399e0a3f23e8c19690d.zip
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" <gsomlo@gmail.com> Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org> Cc: Jordan Justen <jordan.l.justen@intel.com> Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Acked-by: Gabriel Somlo <gsomlo@gmail.com> Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Tested-by: Gabriel Somlo <gsomlo@gmail.com>
Diffstat (limited to 'OvmfPkg')
-rw-r--r--OvmfPkg/Library/PlatformBootManagerLib/BdsPlatform.c7
1 files 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 ();
}
/**
@@ -1447,6 +1445,11 @@ PlatformBootManagerAfterConsole (
BootLogoEnableLogo ();
//
+ // Set PCI Interrupt Line registers and ACPI SCI_EN
+ //
+ PciAcpiInitialization ();
+
+ //
// Perform some platform specific connect sequence
//
PlatformBdsConnectSequence ();