[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v3 11/11] igd: move igd-passthrough-isa-bridge creat
From: |
Gerd Hoffmann |
Subject: |
[Qemu-devel] [PATCH v3 11/11] igd: move igd-passthrough-isa-bridge creation to machine init |
Date: |
Tue, 5 Jan 2016 12:41:38 +0100 |
This patch moves igd-passthrough-isa-bridge creation out of the xen
passthrough code into machine init. It is triggered by the
igd-passthru=on machine option. Advantages:
* This works for on both xen and kvm.
* It is activated for the pc machine type only, q35 has a real
isa bridge on 1f.0 and must be handled differently. The q35
plan is https://lkml.org/lkml/2015/11/26/183 (should land in
the next merge window, i.e. linux 4.5).
* If we don't need it any more some day (intel is busy removing
chipset dependencies from the guest driver) we have a single
machine switch to just turn off all igd passthru chipset
tweaks.
Signed-off-by: Gerd Hoffmann <address@hidden>
---
hw/i386/pc_piix.c | 6 ++++++
hw/xen/xen_pt.c | 14 --------------
2 files changed, 6 insertions(+), 14 deletions(-)
diff --git a/hw/i386/pc_piix.c b/hw/i386/pc_piix.c
index f36222e..2afbbd3 100644
--- a/hw/i386/pc_piix.c
+++ b/hw/i386/pc_piix.c
@@ -281,6 +281,12 @@ static void pc_init1(MachineState *machine,
if (pcmc->pci_enabled) {
pc_pci_device_init(pci_bus);
}
+
+#ifdef CONFIG_LINUX
+ if (machine->igd_gfx_passthru) {
+ igd_passthrough_isa_bridge_create(pci_bus);
+ }
+#endif
}
/* Looking for a pc_compat_2_4() function? It doesn't exist.
diff --git a/hw/xen/xen_pt.c b/hw/xen/xen_pt.c
index 18a7f72..5f626c9 100644
--- a/hw/xen/xen_pt.c
+++ b/hw/xen/xen_pt.c
@@ -685,17 +685,6 @@ static const MemoryListener xen_pt_io_listener = {
.priority = 10,
};
-static void
-xen_igd_passthrough_isa_bridge_create(XenPCIPassthroughState *s,
- XenHostPCIDevice *dev)
-{
- uint16_t gpu_dev_id;
- PCIDevice *d = &s->dev;
-
- gpu_dev_id = dev->device_id;
- igd_passthrough_isa_bridge_create(d->bus);
-}
-
/* destroy. */
static void xen_pt_destroy(PCIDevice *d) {
@@ -810,9 +799,6 @@ static int xen_pt_initfn(PCIDevice *d)
xen_host_pci_device_put(&s->real_device);
return -1;
}
-
- /* Register ISA bridge for passthrough GFX. */
- xen_igd_passthrough_isa_bridge_create(s, &s->real_device);
}
/* Handle real device's MMIO/PIO BARs */
--
1.8.3.1
- [Qemu-devel] [PATCH v3 08/11] igd: add q35 support, (continued)
- [Qemu-devel] [PATCH v3 10/11] igd: handle igd-passthrough-isa-bridge setup in realize(), Gerd Hoffmann, 2016/01/05
- [Qemu-devel] [PATCH v3 09/11] igd: move igd-passthrough-isa-bridge to igd.c too, Gerd Hoffmann, 2016/01/05
- [Qemu-devel] [PATCH v3 11/11] igd: move igd-passthrough-isa-bridge creation to machine init,
Gerd Hoffmann <=
- Re: [Qemu-devel] [PATCH v3 11/11] igd: move igd-passthrough-isa-bridge creation to machine init, Stefano Stabellini, 2016/01/06
- Re: [Qemu-devel] [PATCH v3 11/11] igd: move igd-passthrough-isa-bridge creation to machine init, Gerd Hoffmann, 2016/01/07
- Re: [Qemu-devel] [PATCH v3 11/11] igd: move igd-passthrough-isa-bridge creation to machine init, Stefano Stabellini, 2016/01/07
- Re: [Qemu-devel] [PATCH v3 11/11] igd: move igd-passthrough-isa-bridge creation to machine init, Gerd Hoffmann, 2016/01/07
- Re: [Qemu-devel] [PATCH v3 11/11] igd: move igd-passthrough-isa-bridge creation to machine init, Stefano Stabellini, 2016/01/08
- Re: [Qemu-devel] [PATCH v3 11/11] igd: move igd-passthrough-isa-bridge creation to machine init, Stefano Stabellini, 2016/01/08
- Re: [Qemu-devel] [PATCH v3 11/11] igd: move igd-passthrough-isa-bridge creation to machine init, Gerd Hoffmann, 2016/01/08
- Re: [Qemu-devel] [PATCH v3 11/11] igd: move igd-passthrough-isa-bridge creation to machine init, Stefano Stabellini, 2016/01/08
Re: [Qemu-devel] [PATCH v3 00/11] igd passthrough chipset tweaks, Michael S. Tsirkin, 2016/01/05
Re: [Qemu-devel] [vfio-users] [PATCH v3 00/11] igd passthrough chipset tweaks, Alex Williamson, 2016/01/28