[U-Boot] [PATCH] Blackfin: reset watchdog in udelay()
Mike Frysinger
vapier at gentoo.org
Fri Oct 9 08:27:19 CEST 2009
All arches apparently should reset the watchdog in their udelay loop as
noted on the mailing list recently:
> A comment in flash_status_check() suggests that udelay() is
> expected to reset the watchdog, but I can't find any architecture
> where it does.
If this is missing in other architectures, it should be fixed at the
root cause, i. e. in udelay() or in the respective support routines.
Signed-off-by: Mike Frysinger <vapier at gentoo.org>
---
cpu/blackfin/interrupts.c | 2 ++
1 files changed, 2 insertions(+), 0 deletions(-)
diff --git a/cpu/blackfin/interrupts.c b/cpu/blackfin/interrupts.c
index bf6fb4b..7ab4cc4 100644
--- a/cpu/blackfin/interrupts.c
+++ b/cpu/blackfin/interrupts.c
@@ -70,6 +70,8 @@ void udelay(unsigned long usec)
cclk = (CONFIG_CCLK_HZ);
while (usec > 1) {
+ WATCHDOG_RESET();
+
/*
* how many clock ticks to delay?
* - request(in useconds) * clock_ticks(Hz) / useconds/second
--
1.6.5.rc2
More information about the U-Boot
mailing list