diff options
Diffstat (limited to 'drivers/cpufreq')
| -rw-r--r-- | drivers/cpufreq/cpufreq-dt.c | 11 | ||||
| -rw-r--r-- | drivers/cpufreq/cpufreq.c | 6 |
2 files changed, 17 insertions, 0 deletions
diff --git a/drivers/cpufreq/cpufreq-dt.c b/drivers/cpufreq/cpufreq-dt.c index f56147a1daed..fde97d6e31d6 100644 --- a/drivers/cpufreq/cpufreq-dt.c +++ b/drivers/cpufreq/cpufreq-dt.c | |||
| @@ -211,6 +211,17 @@ static int cpufreq_init(struct cpufreq_policy *policy) | |||
| 211 | /* OPPs might be populated at runtime, don't check for error here */ | 211 | /* OPPs might be populated at runtime, don't check for error here */ |
| 212 | of_init_opp_table(cpu_dev); | 212 | of_init_opp_table(cpu_dev); |
| 213 | 213 | ||
| 214 | /* | ||
| 215 | * But we need OPP table to function so if it is not there let's | ||
| 216 | * give platform code chance to provide it for us. | ||
| 217 | */ | ||
| 218 | ret = dev_pm_opp_get_opp_count(cpu_dev); | ||
| 219 | if (ret <= 0) { | ||
| 220 | pr_debug("OPP table is not ready, deferring probe\n"); | ||
| 221 | ret = -EPROBE_DEFER; | ||
| 222 | goto out_free_opp; | ||
| 223 | } | ||
| 224 | |||
| 214 | priv = kzalloc(sizeof(*priv), GFP_KERNEL); | 225 | priv = kzalloc(sizeof(*priv), GFP_KERNEL); |
| 215 | if (!priv) { | 226 | if (!priv) { |
| 216 | ret = -ENOMEM; | 227 | ret = -ENOMEM; |
diff --git a/drivers/cpufreq/cpufreq.c b/drivers/cpufreq/cpufreq.c index a09a29c312a9..46bed4f81cde 100644 --- a/drivers/cpufreq/cpufreq.c +++ b/drivers/cpufreq/cpufreq.c | |||
| @@ -2028,6 +2028,12 @@ static int __cpufreq_governor(struct cpufreq_policy *policy, | |||
| 2028 | /* Don't start any governor operations if we are entering suspend */ | 2028 | /* Don't start any governor operations if we are entering suspend */ |
| 2029 | if (cpufreq_suspended) | 2029 | if (cpufreq_suspended) |
| 2030 | return 0; | 2030 | return 0; |
| 2031 | /* | ||
| 2032 | * Governor might not be initiated here if ACPI _PPC changed | ||
| 2033 | * notification happened, so check it. | ||
| 2034 | */ | ||
| 2035 | if (!policy->governor) | ||
| 2036 | return -EINVAL; | ||
| 2031 | 2037 | ||
| 2032 | if (policy->governor->max_transition_latency && | 2038 | if (policy->governor->max_transition_latency && |
| 2033 | policy->cpuinfo.transition_latency > | 2039 | policy->cpuinfo.transition_latency > |
