From: Vitaly Andrianov Date: Wed, 8 Jul 2015 15:40:14 +0000 (-0400) Subject: keystone2: add wfi in to the core_spin loop X-Git-Tag: v2015.10-rc1~61 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=17c5bda2a91cf902e0897bd8178f96aa5e3adf78;p=oweals%2Fu-boot.git keystone2: add wfi in to the core_spin loop When core A turning of core B, via tetris DPSC it places the core B DPSC into transitional state. The core B has to execute wfi instruction to move its DPSC to the OFF state. This patch add such instruction. Signed-off-by: Vitaly Andrianov Reviewed-by: Tom Rini --- diff --git a/arch/arm/mach-keystone/cmd_mon.c b/arch/arm/mach-keystone/cmd_mon.c index f9f58a37df..73ceb83072 100644 --- a/arch/arm/mach-keystone/cmd_mon.c +++ b/arch/arm/mach-keystone/cmd_mon.c @@ -55,8 +55,13 @@ U_BOOT_CMD(mon_install, 2, 0, do_mon_install, static void core_spin(void) { - while (1) - ; /* forever */; + while (1) { + asm volatile ( + "dsb\n" + "isb\n" + "wfi\n" + ); + } } int mon_power_on(int core_id, void *ep)