|
@@ -1692,8 +1692,9 @@ static int __cpufreq_governor(struct cpufreq_policy *policy,
|
|
|
policy->cpu, event);
|
|
|
|
|
|
mutex_lock(&cpufreq_governor_lock);
|
|
|
- if ((!policy->governor_enabled && (event == CPUFREQ_GOV_STOP)) ||
|
|
|
- (policy->governor_enabled && (event == CPUFREQ_GOV_START))) {
|
|
|
+ if ((policy->governor_enabled && event == CPUFREQ_GOV_START)
|
|
|
+ || (!policy->governor_enabled
|
|
|
+ && (event == CPUFREQ_GOV_LIMITS || event == CPUFREQ_GOV_STOP))) {
|
|
|
mutex_unlock(&cpufreq_governor_lock);
|
|
|
return -EBUSY;
|
|
|
}
|