summaryrefslogtreecommitdiff
path: root/cpu/at32ap
diff options
context:
space:
mode:
authorDavid Brownell <david-b@pacbell.net>2008-04-16 22:57:58 -0700
committerHaavard Skinnemoen <haavard.skinnemoen@atmel.com>2008-05-27 15:27:29 +0200
commitf793a3581901ff39c2abb94012d9bbc8573ccf02 (patch)
tree91639985ca7cb7eff1c1836bb4631fab7680baa1 /cpu/at32ap
parent55ac7a7490b55da56659f95d82a0c83b9756df27 (diff)
downloadu-boot-imx-f793a3581901ff39c2abb94012d9bbc8573ccf02.zip
u-boot-imx-f793a3581901ff39c2abb94012d9bbc8573ccf02.tar.gz
u-boot-imx-f793a3581901ff39c2abb94012d9bbc8573ccf02.tar.bz2
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