summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Golle <[email protected]>2026-07-19 02:49:33 +0100
committerTom Rini <[email protected]>2026-07-29 14:50:18 -0600
commit9811c57b2e01398c6f8ba29a63d93edd4ffe6482 (patch)
tree7b245c7cd18c3208adf820f08803396f6bb1acd1
parenta9a289a211f7e6b479afc3e5f0c07c56e5d6ff7d (diff)
rtc: pcf8563: return -EINVAL when the voltage-low flag is set
Return a proper error code instead of a bare -1 (-EPERM) when VL indicates the time is not reliable, matching rv3032 and the Linux driver behaviour. Signed-off-by: Daniel Golle <[email protected]>
-rw-r--r--drivers/rtc/pcf8563.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/rtc/pcf8563.c b/drivers/rtc/pcf8563.c
index 83d60dc9b55..b20666e8b4a 100644
--- a/drivers/rtc/pcf8563.c
+++ b/drivers/rtc/pcf8563.c
@@ -16,6 +16,7 @@
#include <log.h>
#include <rtc.h>
#include <i2c.h>
+#include <linux/errno.h>
#if !CONFIG_IS_ENABLED(DM_RTC)
static uchar rtc_read (uchar reg);
@@ -144,7 +145,7 @@ static int pcf8563_rtc_get(struct udevice *dev, struct rtc_time *tmp)
if (sec & 0x80) {
puts("### Warning: RTC Low Voltage - date/time not reliable\n");
- rel = -1;
+ rel = -EINVAL;
}
tmp->tm_sec = bcd2bin(sec & 0x7F);