This patch series tries to simplify ISA/PCI video card initialization and to avoid having the same (buggy) code more or less duplicated in various machines.
It creates a new isa_vga_init() and a new pci_vga_init() functions that take care of initializing the requested ISA/PCI video card. It avoid duplication and also has the advantage that newly added PCI video cards are available to all machines without having to touch machine specific code, and that selecting a disabled video card returns an error message to the user. Changes v1 -> v2: - Do the same for ISA in addition to PCI, and use that in pc and mips_r4k machines - Query availability of video cards with QOM instead of qdev_exists() and get rid of the latter function at the same time. - Default to std if cirrus is not available Aurelien Jarno (17): vga: rename pci_vga_init() into pci_std_vga_init() vga: rename isa_vga_init() to isa_std_vga_init() vl.c: convert *vga_enabled functions to QOM vl.c: check for qxl availability vl.c: default to std if cirrus is not available pci: add a pci_vga_init() function isa: add a isa_vga_init() function mips/malta: use the new pci_vga_init() function alpha: use the new pci_vga_init() function ppc/newworld: use the new pci_vga_init() function ppc/oldworld: use the new pci_vga_init() function ppc/prep: use the new pci_vga_init() function ppc/pSeries: use the new pci_vga_init() function sun/sun4u: use the new pci_vga_init() function pc: use the new pci_vga_init() and isa_vga_init() functions mips/r4k: use the new is_vga_init() function vga: cleanup after isa_vga_init() and pci_vga_init() conversion hw/alpha_dp264.c | 2 +- hw/alpha_pci.c | 24 ------------------------ hw/alpha_sys.h | 2 -- hw/cirrus_vga.c | 6 ------ hw/isa-bus.c | 20 ++++++++++++++++++++ hw/isa.h | 2 ++ hw/mips_malta.c | 10 +--------- hw/pc.c | 35 ++++++----------------------------- hw/pc.h | 13 ------------- hw/pci.c | 18 ++++++++++++++++++ hw/pci.h | 3 +++ hw/ppc_newworld.c | 1 - hw/ppc_oldworld.c | 1 - hw/ppc_prep.c | 1 - hw/qdev.c | 5 ----- hw/qdev.h | 1 - hw/spapr.c | 7 ++----- hw/sun4u.c | 1 - hw/vga-pci.c | 10 ++-------- hw/vga-pci.h | 12 ------------ hw/vmware_vga.c | 1 - hw/vmware_vga.h | 15 --------------- sysemu.h | 3 --- vl.c | 27 +++++++++++++++++++++------ 24 files changed, 76 insertions(+), 144 deletions(-) delete mode 100644 hw/vga-pci.h delete mode 100644 hw/vmware_vga.h -- 1.7.10.4