[SeaBIOS] [PATCH 2/2] acpi: clear up/down bits on interrupt

Michael S. Tsirkin mst at redhat.com
Wed Mar 28 17:31:09 CEST 2012


qemu added a way for bios to clear bits
in the up/down register. Do this in PCNF so that
we wont trigger multiple events for the
same slot.

This does nothing when running on an old qemu.

Signed-off-by: Michael S. Tsirkin <mst at redhat.com>
---
 src/acpi-dsdt.dsl |    9 +++++++++
 1 files changed, 9 insertions(+), 0 deletions(-)

diff --git a/src/acpi-dsdt.dsl b/src/acpi-dsdt.dsl
index 15201e9..e17e0e2 100644
--- a/src/acpi-dsdt.dsl
+++ b/src/acpi-dsdt.dsl
@@ -132,6 +132,13 @@ DefinitionBlock (
                 B0EJ, 32,
             }
 
+            OperationRegion(PCCL, SystemIO, 0xae10, 0x08)
+            Field (PCST, DWordAcc, NoLock, WriteAsZeros)
+            {
+                PCCU, 32,
+                PCCD, 32,
+            }
+
             Name (_CRS, ResourceTemplate ()
             {
                 WordBusNumber (ResourceProducer, MinFixed, MaxFixed, PosDecode,
@@ -489,6 +496,8 @@ DefinitionBlock (
             Store (Zero, Local0)
             Store (PCIU, Local1)
             Store (PCID, Local2)
+            Store (Local1, PCCU)
+            Store (Local2, PCCD)
             While (LLess(Local0, 31)) {
                 Increment(Local0)
                 If (And(Local1, ShiftLeft(1, Local0))) {
-- 
1.7.9.111.gf3fb0



More information about the SeaBIOS mailing list