rtc_time_to_tm() and rtc_tm_to_time() are deprecated because they
rely on 32bits variables and that will make rtc break in y2038/2016.
Stop using those two functions to safer 64bits ones.

For the same reasons use set_mmss64 callback instead of set_mmss

Signed-off-by: Benjamin Gaignard <[email protected]>
CC: Alessandro Zummo <[email protected]>
CC: Alexandre Belloni <[email protected]>
CC: [email protected]
CC: [email protected]
---
 drivers/rtc/rtc-omap.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/rtc/rtc-omap.c b/drivers/rtc/rtc-omap.c
index 13f7cd1..8aa3957 100644
--- a/drivers/rtc/rtc-omap.c
+++ b/drivers/rtc/rtc-omap.c
@@ -432,7 +432,7 @@ static void omap_rtc_power_off(void)
 {
        struct omap_rtc *rtc = omap_rtc_power_off_rtc;
        struct rtc_time tm;
-       unsigned long now;
+       unsigned long long now;
        u32 val;
 
        rtc->type->unlock(rtc);
@@ -443,8 +443,8 @@ static void omap_rtc_power_off(void)
        /* set alarm two seconds from now */
        omap_rtc_read_time_raw(rtc, &tm);
        bcd2tm(&tm);
-       rtc_tm_to_time(&tm, &now);
-       rtc_time_to_tm(now + 2, &tm);
+       now = rtc_tm_to_time64(&tm);
+       rtc_time64_to_tm(now + 2, &tm);
 
        if (tm2bcd(&tm) < 0) {
                dev_err(&rtc->rtc->dev, "power off failed\n");
-- 
1.9.1

Reply via email to