From f5bc638fec96bd89ac5588d99237ed534fa29d7b Mon Sep 17 00:00:00 2001 From: OBattler Date: Tue, 14 Jan 2020 02:52:21 +0100 Subject: [PATCH] Fixed a bug that was causing the VIA chipset to put ACPI onto the wrong base address. --- src/via_vt82c586b.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/via_vt82c586b.c b/src/via_vt82c586b.c index 501175d23..936f8704c 100644 --- a/src/via_vt82c586b.c +++ b/src/via_vt82c586b.c @@ -345,7 +345,7 @@ power_update_io_mapping(via_vt82c586b_t *dev) if (dev->power.io_base != 0x0000) io_removehandler(dev->power.io_base, 0x100, power_reg_read, NULL, NULL, power_reg_write, NULL, NULL, dev); - dev->power.io_base = dev->power_regs[0x41] | (dev->power_regs[0x49] << 8); + dev->power.io_base = (dev->power_regs[0x49] << 8); if ((dev->power_regs[0x41] & ACPI_IO_ENABLE) && (dev->power.io_base != 0x0000)) io_sethandler(dev->power.io_base, 0x100, power_reg_read, NULL, NULL, power_reg_write, NULL, NULL, dev); @@ -565,7 +565,7 @@ via_vt82c586b_write(int func, int addr, uint8_t val, void *priv) case 3: /* Read-only addresses */ - if ((addr < 0xd) || ((addr >= 0xe && addr < 0x40)) || (addr == 0x43) || (addr == 0x48) || + if ((addr < 0xd) || ((addr >= 0xe) && (addr < 0x40)) || (addr == 0x43) || (addr == 0x48) || ((addr >= 0x4a) && (addr < 0x50)) || (addr >= 0x54)) return;