summaryrefslogtreecommitdiff
path: root/cpu
diff options
context:
space:
mode:
authorWolfgang Denk <wd@denx.de>2008-07-10 21:53:51 +0200
committerWolfgang Denk <wd@denx.de>2008-07-10 21:53:51 +0200
commit79d14faf5471b7fdc4244cb6299e94e8170d826e (patch)
treee35eef45c8bf151e7de953602fb5b1b61793be0f /cpu
parent3d71c81a9bb03f866a1e98da96363ef3f46c76b3 (diff)
parent859f24350e6e4313626f85161dd03f025a4dac59 (diff)
downloadu-boot-imx-79d14faf5471b7fdc4244cb6299e94e8170d826e.zip
u-boot-imx-79d14faf5471b7fdc4244cb6299e94e8170d826e.tar.gz
u-boot-imx-79d14faf5471b7fdc4244cb6299e94e8170d826e.tar.bz2
Merge branch 'master' of git://www.denx.de/git/u-boot-mpc86xx
Diffstat (limited to 'cpu')
-rw-r--r--cpu/mpc86xx/cpu.c14
-rw-r--r--cpu/mpc86xx/interrupts.c1
2 files changed, 15 insertions, 0 deletions
diff --git a/cpu/mpc86xx/cpu.c b/cpu/mpc86xx/cpu.c
index 7d2b591..ecea5b0 100644
--- a/cpu/mpc86xx/cpu.c
+++ b/cpu/mpc86xx/cpu.c
@@ -214,6 +214,20 @@ get_tbclk(void)
void
watchdog_reset(void)
{
+#if defined(CONFIG_MPC8610)
+ /*
+ * This actually feed the hard enabled watchdog.
+ */
+ volatile immap_t *immap = (immap_t *)CFG_IMMR;
+ volatile ccsr_wdt_t *wdt = &immap->im_wdt;
+ volatile ccsr_gur_t *gur = &immap->im_gur;
+ u32 tmp = gur->pordevsr;
+
+ if (tmp & 0x4000) {
+ wdt->swsrr = 0x556c;
+ wdt->swsrr = 0xaa39;
+ }
+#endif
}
#endif /* CONFIG_WATCHDOG */
diff --git a/cpu/mpc86xx/interrupts.c b/cpu/mpc86xx/interrupts.c
index d9f634f..f16744b 100644
--- a/cpu/mpc86xx/interrupts.c
+++ b/cpu/mpc86xx/interrupts.c
@@ -36,6 +36,7 @@
#include <command.h>
#include <asm/processor.h>
#include <ppc_asm.tmpl>
+#include <watchdog.h>
unsigned long decrementer_count; /* count value for 1e6/HZ microseconds */
unsigned long timestamp;