Match values with the ones documented in the PIIX4 datasheet.
authorths <ths@c046a42c-6fe2-441c-8c8c-71466251a162>
Tue, 9 Oct 2007 11:41:47 +0000 (11:41 +0000)
committerths <ths@c046a42c-6fe2-441c-8c8c-71466251a162>
Tue, 9 Oct 2007 11:41:47 +0000 (11:41 +0000)
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3377 c046a42c-6fe2-441c-8c8c-71466251a162

hw/acpi.c

index 37fadaa..6e3f69e 100644 (file)
--- a/hw/acpi.c
+++ b/hw/acpi.c
@@ -400,7 +400,7 @@ static void pm_io_space_update(PIIX4PMState *s)
 
     if (s->dev.config[0x80] & 1) {
         pm_io_base = le32_to_cpu(*(uint32_t *)(s->dev.config + 0x40));
-        pm_io_base &= 0xfffe;
+        pm_io_base &= 0xffc0;
 
         /* XXX: need to improve memory and ioport allocation */
 #if defined(DEBUG)
@@ -474,6 +474,8 @@ i2c_bus *piix4_pm_init(PCIBus *bus, int devfn, uint32_t smb_io_base)
     pci_conf[0x01] = 0x80;
     pci_conf[0x02] = 0x13;
     pci_conf[0x03] = 0x71;
+    pci_conf[0x06] = 0x80;
+    pci_conf[0x07] = 0x02;
     pci_conf[0x08] = 0x00; // revision number
     pci_conf[0x09] = 0x00;
     pci_conf[0x0a] = 0x80; // other bridge device