Jelajahi Sumber

[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>
Greg Ungerer 19 tahun lalu
induk
melakukan
01824853b1
1 mengubah file dengan 13 tambahan dan 0 penghapusan
  1. 13 0
      include/asm-m68knommu/system.h

+ 13 - 0
include/asm-m68knommu/system.h

@@ -312,6 +312,19 @@ cmpxchg(volatile int *p, int old, int new)
 	moveb #0x80, (%a0);		\
 	");				\
 })
+#elif defined(CONFIG_M520x)
+	/*
+	 * The MCF5208 has a bit (SOFTRST) in memory (Reset Control Register 
+	 * RCR), that when set, resets the MCF5208.
+	 */
+#define HARD_RESET_NOW() 		\
+({					\
+	unsigned char volatile *reset;	\
+	asm("move.w     #0x2700, %sr");	\
+	reset = ((volatile unsigned short *)(MCF_IPSBAR + 0xA0000));	\
+	while(1)			\
+		*reset |= 0x80;		\
+})
 #else
 #define HARD_RESET_NOW() ({		\
         asm("				\