Patchwork Regression: more 0.12 regression (SeaBIOS related?)

login
register
mail settings
Submitter Roy Tam
Date March 8, 2010, 1:48 p.m.
Message ID <473191351003080548h72dbfbdaje5e10f7aa7bdf08b@mail.gmail.com>
Download mbox | patch
Permalink /patch/47116/
State New
Headers show

Comments

Roy Tam - March 8, 2010, 1:48 p.m.
2010/3/8 Roy Tam <roytam@gmail.com>:
> the following hack reenables QEMU/Bochs BIOS booting with -vga std
> (for both pc and isapc):

a more complete hack, cirrus vga will work too:
---

Patch

diff --git a/hw/cirrus_vga.c b/hw/cirrus_vga.c
index 9f61a01..3a12eaa 100644
--- a/hw/cirrus_vga.c
+++ b/hw/cirrus_vga.c
@@ -3131,6 +3131,11 @@  void isa_cirrus_vga_init(void)
                                      &s->vga);
     vmstate_register(0, &vmstate_cirrus_vga, s);
     rom_add_vga(VGABIOS_CIRRUS_FILENAME);
+
+    /* XXX Bochs BIOS re-enable hack */
+#ifdef TARGET_I386
+    rom_add_file_fixed(VGABIOS_CIRRUS_FILENAME, 0xc0000);
+#endif
     /* XXX ISA-LFB support */
 }

@@ -3217,6 +3222,11 @@  static int pci_cirrus_vga_initfn(PCIDevice *dev)
 void pci_cirrus_vga_init(PCIBus *bus)
 {
     pci_create_simple(bus, -1, "cirrus-vga");
+
+    /* XXX Bochs BIOS re-enable hack */
+#ifdef TARGET_I386
+    rom_add_file_fixed(VGABIOS_CIRRUS_FILENAME, 0xc0000);
+#endif
 }

 static PCIDeviceInfo cirrus_vga_info = {
diff --git a/hw/vga-isa.c b/hw/vga-isa.c
index 7937144..5ef91a6 100644
--- a/hw/vga-isa.c
+++ b/hw/vga-isa.c
@@ -45,5 +45,10 @@  int isa_vga_init(void)
     vga_init_vbe(s);
     /* ROM BIOS */
     rom_add_vga(VGABIOS_FILENAME);
+
+    /* XXX Bochs BIOS re-enable hack */
+#ifdef TARGET_I386
+    rom_add_file_fixed(VGABIOS_FILENAME, 0xc0000);
+#endif
     return 0;
 }
diff --git a/hw/vga-pci.c b/hw/vga-pci.c
index eef78ed..105a277 100644
--- a/hw/vga-pci.c
+++ b/hw/vga-pci.c
@@ -109,6 +109,11 @@  static int pci_vga_initfn(PCIDevice *dev)
     vga_init_vbe(s);
      /* ROM BIOS */
      rom_add_vga(VGABIOS_FILENAME);
+
+    /* XXX Bochs BIOS re-enable hack */
+#ifdef TARGET_I386
+     rom_add_file_fixed(VGABIOS_FILENAME, 0xc0000);
+#endif
      return 0;
 }