diff options
Diffstat (limited to 'arch/blackfin/kernel/reboot.c')
| -rw-r--r-- | arch/blackfin/kernel/reboot.c | 6 | 
1 files changed, 5 insertions, 1 deletions
diff --git a/arch/blackfin/kernel/reboot.c b/arch/blackfin/kernel/reboot.c index b0434f89e8d..5272e6eefd9 100644 --- a/arch/blackfin/kernel/reboot.c +++ b/arch/blackfin/kernel/reboot.c @@ -22,6 +22,7 @@  __attribute__ ((__l1_text__, __noreturn__))  static void bfin_reset(void)  { +#ifndef CONFIG_BF60x  	if (!ANOMALY_05000353 && !ANOMALY_05000386)  		bfrom_SoftReset((void *)(L1_SCRATCH_START + L1_SCRATCH_LENGTH - 20)); @@ -57,7 +58,6 @@ static void bfin_reset(void)  	if (__SILICON_REVISION__ < 1 && bfin_revid() < 1)  		bfin_read_SWRST();  #endif -  	/* Wait for the SWRST write to complete.  Cannot rely on SSYNC  	 * though as the System state is all reset now.  	 */ @@ -72,6 +72,10 @@ static void bfin_reset(void)  	while (1)  		/* Issue core reset */  		asm("raise 1"); +#else +	while (1) +		bfin_write_RCU0_CTL(0x1); +#endif  }  __attribute__((weak))  |