From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1NHyvU-0005kl-7G for qemu-devel@nongnu.org; Tue, 08 Dec 2009 07:12:20 -0500 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1NHyvO-0005h7-0Z for qemu-devel@nongnu.org; Tue, 08 Dec 2009 07:12:18 -0500 Received: from [199.232.76.173] (port=44202 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1NHyvM-0005gS-Sr for qemu-devel@nongnu.org; Tue, 08 Dec 2009 07:12:12 -0500 Received: from mx1.redhat.com ([209.132.183.28]:2410) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1NHyvM-00083X-DL for qemu-devel@nongnu.org; Tue, 08 Dec 2009 07:12:12 -0500 From: Gerd Hoffmann Date: Tue, 8 Dec 2009 13:11:45 +0100 Message-Id: <1260274314-2906-14-git-send-email-kraxel@redhat.com> In-Reply-To: <1260274314-2906-1-git-send-email-kraxel@redhat.com> References: <1260274314-2906-1-git-send-email-kraxel@redhat.com> Subject: [Qemu-devel] [FOR 0.12 PATCH v4 13/22] default devices: vga adapter. List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: Gerd Hoffmann , agraf@suse.de, lcapitulino@redhat.com 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 ' command line switch, which in turn causes trouble if you are creating your gfx card using '-device VGA,'. 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 --- 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