[Blackfin] arch: Fix BUG - kernel sometimes would stuck with KEYBOARD_GPIO on

Make sure the SYSTEM reset completes before we issue the CORE reset

Signed-off-by: Michael Hennerich <michael.hennerich@analog.com>
Signed-off-by: Bryan Wu <bryan.wu@analog.com>
This commit is contained in:
Michael Hennerich 2007-12-24 20:19:51 +08:00 committed by Bryan Wu
parent 7cc1c4b2c4
commit a546b0ac59
1 changed files with 2 additions and 0 deletions

View File

@ -34,9 +34,11 @@ void bfin_reset(void)
while (1) { while (1) {
/* initiate system soft reset with magic 0x7 */ /* initiate system soft reset with magic 0x7 */
bfin_write_SWRST(0x7); bfin_write_SWRST(0x7);
bfin_read_SWRST();
asm("ssync;"); asm("ssync;");
/* clear system soft reset */ /* clear system soft reset */
bfin_write_SWRST(0); bfin_write_SWRST(0);
bfin_read_SWRST();
asm("ssync;"); asm("ssync;");
/* issue core reset */ /* issue core reset */
asm("raise 1"); asm("raise 1");