On Tue, Jan 03, 2017 at 10:01:25AM +1100, David Gibson wrote: > On Thu, Dec 29, 2016 at 11:12:11PM +0100, Hervé Poussineau wrote: > > This is in fact a split of pci_vga_init() function in two parts. > > > > Signed-off-by: Hervé Poussineau <hpous...@reactos.org> > > Reviewed-by: David Gibson <da...@gibson.dropbear.id.au> > > I think it needs Michael or someone to merge it though.
Do we have to keep poking at pci_vga_type? I'd rather people just used -device for everything. > > --- > > hw/pci/pci.c | 22 ++++++++++++++++------ > > include/hw/pci/pci.h | 1 + > > 2 files changed, 17 insertions(+), 6 deletions(-) > > > > diff --git a/hw/pci/pci.c b/hw/pci/pci.c > > index 24fae16..0d5a862 100644 > > --- a/hw/pci/pci.c > > +++ b/hw/pci/pci.c > > @@ -1816,19 +1816,19 @@ PCIDevice *pci_nic_init_nofail(NICInfo *nd, PCIBus > > *rootbus, > > return pci_dev; > > } > > > > -PCIDevice *pci_vga_init(PCIBus *bus) > > +const char *pci_vga_type(void) > > { > > switch (vga_interface_type) { > > case VGA_CIRRUS: > > - return pci_create_simple(bus, -1, "cirrus-vga"); > > + return "cirrus-vga"; > > case VGA_QXL: > > - return pci_create_simple(bus, -1, "qxl-vga"); > > + return "qxl-vga"; > > case VGA_STD: > > - return pci_create_simple(bus, -1, "VGA"); > > + return "VGA"; > > case VGA_VMWARE: > > - return pci_create_simple(bus, -1, "vmware-svga"); > > + return "vmware-svga"; > > case VGA_VIRTIO: > > - return pci_create_simple(bus, -1, "virtio-vga"); > > + return "virtio-vga"; > > case VGA_NONE: > > default: /* Other non-PCI types. Checking for unsupported types is > > already > > done in vl.c. */ > > @@ -1836,6 +1836,16 @@ PCIDevice *pci_vga_init(PCIBus *bus) > > } > > } > > > > +PCIDevice *pci_vga_init(PCIBus *bus) > > +{ > > + const char *vga_type = pci_vga_type(); > > + if (vga_type) { > > + return pci_create_simple(bus, -1, vga_type); > > + } else { > > + return NULL; > > + } > > +} > > + > > /* Whether a given bus number is in range of the secondary > > * bus of the given bridge device. */ > > static bool pci_secondary_bus_in_range(PCIDevice *dev, int bus_num) > > diff --git a/include/hw/pci/pci.h b/include/hw/pci/pci.h > > index 772692f..aa8d014 100644 > > --- a/include/hw/pci/pci.h > > +++ b/include/hw/pci/pci.h > > @@ -420,6 +420,7 @@ PCIDevice *pci_nic_init_nofail(NICInfo *nd, PCIBus > > *rootbus, > > const char *default_model, > > const char *default_devaddr); > > > > +const char *pci_vga_type(void); > > PCIDevice *pci_vga_init(PCIBus *bus); > > > > int pci_bus_num(PCIBus *s); > > -- > David Gibson | I'll have my music baroque, and my code > david AT gibson.dropbear.id.au | minimalist, thank you. NOT _the_ > _other_ > | _way_ _around_! > http://www.ozlabs.org/~dgibson