rtc: pcf8563: fix wrong time from read_alarm
authorJan Kardell <jan.kardell@telliq.com>
Wed, 10 Dec 2014 23:53:37 +0000 (15:53 -0800)
committerLinus Torvalds <torvalds@linux-foundation.org>
Thu, 11 Dec 2014 01:41:15 +0000 (17:41 -0800)
Incorrect mask was used for hour and monthday fields.

Signed-off-by: Jan Kardell <jan.kardell@telliq.com>
Cc: Alessandro Zummo <a.zummo@towertech.it>
Cc: Grant Likely <grant.likely@linaro.org>
Cc: Rob Herring <robh+dt@kernel.org>
Cc: Vincent Donnefort <vdonnefort@gmail.com>
Cc: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
drivers/rtc/rtc-pcf8563.c

index 8c23606..78f76d9 100644 (file)
@@ -336,8 +336,8 @@ static int pcf8563_rtc_read_alarm(struct device *dev, struct rtc_wkalrm *tm)
                __func__, buf[0], buf[1], buf[2], buf[3]);
 
        tm->time.tm_min = bcd2bin(buf[0] & 0x7F);
-       tm->time.tm_hour = bcd2bin(buf[1] & 0x7F);
-       tm->time.tm_mday = bcd2bin(buf[2] & 0x1F);
+       tm->time.tm_hour = bcd2bin(buf[1] & 0x3F);
+       tm->time.tm_mday = bcd2bin(buf[2] & 0x3F);
        tm->time.tm_wday = bcd2bin(buf[3] & 0x7);
        tm->time.tm_mon = -1;
        tm->time.tm_year = -1;