]> git.baikalelectronics.ru Git - kernel.git/commit
ACPI: PM: s2idle: Rework ACPI events synchronization
authorRafael J. Wysocki <rafael.j.wysocki@intel.com>
Thu, 28 Nov 2019 22:50:40 +0000 (23:50 +0100)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Mon, 2 Dec 2019 08:23:23 +0000 (09:23 +0100)
commit22b9400ed722eb50fd5dfdcb5608f6f2692ee098
treec892be7d056673104835d129d78eaec769865180
parent1b82bffc7cec42160c625f9468e61fef0ca8476e
ACPI: PM: s2idle: Rework ACPI events synchronization

Note that the EC GPE processing need not be synchronized in
acpi_s2idle_wake() after invoking acpi_ec_dispatch_gpe(), because
that function checks the GPE status and dispatches its handler if
need be and the SCI action handler is not going to run anyway at
that point.

Moreover, it is better to drain all of the pending ACPI events
before restoring the working-state configuration of GPEs in
acpi_s2idle_restore(), because those events are likely to be related
to system wakeup, in which case they will not be relevant going
forward.

Rework the code to take these observations into account.

Tested-by: Kenneth R. Crudup <kenny@panix.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
drivers/acpi/sleep.c