summaryrefslogtreecommitdiff
path: root/drivers/watchdog
diff options
context:
space:
mode:
authorAndrey Skvortsov <andrej.skvortzov@gmail.com>2015-12-20 18:09:58 (GMT)
committerStefano Babic <sbabic@denx.de>2016-01-07 16:54:53 (GMT)
commit587c3f8ebe356b558f1876414885c1b4a31294ab (patch)
tree6194dc359a4751eceeb4eae8df9d73c9ce9cab83 /drivers/watchdog
parent88f91d1375aaf4d21d77a2f2daa351dea9132a58 (diff)
downloadu-boot-587c3f8ebe356b558f1876414885c1b4a31294ab.tar.xz
imx_watchdog: always set minimal timeout in reset_cpu
The problem is that timeout bits in WCR register were leaved unchanged. So previously set timeout value was applied and therefore 'reset' command takes any value up to two minutes, depending on previous watchdog settings, instead of minimal 0.5 seconds. Signed-off-by: Andrey Skvortsov <andrej.skvortzov@gmail.com>
Diffstat (limited to 'drivers/watchdog')
-rw-r--r--drivers/watchdog/imx_watchdog.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/watchdog/imx_watchdog.c b/drivers/watchdog/imx_watchdog.c
index 0d77595..f9f8175 100644
--- a/drivers/watchdog/imx_watchdog.c
+++ b/drivers/watchdog/imx_watchdog.c
@@ -43,7 +43,7 @@ void reset_cpu(ulong addr)
{
struct watchdog_regs *wdog = (struct watchdog_regs *)WDOG1_BASE_ADDR;
- clrsetbits_le16(&wdog->wcr, 0, WCR_WDE);
+ clrsetbits_le16(&wdog->wcr, WCR_WT_MSK, WCR_WDE);
writew(0x5555, &wdog->wsr);
writew(0xaaaa, &wdog->wsr); /* load minimum 1/2 second timeout */