Hi Gerd
I think it's missing qemu-options:
diff --git a/qemu-options.hx b/qemu-options.hx
index 85ca3ad..9315672 100644
--- a/qemu-options.hx
+++ b/qemu-options.hx
@@ -1077,7 +1077,7 @@ Rotate graphical output some deg left (only PXA LCD).
ETEXI
DEF(vga, HAS_ARG, QEMU_OPTION_vga,
--vga [std|cirrus|vmware|qxl|xenfb|tcx|cg3|none]\n
+-vga [std|cirrus|vmware|qxl|xenfb|tcx|cg3|virtio|none]\n
select video card type\n, QEMU_ARCH_ALL)
STEXI
@item -vga @var{type}
@@ -1110,6 +1110,8 @@ fixed resolution of 1024x768.
(sun4m only) Sun cgthree framebuffer. This is a simple 8-bit framebuffer
for sun4m machines available in both 1024x768 (OpenBIOS) and 1152x900 (OBP)
resolutions aimed at people wishing to run older Solaris versions.
+@item virtio
+Virtio VGA
@item none
Disable VGA card.
@end table
On Mon, Feb 23, 2015 at 11:23 AM, Gerd Hoffmann kra...@redhat.com wrote:
Some convinience fluff: Add support for '-vga virtio', also add
virtio-vga to the list of vga cards so '-device virtio-vga' will
turn off the default vga.
Written by Dave Airlie and Gerd Hoffmann.
Signed-off-by: Dave Airlie airl...@redhat.com
Signed-off-by: Gerd Hoffmann kra...@redhat.com
---
hw/pci/pci.c| 2 ++
include/sysemu/sysemu.h | 2 +-
vl.c| 13 +
3 files changed, 16 insertions(+), 1 deletion(-)
diff --git a/hw/pci/pci.c b/hw/pci/pci.c
index d508930..3a2b8ad 100644
--- a/hw/pci/pci.c
+++ b/hw/pci/pci.c
@@ -1662,6 +1662,8 @@ PCIDevice *pci_vga_init(PCIBus *bus)
return pci_create_simple(bus, -1, VGA);
case VGA_VMWARE:
return pci_create_simple(bus, -1, vmware-svga);
+case VGA_VIRTIO:
+return pci_create_simple(bus, -1, virtio-vga);
case VGA_NONE:
default: /* Other non-PCI types. Checking for unsupported types is
already
done in vl.c. */
diff --git a/include/sysemu/sysemu.h b/include/sysemu/sysemu.h
index 748d059..1c0e2a6 100644
--- a/include/sysemu/sysemu.h
+++ b/include/sysemu/sysemu.h
@@ -107,7 +107,7 @@ extern int autostart;
typedef enum {
VGA_NONE, VGA_STD, VGA_CIRRUS, VGA_VMWARE, VGA_XENFB, VGA_QXL,
-VGA_TCX, VGA_CG3, VGA_DEVICE
+VGA_TCX, VGA_CG3, VGA_DEVICE, VGA_VIRTIO,
} VGAInterfaceType;
extern int vga_interface_type;
diff --git a/vl.c b/vl.c
index 8c8f142..27fe972 100644
--- a/vl.c
+++ b/vl.c
@@ -234,6 +234,7 @@ static struct {
{ .driver = isa-cirrus-vga, .flag = default_vga },
{ .driver = vmware-svga, .flag = default_vga },
{ .driver = qxl-vga, .flag = default_vga },
+{ .driver = virtio-vga, .flag = default_vga },
};
static QemuOptsList qemu_rtc_opts = {
@@ -1870,6 +1871,11 @@ static bool cg3_vga_available(void)
return object_class_by_name(cgthree);
}
+static bool virtio_vga_available(void)
+{
+return object_class_by_name(virtio-vga);
+}
+
static void select_vgahw (const char *p)
{
const char *opts;
@@ -1896,6 +1902,13 @@ static void select_vgahw (const char *p)
fprintf(stderr, Error: VMWare SVGA not available\n);
exit(0);
}
+} else if (strstart(p, virtio, opts)) {
+if (virtio_vga_available()) {
+vga_interface_type = VGA_VIRTIO;
+} else {
+fprintf(stderr, Error: Virtio VGA not available\n);
+exit(0);
+}
} else if (strstart(p, xenfb, opts)) {
vga_interface_type = VGA_XENFB;
} else if (strstart(p, qxl, opts)) {
--
1.8.3.1
--
Marc-André Lureau