Linux Power Management development
 help / color / mirror / Atom feed
* [PATCH] ARM: EXYNOS: Use wfi macro in platform_do_lowpower
@ 2014-05-22  7:57 Leela Krishna Amudala
  2014-05-22 11:53 ` Daniel Lezcano
  2014-05-22 19:01 ` Daniel Lezcano
  0 siblings, 2 replies; 6+ messages in thread
From: Leela Krishna Amudala @ 2014-05-22  7:57 UTC (permalink / raw)
  To: linux-samsung-soc, linux-pm, linux-arm-kernel
  Cc: daniel.lezcano, kgene.kim, amit.kucheria

This patch is originally based on commit b3377d186572 ("ARM: 7064/1:
vexpress: Use wfi macro in platform_do_lowpower.")

Current Exynos CPU hotplug code includes a hardcoded WFI
instruction, in ARM encoding.  When the kernel is compiled in Thumb-2
mode, this is invalid and causes the machine to hang hard when a CPU
is offlined.

Use wfi macro instead of the hardcoded WFI instruction.

Signed-off-by: Leela Krishna Amudala <leela.krishna@linaro.org>
---
 arch/arm/mach-exynos/hotplug.c |    8 +-------
 1 file changed, 1 insertion(+), 7 deletions(-)

diff --git a/arch/arm/mach-exynos/hotplug.c b/arch/arm/mach-exynos/hotplug.c
index 69fa483..8a134d0 100644
--- a/arch/arm/mach-exynos/hotplug.c
+++ b/arch/arm/mach-exynos/hotplug.c
@@ -46,13 +46,7 @@ static inline void platform_do_lowpower(unsigned int cpu, int *spurious)
 		if (cpu == 1)
 			exynos_cpu_power_down(cpu);
 
-		/*
-		 * here's the WFI
-		 */
-		asm(".word	0xe320f003\n"
-		    :
-		    :
-		    : "memory", "cc");
+		wfi();
 
 		if (pen_release == cpu_logical_map(cpu)) {
 			/*
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2014-05-27 15:33 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-05-22  7:57 [PATCH] ARM: EXYNOS: Use wfi macro in platform_do_lowpower Leela Krishna Amudala
2014-05-22 11:53 ` Daniel Lezcano
2014-05-22 17:55   ` Nicolas Pitre
2014-05-22 19:01 ` Daniel Lezcano
2014-05-23  6:13   ` Leela Krishna Amudala
2014-05-27 15:33     ` Kukjin Kim

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox