On 2011-10-16 18:45, Blue Swirl wrote: > On Sun, Oct 9, 2011 at 10:47 AM, Jan Kiszka <jan.kis...@web.de> wrote: >> On 2011-10-09 12:22, Blue Swirl wrote: >>> Signed-off-by: Blue Swirl <blauwir...@gmail.com> >>> --- >>> hw/cirrus_vga.c | 5 ----- >>> hw/pc.c | 6 +++++- >>> hw/pc.h | 26 ++++++++++++++++++++++++-- >>> hw/pci.c | 18 ++++++++++++++++++ >>> hw/pci.h | 4 ++++ >>> hw/vga-pci.c | 6 ------ >>> 6 files changed, 51 insertions(+), 14 deletions(-) >>> >>> diff --git a/hw/cirrus_vga.c b/hw/cirrus_vga.c >>> index c7e365b..a11444c 100644 >>> --- a/hw/cirrus_vga.c >>> +++ b/hw/cirrus_vga.c >>> @@ -2955,11 +2955,6 @@ static int pci_cirrus_vga_initfn(PCIDevice *dev) >>> return 0; >>> } >>> >>> -void pci_cirrus_vga_init(PCIBus *bus) >>> -{ >>> - pci_create_simple(bus, -1, "cirrus-vga"); >>> -} >>> - >>> static PCIDeviceInfo cirrus_vga_info = { >>> .qdev.name = "cirrus-vga", >>> .qdev.desc = "Cirrus CLGD 54xx VGA", >>> diff --git a/hw/pc.c b/hw/pc.c >>> index 203627d..97f93d4 100644 >>> --- a/hw/pc.c >>> +++ b/hw/pc.c >>> @@ -1068,7 +1068,11 @@ void pc_vga_init(PCIBus *pci_bus) >>> { >>> if (cirrus_vga_enabled) { >>> if (pci_bus) { >>> - pci_cirrus_vga_init(pci_bus); >>> + if (!pci_cirrus_vga_init(pci_bus)) { >>> + fprintf(stderr, "Warning: cirrus_vga not available," >>> + " using standard VGA instead\n"); >>> + pci_vga_init(pci_bus); >>> + } >> >> If you adjust the default vga interface in case cirrus is configured >> out, you can simply fail here. Would be more user-friendly, specifically >> if the user actually specified -vga cirrus. > > This matches how vmsvga is handled. Maybe the logic should be pushed > to vl.c where the -vga switch is handled instead.
Definitely. This approach is creating too much boilerplate code. Jan
signature.asc
Description: OpenPGP digital signature