| From 3cc9ffbb1f51eb4320575a48e4805a8f52e0e26b Mon Sep 17 00:00:00 2001 |
| From: "Maciej W. Rozycki" <macro@linux-mips.org> |
| Date: Wed, 7 Nov 2018 02:39:13 +0000 |
| Subject: rtc: m41t80: Correct alarm month range with RTC reads |
| |
| From: Maciej W. Rozycki <macro@linux-mips.org> |
| |
| commit 3cc9ffbb1f51eb4320575a48e4805a8f52e0e26b upstream. |
| |
| Add the missing adjustment of the month range on alarm reads from the |
| RTC, correcting an issue coming from commit 9c6dfed92c3e ("rtc: m41t80: |
| add alarm functionality"). The range is 1-12 for hardware and 0-11 for |
| `struct rtc_time', and is already correctly handled on alarm writes to |
| the RTC. |
| |
| It was correct up until commit 48e9766726eb ("drivers/rtc/rtc-m41t80.c: |
| remove disabled alarm functionality") too, which removed the previous |
| implementation of alarm support. |
| |
| Signed-off-by: Maciej W. Rozycki <macro@linux-mips.org> |
| Fixes: 9c6dfed92c3e ("rtc: m41t80: add alarm functionality") |
| References: 48e9766726eb ("drivers/rtc/rtc-m41t80.c: remove disabled alarm functionality") |
| Cc: stable@vger.kernel.org # 4.7+ |
| Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| |
| --- |
| drivers/rtc/rtc-m41t80.c | 2 +- |
| 1 file changed, 1 insertion(+), 1 deletion(-) |
| |
| --- a/drivers/rtc/rtc-m41t80.c |
| +++ b/drivers/rtc/rtc-m41t80.c |
| @@ -333,7 +333,7 @@ static int m41t80_read_alarm(struct devi |
| alrm->time.tm_min = bcd2bin(alarmvals[3] & 0x7f); |
| alrm->time.tm_hour = bcd2bin(alarmvals[2] & 0x3f); |
| alrm->time.tm_mday = bcd2bin(alarmvals[1] & 0x3f); |
| - alrm->time.tm_mon = bcd2bin(alarmvals[0] & 0x3f); |
| + alrm->time.tm_mon = bcd2bin(alarmvals[0] & 0x3f) - 1; |
| |
| alrm->enabled = !!(alarmvals[0] & M41T80_ALMON_AFE); |
| alrm->pending = (flags & M41T80_FLAGS_AF) && alrm->enabled; |