On 28.04.21 04:15, Li, Meng wrote:
-----Original Message-----
From: Stefan Roese <s...@denx.de>
Sent: Tuesday, April 27, 2021 10:23 PM
To: Li, Meng <meng...@windriver.com>; u-boot@lists.denx.de;
chin.liang....@intel.com; dinh.ngu...@intel.com; s...@chromium.org
Subject: Re: [PATCH v2, 1/2] driver: watchdog: reset watchdog in
designware_wdt_stop() function
[Please note: This e-mail is from an EXTERNAL e-mail address]
On 27.04.21 10:41, meng...@windriver.com wrote:
From: MengLi <meng...@windriver.com>
In uboot command line environment, watchdog is not able to be stopped
with below commands:
SOCFPGA_STRATIX10 # wdt dev watchdog@ffd00200
SOCFPGA_STRATIX10 # wdt stop
Refer to watchdog driver in linux kernel, it is also need to reset
watchdog after disable it so that the disable action takes effect.
v2:
Change "#if CONFIG_IS_ENABLED(DM_RESET)" into "if
(CONFIG_IS_ENABLED(DM_RESET)) {", and define the variable into if
condition sentence.
A few comments:
This version changelog belongs below the "---" line.
Please Cc interested people upon new versions, e.g. myself as I reviewed
this patch.
Other that this:
Reviewed-by: Stefan Roese <s...@denx.de>
Would you like me to add "Cc:" into comment log, too? Or only CC to
you in mail list?
That's up to you. But when you put the Cc: in the commit text (below
the Reviewed-by tag), then "git send-email" will automatically Cc all
listed addresses.
Thanks,
Stefan
Thanks,
Limeng
Thanks,
Stefan
Signed-off-by: Meng Li <meng...@windriver.com>
---
drivers/watchdog/designware_wdt.c | 17 +++++++++++++++++
1 file changed, 17 insertions(+)
diff --git a/drivers/watchdog/designware_wdt.c
b/drivers/watchdog/designware_wdt.c
index 12f09a7a39..57cad1effc 100644
--- a/drivers/watchdog/designware_wdt.c
+++ b/drivers/watchdog/designware_wdt.c
@@ -96,6 +96,23 @@ static int designware_wdt_stop(struct udevice *dev)
designware_wdt_reset(dev);
writel(0, priv->base + DW_WDT_CR);
+ if (CONFIG_IS_ENABLED(DM_RESET)) {
+ struct reset_ctl_bulk resets;
+ int ret;
+
+ ret = reset_get_bulk(dev, &resets);
+ if (ret)
+ return ret;
+
+ ret = reset_assert_bulk(&resets);
+ if (ret)
+ return ret;
+
+ ret = reset_deassert_bulk(&resets);
+ if (ret)
+ return ret;
+ }
+
return 0;
}
Viele Grüße,
Stefan
--
DENX Software Engineering GmbH, Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-51 Fax: (+49)-8142-66989-80 Email: s...@denx.de
Viele Grüße,
Stefan
--
DENX Software Engineering GmbH, Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-51 Fax: (+49)-8142-66989-80 Email: s...@denx.de