[SeaBIOS] [PATCH] if HPET is not present do not report it in DSDT

Gleb Natapov gleb at redhat.com
Sun Mar 11 09:08:38 CET 2012


Replicate the check that detects if HPET table should be created
in AML too.

Signed-off-by: Gleb Natapov <gleb at redhat.com>
diff --git a/src/acpi-dsdt.dsl b/src/acpi-dsdt.dsl
index 7082b65..4e04c48 100644
--- a/src/acpi-dsdt.dsl
+++ b/src/acpi-dsdt.dsl
@@ -188,8 +188,22 @@ DefinitionBlock (
         Device(HPET) {
             Name(_HID,  EISAID("PNP0103"))
             Name(_UID, 0)
+            OperationRegion(HPTM, SystemMemory , 0xFED00000, 0x400)
+            Field(HPTM, DWordAcc, Lock, Preserve) {
+                    VEND, 32,
+                    PRD, 32,
+            }
             Method (_STA, 0, NotSerialized) {
-                    Return(0x0F)
+                    Store (VEND, Local0)
+                    Store (PRD, Local1)
+                    ShiftRight(Local0, 16, Local0)
+                    If (LOr (LEqual(Local0, 0), LEqual(Local0, 0xffff))) {
+                            Return (0x0)
+                    }
+                    If (LOr (LEqual(Local1, 0), LGreater(Local1, 100000000))) {
+                            Return (0x0)
+                    }
+                    Return (0x0F)
             }
             Name(_CRS, ResourceTemplate() {
                 DWordMemory(
--
			Gleb.



More information about the SeaBIOS mailing list