audk/OvmfPkg/Library/PlatformBdsLib
Gabriel Somlo 2e70cf8ade OvmfPkg: PlatformBdsLib: Platform dependent PCI/IRQ initialization
Merge PciInitialization() and AcpiInitialization() into a single
function, PciAcpiInitialization(), and use a PCD set during PEI to
detect the underlying platform type (PIIX4 or Q35/MCH) and therefore
the addresses of the registers to be initialized.

Add LNK[A-H] routing target initialization for the Q35 platform.

Additionally, initialize PCI_INTERRUPT_LINE registers for the typical
set of PCI devices included by QEMU with the Q35 machine type. The
corresponding PIIX4 initialization of PCI_INTERRUPT_LINE registers is
cleaned up and the list of PIIX4 PCI devices updated to the list
typically included with QEMU.

NOTE: The list of PCI devices for which we initialize PCI_INTERRUPT_LINE
is hard-coded, and, depending on how QEMU devices are configured on
the command line, may miss some devices, or (harmlessly) attempt to
initialize devices which are not present in the system. A subsequent
patch will replace this hard-coded list with a mechanism to correctly
initialize PCI_INTERRUPT_LINE for applicable present PCI devices only.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Gabriel Somlo <somlo@cmu.edu>
Reviewed-by: Paolo Bonzini <pbonzini@redhat.com>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
Reviewed-by: Gerd Hoffmann <kraxel@redhat.com>

git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16379 6f19259b-4bc3-4df7-8a09-765794883524
2014-11-14 00:39:04 +00:00
..
BdsPlatform.c OvmfPkg: PlatformBdsLib: Platform dependent PCI/IRQ initialization 2014-11-14 00:39:04 +00:00
BdsPlatform.h OvmfPkg: PlatformBdsLib: Platform dependent PCI/IRQ initialization 2014-11-14 00:39:04 +00:00
PlatformBdsLib.inf OvmfPkg: PlatformBdsLib: Platform dependent PCI/IRQ initialization 2014-11-14 00:39:04 +00:00
PlatformData.c Update the copyright notice format 2010-04-28 12:43:04 +00:00
QemuBootOrder.c OvmfPkg: add a catch-all match for PCI devices in the OpenFirmware path 2014-03-31 20:36:23 +00:00
QemuBootOrder.h OvmfPkg: get boot order from QEMU 2012-08-27 23:28:30 +00:00
QemuKernel.c OvmfPkg: LoadLinuxLib: Zero kernel parameters instead of passing garbage 2013-01-16 06:49:45 +00:00