Clean up VGA type selection; far too many variables being used to track one state leads to confusion if new variables are added.

Signed-off-by: Zachary Amsden <zamsden@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
This commit is contained in:
Zachary Amsden 2009-07-30 00:15:02 -10:00 committed by Anthony Liguori
parent 52c18be9e9
commit 861767594b
2 changed files with 17 additions and 16 deletions

View File

@ -99,10 +99,17 @@ typedef enum DisplayType
extern int autostart;
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;

18
vl.c
View File

@ -191,10 +191,7 @@ int vm_running;
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;
@ -4488,18 +4485,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);