rtc: s35390a: fix reading out alarm
authorUwe Kleine-König <uwe@kleine-koenig.org>
Sat, 2 Jul 2016 15:28:08 +0000 (17:28 +0200)
committerAlexandre Belloni <alexandre.belloni@free-electrons.com>
Mon, 11 Jul 2016 21:22:33 +0000 (23:22 +0200)
commitf87e904ddd8f0ef120e46045b0addeb1cc88354e
treeb5f60828cbbae127aa78681b559635c5a3329cda
parent8441189e696db0134f23a2791ab3cc225a8ee2e5
rtc: s35390a: fix reading out alarm

There are several issues fixed in this patch:

 - When alarm isn't enabled, set .enabled to zero instead of returning
   -EINVAL.
 - Ignore how IRQ1 is configured when determining if IRQ2 is on.
 - The three alarm registers have an enable flag which must be
   evaluated.
 - The chip always triggers when the seconds register gets 0.

Note that the rtc framework however doesn't handle the result correctly
because it doesn't check wday being initialized and so interprets an
alarm being set for 10:00 AM in three days as 10:00 AM tomorrow (or
today if that's not over yet).

Signed-off-by: Uwe Kleine-König <uwe@kleine-koenig.org>
Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
drivers/rtc/rtc-s35390a.c