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 59b203e29c3a74184a8c2ec0a16075b6d231c247 Author: Alexander Couzens lynxis@fe80.eu Date: Thu Jul 2 16:58:19 2015 +0200
lenovo/x201: run `enable acpi` smi before s3 resume
Fixes missing ec event bug. After multiple suspend-resume cycle no EC event are processed because the EC doesn't notice the OSPM anymore.
Calling the acpi resume handler fix this mainly 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 | 7 +++++++ 1 file changed, 7 insertions(+)
diff --git a/src/mainboard/lenovo/x201/mainboard.c b/src/mainboard/lenovo/x201/mainboard.c index 62e4fc9..c14f699 100644 --- a/src/mainboard/lenovo/x201/mainboard.c +++ b/src/mainboard/lenovo/x201/mainboard.c @@ -122,6 +122,13 @@ 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, }; +