diff options
Diffstat (limited to 'drivers/thermal/cpu_cooling.c')
-rw-r--r-- | drivers/thermal/cpu_cooling.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/drivers/thermal/cpu_cooling.c b/drivers/thermal/cpu_cooling.c index 59f0bd53f329..69d0f430b2d1 100644 --- a/drivers/thermal/cpu_cooling.c +++ b/drivers/thermal/cpu_cooling.c | |||
@@ -393,13 +393,20 @@ static int get_static_power(struct cpufreq_cooling_device *cpufreq_device, | |||
393 | 393 | ||
394 | opp = dev_pm_opp_find_freq_exact(cpufreq_device->cpu_dev, freq_hz, | 394 | opp = dev_pm_opp_find_freq_exact(cpufreq_device->cpu_dev, freq_hz, |
395 | true); | 395 | true); |
396 | if (IS_ERR(opp)) { | ||
397 | dev_warn_ratelimited(cpufreq_device->cpu_dev, | ||
398 | "Failed to find OPP for frequency %lu: %ld\n", | ||
399 | freq_hz, PTR_ERR(opp)); | ||
400 | return -EINVAL; | ||
401 | } | ||
402 | |||
396 | voltage = dev_pm_opp_get_voltage(opp); | 403 | voltage = dev_pm_opp_get_voltage(opp); |
397 | dev_pm_opp_put(opp); | 404 | dev_pm_opp_put(opp); |
398 | 405 | ||
399 | if (voltage == 0) { | 406 | if (voltage == 0) { |
400 | dev_err_ratelimited(cpufreq_device->cpu_dev, | 407 | dev_err_ratelimited(cpufreq_device->cpu_dev, |
401 | "Failed to get voltage for frequency %lu: %ld\n", | 408 | "Failed to get voltage for frequency %lu\n", |
402 | freq_hz, IS_ERR(opp) ? PTR_ERR(opp) : 0); | 409 | freq_hz); |
403 | return -EINVAL; | 410 | return -EINVAL; |
404 | } | 411 | } |
405 | 412 | ||