drivers/rtc/interface.c: __rtc_read_time: reduce log level
[linux-2.6-block.git] / drivers / rtc / interface.c
index 37215cf983e92926653d1f3206aa8c4c8842a55a..166fc60d8b551f558bd2b9cb0930b419ca175db8 100644 (file)
@@ -31,13 +31,14 @@ static int __rtc_read_time(struct rtc_device *rtc, struct rtc_time *tm)
                memset(tm, 0, sizeof(struct rtc_time));
                err = rtc->ops->read_time(rtc->dev.parent, tm);
                if (err < 0) {
-                       dev_err(&rtc->dev, "read_time: fail to read\n");
+                       dev_dbg(&rtc->dev, "read_time: fail to read: %d\n",
+                               err);
                        return err;
                }
 
                err = rtc_valid_tm(tm);
                if (err < 0)
-                       dev_err(&rtc->dev, "read_time: rtc_time isn't valid\n");
+                       dev_dbg(&rtc->dev, "read_time: rtc_time isn't valid\n");
        }
        return err;
 }
@@ -72,7 +73,11 @@ int rtc_set_time(struct rtc_device *rtc, struct rtc_time *tm)
                err = -ENODEV;
        else if (rtc->ops->set_time)
                err = rtc->ops->set_time(rtc->dev.parent, tm);
-       else if (rtc->ops->set_mmss) {
+       else if (rtc->ops->set_mmss64) {
+               time64_t secs64 = rtc_tm_to_time64(tm);
+
+               err = rtc->ops->set_mmss64(rtc->dev.parent, secs64);
+       } else if (rtc->ops->set_mmss) {
                time64_t secs64 = rtc_tm_to_time64(tm);
                err = rtc->ops->set_mmss(rtc->dev.parent, secs64);
        } else
@@ -96,6 +101,8 @@ int rtc_set_mmss(struct rtc_device *rtc, unsigned long secs)
 
        if (!rtc->ops)
                err = -ENODEV;
+       else if (rtc->ops->set_mmss64)
+               err = rtc->ops->set_mmss64(rtc->dev.parent, secs);
        else if (rtc->ops->set_mmss)
                err = rtc->ops->set_mmss(rtc->dev.parent, secs);
        else if (rtc->ops->read_time && rtc->ops->set_time) {