aboutsummaryrefslogtreecommitdiffstats
path: root/hw/acpi.c
diff options
context:
space:
mode:
authorbellard <bellard@c046a42c-6fe2-441c-8c8c-71466251a162>2006-06-14 18:17:04 +0000
committerbellard <bellard@c046a42c-6fe2-441c-8c8c-71466251a162>2006-06-14 18:17:04 +0000
commit1ce549abf9192681a482e3c05a9587693219e9be (patch)
tree640e64876907fee0d4161d36c1032c1c909336c4 /hw/acpi.c
parenta08beb33cdce6b9009fd8b744ed66453f127e78e (diff)
more ACPI definition to keep Solaris Happy (Juergen Kiel)
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@1981 c046a42c-6fe2-441c-8c8c-71466251a162
Diffstat (limited to 'hw/acpi.c')
-rw-r--r--hw/acpi.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/hw/acpi.c b/hw/acpi.c
index 8fb054428..6c20a4e93 100644
--- a/hw/acpi.c
+++ b/hw/acpi.c
@@ -240,7 +240,6 @@ void piix4_pm_init(PCIBus *bus, int devfn)
pci_conf[0x0b] = 0x06; // bridge device
pci_conf[0x0e] = 0x00; // header_type
pci_conf[0x3d] = 0x01; // interrupt pin 1
- pci_conf[0x60] = 0x10; // release number
pm_io_base = PM_IO_BASE;
pci_conf[0x40] = pm_io_base | 1;
@@ -253,6 +252,13 @@ void piix4_pm_init(PCIBus *bus, int devfn)
register_ioport_write(SMI_CMD_IO_ADDR, 1, 1, smi_cmd_writeb, s);
register_ioport_write(ACPI_DBG_IO_ADDR, 4, 4, acpi_dbg_writel, s);
+ /* XXX: which specification is used ? The i82731AB has different
+ mappings */
+ pci_conf[0x5f] = (parallel_hds[0] != NULL ? 0x80 : 0) | 0x10;
+ pci_conf[0x63] = 0x60;
+ pci_conf[0x67] = (serial_hds[0] != NULL ? 0x08 : 0) |
+ (serial_hds[1] != NULL ? 0x90 : 0);
+
s->tmr_timer = qemu_new_timer(vm_clock, pm_tmr_timer, s);
piix4_pm_state = s;
}