ARM: OMAP4: PM: Program CPU1 to hit OFF when off-lined
Program non-boot CPUs to hit lowest supported power state when it is off-lined using cpu hotplug framework. Signed-off-by: Santosh Shilimkar <santosh.shilimkar@ti.com> Acked-by: Jean Pihet <j-pihet@ti.com> Reviewed-by: Kevin Hilman <khilman@ti.com> Tested-by: Vishwanath BS <vishwanath.bs@ti.com> Signed-off-by: Kevin Hilman <khilman@ti.com>
This commit is contained in:

committed by
Kevin Hilman

parent
a6e48358d1
commit
b5b4f2881f
@@ -22,6 +22,8 @@
|
||||
|
||||
#include "common.h"
|
||||
|
||||
#include "powerdomain.h"
|
||||
|
||||
int platform_cpu_kill(unsigned int cpu)
|
||||
{
|
||||
return 1;
|
||||
@@ -33,6 +35,8 @@ int platform_cpu_kill(unsigned int cpu)
|
||||
*/
|
||||
void platform_cpu_die(unsigned int cpu)
|
||||
{
|
||||
unsigned int this_cpu;
|
||||
|
||||
flush_cache_all();
|
||||
dsb();
|
||||
|
||||
@@ -40,15 +44,15 @@ void platform_cpu_die(unsigned int cpu)
|
||||
* we're ready for shutdown now, so do it
|
||||
*/
|
||||
if (omap_modify_auxcoreboot0(0x0, 0x200) != 0x0)
|
||||
printk(KERN_CRIT "Secure clear status failed\n");
|
||||
pr_err("Secure clear status failed\n");
|
||||
|
||||
for (;;) {
|
||||
/*
|
||||
* Execute WFI
|
||||
* Enter into low power state
|
||||
*/
|
||||
do_wfi();
|
||||
|
||||
if (omap_read_auxcoreboot0() == cpu) {
|
||||
omap4_hotplug_cpu(cpu, PWRDM_POWER_OFF);
|
||||
this_cpu = smp_processor_id();
|
||||
if (omap_read_auxcoreboot0() == this_cpu) {
|
||||
/*
|
||||
* OK, proper wakeup, we're done
|
||||
*/
|
||||
|
Reference in New Issue
Block a user