In the probe path, dev_err() can be replaced with 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.

Signed-off-by: Yuan Can <yuan...@huawei.com>
Reviewed-by: Douglas Anderson <diand...@chromium.org>
---
 drivers/gpu/drm/panel/panel-simple.c | 9 +++------
 1 file changed, 3 insertions(+), 6 deletions(-)

diff --git a/drivers/gpu/drm/panel/panel-simple.c 
b/drivers/gpu/drm/panel/panel-simple.c
index 0cb3be26e2e6..1607824dc2b3 100644
--- a/drivers/gpu/drm/panel/panel-simple.c
+++ b/drivers/gpu/drm/panel/panel-simple.c
@@ -575,12 +575,9 @@ static int panel_simple_probe(struct device *dev, const 
struct panel_desc *desc)
 
        panel->enable_gpio = devm_gpiod_get_optional(dev, "enable",
                                                     GPIOD_OUT_LOW);
-       if (IS_ERR(panel->enable_gpio)) {
-               err = PTR_ERR(panel->enable_gpio);
-               if (err != -EPROBE_DEFER)
-                       dev_err(dev, "failed to request GPIO: %d\n", err);
-               return err;
-       }
+       if (IS_ERR(panel->enable_gpio))
+               return dev_err_probe(dev, PTR_ERR(panel->enable_gpio),
+                                    "failed to request GPIO\n");
 
        err = of_drm_get_panel_orientation(dev->of_node, &panel->orientation);
        if (err) {
-- 
2.17.1

Reply via email to