mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-08 12:58:12 -04:00
cpuidle: lpm-levels: Core isolation check to get PM QoS latency
Check the core isolation to get PM QoS request on that core while it going to lpm. If its an isolated core pass long latency so that core can select deeper lpm state. Change-Id: Iafbfb75c484d602eb37bcd702e83371fd97362fd Signed-off-by: Raghavendra Kakarla <rkakarla@codeaurora.org>
This commit is contained in:
parent
7b54b39b21
commit
b4d4fb25b9
1 changed files with 4 additions and 1 deletions
|
|
@ -149,7 +149,8 @@ static int lpm_cpu_qos_notify(struct notifier_block *nb,
|
|||
int cpu = nb - dev_pm_qos_nb;
|
||||
|
||||
preempt_disable();
|
||||
if (cpu != smp_processor_id() && cpu_online(cpu))
|
||||
if (cpu != smp_processor_id() && cpu_online(cpu) &&
|
||||
!check_cpu_isolated(cpu))
|
||||
wake_up_if_idle(cpu);
|
||||
preempt_enable();
|
||||
|
||||
|
|
@ -657,6 +658,8 @@ static inline uint32_t get_cpus_qos(const struct cpumask *mask)
|
|||
uint32_t latency = PM_QOS_CPU_DMA_LAT_DEFAULT_VALUE;
|
||||
|
||||
for_each_cpu(cpu, mask) {
|
||||
if (check_cpu_isolated(cpu))
|
||||
continue;
|
||||
n = cpuidle_governor_latency_req(cpu);
|
||||
if (n < latency)
|
||||
latency = n;
|
||||
|
|
|
|||
Loading…
Reference in a new issue