[PATCH v2] watchdog: rti: drop hack manipulating WDT clock rate
Stefan Roese
sr at denx.de
Tue Jan 7 13:42:58 CET 2025
On 21.11.24 09:03, A. Sverdlin wrote:
> From: Alexander Sverdlin <alexander.sverdlin at siemens.com>
>
> The hack itself seems to be copied from Linux rti_wdt.c, but the WDT reset
> principle is different in U-Boot. While Linux relies on correct frequencies
> and timers and doesn't check the actual WDT counter value U-Boot driver
> seems to be more robust: it does compare RTIDWDCNTR vs RTIDWDPRLD.
>
> Now the root cause of the original motivation to manipulate the clock rate
> is said to be understood and fixed in Linux commit cae58516534e
> ("watchdog: rti_wdt: Set min_hw_heartbeat_ms to accommodate a safety margin")
> which simultaneously removed the hack itself.
>
> While is fix part of the mentioned patch is neither applicable nor requried
> for the U-Boot driver just drop the hack setting WDT clock rate to 90% of
> the real rate. This has a nice effect that the WDT timeout is now as
> requested and not 10% shorter.
>
> Signed-off-by: Alexander Sverdlin <alexander.sverdlin at siemens.com>
> Reviewed-by: Jan Kiszka <jan.kiszka at siemens.com>
Applied to u-boot-watchdog/master
Thanks,
Stefan
> ---
> Changelog:
> v2: 2 typos pointed by Jan corrected
>
> drivers/watchdog/rti_wdt.c | 8 --------
> 1 file changed, 8 deletions(-)
>
> diff --git a/drivers/watchdog/rti_wdt.c b/drivers/watchdog/rti_wdt.c
> index 99168d0cad03..f806e24e53da 100644
> --- a/drivers/watchdog/rti_wdt.c
> +++ b/drivers/watchdog/rti_wdt.c
> @@ -186,14 +186,6 @@ static int rti_wdt_probe(struct udevice *dev)
>
> priv->clk_hz = clk_get_rate(&clk);
>
> - /*
> - * If watchdog is running at 32k clock, it is not accurate.
> - * Adjust frequency down in this case so that it does not expire
> - * earlier than expected.
> - */
> - if (priv->clk_hz < 32768)
> - priv->clk_hz = priv->clk_hz * 9 / 10;
> -
> return 0;
> }
>
Viele Grüße,
Stefan Roese
--
DENX Software Engineering GmbH, Managing Director: Erika Unter
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-51 Fax: (+49)-8142-66989-80 Email: sr at denx.de
More information about the U-Boot
mailing list