mirror of
git://git.yoctoproject.org/linux-yocto.git
synced 2025-07-05 21:35:46 +02:00
rtc: pcf85063: Fix reading alarm
If the alarms are disabled the topmost bit (AEN_*) is set in the alarm
registers. This is also interpreted in BCD number leading to this warning:
rtc rtc0: invalid alarm value: 2022-09-21T80:80:80
Fix this by masking alarm enabling and reserved bits.
Fixes: 05cb3a56ee
("rtc: pcf85063: add alarm support")
Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com>
Link: https://lore.kernel.org/r/20220921074141.3903104-1-alexander.stein@ew.tq-group.com
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
This commit is contained in:
parent
fe0157ba67
commit
a6ceee26fd
|
@ -169,10 +169,10 @@ static int pcf85063_rtc_read_alarm(struct device *dev, struct rtc_wkalrm *alrm)
|
||||||
if (ret)
|
if (ret)
|
||||||
return ret;
|
return ret;
|
||||||
|
|
||||||
alrm->time.tm_sec = bcd2bin(buf[0]);
|
alrm->time.tm_sec = bcd2bin(buf[0] & 0x7f);
|
||||||
alrm->time.tm_min = bcd2bin(buf[1]);
|
alrm->time.tm_min = bcd2bin(buf[1] & 0x7f);
|
||||||
alrm->time.tm_hour = bcd2bin(buf[2]);
|
alrm->time.tm_hour = bcd2bin(buf[2] & 0x3f);
|
||||||
alrm->time.tm_mday = bcd2bin(buf[3]);
|
alrm->time.tm_mday = bcd2bin(buf[3] & 0x3f);
|
||||||
|
|
||||||
ret = regmap_read(pcf85063->regmap, PCF85063_REG_CTRL2, &val);
|
ret = regmap_read(pcf85063->regmap, PCF85063_REG_CTRL2, &val);
|
||||||
if (ret)
|
if (ret)
|
||||||
|
|
Loading…
Reference in New Issue
Block a user