mirror of https://gitee.com/openkylin/qemu.git
x86,MIPS: make vmware_vga optional
Allow failure with vmware_vga device creation and use standard VGA instead. Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
This commit is contained in:
parent
7cc050b165
commit
7ba7e49e6a
|
@ -957,7 +957,11 @@ void mips_malta_init (ram_addr_t ram_size,
|
|||
if (cirrus_vga_enabled) {
|
||||
pci_cirrus_vga_init(pci_bus);
|
||||
} else if (vmsvga_enabled) {
|
||||
pci_vmsvga_init(pci_bus);
|
||||
if (!pci_vmsvga_init(pci_bus)) {
|
||||
fprintf(stderr, "Warning: vmware_vga not available,"
|
||||
" using standard VGA instead\n");
|
||||
pci_vga_init(pci_bus);
|
||||
}
|
||||
} else if (std_vga_enabled) {
|
||||
pci_vga_init(pci_bus);
|
||||
}
|
||||
|
|
11
hw/pc.c
11
hw/pc.c
|
@ -1053,10 +1053,15 @@ void pc_vga_init(PCIBus *pci_bus)
|
|||
isa_cirrus_vga_init();
|
||||
}
|
||||
} else if (vmsvga_enabled) {
|
||||
if (pci_bus)
|
||||
pci_vmsvga_init(pci_bus);
|
||||
else
|
||||
if (pci_bus) {
|
||||
if (!pci_vmsvga_init(pci_bus)) {
|
||||
fprintf(stderr, "Warning: vmware_vga not available,"
|
||||
" using standard VGA instead\n");
|
||||
pci_vga_init(pci_bus);
|
||||
}
|
||||
} else {
|
||||
fprintf(stderr, "%s: vmware_vga: no PCI bus\n", __FUNCTION__);
|
||||
}
|
||||
#ifdef CONFIG_SPICE
|
||||
} else if (qxl_enabled) {
|
||||
if (pci_bus)
|
||||
|
|
|
@ -4,9 +4,16 @@
|
|||
#include "qemu-common.h"
|
||||
|
||||
/* vmware_vga.c */
|
||||
static inline void pci_vmsvga_init(PCIBus *bus)
|
||||
static inline bool pci_vmsvga_init(PCIBus *bus)
|
||||
{
|
||||
pci_create_simple(bus, -1, "vmware-svga");
|
||||
PCIDevice *dev;
|
||||
|
||||
dev = pci_try_create(bus, -1, "vmware-svga");
|
||||
if (!dev || qdev_init(&dev->qdev) < 0) {
|
||||
return false;
|
||||
} else {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
#endif
|
||||
|
|
Loading…
Reference in New Issue