When possible use dev_err_probe help to properly deal with the
PROBE_DEFER error, the benefit is that DEFER issue will be logged
in the devices_deferred debugfs file.
And using dev_err_probe() can reduce code size, and the error value
gets printed.

Signed-off-by: Cai Huoqing <caihuoq...@baidu.com>
---
 drivers/gpu/drm/mcde/mcde_drv.c | 24 +++++++++++-------------
 1 file changed, 11 insertions(+), 13 deletions(-)

diff --git a/drivers/gpu/drm/mcde/mcde_drv.c b/drivers/gpu/drm/mcde/mcde_drv.c
index e60566a5739c..e9e4653a0732 100644
--- a/drivers/gpu/drm/mcde/mcde_drv.c
+++ b/drivers/gpu/drm/mcde/mcde_drv.c
@@ -291,11 +291,9 @@ static int mcde_probe(struct platform_device *pdev)
 
        /* First obtain and turn on the main power */
        mcde->epod = devm_regulator_get(dev, "epod");
-       if (IS_ERR(mcde->epod)) {
-               ret = PTR_ERR(mcde->epod);
-               dev_err(dev, "can't get EPOD regulator\n");
-               return ret;
-       }
+       if (IS_ERR(mcde->epod))
+               return dev_err_probe(dev, PTR_ERR(mcde->epod),
+                                    "can't get EPOD regulator\n");
        ret = regulator_enable(mcde->epod);
        if (ret) {
                dev_err(dev, "can't enable EPOD regulator\n");
@@ -303,8 +301,8 @@ static int mcde_probe(struct platform_device *pdev)
        }
        mcde->vana = devm_regulator_get(dev, "vana");
        if (IS_ERR(mcde->vana)) {
-               ret = PTR_ERR(mcde->vana);
-               dev_err(dev, "can't get VANA regulator\n");
+               ret = dev_err_probe(dev, PTR_ERR(mcde->vana),
+                                   "can't get VANA regulator\n");
                goto regulator_epod_off;
        }
        ret = regulator_enable(mcde->vana);
@@ -320,8 +318,8 @@ static int mcde_probe(struct platform_device *pdev)
        /* Clock the silicon so we can access the registers */
        mcde->mcde_clk = devm_clk_get(dev, "mcde");
        if (IS_ERR(mcde->mcde_clk)) {
-               dev_err(dev, "unable to get MCDE main clock\n");
-               ret = PTR_ERR(mcde->mcde_clk);
+               ret = dev_err_probe(dev, PTR_ERR(mcde->mcde_clk),
+                                   "unable to get MCDE main clock\n");
                goto regulator_off;
        }
        ret = clk_prepare_enable(mcde->mcde_clk);
@@ -333,14 +331,14 @@ static int mcde_probe(struct platform_device *pdev)
 
        mcde->lcd_clk = devm_clk_get(dev, "lcd");
        if (IS_ERR(mcde->lcd_clk)) {
-               dev_err(dev, "unable to get LCD clock\n");
-               ret = PTR_ERR(mcde->lcd_clk);
+               ret = dev_err_probe(dev, PTR_ERR(mcde->lcd_clk),
+                                   "unable to get LCD clock\n");
                goto clk_disable;
        }
        mcde->hdmi_clk = devm_clk_get(dev, "hdmi");
        if (IS_ERR(mcde->hdmi_clk)) {
-               dev_err(dev, "unable to get HDMI clock\n");
-               ret = PTR_ERR(mcde->hdmi_clk);
+               ret = dev_err_probe(dev, PTR_ERR(mcde->hdmi_clk),
+                                   "unable to get HDMI clock\n");
                goto clk_disable;
        }
 
-- 
2.25.1

Reply via email to