aboutsummaryrefslogtreecommitdiff
path: root/arch/arm/cpu/arm1136/mx31/timer.c
diff options
context:
space:
mode:
authorFabio Estevam <fabio.estevam@freescale.com>2011-09-21 03:29:17 +0000
committerAlbert ARIBAUD <albert.u.boot@aribaud.net>2011-09-30 22:01:00 +0200
commit610b53e29bf848b545dd9b0a79b692741ff93807 (patch)
tree0dd362b6b809c569c7d558caa063117779f029b9 /arch/arm/cpu/arm1136/mx31/timer.c
parent419adbfbcba2f818d84eec6ed3f70173a4d67efa (diff)
downloadu-boot-610b53e29bf848b545dd9b0a79b692741ff93807.zip
u-boot-610b53e29bf848b545dd9b0a79b692741ff93807.tar.gz
u-boot-610b53e29bf848b545dd9b0a79b692741ff93807.tar.bz2
MX31: Disable watchdog during low-power modes
Turn on the watchdog WDZST bit so that watchdog timer does not count during low power modes. Prior to applying this patch mx31pdk board got watchdog resets because when it booted in the Linux prompt and there was no activity, the system entered into idle mode while watchdog timer was still active. Fix this by disabling watchdog timer during idle mode. Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Diffstat (limited to 'arch/arm/cpu/arm1136/mx31/timer.c')
-rw-r--r--arch/arm/cpu/arm1136/mx31/timer.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/arch/arm/cpu/arm1136/mx31/timer.c b/arch/arm/cpu/arm1136/mx31/timer.c
index c05a39d..717a2b7 100644
--- a/arch/arm/cpu/arm1136/mx31/timer.c
+++ b/arch/arm/cpu/arm1136/mx31/timer.c
@@ -173,8 +173,8 @@ void mxc_hw_watchdog_enable(void)
#else
secs = 64;
#endif
- writew(readw(&wdog->wcr) | (secs << WDOG_WT_SHIFT) | WDOG_ENABLE,
- &wdog->wcr);
+ setbits_le16(&wdog->wcr, (secs << WDOG_WT_SHIFT) | WDOG_ENABLE
+ | WDOG_WDZST);
}