[U-Boot] [PATCH] watchdog: omap_wdt: Fix WDT target reset when booted from emmc

sunil.m at techveda.org sunil.m at techveda.org
Mon Sep 16 08:09:17 UTC 2019

From: Suniel Mahesh <sunil.m at techveda.org>

AM335X based beaglebone black target gets reset by DM converted watchdog
if booted from emmc around 60sec. Fixed this by moving driver's private struct
variable initialization at different places in the driver to driver's probe.
Tested on Beaglebone Black.

Cc: Grygorii Strashko <grygorii.strashko at ti.com>
Fixes: 7659ea32 ("watchdog: omap_wdt: Convert watchdog driver to use DT and DM")
Reported-by: Sam Protsenko <semen.protsenko at linaro.org>
Signed-off-by: Suniel Mahesh <sunil.m at techveda.org>
 drivers/watchdog/omap_wdt.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/watchdog/omap_wdt.c b/drivers/watchdog/omap_wdt.c
index d5857be..284cfbb 100644
--- a/drivers/watchdog/omap_wdt.c
+++ b/drivers/watchdog/omap_wdt.c
@@ -150,7 +150,6 @@ static int omap3_wdt_reset(struct udevice *dev)
 	struct omap3_wdt_priv *priv = dev_get_priv(dev);
-	priv->wdt_trgr_pattern = 0x1234;
  * Somebody just triggered watchdog reset and write to WTGR register
  * is in progress. It is resetting right now, no need to trigger it
@@ -231,6 +230,7 @@ static int omap3_wdt_probe(struct udevice *dev)
 	if (!priv->regs)
 		return -EINVAL;
+	priv->wdt_trgr_pattern = 0x1234;
 	debug("%s: Probing wdt%u\n", __func__, dev->seq);
 	return 0;

More information about the U-Boot mailing list