Commit b45bae36 authored by Paul Fox's avatar Paul Fox Committed by Rafael J. Wysocki

rtc-cmos: report wakeups from interrupt handler

When suspending the system with an important RTC wake alarm active,
it is possible that the RTC alarm will expire before the system has
gone to sleep (e.g. short alarm timer, or an unusually long suspend
routine).

If this happens, the RTC alarm should trigger a wakeup event, possibly
aborting system suspend. This condition can be detected in the form
of an RTC alarm interrupt.
Signed-off-by: default avatarPaul Fox <pgf@laptop.org>
Signed-off-by: default avatarDaniel Drake <dsd@laptop.org>
Signed-off-by: default avatarRafael J. Wysocki <rjw@sisk.pl>
parent 4f31f5b1
......@@ -568,6 +568,7 @@ static irqreturn_t cmos_interrupt(int irq, void *p)
hpet_mask_rtc_irq_bit(RTC_AIE);
CMOS_READ(RTC_INTR_FLAGS);
pm_wakeup_event(cmos_rtc.dev, 0);
}
spin_unlock(&rtc_lock);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment