From patchwork Fri May 14 07:29:12 2010 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: [14/26] pc: split out vga initialization from pc_init1() into pc_vga_init(). Date: Thu, 13 May 2010 21:29:12 -0000 From: Isaku Yamahata X-Patchwork-Id: 52581 Message-Id: <610a96899ab43eef30eb414b3b47abf8e08e6d2a.1273821065.git.yamahata@valinux.co.jp> To: qemu-devel@nongnu.org Cc: blauwirbel@gmail.com, yamahata@valinux.co.jp, kraxel@redhat.com Split out vga initialization which is independent of piix from pc_init1() as pc_vga_init(). Later it will be used. Signed-off-by: Isaku Yamahata Acked-by: Gerd Hoffmann --- hw/pc.c | 41 +++++++++++++++++++++++------------------ 1 files changed, 23 insertions(+), 18 deletions(-) diff --git a/hw/pc.c b/hw/pc.c index 2e37c63..53df13d 100644 --- a/hw/pc.c +++ b/hw/pc.c @@ -929,6 +929,28 @@ static void pc_memory_init(ram_addr_t ram_size, } } +static void pc_vga_init(PCIBus *pci_bus) +{ + if (cirrus_vga_enabled) { + if (pci_bus) { + pci_cirrus_vga_init(pci_bus); + } else { + isa_cirrus_vga_init(); + } + } else if (vmsvga_enabled) { + if (pci_bus) + pci_vmsvga_init(pci_bus); + else + fprintf(stderr, "%s: vmware_vga: no PCI bus\n", __FUNCTION__); + } else if (std_vga_enabled) { + if (pci_bus) { + pci_vga_init(pci_bus, 0, 0); + } else { + isa_vga_init(); + } + } +} + /* PC hardware initialisation */ static void pc_init1(ram_addr_t ram_size, const char *boot_device, @@ -987,24 +1009,7 @@ static void pc_init1(ram_addr_t ram_size, register_ioport_write(0xf0, 1, 1, ioportF0_write, NULL); - if (cirrus_vga_enabled) { - if (pci_enabled) { - pci_cirrus_vga_init(pci_bus); - } else { - isa_cirrus_vga_init(); - } - } else if (vmsvga_enabled) { - if (pci_enabled) - pci_vmsvga_init(pci_bus); - else - fprintf(stderr, "%s: vmware_vga: no PCI bus\n", __FUNCTION__); - } else if (std_vga_enabled) { - if (pci_enabled) { - pci_vga_init(pci_bus, 0, 0); - } else { - isa_vga_init(); - } - } + pc_vga_init(pci_enabled? pci_bus: NULL); rtc_state = rtc_init(2000);