diff options
author | Laszlo Ersek <lersek@redhat.com> | 2016-05-09 19:32:26 +0800 |
---|---|---|
committer | Hao Wu <hao.a.wu@intel.com> | 2016-05-12 14:18:49 +0800 |
commit | d5aee61bfaaa57357d0c6790d61894ef5d2aab10 (patch) | |
tree | 1c3b72407702e432257e27e6286b212d2918150e /OvmfPkg/Library | |
parent | 79992d6e05e665394bdd003cc4c4b326060b621a (diff) | |
download | edk2-platforms-d5aee61bfaaa57357d0c6790d61894ef5d2aab10.tar.xz |
OvmfPkg/QemuNewBootOrderLib: adapt Q35 SATA PMPN to UEFI spec Mantis 1353
On the Q35 machine type of QEMU, there is no port multiplier connected to
the on-board SATA controller. Therefore the AtaAtapiPassThru driver update
for Mantis ticket 1353 <https://mantis.uefi.org/mantis/view.php?id=1353>
changes the middle number (the Port Multiplier Port Number) in the Sata()
device path nodes from 0x0 to 0xFFFF.
Adapt the translation from OpenFirmware in QemuNewBootOrderLib.
Cc: Jordan Justen <jordan.l.justen@intel.com>
Cc: Feng Tian <feng.tian@intel.com>
Cc: Hao Wu <hao.a.wu@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
Reviewed-by: Feng Tian <feng.tian@intel.com>
Diffstat (limited to 'OvmfPkg/Library')
-rw-r--r-- | OvmfPkg/Library/QemuNewBootOrderLib/QemuBootOrderLib.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/OvmfPkg/Library/QemuNewBootOrderLib/QemuBootOrderLib.c b/OvmfPkg/Library/QemuNewBootOrderLib/QemuBootOrderLib.c index 6c576121c2..c5f165ae4e 100644 --- a/OvmfPkg/Library/QemuNewBootOrderLib/QemuBootOrderLib.c +++ b/OvmfPkg/Library/QemuNewBootOrderLib/QemuBootOrderLib.c @@ -786,11 +786,11 @@ TranslatePciOfwNodes ( //
// UEFI device path:
//
- // PciRoot(0x0)/Pci(0x1F,0x2)/Sata(0x1,0x0,0x0)
- // ^ ^ ^
- // | | LUN (always 0 on Q35)
+ // PciRoot(0x0)/Pci(0x1F,0x2)/Sata(0x1,0xFFFF,0x0)
+ // ^ ^ ^
+ // | | LUN (always 0 on Q35)
// | port multiplier port number,
- // | always 0 on Q35
+ // | always 0xFFFF on Q35
// channel (port) number
//
UINT64 Channel;
@@ -805,7 +805,7 @@ TranslatePciOfwNodes ( Written = UnicodeSPrintAsciiFormat (
Translated,
*TranslatedSize * sizeof (*Translated), // BufferSize in bytes
- "PciRoot(0x%x)%s/Pci(0x%Lx,0x%Lx)/Sata(0x%Lx,0x0,0x0)",
+ "PciRoot(0x%x)%s/Pci(0x%Lx,0x%Lx)/Sata(0x%Lx,0xFFFF,0x0)",
PciRoot,
Bridges,
PciDevFun[0],
|