summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlex Williamson <alex.williamson@redhat.com>2014-08-25 12:10:15 -0600
committerAlex Williamson <alex.williamson@redhat.com>2014-08-25 12:10:15 -0600
commitfe08275db9b88ecf3a30c7540b894c25aec150c2 (patch)
treefdf6781f14d9c3c81e2277c0d23047a39e77dea3
parent3dd359c2d34c6abf385d58da863f337b39702585 (diff)
downloadqemu-fe08275db9b88ecf3a30c7540b894c25aec150c2.tar.gz
qemu-fe08275db9b88ecf3a30c7540b894c25aec150c2.tar.bz2
qemu-fe08275db9b88ecf3a30c7540b894c25aec150c2.zip
vfio: Enable NVIDIA 88000 region quirk regardless of VGA
If we make use of OVMF for the BIOS then we can use GPUs without VGA space access, but we still need this quirk. Disassociate it from the x-vga option and enable it on all NVIDIA VGA display class devices. Signed-off-by: Alex Williamson <alex.williamson@redhat.com>
-rw-r--r--hw/misc/vfio.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/hw/misc/vfio.c b/hw/misc/vfio.c
index 0617b70ea6..40dcaa6558 100644
--- a/hw/misc/vfio.c
+++ b/hw/misc/vfio.c
@@ -2194,9 +2194,13 @@ static void vfio_probe_nvidia_bar0_88000_quirk(VFIODevice *vdev, int nr)
{
PCIDevice *pdev = &vdev->pdev;
VFIOQuirk *quirk;
+ uint16_t vendor, class;
- if (!vdev->has_vga || nr != 0 ||
- pci_get_word(pdev->config + PCI_VENDOR_ID) != PCI_VENDOR_ID_NVIDIA) {
+ vendor = pci_get_word(pdev->config + PCI_VENDOR_ID);
+ class = pci_get_word(pdev->config + PCI_CLASS_DEVICE);
+
+ if (nr != 0 || vendor != PCI_VENDOR_ID_NVIDIA ||
+ class != PCI_CLASS_DISPLAY_VGA) {
return;
}