RTC: rtc-cmos: Fix wakeup from suspend-to-idle
authorRafael J. Wysocki <rafael.j.wysocki@intel.com>
Sun, 14 May 2017 00:23:12 +0000 (02:23 +0200)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Sun, 14 May 2017 00:23:12 +0000 (02:23 +0200)
Commit eed4d47efe95 (ACPI / sleep: Ignore spurious SCI wakeups from
suspend-to-idle) modified the core suspend-to-idle code to filter
out spurious SCI interrupts received while suspended, which requires
ACPI event source handlers to report wakeup events in a way that
will trigger a wakeup from suspend to idle (or abort system suspends
in progress, which is equivalent).

That needs to be done in the rtc-cmos driver too, which was overlooked
by the above commit, so do that now.

Fixes: eed4d47efe95 (ACPI / sleep: Ignore spurious SCI wakeups from suspend-to-idle)
Reported-by: David E. Box <david.e.box@linux.intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
drivers/rtc/rtc-cmos.c

index f4a96dbdabf21ec4bdf8017e524ea42b9b0ce5c7..dabe47b9be72b44b828859fac3da9e2db0e44f04 100644 (file)
@@ -1085,7 +1085,7 @@ static u32 rtc_handler(void *context)
        }
        spin_unlock_irqrestore(&rtc_lock, flags);
 
-       pm_wakeup_event(dev, 0);
+       pm_wakeup_hard_event(dev);
        acpi_clear_event(ACPI_EVENT_RTC);
        acpi_disable_event(ACPI_EVENT_RTC, 0);
        return ACPI_INTERRUPT_HANDLED;