summaryrefslogtreecommitdiff
path: root/cpu/at32ap
diff options
context:
space:
mode:
authorDavid Brownell <david-b@pacbell.net>2008-04-17 05:57:58 (GMT)
committerHaavard Skinnemoen <haavard.skinnemoen@atmel.com>2008-05-27 13:27:29 (GMT)
commitf793a3581901ff39c2abb94012d9bbc8573ccf02 (patch)
tree91639985ca7cb7eff1c1836bb4631fab7680baa1 /cpu/at32ap
parent55ac7a7490b55da56659f95d82a0c83b9756df27 (diff)
downloadu-boot-f793a3581901ff39c2abb94012d9bbc8573ccf02.tar.xz
avr32: Disable the AP7000 internal watchdog on startup
This patch forces the watchdog off in all cases. That will at least get rid of the constant reboot cycle, though it won't let the watchdog actually run in the new kernels: its probe() comes up with a polite warning. Signed-off-by: Haavard Skinnemoen <haavard.skinnemoen@atmel.com>
Diffstat (limited to 'cpu/at32ap')
-rw-r--r--cpu/at32ap/cpu.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/cpu/at32ap/cpu.c b/cpu/at32ap/cpu.c
index 311466b..4542e67 100644
--- a/cpu/at32ap/cpu.c
+++ b/cpu/at32ap/cpu.c
@@ -86,6 +86,10 @@ int cpu_init(void)
extern void _evba(void);
char *p;
+ /* in case of soft resets, disable watchdog */
+ sm_writel(WDT_CTRL, SM_BF(KEY, 0x55));
+ sm_writel(WDT_CTRL, SM_BF(KEY, 0xaa));
+
gd->cpu_hz = CFG_OSC0_HZ;
/* TODO: Move somewhere else, but needs to be run before we