[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20260119-zynqmp-rtc-updates-v3-3-acd902fdeab1@vaisala.com>
Date: Mon, 19 Jan 2026 09:51:29 +0000
From: Tomas Melin <tomas.melin@...sala.com>
To: Alexandre Belloni <alexandre.belloni@...tlin.com>,
Michal Simek <michal.simek@....com>
Cc: linux-rtc@...r.kernel.org, linux-arm-kernel@...ts.infradead.org,
linux-kernel@...r.kernel.org, Tomas Melin <tomas.melin@...sala.com>,
Harini T <harini.t@....com>
Subject: [PATCH v3 3/6] rtc: zynqmp: check calibration max value
Enable check to not overflow the calibration
max value.
Reviewed-by: Harini T <harini.t@....com>
Tested-by: Harini T <harini.t@....com>
Signed-off-by: Tomas Melin <tomas.melin@...sala.com>
---
drivers/rtc/rtc-zynqmp.c | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/drivers/rtc/rtc-zynqmp.c b/drivers/rtc/rtc-zynqmp.c
index 856bc1678e7d31144f320ae9f75fc58c742a2a64..caacce3725e2ef3803ea42d40e77ceaeb7d7b914 100644
--- a/drivers/rtc/rtc-zynqmp.c
+++ b/drivers/rtc/rtc-zynqmp.c
@@ -349,6 +349,11 @@ static int xlnx_rtc_probe(struct platform_device *pdev)
xrtcdev->freq--;
}
+ if (xrtcdev->freq > RTC_TICK_MASK) {
+ dev_err(&pdev->dev, "Invalid RTC calibration value\n");
+ return -EINVAL;
+ }
+
ret = readl(xrtcdev->reg_base + RTC_CALIB_RD);
if (!ret)
writel(xrtcdev->freq, (xrtcdev->reg_base + RTC_CALIB_WR));
--
2.47.3
Powered by blists - more mailing lists