rtc: mv: let the core handle invalid alarms
Instead of lying to the core when the alarm is invalid, let it handle that by returning the error. Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Tested-by: Gregory CLEMENT <gregory.clement@bootlin.com> (on Armada 375 DB) Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
This commit is contained in:
parent
89e27ce498
commit
959e8b77bf
|
@ -125,13 +125,9 @@ static int mv_rtc_read_alarm(struct device *dev, struct rtc_wkalrm *alm)
|
||||||
/* hw counts from year 2000, but tm_year is relative to 1900 */
|
/* hw counts from year 2000, but tm_year is relative to 1900 */
|
||||||
alm->time.tm_year = bcd2bin(year) + 100;
|
alm->time.tm_year = bcd2bin(year) + 100;
|
||||||
|
|
||||||
if (rtc_valid_tm(&alm->time) < 0) {
|
|
||||||
dev_err(dev, "retrieved alarm date/time is not valid.\n");
|
|
||||||
rtc_time_to_tm(0, &alm->time);
|
|
||||||
}
|
|
||||||
|
|
||||||
alm->enabled = !!readl(ioaddr + RTC_ALARM_INTERRUPT_MASK_REG_OFFS);
|
alm->enabled = !!readl(ioaddr + RTC_ALARM_INTERRUPT_MASK_REG_OFFS);
|
||||||
return 0;
|
|
||||||
|
return rtc_valid_tm(&alm->time);
|
||||||
}
|
}
|
||||||
|
|
||||||
static int mv_rtc_set_alarm(struct device *dev, struct rtc_wkalrm *alm)
|
static int mv_rtc_set_alarm(struct device *dev, struct rtc_wkalrm *alm)
|
||||||
|
|
Loading…
Reference in New Issue