summaryrefslogtreecommitdiff
path: root/hw
diff options
context:
space:
mode:
authorJes Sorensen <jes@sgi.com>2009-08-06 16:25:50 +0200
committerAnthony Liguori <aliguori@us.ibm.com>2009-08-24 08:01:41 -0500
commit6b35e7bf488a894f8d9315d05846aae9bf580425 (patch)
treec9413b3cdd4a92d358effda41624e7dbd40626e8 /hw
parente8b54394950f975c1b31d2359cf58ca4d9f51b00 (diff)
downloadqemu-6b35e7bf488a894f8d9315d05846aae9bf580425.tar.gz
QEMU set irq0override in fw_cfg
Hi, After discussing the issue with Avi, Gleb and a couple others on irq, we came to the conclusion that it is preferred to have QEMU request features from the BIOS, rather than notifying the BIOS that it is running on QEMU or KVM. This way memory ranges can change etc. and an older BIOS will continue to work on newer QEMU if it receives the info as a fw_cfg value. This one also matches what qemu-kvm does for irq0override, except I haven't made it configurable. I leave that as an exercise for whoever would be interested in switching off irq0override. Thanks, Jes Set irq0 override in fw_cfg, informing the BIOS that QEMU expects override on irq0. This matches qemu-kvm, and will help sharing a single BIOS binary. Signed-off-by: Jes Sorensen <jes@sgi.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Diffstat (limited to 'hw')
-rw-r--r--hw/pc.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/hw/pc.c b/hw/pc.c
index cc6e7e8273..09252ba277 100644
--- a/hw/pc.c
+++ b/hw/pc.c
@@ -54,6 +54,7 @@
#define BIOS_CFG_IOPORT 0x510
#define FW_CFG_ACPI_TABLES (FW_CFG_ARCH_LOCAL + 0)
#define FW_CFG_SMBIOS_ENTRIES (FW_CFG_ARCH_LOCAL + 1)
+#define FW_CFG_IRQ0_OVERRIDE (FW_CFG_ARCH_LOCAL + 2)
#define MAX_IDE_BUS 2
@@ -476,6 +477,7 @@ static void *bochs_bios_init(void)
fw_cfg_add_i64(fw_cfg, FW_CFG_RAM_SIZE, (uint64_t)ram_size);
fw_cfg_add_bytes(fw_cfg, FW_CFG_ACPI_TABLES, (uint8_t *)acpi_tables,
acpi_tables_len);
+ fw_cfg_add_bytes(fw_cfg, FW_CFG_IRQ0_OVERRIDE, &irq0override, 1);
smbios_table = smbios_get_table(&smbios_len);
if (smbios_table)