[PATCH 6/6] rtc: rv8803: Clear V1F when setting the time

From: BenoÃt ThÃbaudeau
Date: Thu Jul 21 2016 - 06:48:41 EST


V1F indicates that the time accuracy may have been compromised because
of a voltage drop (possibly only temporary) below VLOW1, which stops the
temperature compensation. When the time is set, the accuracy is
restored, so V1F should be cleared in order to indicate this and to be
able to detect the next temperature compensation loss. This is the same
principle as for V2F, which is cleared when the time is set to indicate
that the time is no longer invalid and to be able to detect the next
data loss.

Signed-off-by: BenoÃt ThÃbaudeau <benoit@xxxxxxxxxxx>
---
drivers/rtc/rtc-rv8803.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/rtc/rtc-rv8803.c b/drivers/rtc/rtc-rv8803.c
index 24c688e..9a2f6a9 100644
--- a/drivers/rtc/rtc-rv8803.c
+++ b/drivers/rtc/rtc-rv8803.c
@@ -265,7 +265,7 @@ static int rv8803_set_time(struct device *dev, struct rtc_time *tm)
}

ret = rv8803_write_reg(rv8803->client, RV8803_FLAG,
- flags & ~RV8803_FLAG_V2F);
+ flags & ~(RV8803_FLAG_V1F | RV8803_FLAG_V2F));

mutex_unlock(&rv8803->flags_lock);

--
2.5.0