On Thu, Oct 09, 2014 at 09:06:32PM +0200, Johan Hovold wrote: > The ALARM interrupt must not be disabled during shutdown in order to be > able to power up the system using an RTC alarm. > > Signed-off-by: Johan Hovold <johan@xxxxxxxxxx> nicely done! Reviewed-by: Felipe Balbi <balbi@xxxxxx> > --- > drivers/rtc/rtc-omap.c | 10 +++++++++- > 1 file changed, 9 insertions(+), 1 deletion(-) > > diff --git a/drivers/rtc/rtc-omap.c b/drivers/rtc/rtc-omap.c > index b0319864dd42..8836c58901b5 100644 > --- a/drivers/rtc/rtc-omap.c > +++ b/drivers/rtc/rtc-omap.c > @@ -670,7 +670,15 @@ static SIMPLE_DEV_PM_OPS(omap_rtc_pm_ops, omap_rtc_suspend, omap_rtc_resume); > > static void omap_rtc_shutdown(struct platform_device *pdev) > { > - rtc_write(0, OMAP_RTC_INTERRUPTS_REG); > + u8 mask; > + > + /* > + * Keep the ALARM interrupt enabled to allow the system to power up on > + * alarm events. > + */ > + mask = rtc_read(OMAP_RTC_INTERRUPTS_REG); > + mask &= OMAP_RTC_INTERRUPTS_IT_ALARM; > + rtc_write(mask, OMAP_RTC_INTERRUPTS_REG); > } > > MODULE_ALIAS("platform:omap_rtc"); > -- > 2.0.4 > -- balbi
Attachment:
signature.asc
Description: Digital signature