cpufreq: sun50i: Switch to use dev_err_probe() helper
authorYang Yingliang <yangyingliang@huawei.com>
Tue, 27 Sep 2022 15:40:21 +0000 (23:40 +0800)
committerViresh Kumar <viresh.kumar@linaro.org>
Tue, 18 Oct 2022 10:52:26 +0000 (16:22 +0530)
In the probe path, convert pr_err() to dev_err_probe() which will
check if error code is -EPROBE_DEFER and prints the error name.
It also sets the defer probe reason which can be checked later
through debugfs. It's more simple in error path.

Signed-off-by: Yang Yingliang <yangyingliang@huawei.com>
Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
drivers/cpufreq/sun50i-cpufreq-nvmem.c

index a492258..1583a37 100644 (file)
@@ -56,12 +56,9 @@ static int sun50i_cpufreq_get_efuse(u32 *versions)
 
        speedbin_nvmem = of_nvmem_cell_get(np, NULL);
        of_node_put(np);
-       if (IS_ERR(speedbin_nvmem)) {
-               if (PTR_ERR(speedbin_nvmem) != -EPROBE_DEFER)
-                       pr_err("Could not get nvmem cell: %ld\n",
-                              PTR_ERR(speedbin_nvmem));
-               return PTR_ERR(speedbin_nvmem);
-       }
+       if (IS_ERR(speedbin_nvmem))
+               return dev_err_probe(cpu_dev, PTR_ERR(speedbin_nvmem),
+                                    "Could not get nvmem cell\n");
 
        speedbin = nvmem_cell_read(speedbin_nvmem, &len);
        nvmem_cell_put(speedbin_nvmem);