Instead of lying to the core when the alarm is invalid, let it handle that
by returning the error.

Signed-off-by: Alexandre Belloni <[email protected]>
---
 drivers/rtc/rtc-mv.c | 8 ++------
 1 file changed, 2 insertions(+), 6 deletions(-)

diff --git a/drivers/rtc/rtc-mv.c b/drivers/rtc/rtc-mv.c
index 4b198b3778d3..e7f14bd12fe3 100644
--- a/drivers/rtc/rtc-mv.c
+++ b/drivers/rtc/rtc-mv.c
@@ -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 */
        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);
-       return 0;
+
+       return rtc_valid_tm(&alm->time);
 }
 
 static int mv_rtc_set_alarm(struct device *dev, struct rtc_wkalrm *alm)
-- 
2.19.0

Reply via email to