ARM64 / cpuidle: Use new cpuidle macro for entering retention state
authorPrashanth Prakash <pprakash@codeaurora.org>
Wed, 15 Nov 2017 17:11:50 +0000 (10:11 -0700)
committerCatalin Marinas <catalin.marinas@arm.com>
Tue, 2 Jan 2018 13:50:34 +0000 (13:50 +0000)
commit8b9951ed7e5b517bdd5743d71ac662885d3c7bfc
treedacbbb58604af96ff6161869179d96706b8fb9d6
parentdb50a74d8193944dd1ee488fd2a813a364fbbaa7
ARM64 / cpuidle: Use new cpuidle macro for entering retention state

CPU_PM_CPU_IDLE_ENTER_RETENTION skips calling cpu_pm_enter() and
cpu_pm_exit(). By not calling cpu_pm functions in idle entry/exit
paths we can reduce the latency involved in entering and exiting
the low power idle state.

On ARM64 based Qualcomm server platform we measured below overhead
for calling cpu_pm_enter and cpu_pm_exit for retention states.

workload: stress --hdd #CPUs --hdd-bytes 32M  -t 30
Average overhead of cpu_pm_enter - 1.2us
Average overhead of cpu_pm_exit  - 3.1us

Acked-by: Sudeep Holla <sudeep.holla@arm.com>
Signed-off-by: Prashanth Prakash <pprakash@codeaurora.org>
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
arch/arm64/kernel/cpuidle.c