• Santosh Shilimkar's avatar
    ARM: OMAP4: PM: Add CPUidle support · 98272660
    Santosh Shilimkar authored
    Add OMAP4 CPUIDLE support. CPU1 is left with defualt idle and
    the low power state for it is managed via cpu-hotplug.
    
    This patch adds MPUSS low power states in cpuidle.
    
    	C1 - CPU0 ON + CPU1 ON + MPU ON
    	C2 - CPU0 OFF + CPU1 OFF + MPU CSWR
    	C3 - CPU0 OFF + CPU1 OFF + MPU OSWR
    
    OMAP4460 onwards, MPUSS power domain doesn't support OFF state any more
    anymore just like CORE power domain. The deepest state supported is OSWr.
    Ofcourse when MPUSS and CORE PD transitions to OSWR along with device
    off mode, even the memory contemts are lost which is as good as
    the PD off state.
    
    On OMAP4 because of hardware constraints, no low power states are
    targeted when both CPUs are online and in SMP mode. The low power
    states are attempted only when secondary CPU gets offline to OFF
    through hotplug infrastructure.
    
    Thanks to Nicole Chalhoub <n-chalhoub@ti.com> for doing exhaustive
    C-state latency profiling.
    Signed-off-by: default avatarRajendra Nayak <rnayak@ti.com>
    Signed-off-by: default avatarSantosh Shilimkar <santosh.shilimkar@ti.com>
    Acked-by: default avatarJean Pihet <j-pihet@ti.com>
    Reviewed-by: default avatarKevin Hilman <khilman@ti.com>
    Tested-by: default avatarVishwanath BS <vishwanath.bs@ti.com>
    Signed-off-by: default avatarKevin Hilman <khilman@ti.com>
    98272660
cpuidle44xx.c 6.27 KB