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, the error value
gets printed.

Signed-off-by: Cai Huoqing <caihuoq...@baidu.com>
---
 .../gpu/drm/panel/panel-xinpeng-xpp055c272.c  | 25 +++++++------------
 1 file changed, 9 insertions(+), 16 deletions(-)

diff --git a/drivers/gpu/drm/panel/panel-xinpeng-xpp055c272.c 
b/drivers/gpu/drm/panel/panel-xinpeng-xpp055c272.c
index d17aae8b71d7..8177f5a360fb 100644
--- a/drivers/gpu/drm/panel/panel-xinpeng-xpp055c272.c
+++ b/drivers/gpu/drm/panel/panel-xinpeng-xpp055c272.c
@@ -283,26 +283,19 @@ static int xpp055c272_probe(struct mipi_dsi_device *dsi)
                return -ENOMEM;
 
        ctx->reset_gpio = devm_gpiod_get_optional(dev, "reset", GPIOD_OUT_LOW);
-       if (IS_ERR(ctx->reset_gpio)) {
-               dev_err(dev, "cannot get reset gpio\n");
-               return PTR_ERR(ctx->reset_gpio);
-       }
+       if (IS_ERR(ctx->reset_gpio))
+               return dev_err_probe(dev, PTR_ERR(ctx->reset_gpio),
+                                    "cannot get reset gpio\n");
 
        ctx->vci = devm_regulator_get(dev, "vci");
-       if (IS_ERR(ctx->vci)) {
-               ret = PTR_ERR(ctx->vci);
-               if (ret != -EPROBE_DEFER)
-                       dev_err(dev, "Failed to request vci regulator: %d\n", 
ret);
-               return ret;
-       }
+       if (IS_ERR(ctx->vci))
+               return dev_err_probe(dev, PTR_ERR(ctx->vci),
+                                    "Failed to request vci regulator\n");
 
        ctx->iovcc = devm_regulator_get(dev, "iovcc");
-       if (IS_ERR(ctx->iovcc)) {
-               ret = PTR_ERR(ctx->iovcc);
-               if (ret != -EPROBE_DEFER)
-                       dev_err(dev, "Failed to request iovcc regulator: %d\n", 
ret);
-               return ret;
-       }
+       if (IS_ERR(ctx->iovcc))
+               return dev_err_probe(dev, PTR_ERR(ctx->iovcc),
+                                    "Failed to request iovcc regulator\n");
 
        mipi_dsi_set_drvdata(dsi, ctx);
 
-- 
2.25.1

Reply via email to