[RFC PATCH v6 0/3] ACPI / EC: Tune the timing of EC events arrival during S3-exit

From: Lv Zheng
Date: Thu Sep 28 2017 - 22:50:26 EST


If EC events occurred during BIOS S3-exit and early OS S3-exit steps can
be detected by OS earlier, then there can be less driver order issues
between acpi_ec_resume() and some other drivers' .resume() hook (e.x.
acpi_button_resume()).

However there are known facts that EC FW does drop EC events during S3,
and it takes time for EC FW to initialize (maximum 1.4 observed) while
Windows acts normally, so detecting EC event earlier might just be a
workaround for other drivers (they should be aware of this order issue and
deal with it themselves). As such, this patchset is marked as an RFC.

If Linux EC driver started to detect events during early OS S3-exit, it
need to timely poll EC events during noirq stages as in this stage there is
no EC event triggering source.

This patchset implements earlier EC event handling for Linux.

Lv Zheng (3):
ACPI / EC: Fix possible driver order issue by moving EC event handling
earlier
ACPI / EC: Add event detection support for noirq stages
ACPI / EC: Enable noirq stage event detection

drivers/acpi/ec.c | 128 +++++++++++++++++++++++++++++++++++++++++++-----
drivers/acpi/internal.h | 1 +
2 files changed, 118 insertions(+), 11 deletions(-)

--
2.7.4