rtc: sa1100: switch to rtc_time64_to_tm/rtc_tm_to_time64
authorAlexandre Belloni <alexandre.belloni@bootlin.com>
Fri, 6 Mar 2020 01:01:46 +0000 (02:01 +0100)
committerAlexandre Belloni <alexandre.belloni@bootlin.com>
Mon, 16 Mar 2020 10:12:09 +0000 (11:12 +0100)
Call the 64bit versions of rtc_tm time conversion.

Link: https://lore.kernel.org/r/20200306010146.39762-3-alexandre.belloni@bootlin.com
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
drivers/rtc/rtc-sa1100.c

index 82a9d4ab368f82feef4c769d20b29d2dd3f5e8ae..9ccc97cf5e09557947e960ffbb8519b4268efe45 100644 (file)
@@ -111,20 +111,17 @@ static int sa1100_rtc_read_time(struct device *dev, struct rtc_time *tm)
 {
        struct sa1100_rtc *info = dev_get_drvdata(dev);
 
-       rtc_time_to_tm(readl_relaxed(info->rcnr), tm);
+       rtc_time64_to_tm(readl_relaxed(info->rcnr), tm);
        return 0;
 }
 
 static int sa1100_rtc_set_time(struct device *dev, struct rtc_time *tm)
 {
        struct sa1100_rtc *info = dev_get_drvdata(dev);
-       unsigned long time;
-       int ret;
 
-       ret = rtc_tm_to_time(tm, &time);
-       if (ret == 0)
-               writel_relaxed(time, info->rcnr);
-       return ret;
+       writel_relaxed(rtc_tm_to_time64(tm), info->rcnr);
+
+       return 0;
 }
 
 static int sa1100_rtc_read_alarm(struct device *dev, struct rtc_wkalrm *alrm)
@@ -141,24 +138,18 @@ static int sa1100_rtc_read_alarm(struct device *dev, struct rtc_wkalrm *alrm)
 static int sa1100_rtc_set_alarm(struct device *dev, struct rtc_wkalrm *alrm)
 {
        struct sa1100_rtc *info = dev_get_drvdata(dev);
-       unsigned long time;
-       int ret;
 
        spin_lock_irq(&info->lock);
-       ret = rtc_tm_to_time(&alrm->time, &time);
-       if (ret != 0)
-               goto out;
        writel_relaxed(readl_relaxed(info->rtsr) &
                (RTSR_HZE | RTSR_ALE | RTSR_AL), info->rtsr);
-       writel_relaxed(time, info->rtar);
+       writel_relaxed(rtc_tm_to_time64(&alrm->time), info->rtar);
        if (alrm->enabled)
                writel_relaxed(readl_relaxed(info->rtsr) | RTSR_ALE, info->rtsr);
        else
                writel_relaxed(readl_relaxed(info->rtsr) & ~RTSR_ALE, info->rtsr);
-out:
        spin_unlock_irq(&info->lock);
 
-       return ret;
+       return 0;
 }
 
 static int sa1100_rtc_proc(struct device *dev, struct seq_file *seq)