From: Michal Simek Date: Fri, 2 Nov 2012 08:33:50 +0000 (+0100) Subject: microblaze: Disable all cpu features before reset X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=b881cbee0a97753f991f3976d3f2dd277677cfc3;p=thirdparty%2Fu-boot.git microblaze: Disable all cpu features before reset Fix microblaze soft reset function and disable all cpu features. Especially disable caches because IRQs were off by disable_interrupts(). Reported-by: John Williams Signed-off-by: Michal Simek --- diff --git a/board/xilinx/microblaze-generic/microblaze-generic.c b/board/xilinx/microblaze-generic/microblaze-generic.c index bb844f8d240..bc19fdc707a 100644 --- a/board/xilinx/microblaze-generic/microblaze-generic.c +++ b/board/xilinx/microblaze-generic/microblaze-generic.c @@ -40,8 +40,8 @@ int do_reset(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) #endif puts ("Reseting board\n"); - disable_interrupts(); - asm ("bra r0"); + __asm__ __volatile__ (" mts rmsr, r0;" \ + "bra r0"); return 0; }