From 748e4f3d702def1a4bff191e0cf93b6a05340f01 Mon Sep 17 00:00:00 2001
From: hc <hc@nodka.com>
Date: Fri, 10 May 2024 07:41:34 +0000
Subject: [PATCH] add gpio led uart

---
 kernel/drivers/watchdog/dw_wdt.c |   14 ++++++++++++--
 1 files changed, 12 insertions(+), 2 deletions(-)

diff --git a/kernel/drivers/watchdog/dw_wdt.c b/kernel/drivers/watchdog/dw_wdt.c
index 32d0e17..2d261b5 100644
--- a/kernel/drivers/watchdog/dw_wdt.c
+++ b/kernel/drivers/watchdog/dw_wdt.c
@@ -156,6 +156,10 @@
 			break;
 	}
 
+	/* For Coverity check */
+	if (idx == DW_WDT_NUM_TOPS)
+		idx = 0;
+
 	return dw_wdt->timeouts[idx].sec;
 }
 
@@ -178,6 +182,9 @@
 		if (dw_wdt->timeouts[idx].top_val == top_val)
 			break;
 	}
+
+	if (idx == DW_WDT_NUM_TOPS)
+		idx = 0;
 
 	/*
 	 * In IRQ mode due to the two stages counter, the actual timeout is
@@ -638,7 +645,7 @@
 
 	ret = dw_wdt_init_timeouts(dw_wdt, dev);
 	if (ret)
-		goto out_disable_clk;
+		goto out_assert_rst;
 
 	wdd = &dw_wdt->wdd;
 	wdd->ops = &dw_wdt_ops;
@@ -669,12 +676,15 @@
 
 	ret = watchdog_register_device(wdd);
 	if (ret)
-		goto out_disable_pclk;
+		goto out_assert_rst;
 
 	dw_wdt_dbgfs_init(dw_wdt);
 
 	return 0;
 
+out_assert_rst:
+	reset_control_assert(dw_wdt->rst);
+
 out_disable_pclk:
 	clk_disable_unprepare(dw_wdt->pclk);
 

--
Gitblit v1.6.2