summaryrefslogtreecommitdiff
path: root/arch/arm/mach-imx/hotplug.c
diff options
context:
space:
mode:
authorShawn Guo <shawn.guo@linaro.org>2013-10-09 15:29:14 +0800
committerShawn Guo <shawn.guo@linaro.org>2013-10-21 09:37:31 +0800
commitfcd75f921dfa21a745869090c512ce4c6f2f0477 (patch)
tree82840decbad3aa699c7e33d3c38ac13c02f11c27 /arch/arm/mach-imx/hotplug.c
parent85920f3960fbc9e8f63b61ac13cb4d3d44c56a17 (diff)
ARM: imx: do not return from imx_cpu_die() call
When imx_cpu_die() is being called, the cpu should never return from the call but just in WFI and wait for hardware to take it down. So let's do cpu_do_idle() repeatly in the call. Doing this help improve the relibility of hotplug operation. Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
Diffstat (limited to 'arch/arm/mach-imx/hotplug.c')
-rw-r--r--arch/arm/mach-imx/hotplug.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/arch/arm/mach-imx/hotplug.c b/arch/arm/mach-imx/hotplug.c
index 3daf1ed90579..b35e99cc5e5b 100644
--- a/arch/arm/mach-imx/hotplug.c
+++ b/arch/arm/mach-imx/hotplug.c
@@ -52,7 +52,9 @@ void imx_cpu_die(unsigned int cpu)
* the register being cleared to kill the cpu.
*/
imx_set_cpu_arg(cpu, ~0);
- cpu_do_idle();
+
+ while (1)
+ cpu_do_idle();
}
int imx_cpu_kill(unsigned int cpu)