diff options
author | Tiejun Chen <tiejun.chen@intel.com> | 2015-07-15 13:37:45 +0800 |
---|---|---|
committer | Stefano Stabellini <stefano.stabellini@eu.citrix.com> | 2015-09-10 12:04:28 +0000 |
commit | 798141799ccd5235a928b8fc0411d7d74e706489 (patch) | |
tree | 8c6433f6aa4b3f429ccac9381eff3687e1689d18 /hw/xen/xen_pt.c | |
parent | bcd7461e7e84a65f1dfaa6af6e00aa498978d29d (diff) |
xen, gfx passthrough: basic graphics passthrough support
basic gfx passthrough support:
- add a vga type for gfx passthrough
- register/unregister legacy VGA I/O ports and MMIOs for passthrough GFX
Signed-off-by: Tiejun Chen <tiejun.chen@intel.com>
Signed-off-by: Yang Zhang <yang.z.zhang@Intel.com>
Acked-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Diffstat (limited to 'hw/xen/xen_pt.c')
-rw-r--r-- | hw/xen/xen_pt.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/hw/xen/xen_pt.c b/hw/xen/xen_pt.c index ed5fcaec0d..42380c3976 100644 --- a/hw/xen/xen_pt.c +++ b/hw/xen/xen_pt.c @@ -502,6 +502,7 @@ static int xen_pt_register_regions(XenPCIPassthroughState *s, uint16_t *cmd) d->rom.size, d->rom.base_addr); } + xen_pt_register_vga_regions(d); return 0; } @@ -801,6 +802,7 @@ out: static void xen_pt_unregister_device(PCIDevice *d) { XenPCIPassthroughState *s = XEN_PT_DEVICE(d); + XenHostPCIDevice *host_dev = &s->real_device; uint8_t machine_irq = s->machine_irq; uint8_t intx = xen_pt_pci_intx(s); int rc; @@ -844,6 +846,8 @@ static void xen_pt_unregister_device(PCIDevice *d) /* delete all emulated config registers */ xen_pt_config_delete(s); + xen_pt_unregister_vga_regions(host_dev); + memory_listener_unregister(&s->memory_listener); memory_listener_unregister(&s->io_listener); |