]> git.proxmox.com Git - mirror_edk2.git/commit
OvmfPkg: QemuBootOrderLib: introduce ExtraRootBusMap
authorLaszlo Ersek <lersek@redhat.com>
Tue, 14 Jul 2015 12:02:39 +0000 (12:02 +0000)
committerlersek <lersek@Edk2>
Tue, 14 Jul 2015 12:02:39 +0000 (12:02 +0000)
commit5eb0b80afc4185f11379ab317f0b4d1b5520ef96
tree00330b83c7a697a952a4e69b075dde4b33c50e9d
parent68306ac2f2e7b85fc0d592248f68679139809b1a
OvmfPkg: QemuBootOrderLib: introduce ExtraRootBusMap

SeaBIOS requires the OpenFirmware device paths exported in the "bootorder"
fw-cfg file to refer to extra (PXB) root buses by their relative positions
(in increasing bus number order) rather than by actual bus numbers.

However, OVMF's PCI host bridge / root bridge driver creates PciRoot(UID)
device path nodes for extra PCI root buses with UID=bus_nr, not position.
(These ACPI devpath UID values must, and do, match the UID values exposed
in QEMU's ACPI payload, generated for PXB root buses.)

Therefore the boot order matching logic will have to map extra root bus
positions to bus numbers. Add a small group of utility functions to help
with that.

Cc: Jordan Justen <jordan.l.justen@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17964 6f19259b-4bc3-4df7-8a09-765794883524
OvmfPkg/Library/QemuBootOrderLib/ExtraRootBusMap.c [new file with mode: 0644]
OvmfPkg/Library/QemuBootOrderLib/ExtraRootBusMap.h [new file with mode: 0644]
OvmfPkg/Library/QemuBootOrderLib/QemuBootOrderLib.inf