summaryrefslogtreecommitdiff
path: root/drivers/cpufreq/qcom-cpufreq-kryo.c
diff options
context:
space:
mode:
authorDan Carpenter <dan.carpenter@oracle.com>2018-06-21 11:06:41 +0300
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>2018-06-25 00:00:36 +0300
commit1dd2058f902eb2d8bd5bedab0b190a21d5245e71 (patch)
treeaa3907846de459b2010d51affc42bbffa0e62baf /drivers/cpufreq/qcom-cpufreq-kryo.c
parent7daf201d7fe8334e2d2364d4e8ed3394ec9af819 (diff)
downloadlinux-1dd2058f902eb2d8bd5bedab0b190a21d5245e71.tar.xz
cpufreq: qcom-kryo: Fix error handling in probe()
We should return if get_cpu_device() fails or it leads to a NULL dereference. Also dev_pm_opp_of_get_opp_desc_node() returns NULL on error, it never returns error pointers. Fixes: 46e2856b8e18 (cpufreq: Add Kryo CPU scaling driver) Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Acked-by: Viresh Kumar <viresh.kumar@linaro.org> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Diffstat (limited to 'drivers/cpufreq/qcom-cpufreq-kryo.c')
-rw-r--r--drivers/cpufreq/qcom-cpufreq-kryo.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/drivers/cpufreq/qcom-cpufreq-kryo.c b/drivers/cpufreq/qcom-cpufreq-kryo.c
index 01bddacf5c3b..29389accf3e9 100644
--- a/drivers/cpufreq/qcom-cpufreq-kryo.c
+++ b/drivers/cpufreq/qcom-cpufreq-kryo.c
@@ -87,8 +87,8 @@ static int qcom_cpufreq_kryo_probe(struct platform_device *pdev)
int ret;
cpu_dev = get_cpu_device(0);
- if (NULL == cpu_dev)
- ret = -ENODEV;
+ if (!cpu_dev)
+ return -ENODEV;
msm8996_version = qcom_cpufreq_kryo_get_msm_id();
if (NUM_OF_MSM8996_VERSIONS == msm8996_version) {
@@ -97,8 +97,8 @@ static int qcom_cpufreq_kryo_probe(struct platform_device *pdev)
}
np = dev_pm_opp_of_get_opp_desc_node(cpu_dev);
- if (IS_ERR(np))
- return PTR_ERR(np);
+ if (!np)
+ return -ENOENT;
ret = of_device_is_compatible(np, "operating-points-v2-kryo-cpu");
if (!ret) {