Merge branches 'pm-cpufreq', 'pm-cpuidle', 'pm-devfreq', 'pm-opp' and 'pm-tools'
[linux-drm-fsl-dcu.git] / drivers / rtc / interface.c
index 45bfc28ee3aa8e09602427ae915c11bb43ac0c59..37215cf983e92926653d1f3206aa8c4c8842a55a 100644 (file)
@@ -73,10 +73,8 @@ int rtc_set_time(struct rtc_device *rtc, struct rtc_time *tm)
        else if (rtc->ops->set_time)
                err = rtc->ops->set_time(rtc->dev.parent, tm);
        else if (rtc->ops->set_mmss) {
-               unsigned long secs;
-               err = rtc_tm_to_time(tm, &secs);
-               if (err == 0)
-                       err = rtc->ops->set_mmss(rtc->dev.parent, secs);
+               time64_t secs64 = rtc_tm_to_time64(tm);
+               err = rtc->ops->set_mmss(rtc->dev.parent, secs64);
        } else
                err = -EINVAL;
 
@@ -105,7 +103,7 @@ int rtc_set_mmss(struct rtc_device *rtc, unsigned long secs)
 
                err = rtc->ops->read_time(rtc->dev.parent, &old);
                if (err == 0) {
-                       rtc_time_to_tm(secs, &new);
+                       rtc_time64_to_tm(secs, &new);
 
                        /*
                         * avoid writing when we're going to change the day of
@@ -157,7 +155,7 @@ int __rtc_read_alarm(struct rtc_device *rtc, struct rtc_wkalrm *alarm)
        int err;
        struct rtc_time before, now;
        int first_time = 1;
-       unsigned long t_now, t_alm;
+       time64_t t_now, t_alm;
        enum { none, day, month, year } missing = none;
        unsigned days;
 
@@ -258,8 +256,8 @@ int __rtc_read_alarm(struct rtc_device *rtc, struct rtc_wkalrm *alarm)
        }
 
        /* with luck, no rollover is needed */
-       rtc_tm_to_time(&now, &t_now);
-       rtc_tm_to_time(&alarm->time, &t_alm);
+       t_now = rtc_tm_to_time64(&now);
+       t_alm = rtc_tm_to_time64(&alarm->time);
        if (t_now < t_alm)
                goto done;
 
@@ -273,7 +271,7 @@ int __rtc_read_alarm(struct rtc_device *rtc, struct rtc_wkalrm *alarm)
        case day:
                dev_dbg(&rtc->dev, "alarm rollover: %s\n", "day");
                t_alm += 24 * 60 * 60;
-               rtc_time_to_tm(t_alm, &alarm->time);
+               rtc_time64_to_tm(t_alm, &alarm->time);
                break;
 
        /* Month rollover ... if it's the 31th, an alarm on the 3rd will
@@ -346,19 +344,19 @@ EXPORT_SYMBOL_GPL(rtc_read_alarm);
 static int __rtc_set_alarm(struct rtc_device *rtc, struct rtc_wkalrm *alarm)
 {
        struct rtc_time tm;
-       long now, scheduled;
+       time64_t now, scheduled;
        int err;
 
        err = rtc_valid_tm(&alarm->time);
        if (err)
                return err;
-       rtc_tm_to_time(&alarm->time, &scheduled);
+       scheduled = rtc_tm_to_time64(&alarm->time);
 
        /* Make sure we're not setting alarms in the past */
        err = __rtc_read_time(rtc, &tm);
        if (err)
                return err;
-       rtc_tm_to_time(&tm, &now);
+       now = rtc_tm_to_time64(&tm);
        if (scheduled <= now)
                return -ETIME;
        /*