summaryrefslogtreecommitdiff
path: root/cpu/blackfin/watchdog.c
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2008-03-30 19:46:13 (GMT)
committerMike Frysinger <vapier@gentoo.org>2008-03-30 19:50:19 (GMT)
commit9171fc81722c20fdb5a829a58b17c9eaadd5fb44 (patch)
treed5b8741232955f2c01b0c36c46c867d15e8245a7 /cpu/blackfin/watchdog.c
parent9ce7e53abd039decea1af67aec81bbd5df7a2593 (diff)
downloadu-boot-9171fc81722c20fdb5a829a58b17c9eaadd5fb44.tar.xz
Blackfin: unify cpu and boot modes
All of the duplicated code for Blackfin processors and boot modes have been unified. After all, the core is the same for all processors, just the peripheral set differs (which gets handled in the drivers). Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Diffstat (limited to 'cpu/blackfin/watchdog.c')
-rw-r--r--cpu/blackfin/watchdog.c25
1 files changed, 25 insertions, 0 deletions
diff --git a/cpu/blackfin/watchdog.c b/cpu/blackfin/watchdog.c
new file mode 100644
index 0000000..b47c6b6
--- /dev/null
+++ b/cpu/blackfin/watchdog.c
@@ -0,0 +1,25 @@
+/*
+ * watchdog.c - driver for Blackfin on-chip watchdog
+ *
+ * Copyright (c) 2007-2008 Analog Devices Inc.
+ *
+ * Licensed under the GPL-2 or later.
+ */
+
+#include <common.h>
+#include <watchdog.h>
+#include <asm/blackfin.h>
+
+#ifdef CONFIG_HW_WATCHDOG
+void hw_watchdog_reset(void)
+{
+ bfin_write_WDOG_STAT(0);
+}
+
+void hw_watchdog_init(void)
+{
+ bfin_write_WDOG_CNT(5 * get_sclk()); /* 5 second timeout */
+ hw_watchdog_reset();
+ bfin_write_WDOG_CTL(0x0);
+}
+#endif