diff options
author | Pali Rohár <pali@kernel.org> | 2021-03-09 16:26:55 +0300 |
---|---|---|
committer | Stefan Roese <sr@denx.de> | 2021-04-06 11:47:32 +0300 |
commit | 25e20e347ed83d3629d65a7c5a6c376bacc1db0d (patch) | |
tree | 9200fa343876ae73cf79e5da91c8124eaab1f1b0 | |
parent | 9c44ff1c5f3c06ecaa165c75e2ba0f4a718d917b (diff) | |
download | u-boot-25e20e347ed83d3629d65a7c5a6c376bacc1db0d.tar.xz |
watchdog: Show error message when initr_watchdog() cannot start watchdog
Function wdt_start() may fail. So in initr_watchdog() function check return
value of wdt_start() call and print error message when watchdog starting
failed.
Signed-off-by: Pali Rohár <pali@kernel.org>
Reviewed-by: Stefan Roese <sr@denx.de>
-rw-r--r-- | drivers/watchdog/wdt-uclass.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/drivers/watchdog/wdt-uclass.c b/drivers/watchdog/wdt-uclass.c index 3f707f61f7..7500b3ed90 100644 --- a/drivers/watchdog/wdt-uclass.c +++ b/drivers/watchdog/wdt-uclass.c @@ -27,6 +27,7 @@ static ulong reset_period = 1000; int initr_watchdog(void) { u32 timeout = WATCHDOG_TIMEOUT_SECS; + int ret; /* * Init watchdog: This will call the probe function of the @@ -50,7 +51,12 @@ int initr_watchdog(void) 4 * reset_period) / 4; } - wdt_start(gd->watchdog_dev, timeout * 1000, 0); + ret = wdt_start(gd->watchdog_dev, timeout * 1000, 0); + if (ret != 0) { + printf("WDT: Failed to start\n"); + return 0; + } + printf("WDT: Started with%s servicing (%ds timeout)\n", IS_ENABLED(CONFIG_WATCHDOG) ? "" : "out", timeout); |