Alexander Couzens (lynxis@fe80.eu) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/10797
-gerrit
commit 14dbdd53a4a35e83314d11460da40c873b612e1f Author: Alexander Couzens lynxis@fe80.eu Date: Thu Jul 2 16:58:19 2015 +0200
lenovo/x201: run `enable acpi` smi before s3 resume
Fix missing ec event bug. After multiple suspend resume cycles no EC events are processed because the EC doesn't notice the OSPM anymore.
Calling the acpi resume handler fixes this by calling: ec_write(0x80, 0x01); /* discard all events, and enable attention */
Change-Id: I157e69e6e1e643c7b5d94f5efd87adf899b15443 Signed-off-by: Alexander Couzens lynxis@fe80.eu --- src/mainboard/lenovo/x201/mainboard.c | 6 ++++++ 1 file changed, 6 insertions(+)
diff --git a/src/mainboard/lenovo/x201/mainboard.c b/src/mainboard/lenovo/x201/mainboard.c index 62e4fc9..ff13fb7 100644 --- a/src/mainboard/lenovo/x201/mainboard.c +++ b/src/mainboard/lenovo/x201/mainboard.c @@ -122,6 +122,12 @@ static void mainboard_enable(device_t dev)
}
+void mainboard_suspend_resume(void) +{ + /* Enable ACPI mode before OS resume */ + outb(0xe1, 0xb2); +} + struct chip_operations mainboard_ops = { .enable_dev = mainboard_enable, };