qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [FOR 0.12 PATCH v4 13/22] default devices: vga adapter.


From: Gerd Hoffmann
Subject: [Qemu-devel] [FOR 0.12 PATCH v4 13/22] default devices: vga adapter.
Date: Tue, 8 Dec 2009 13:11:45 +0100

Qemu creates a vga display for you in case you didn't specify one on the
command line.  Right now this is tied to the '-vga <type>' command line
switch, which in turn causes trouble if you are creating your gfx card
using '-device VGA,<props>'.

This patch adds a variable default_vga which says whenever a default
serial line should be added.  It is enabled by default.  It is cleared
when qemu finds '-vga' or '-device {VGA,Cirrus VGA,QEMUware SVGA}' on
the command line.

'-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 <address@hidden>
---
 vl.c |    9 ++++++++-
 1 files changed, 8 insertions(+), 1 deletions(-)

diff --git a/vl.c b/vl.c
index e3e035f..444f414 100644
--- a/vl.c
+++ b/vl.c
@@ -193,7 +193,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;
@@ -275,6 +275,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;
@@ -282,6 +283,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)
@@ -4373,6 +4377,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;
@@ -5565,6 +5570,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;
 
     if (qemu_opts_foreach(&qemu_chardev_opts, chardev_init_func, NULL, 1) != 0)
         exit(1);
-- 
1.6.5.2





reply via email to

[Prev in Thread] Current Thread [Next in Thread]