diff mbox series

rtc: m41t80: Correct alarm month range with RTC reads

Message ID alpine.LFD.2.21.1811070053580.20378@eddie.linux-mips.org
State Accepted
Headers show
Series rtc: m41t80: Correct alarm month range with RTC reads | expand

Commit Message

Maciej W. Rozycki Nov. 7, 2018, 2:39 a.m. UTC
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+
---
Hi,

 I have no means to verify this change at run time as my M41T81 device, 
which is the reason for me to use this driver, regrettably hasn't got its 
IRQ line routed, due to historical reasons I gathered, as it replaced a 
different RTC device, that didn't have an IRQ output at all, used with 
earlier revisions of the Broadcom SiByte SWARM board I have been using 
this code with.  However it should be obvious by code inspection.

 Please apply and backport as appropriate.

  Maciej
---
 drivers/rtc/rtc-m41t80.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

linux-rtc-m41t80-read-alarm-month.diff

Comments

Alexandre Belloni Nov. 14, 2018, 9:47 a.m. UTC | #1
On 07/11/2018 02:39:13+0000, Maciej W. Rozycki wrote:
> 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+
> ---
> Hi,
> 
>  I have no means to verify this change at run time as my M41T81 device, 
> which is the reason for me to use this driver, regrettably hasn't got its 
> IRQ line routed, due to historical reasons I gathered, as it replaced a 
> different RTC device, that didn't have an IRQ output at all, used with 
> earlier revisions of the Broadcom SiByte SWARM board I have been using 
> this code with.  However it should be obvious by code inspection.
> 
>  Please apply and backport as appropriate.
> 
>   Maciej
> ---
>  drivers/rtc/rtc-m41t80.c |    2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 

Applied (and tested), thanks.
diff mbox series

Patch

Index: linux-20181008-swarm64-eb/drivers/rtc/rtc-m41t80.c
===================================================================
--- linux-20181008-swarm64-eb.orig/drivers/rtc/rtc-m41t80.c
+++ linux-20181008-swarm64-eb/drivers/rtc/rtc-m41t80.c
@@ -393,7 +393,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;