[U-Boot-Users] [PATCH] bugfix: the watchdog post for lwmon5
Sascha Laue
Sascha.Laue at gmx.biz
Tue Apr 1 09:59:41 CEST 2008
bugfix: the watchdog post for lwmon5 doesn't work. This Patch fix it.
To trigger and activate the watchdog correct it is necessary to create 2 pulses.
Lowpegel on GPIO62 point to a voltagefailure.
Signed-off-by: Sascha Laue <sascha.laue at liebherr.com>
---
post/board/lwmon5/watchdog.c | 5 ++++-
1 files changed, 4 insertions(+), 1 deletions(-)
diff --git a/post/board/lwmon5/watchdog.c b/post/board/lwmon5/watchdog.c
index 48ff687..014aae4 100644
--- a/post/board/lwmon5/watchdog.c
+++ b/post/board/lwmon5/watchdog.c
@@ -55,7 +55,7 @@ static void watchdog_magic_write(uint value)
int sysmon1_post_test(int flags)
{
- if (gpio_read_in_bit(CFG_GPIO_SYSMON_STATUS)) {
+ if (0 == gpio_read_in_bit(CFG_GPIO_SYSMON_STATUS)) {
/*
* 3.1. GPIO62 is low
* Assuming system voltage failure.
@@ -99,6 +99,9 @@ int lwmon5_watchdog_post_test(int flags)
ints = disable_interrupts ();
/* 3.2.2. strobe watchdog once */
WATCHDOG_RESET();
+ base = post_time_ms (0);
+ while (post_time_ms (base) < 2)
+ WATCHDOG_RESET();
out_be32((void *)CFG_WATCHDOG_TIME_ADDR, 0);
/* 3.2.3. save time of strobe in scratch register 2 */
base = post_time_ms (0);
--
1.5.2.4
More information about the U-Boot
mailing list