[PATCH 07/17] omap4: pm: CPU1 wakeup workaround form Low power modes
From: Santosh Shilimkar <hidden>
Date: 2011-03-03 16:15:02
Also in:
linux-omap
-----Original Message----- From: Kevin Hilman [mailto:khilman at ti.com] Sent: Thursday, March 03, 2011 3:54 AM To: Santosh Shilimkar Cc: linux-omap at vger.kernel.org; linux-arm-kernel at lists.infradead.org Subject: Re: [PATCH 07/17] omap4: pm: CPU1 wakeup workaround form Low power modes Santosh Shilimkar [off-list ref] writes:quoted
The SGI(Software Generated Interrupts) are not wakeup capable from low power states. This is known limitation on OMAP4 and needs tobequoted
worked around by using software forced clockdomain wake-up. CPU0forcesquoted
the CPU1 clockdomain to software force wakeup. After the wakeup,CPU1quoted
restores its clockdomain hardware supervised mode. More details can be found in OMAP4430 TRM - Version J Section : 4.3.4.2 Power States of CPU0 and CPU1 Signed-off-by: Santosh Shilimkar <redacted> Reviewed-by: Kevin Hilman <redacted> --- arch/arm/mach-omap2/omap-hotplug.c | 9 +++++++++ arch/arm/mach-omap2/omap-smp.c | 27++++++++++++++++++++++++++-quoted
2 files changed, 35 insertions(+), 1 deletions(-)diff --git a/arch/arm/mach-omap2/omap-hotplug.c b/arch/arm/mach-omap2/omap-hotplug.cquoted
index 9f8f097..cf4ab15 100644--- a/arch/arm/mach-omap2/omap-hotplug.c +++ b/arch/arm/mach-omap2/omap-hotplug.c@@ -23,6 +23,7 @@ #include <mach/omap-wakeupgen.h> #include "powerdomain.h" +#include "clockdomain.h" int platform_cpu_kill(unsigned int cpu) {@@ -36,6 +37,11 @@ int platform_cpu_kill(unsigned int cpu) void platform_cpu_die(unsigned int cpu) { unsigned int this_cpu; + static struct clockdomain *cpu1_clkdm; + + /* To avoid cpu1 clockdomain lookup every time */minor: comment doesn't really match code and could just be removed
Fixed