diff options
-rw-r--r-- | arch/m68k/include/asm/m527xsim.h | 9 | ||||
-rw-r--r-- | arch/m68knommu/platform/527x/config.c | 15 |
2 files changed, 18 insertions, 6 deletions
diff --git a/arch/m68k/include/asm/m527xsim.h b/arch/m68k/include/asm/m527xsim.h index 1f63ab3fb3e6..95f4f8ee8f7c 100644 --- a/arch/m68k/include/asm/m527xsim.h +++ b/arch/m68k/include/asm/m527xsim.h | |||
@@ -70,5 +70,14 @@ | |||
70 | #define UART2_ENABLE_MASK 0x3f00 | 70 | #define UART2_ENABLE_MASK 0x3f00 |
71 | #endif | 71 | #endif |
72 | 72 | ||
73 | /* | ||
74 | * Reset Controll Unit (relative to IPSBAR). | ||
75 | */ | ||
76 | #define MCF_RCR 0x110000 | ||
77 | #define MCF_RSR 0x110001 | ||
78 | |||
79 | #define MCF_RCR_SWRESET 0x80 /* Software reset bit */ | ||
80 | #define MCF_RCR_FRCSTOUT 0x40 /* Force external reset */ | ||
81 | |||
73 | /****************************************************************************/ | 82 | /****************************************************************************/ |
74 | #endif /* m527xsim_h */ | 83 | #endif /* m527xsim_h */ |
diff --git a/arch/m68knommu/platform/527x/config.c b/arch/m68knommu/platform/527x/config.c index 428b15922ef5..f746439cfd3e 100644 --- a/arch/m68knommu/platform/527x/config.c +++ b/arch/m68knommu/platform/527x/config.c | |||
@@ -15,7 +15,6 @@ | |||
15 | #include <linux/kernel.h> | 15 | #include <linux/kernel.h> |
16 | #include <linux/param.h> | 16 | #include <linux/param.h> |
17 | #include <linux/init.h> | 17 | #include <linux/init.h> |
18 | #include <linux/interrupt.h> | ||
19 | #include <linux/io.h> | 18 | #include <linux/io.h> |
20 | #include <asm/machdep.h> | 19 | #include <asm/machdep.h> |
21 | #include <asm/coldfire.h> | 20 | #include <asm/coldfire.h> |
@@ -24,10 +23,6 @@ | |||
24 | 23 | ||
25 | /***************************************************************************/ | 24 | /***************************************************************************/ |
26 | 25 | ||
27 | void coldfire_reset(void); | ||
28 | |||
29 | /***************************************************************************/ | ||
30 | |||
31 | static struct mcf_platform_uart m527x_uart_platform[] = { | 26 | static struct mcf_platform_uart m527x_uart_platform[] = { |
32 | { | 27 | { |
33 | .mapbase = MCF_MBAR + MCFUART_BASE1, | 28 | .mapbase = MCF_MBAR + MCFUART_BASE1, |
@@ -227,10 +222,18 @@ void mcf_autovector(unsigned int vec) | |||
227 | 222 | ||
228 | /***************************************************************************/ | 223 | /***************************************************************************/ |
229 | 224 | ||
225 | static void m527x_cpu_reset(void) | ||
226 | { | ||
227 | local_irq_disable(); | ||
228 | __raw_writeb(MCF_RCR_SWRESET, MCF_IPSBAR + MCF_RCR); | ||
229 | } | ||
230 | |||
231 | /***************************************************************************/ | ||
232 | |||
230 | void __init config_BSP(char *commandp, int size) | 233 | void __init config_BSP(char *commandp, int size) |
231 | { | 234 | { |
232 | mcf_disableall(); | 235 | mcf_disableall(); |
233 | mach_reset = coldfire_reset; | 236 | mach_reset = m527x_cpu_reset; |
234 | m527x_uarts_init(); | 237 | m527x_uarts_init(); |
235 | m527x_fec_init(); | 238 | m527x_fec_init(); |
236 | } | 239 | } |