diff options
author | wdenk <wdenk> | 2005-04-05 22:30:50 +0000 |
---|---|---|
committer | wdenk <wdenk> | 2005-04-05 22:30:50 +0000 |
commit | b304c96871c92d1ec8fa57dda36cc198660fd10e (patch) | |
tree | b45ea6bbac8eee483d99eccbddda21af57f8e8be /cpu/arm920t/imx/interrupts.c | |
parent | 12b43d515c62682fcf7b578f31920a2be49142fe (diff) | |
download | u-boot-imx-b304c96871c92d1ec8fa57dda36cc198660fd10e.zip u-boot-imx-b304c96871c92d1ec8fa57dda36cc198660fd10e.tar.gz u-boot-imx-b304c96871c92d1ec8fa57dda36cc198660fd10e.tar.bz2 |
Patches by Steven Scholz, 05 Apr 2005:
- Use i.MX watchdog timer for reset_cpu()
- Move reset_cpu() out of cpu/arm920t/start.S into the SoC specific
subdirectories cpu/arm920t/imx/ and cpu/arm920t/s3c24x0/
(now in interupts.c)
Diffstat (limited to 'cpu/arm920t/imx/interrupts.c')
-rw-r--r-- | cpu/arm920t/imx/interrupts.c | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/cpu/arm920t/imx/interrupts.c b/cpu/arm920t/imx/interrupts.c index 2f2e754..03ce06d 100644 --- a/cpu/arm920t/imx/interrupts.c +++ b/cpu/arm920t/imx/interrupts.c @@ -117,4 +117,23 @@ ulong get_tbclk (void) return tbclk; } +/* + * Reset the cpu by setting up the watchdog timer and let him time out + */ +void reset_cpu (ulong ignored) +{ + /* Disable watchdog and set Time-Out field to 0 */ + WCR = 0x00000000; + + /* Write Service Sequence */ + WSR = 0x00005555; + WSR = 0x0000AAAA; + + /* Enable watchdog */ + WCR = 0x00000001; + + while (1); + /*NOTREACHED*/ +} + #endif /* defined (CONFIG_IMX) */ |