]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
bus: sunxi-rsb: Simplify code with dev_err_probe()
authorZhang Zekun <zhangzekun11@huawei.com>
Thu, 5 Sep 2024 11:41:34 +0000 (19:41 +0800)
committerChen-Yu Tsai <wens@csie.org>
Thu, 5 Sep 2024 15:20:47 +0000 (23:20 +0800)
Use dev_err_probe() directly in the driver probe phase. This can
simplify the code a bit.

Signed-off-by: Zhang Zekun <zhangzekun11@huawei.com>
Link: https://lore.kernel.org/r/20240905114134.80310-1-zhangzekun11@huawei.com
Signed-off-by: Chen-Yu Tsai <wens@csie.org>
drivers/bus/sunxi-rsb.c

index eee41fb798a16b97f1104a079fbf0f0a3c6218df..a89d789256376754a7b1b7cd826437f8031e602c 100644 (file)
@@ -751,12 +751,10 @@ static int sunxi_rsb_probe(struct platform_device *pdev)
        int irq, ret;
 
        of_property_read_u32(np, "clock-frequency", &clk_freq);
-       if (clk_freq > RSB_MAX_FREQ) {
-               dev_err(dev,
-                       "clock-frequency (%u Hz) is too high (max = 20MHz)\n",
-                       clk_freq);
-               return -EINVAL;
-       }
+       if (clk_freq > RSB_MAX_FREQ)
+               return dev_err_probe(dev, -EINVAL,
+                                    "clock-frequency (%u Hz) is too high (max = 20MHz)\n",
+                                    clk_freq);
 
        rsb = devm_kzalloc(dev, sizeof(*rsb), GFP_KERNEL);
        if (!rsb)
@@ -774,28 +772,22 @@ static int sunxi_rsb_probe(struct platform_device *pdev)
                return irq;
 
        rsb->clk = devm_clk_get(dev, NULL);
-       if (IS_ERR(rsb->clk)) {
-               ret = PTR_ERR(rsb->clk);
-               dev_err(dev, "failed to retrieve clk: %d\n", ret);
-               return ret;
-       }
+       if (IS_ERR(rsb->clk))
+               return dev_err_probe(dev, PTR_ERR(rsb->clk),
+                                    "failed to retrieve clk\n");
 
        rsb->rstc = devm_reset_control_get(dev, NULL);
-       if (IS_ERR(rsb->rstc)) {
-               ret = PTR_ERR(rsb->rstc);
-               dev_err(dev, "failed to retrieve reset controller: %d\n", ret);
-               return ret;
-       }
+       if (IS_ERR(rsb->rstc))
+               return dev_err_probe(dev, PTR_ERR(rsb->rstc),
+                                    "failed to retrieve reset controller\n");
 
        init_completion(&rsb->complete);
        mutex_init(&rsb->lock);
 
        ret = devm_request_irq(dev, irq, sunxi_rsb_irq, 0, RSB_CTRL_NAME, rsb);
-       if (ret) {
-               dev_err(dev, "can't register interrupt handler irq %d: %d\n",
-                       irq, ret);
-               return ret;
-       }
+       if (ret)
+               return dev_err_probe(dev, ret,
+                                    "can't register interrupt handler irq %d\n", irq);
 
        ret = sunxi_rsb_hw_init(rsb);
        if (ret)