From: Michal Simek Date: Wed, 7 Nov 2012 14:27:39 +0000 (+0100) Subject: microblaze: Disable all cpu features before reset X-Git-Tag: v2013.07-rc1~18^2~48^2~1 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=8848668e136cccb30229b5e1484d41e0b5a6830a;p=oweals%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 Signed-off-by: Michal Simek --- diff --git a/board/xilinx/microblaze-generic/microblaze-generic.c b/board/xilinx/microblaze-generic/microblaze-generic.c index 8ba99f9c50..1af0b86c75 100644 --- a/board/xilinx/microblaze-generic/microblaze-generic.c +++ b/board/xilinx/microblaze-generic/microblaze-generic.c @@ -40,7 +40,8 @@ int do_reset(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) #endif puts ("Reseting board\n"); - asm ("bra r0"); + __asm__ __volatile__ (" mts rmsr, r0;" \ + "bra r0"); return 0; }