Message ID | 20200714124556.20294-1-sudeep.holla@arm.com (mailing list archive) |
---|---|
State | Mainlined |
Commit | 4df2ef85f0efe44505f511ca5e4455585f53a2da |
Headers | show |
Series | rtc: pl031: fix set_alarm by adding back call to alarm_irq_enable | expand |
On 14/07/20 13:45, Sudeep Holla wrote: > Commit c8ff5841a90b ("rtc: pl031: switch to rtc_time64_to_tm/rtc_tm_to_time64") > seemed to have accidentally removed the call to pl031_alarm_irq_enable > from pl031_set_alarm while switching to 64-bit apis. > > Let us add back the same to get the set alarm functionality back. > > Fixes: c8ff5841a90b ("rtc: pl031: switch to rtc_time64_to_tm/rtc_tm_to_time64") > Cc: Linus Walleij <linus.walleij@linaro.org> > Cc: Alexandre Belloni <alexandre.belloni@bootlin.com> > Signed-off-by: Sudeep Holla <sudeep.holla@arm.com> Thanks for looking into this! CONFIG_TEST_SUSPEND with test_suspend=mem now behaves correctly (i.e. comes back out of suspend), and $ rtcwake -d /dev/rtc0 -s 2 -m no shows an increase in RTC interrupts (which remains at 0 before this patch). Tested-by: Valentin Schneider <valentin.schneider@arm.com> > --- > drivers/rtc/rtc-pl031.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/drivers/rtc/rtc-pl031.c b/drivers/rtc/rtc-pl031.c > index 40d7450a1ce4..c6b89273feba 100644 > --- a/drivers/rtc/rtc-pl031.c > +++ b/drivers/rtc/rtc-pl031.c > @@ -275,6 +275,7 @@ static int pl031_set_alarm(struct device *dev, struct rtc_wkalrm *alarm) > struct pl031_local *ldata = dev_get_drvdata(dev); > > writel(rtc_tm_to_time64(&alarm->time), ldata->base + RTC_MR); > + pl031_alarm_irq_enable(dev, alarm->enabled); > > return 0; > }
On Tue, 14 Jul 2020 13:45:56 +0100, Sudeep Holla wrote: > Commit c8ff5841a90b ("rtc: pl031: switch to rtc_time64_to_tm/rtc_tm_to_time64") > seemed to have accidentally removed the call to pl031_alarm_irq_enable > from pl031_set_alarm while switching to 64-bit apis. > > Let us add back the same to get the set alarm functionality back. Applied, thanks! [1/1] rtc: pl031: fix set_alarm by adding back call to alarm_irq_enable commit: 4df2ef85f0efe44505f511ca5e4455585f53a2da Best regards,
diff --git a/drivers/rtc/rtc-pl031.c b/drivers/rtc/rtc-pl031.c index 40d7450a1ce4..c6b89273feba 100644 --- a/drivers/rtc/rtc-pl031.c +++ b/drivers/rtc/rtc-pl031.c @@ -275,6 +275,7 @@ static int pl031_set_alarm(struct device *dev, struct rtc_wkalrm *alarm) struct pl031_local *ldata = dev_get_drvdata(dev); writel(rtc_tm_to_time64(&alarm->time), ldata->base + RTC_MR); + pl031_alarm_irq_enable(dev, alarm->enabled); return 0; }
Commit c8ff5841a90b ("rtc: pl031: switch to rtc_time64_to_tm/rtc_tm_to_time64") seemed to have accidentally removed the call to pl031_alarm_irq_enable from pl031_set_alarm while switching to 64-bit apis. Let us add back the same to get the set alarm functionality back. Fixes: c8ff5841a90b ("rtc: pl031: switch to rtc_time64_to_tm/rtc_tm_to_time64") Cc: Linus Walleij <linus.walleij@linaro.org> Cc: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Sudeep Holla <sudeep.holla@arm.com> --- drivers/rtc/rtc-pl031.c | 1 + 1 file changed, 1 insertion(+)