[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH] fix acpi regression
From: |
Wen Congyang |
Subject: |
[Qemu-devel] [PATCH] fix acpi regression |
Date: |
Tue, 12 Apr 2011 13:13:15 +0800 |
User-agent: |
Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.9) Gecko/20100413 Fedora/3.0.4-2.fc13 Thunderbird/3.0.4 |
This bug is introduced by commit 23910d3f.
Signed-off-by: Wen Congyang <address@hidden>
---
hw/acpi.c | 10 +++-------
1 files changed, 3 insertions(+), 7 deletions(-)
diff --git a/hw/acpi.c b/hw/acpi.c
index e372474..790bd3b 100644
--- a/hw/acpi.c
+++ b/hw/acpi.c
@@ -355,7 +355,7 @@ static uint8_t *acpi_gpe_ioport_get_ptr(ACPIGPE *gpe,
uint32_t addr)
if (addr < gpe->len / 2) {
cur = gpe->sts + addr;
} else if (addr < gpe->len) {
- cur = gpe->en + addr;
+ cur = gpe->en + addr - gpe->len / 2;
} else {
abort();
}
@@ -369,12 +369,8 @@ void acpi_gpe_ioport_writeb(ACPIGPE *gpe, uint32_t addr,
uint32_t val)
addr -= gpe->blk;
cur = acpi_gpe_ioport_get_ptr(gpe, addr);
- if (addr < gpe->len / 2) {
- /* GPE_STS */
- *cur = (*cur) & ~val;
- } else if (addr < gpe->len) {
- /* GPE_EN */
- *cur = val;
+ if (cur != NULL) {
+ *cur = val & 0xff;
} else {
abort();
}
--
1.7.1