{
unsigned int freq;
- disable_power_mode(cpumask_any(&domain->cpus), POWERMODE_TYPE_CLUSTER);
+ if (domain->need_awake)
+ disable_power_mode(cpumask_any(&domain->cpus), POWERMODE_TYPE_CLUSTER);
freq = (unsigned int)cal_dfs_get_rate(domain->cal_id);
if (!freq) {
freq = domain->old;
}
- enable_power_mode(cpumask_any(&domain->cpus), POWERMODE_TYPE_CLUSTER);
+ if (domain->need_awake)
+ enable_power_mode(cpumask_any(&domain->cpus), POWERMODE_TYPE_CLUSTER);
return freq;
}
{
int err;
- disable_power_mode(cpumask_any(&domain->cpus), POWERMODE_TYPE_CLUSTER);
+ if (domain->need_awake)
+ disable_power_mode(cpumask_any(&domain->cpus), POWERMODE_TYPE_CLUSTER);
exynos_ss_printk("ID %d: %d -> %d (%d)\n",
domain->id, domain->old, target_freq, ESS_FLAG_IN);
exynos_ss_printk("ID %d: %d -> %d (%d)\n",
domain->id, domain->old, target_freq, ESS_FLAG_OUT);
- enable_power_mode(cpumask_any(&domain->cpus), POWERMODE_TYPE_CLUSTER);
+ if (domain->need_awake)
+ enable_power_mode(cpumask_any(&domain->cpus), POWERMODE_TYPE_CLUSTER);
return err;
}