Patchwork [6/9] default devices: vga

login
register
mail settings
Submitter Gerd Hoffmann
Date Nov. 17, 2009, 9:38 a.m.
Message ID <1258450699-24445-7-git-send-email-kraxel@redhat.com>
Download mbox | patch
Permalink /patch/38605/
State New
Headers show

Comments

Gerd Hoffmann - Nov. 17, 2009, 9:38 a.m.
Switch over vga to the new default device system.

Disable default vga for both '-vga' and
'-device  VGA|Cirrus VGA|QEMUware SVGA)' cases.

'-device VGA' still doesn't work though due to a initialization order
issue (vga must init before calling i440fx_init_memory_mappings).

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
---
 vl.c |    9 ++++++++-
 1 files changed, 8 insertions(+), 1 deletions(-)

Patch

diff --git a/vl.c b/vl.c
index cd10b46..23afcc9 100644
--- a/vl.c
+++ b/vl.c
@@ -192,7 +192,7 @@  int autostart;
 static int rtc_utc = 1;
 static int rtc_date_offset = -1; /* -1 means no change */
 QEMUClock *rtc_clock;
-int vga_interface_type = VGA_CIRRUS;
+int vga_interface_type = VGA_NONE;
 #ifdef TARGET_SPARC
 int graphic_width = 1024;
 int graphic_height = 768;
@@ -274,6 +274,7 @@  static void *boot_set_opaque;
 static int default_serial = 1;
 static int default_parallel = 1;
 static int default_monitor = 1;
+static int default_vga = 1;
 
 static struct {
     const char *driver;
@@ -281,6 +282,9 @@  static struct {
 } default_list[] = {
     { .driver = "isa-serial",     .flag = &default_serial    },
     { .driver = "isa-parallel",   .flag = &default_parallel  },
+    { .driver = "VGA",            .flag = &default_vga       },
+    { .driver = "Cirrus VGA",     .flag = &default_vga       },
+    { .driver = "QEMUware SVGA",  .flag = &default_vga       },
 };
 
 static int default_driver_check(QemuOpts *opts, void *opaque)
@@ -4326,6 +4330,7 @@  static void select_vgahw (const char *p)
 {
     const char *opts;
 
+    default_vga = 0;
     vga_interface_type = VGA_NONE;
     if (strstart(p, "std", &opts)) {
         vga_interface_type = VGA_STD;
@@ -5505,6 +5510,8 @@  int main(int argc, char **argv, char **envp)
         if (default_monitor)
             add_device_config(DEV_MONITOR, "vc:80Cx24C");
     }
+    if (default_vga)
+        vga_interface_type = VGA_CIRRUS;
 
 #ifndef _WIN32
     if (daemonize) {