From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([140.186.70.92]:50801) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Q9Vw5-0007YG-Fs for qemu-devel@nongnu.org; Tue, 12 Apr 2011 01:14:46 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Q9Vw4-0005uZ-I3 for qemu-devel@nongnu.org; Tue, 12 Apr 2011 01:14:45 -0400 Received: from [222.73.24.84] (port=50299 helo=song.cn.fujitsu.com) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Q9Vw4-0005pV-9R for qemu-devel@nongnu.org; Tue, 12 Apr 2011 01:14:44 -0400 Message-ID: <4DA3DF6B.8010308@cn.fujitsu.com> Date: Tue, 12 Apr 2011 13:13:15 +0800 From: Wen Congyang MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=ISO-8859-1 Subject: [Qemu-devel] [PATCH] fix acpi regression List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Isaku Yamahata , Aurelien Jarno , qemu-devel , blauwirbel@gmail.com This bug is introduced by commit 23910d3f. Signed-off-by: Wen Congyang --- 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