public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
From: "David Woodhouse" <dwmw2@infradead.org>
To: devel@edk2.groups.io
Cc: Laszlo Ersek <lersek@redhat.com>
Subject: [PATCH v3 0/4] OvmfPkg: CSM boot fixes
Date: Wed, 26 Jun 2019 12:37:38 +0100	[thread overview]
Message-ID: <20190626113742.819933-1-dwmw2@infradead.org> (raw)

For v3, leaving out the cosmetic parts that touch code outside OvmfPkg. 
This series is now purely the correctness fixes within OvmfPkg which are 
required to make CSM boots work properly again.

The first two patches allow NVMe and VirtIO disks to be used as Legacy
boot targets, since nobody really uses IDE any more.

The third avoids using QemuVideoDxe when we have CSM, as the INT 10h 
shim installed by QemuVideoDxe conflicts with a real legacy video BIOS
being installed.

Finally, avoid placing PCI BARs above 4GiB. Strictly speaking we only 
need this for PCI devices which might be natively supported by the CSM 
BIOS, like NVMe. Devices with an OpRom already get special-cased to stay 
below 4GiB. But an IncompatiblePciDeviceSupportProtocol implementation 
doesn't get to see the PCI device class; only the vendor/device IDs so 
we can't use it for that purpose to downgrade more selectively. Instead, 
just default to putting everything below 4GiB.


David Woodhouse (4):
  OvmfPkg/LegacyBios: set NumberBbsEntries to the size of BbsTable
  OvmfPkg/LegacyBbs: Add boot entries for VirtIO and NVME devices
  OvmfPkg: Don't build in QemuVideoDxe when we have CSM
  OvmfPkg: don't assign PCI BARs above 4GiB when CSM enabled

 OvmfPkg/Csm/LegacyBiosDxe/LegacyBbs.c  | 157 ++++++++++++++++++++++++-
 OvmfPkg/Csm/LegacyBiosDxe/LegacyBios.c |   7 +-
 OvmfPkg/OvmfPkgIa32.dsc                |   2 +
 OvmfPkg/OvmfPkgIa32.fdf                |   5 +-
 OvmfPkg/OvmfPkgIa32X64.dsc             |   6 +
 OvmfPkg/OvmfPkgIa32X64.fdf             |   5 +-
 OvmfPkg/OvmfPkgX64.dsc                 |   6 +
 OvmfPkg/OvmfPkgX64.fdf                 |   5 +-
 8 files changed, 179 insertions(+), 14 deletions(-)

-- 
2.21.0


             reply	other threads:[~2019-06-26 11:37 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-06-26 11:37 David Woodhouse [this message]
2019-06-26 11:37 ` [PATCH v3 1/4] OvmfPkg/LegacyBios: set NumberBbsEntries to the size of BbsTable David Woodhouse
2019-06-26 11:37 ` [PATCH v3 2/4] OvmfPkg/LegacyBbs: Add boot entries for VirtIO and NVME devices David Woodhouse
2019-06-26 11:37 ` [PATCH v3 3/4] OvmfPkg: Don't build in QemuVideoDxe when we have CSM David Woodhouse
2019-06-26 11:37 ` [PATCH v3 4/4] OvmfPkg: don't assign PCI BARs above 4GiB when CSM enabled David Woodhouse
2019-06-26 13:19 ` [PATCH v3 0/4] OvmfPkg: CSM boot fixes Laszlo Ersek

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-list from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20190626113742.819933-1-dwmw2@infradead.org \
    --to=devel@edk2.groups.io \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox