[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 04/14] Clean up VGA type selection; far too many var
From: |
Zachary Amsden |
Subject: |
[Qemu-devel] [PATCH 04/14] Clean up VGA type selection; far too many variables being used to track one state leads to confusion if new variables are added. |
Date: |
Thu, 30 Jul 2009 00:15:02 -1000 |
Signed-off-by: Zachary Amsden <address@hidden>
---
sysemu.h | 15 +++++++++++----
vl.c | 18 ++++++------------
2 files changed, 17 insertions(+), 16 deletions(-)
diff --git a/sysemu.h b/sysemu.h
index d77de09..f0e8d22 100644
--- a/sysemu.h
+++ b/sysemu.h
@@ -103,10 +103,17 @@ typedef enum DisplayType
} DisplayType;
extern int bios_size;
-extern int cirrus_vga_enabled;
-extern int std_vga_enabled;
-extern int vmsvga_enabled;
-extern int xenfb_enabled;
+
+typedef enum {
+ VGA_NONE, VGA_STD, VGA_CIRRUS, VGA_VMWARE, VGA_XENFB
+} VGAInterfaceType;
+
+extern int vga_interface_type;
+#define cirrus_vga_enabled (vga_interface_type == VGA_CIRRUS)
+#define std_vga_enabled (vga_interface_type == VGA_STD)
+#define xenfb_enabled (vga_interface_type == VGA_XENFB)
+#define vmsvga_enabled (vga_interface_type == VGA_VMWARE)
+
extern int graphic_width;
extern int graphic_height;
extern int graphic_depth;
diff --git a/vl.c b/vl.c
index 60a00e1..f9d2da6 100644
--- a/vl.c
+++ b/vl.c
@@ -213,10 +213,7 @@ int vm_running;
static int autostart;
static int rtc_utc = 1;
static int rtc_date_offset = -1; /* -1 means no change */
-int cirrus_vga_enabled = 1;
-int std_vga_enabled = 0;
-int vmsvga_enabled = 0;
-int xenfb_enabled = 0;
+int vga_interface_type = VGA_CIRRUS;
#ifdef TARGET_SPARC
int graphic_width = 1024;
int graphic_height = 768;
@@ -4737,18 +4734,15 @@ static void select_vgahw (const char *p)
{
const char *opts;
- cirrus_vga_enabled = 0;
- std_vga_enabled = 0;
- vmsvga_enabled = 0;
- xenfb_enabled = 0;
+ vga_interface_type = VGA_NONE;
if (strstart(p, "std", &opts)) {
- std_vga_enabled = 1;
+ vga_interface_type = VGA_STD;
} else if (strstart(p, "cirrus", &opts)) {
- cirrus_vga_enabled = 1;
+ vga_interface_type = VGA_CIRRUS;
} else if (strstart(p, "vmware", &opts)) {
- vmsvga_enabled = 1;
+ vga_interface_type = VGA_VMWARE;
} else if (strstart(p, "xenfb", &opts)) {
- xenfb_enabled = 1;
+ vga_interface_type = VGA_XENFB;
} else if (!strstart(p, "none", &opts)) {
invalid_vga:
fprintf(stderr, "Unknown vga type: %s\n", p);
--
1.6.2.5
- [Qemu-devel] Various VGA / VNC fixes and cleanups to prep for multiheaded graphics, Zachary Amsden, 2009/07/30
- [Qemu-devel] [PATCH 01/14] Add a configure switch to enable / disable all user targets. I felt compelled to do it for symmetry, mostly it is useful to disable user targets when you don't want to build them., Zachary Amsden, 2009/07/30
- [Qemu-devel] [PATCH 02/14] Don't segfault when changing VNC password on an SDL display., Zachary Amsden, 2009/07/30
- [Qemu-devel] [PATCH 03/14] When using stdio monitor and VNC display, one can set or clear a VNC password; this should set or turn off VNC authentication as well., Zachary Amsden, 2009/07/30
- [Qemu-devel] [PATCH 04/14] Clean up VGA type selection; far too many variables being used to track one state leads to confusion if new variables are added.,
Zachary Amsden <=
- [Qemu-devel] [PATCH 05/14] Change cpu_phys mem callback to use [offset, size) bounds instead of [start, end)., Zachary Amsden, 2009/07/30
- [Qemu-devel] [PATCH 06/14] Split VGA ioport init into a helper function., Zachary Amsden, 2009/07/30
- [Qemu-devel] [PATCH 07/14] Code motion; make mm VGA init function more like standard vga init function. Add missing vga_reset hook to vga_mm_init., Zachary Amsden, 2009/07/30
- [Qemu-devel] [PATCH 08/14] Make VGA vram offset passed into vga_mm_init absolute. Since this is a function of the platform, it makes sense to have it be explicitly known in the platform layer rather than hardcoded inside the vga code., Zachary Amsden, 2009/07/30
- [Qemu-devel] [PATCH 09/14] Further transformation: use common vga_init() which allows either I/O port or memory mapped based control., Zachary Amsden, 2009/07/30
- [Qemu-devel] [PATCH 10/14] Stash VGA physical address and use it in KVM callbacks. Stash VGA physical pointer in cirrus vga as well., Zachary Amsden, 2009/07/30
- [Qemu-devel] [PATCH 11/14] Add some defined constants for VGA offsets., Zachary Amsden, 2009/07/30
- [Qemu-devel] [PATCH 12/14] Add a PCI BAR for the VGA ROM which is mapped into cirrus_vga. This makes the cirrus device complete under some X servers which require the V_BIOS mapping., Zachary Amsden, 2009/07/30
- [Qemu-devel] [PATCH 13/14] Allow cirrus VGA to be initialized multiple times; only the first init takes the ISA memory region and hardware I/O ports., Zachary Amsden, 2009/07/30
- [Qemu-devel] [PATCH 14/14] Atrocious and horrendous patch to demonstrate multiple SDL displays. The multiple SDL displays can be seen on one console, using ctrl-alt-1/2 to switch between them., Zachary Amsden, 2009/07/30