drivers/rtc/rtc-ds3232.c: fix time range difference between linux and RTC chip
authorLei Xu <B33228@freescale.com>
Fri, 25 Feb 2011 22:44:23 +0000 (14:44 -0800)
committerLinus Torvalds <torvalds@linux-foundation.org>
Fri, 25 Feb 2011 23:07:37 +0000 (15:07 -0800)
commita2d6d2fa90c0e1d2cc1d59ccb5bbe93bb28b7413
treee3bfa7bba089dfee61efa7d8954fe3475e70f3a1
parent294f6cf48666825d23c9372ef37631232746e40d
drivers/rtc/rtc-ds3232.c: fix time range difference between linux and RTC chip

In linux rtc_time struct, tm_mon range is 0~11, tm_wday range is 0~6,
while in RTC HW REG, month range is 1~12, day of the week range is 1~7,
this patch adjusts difference of them.

The efect of this bug was that most of month will be operated on as the
next month by the hardware (When in Jan it maybe even worse).  For
example, if in May, software wrote 4 to the hardware, which handled it as
April.  Then the logic would be different between software and hardware,
which would cause weird things to happen.

Signed-off-by: Lei Xu <B33228@freescale.com>
Cc: Alessandro Zummo <a.zummo@towertech.it>
Cc: john stultz <johnstul@us.ibm.com>
Cc: Jack Lan <jack.lan@freescale.com>
Cc: <stable@kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
drivers/rtc/rtc-ds3232.c