[RFT][PATCH 2/2] ACPI: PM: Loop in full LPS0 mode only

From: Rafael J. Wysocki
Date: Mon Dec 17 2018 - 06:24:09 EST


From: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

After a previous change, all non-wakeup GPEs are disabled for
suspend-to-idle unless full Low-Power S0 (LPS0) mode is in use, so
it is not necessary to do anything in acpi_s2idle_wake() unless in
full LPS0 mode, which is when lps0_device_handle is set only.

Modify the code accordingly.

Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>
---
drivers/acpi/sleep.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)

Index: linux-pm/drivers/acpi/sleep.c
===================================================================
--- linux-pm.orig/drivers/acpi/sleep.c
+++ linux-pm/drivers/acpi/sleep.c
@@ -985,6 +985,8 @@ static int acpi_s2idle_prepare(void)

static void acpi_s2idle_wake(void)
{
+ if (!lps0_device_handle)
+ return;

if (pm_debug_messages_on)
lpi_check_constraints();
@@ -1003,8 +1005,7 @@ static void acpi_s2idle_wake(void)
* takes too much time for EC wakeup events to survive, so look
* for them now.
*/
- if (lps0_device_handle)
- acpi_ec_dispatch_gpe();
+ acpi_ec_dispatch_gpe();
}
}