Skip to content

Commit fb1283b

Browse files
rtc: ab-eoz9: fix abeoz9_rtc_read_alarm
abeoz9_rtc_read_alarm assumes we always read the alarm in 12-hour mode while abeoz9_rtc_set_alarm will always set it in 24-hour mode. We could support 12-hour mode in both functions but it seems very unlikely that the RTC would be set to 12-hour mode now as the driver has been setting it to 24-hour mode for a while now. The setting is undefined at power-up and unchanged by subsequent resets which doesn't help us. Link: https://lore.kernel.org/r/20241112151119.3451611-1-alexandre.belloni@bootlin.com Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
1 parent bb3d498 commit fb1283b

File tree

1 file changed

+1
-3
lines changed

1 file changed

+1
-3
lines changed

drivers/rtc/rtc-ab-eoz9.c

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@
6464
#define ABEOZ9_BIT_ALARM_MIN GENMASK(6, 0)
6565
#define ABEOZ9_REG_ALARM_HOURS 0x12
6666
#define ABEOZ9_BIT_ALARM_HOURS_PM BIT(5)
67-
#define ABEOZ9_BIT_ALARM_HOURS GENMASK(4, 0)
67+
#define ABEOZ9_BIT_ALARM_HOURS GENMASK(5, 0)
6868
#define ABEOZ9_REG_ALARM_DAYS 0x13
6969
#define ABEOZ9_BIT_ALARM_DAYS GENMASK(5, 0)
7070
#define ABEOZ9_REG_ALARM_WEEKDAYS 0x14
@@ -231,8 +231,6 @@ static int abeoz9_rtc_read_alarm(struct device *dev, struct rtc_wkalrm *alarm)
231231
alarm->time.tm_sec = bcd2bin(FIELD_GET(ABEOZ9_BIT_ALARM_SEC, regs[0]));
232232
alarm->time.tm_min = bcd2bin(FIELD_GET(ABEOZ9_BIT_ALARM_MIN, regs[1]));
233233
alarm->time.tm_hour = bcd2bin(FIELD_GET(ABEOZ9_BIT_ALARM_HOURS, regs[2]));
234-
if (FIELD_GET(ABEOZ9_BIT_ALARM_HOURS_PM, regs[2]))
235-
alarm->time.tm_hour += 12;
236234

237235
alarm->time.tm_mday = bcd2bin(FIELD_GET(ABEOZ9_BIT_ALARM_DAYS, regs[3]));
238236

0 commit comments

Comments
 (0)