aboutsummaryrefslogtreecommitdiffstats
path: root/include/asm-m68knommu/system.h
diff options
context:
space:
mode:
authorGreg Ungerer <gerg@snapgear.com>2005-11-02 00:12:42 -0500
committerLinus Torvalds <torvalds@g5.osdl.org>2005-11-02 00:41:20 -0500
commit01824853b1991b6ade506ee1b75f103a6eb8f558 (patch)
tree8533fd4983155854a60598af39a503dff68fab18 /include/asm-m68knommu/system.h
parent06227039b5eb8ed5965f995e45c8cfee154fb883 (diff)
[PATCH] m68knommu: add 5208 ColdFire reset/reboot support
Add reset/reboot code to support the ColdFire 5208 family. Patch originally from Matt Wadell (from code originally written by Mike Lavender). Signed-off-by: Greg Ungerer <gerg@uclinux.com> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'include/asm-m68knommu/system.h')
-rw-r--r--include/asm-m68knommu/system.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/include/asm-m68knommu/system.h b/include/asm-m68knommu/system.h
index 53cbbad0f130..6338afc850ba 100644
--- a/include/asm-m68knommu/system.h
+++ b/include/asm-m68knommu/system.h
@@ -312,6 +312,19 @@ cmpxchg(volatile int *p, int old, int new)
312 moveb #0x80, (%a0); \ 312 moveb #0x80, (%a0); \
313 "); \ 313 "); \
314}) 314})
315#elif defined(CONFIG_M520x)
316 /*
317 * The MCF5208 has a bit (SOFTRST) in memory (Reset Control Register
318 * RCR), that when set, resets the MCF5208.
319 */
320#define HARD_RESET_NOW() \
321({ \
322 unsigned char volatile *reset; \
323 asm("move.w #0x2700, %sr"); \
324 reset = ((volatile unsigned short *)(MCF_IPSBAR + 0xA0000)); \
325 while(1) \
326 *reset |= 0x80; \
327})
315#else 328#else
316#define HARD_RESET_NOW() ({ \ 329#define HARD_RESET_NOW() ({ \
317 asm(" \ 330 asm(" \