]> git.proxmox.com Git - mirror_edk2.git/commit
OvmfPkg: don't assign PCI BARs above 4GiB when CSM enabled
authorDavid Woodhouse <dwmw2@infradead.org>
Wed, 26 Jun 2019 11:37:42 +0000 (12:37 +0100)
committerLaszlo Ersek <lersek@redhat.com>
Wed, 26 Jun 2019 13:06:44 +0000 (15:06 +0200)
commitc7341877f69505e69acd199c84b6c09218058bfa
tree512f65fe68565905eb137ed3f17ccc209c95cfae
parent4b04d9d73604080a42daf737c39b98d4e1245a51
OvmfPkg: don't assign PCI BARs above 4GiB when CSM enabled

Mostly, this is only necessary for devices that the CSM might have
native support for, such as VirtIO and NVMe; PciBusDxe will already
degrade devices to 32-bit if they have an OpROM.

However, there doesn't seem to be a generic way of requesting PciBusDxe
to downgrade specific devices.

There's IncompatiblePciDeviceSupportProtocol but that doesn't provide
the PCI class information or a handle to the device itself, so there's
no simple way to just match on all NVMe devices, for example.

Just leave gUefiOvmfPkgTokenSpaceGuid.PcdPciMmio64Size set to zero for
CSM builds, until/unless that can be fixed.

Signed-off-by: David Woodhouse <dwmw2@infradead.org>
Reviewed-by: Laszlo Ersek <lersek@redhat.com>
Message-Id: <20190626113742.819933-5-dwmw2@infradead.org>
OvmfPkg/OvmfPkgIa32X64.dsc
OvmfPkg/OvmfPkgX64.dsc