m68knommu: add CPU reset code for the 532x ColdFire

Signed-off-by: Greg Ungerer <gerg@uclinux.org>
This commit is contained in:
Greg Ungerer 2009-04-30 22:03:43 +10:00
parent 6f5aa7ce38
commit 384feb9131
2 changed files with 21 additions and 3 deletions

View file

@ -125,6 +125,18 @@
#define ACR_CM_OFF_IMP (3<<5)
#define ACR_WPROTECT (1<<2)
/*********************************************************************
*
* Reset Controller Module
*
*********************************************************************/
#define MCF_RCR 0xFC0A0000
#define MCF_RSR 0xFC0A0001
#define MCF_RCR_SWRESET 0x80 /* Software reset bit */
#define MCF_RCR_FRCSTOUT 0x40 /* Force external reset */
/*********************************************************************
*
* Inter-IC (I2C) Module

View file

@ -31,8 +31,6 @@
/***************************************************************************/
void coldfire_reset(void);
extern unsigned int mcf_timervector;
extern unsigned int mcf_profilevector;
extern unsigned int mcf_timerlevel;
@ -164,6 +162,14 @@ void mcf_settimericr(unsigned int timer, unsigned int level)
/***************************************************************************/
static void m532x_cpu_reset(void)
{
local_irq_disable();
__raw_writeb(MCF_RCR_SWRESET, MCF_RCR);
}
/***************************************************************************/
void __init config_BSP(char *commandp, int size)
{
mcf_setimr(MCFSIM_IMR_MASKALL);
@ -181,7 +187,7 @@ void __init config_BSP(char *commandp, int size)
mcf_timervector = 64+32;
mcf_profilevector = 64+33;
mach_reset = coldfire_reset;
mach_reset = m532x_cpu_reset;
#ifdef CONFIG_BDM_DISABLE
/*