Look up backlight device using devm_of_find_backlight().
This simplifies the code and prevents us from hardcoding
the node name in the driver.

Signed-off-by: Sam Ravnborg <s...@ravnborg.org>
Cc: Tomi Valkeinen <tomi.valkei...@ti.com>
Cc: Zheng Bin <zhengbi...@huawei.com>
Cc: Kate Stewart <kstew...@linuxfoundation.org>
Cc: Enrico Weigelt <i...@metux.net>
Cc: Allison Randal <alli...@lohutok.net>
Cc: Laurent Pinchart <laurent.pinch...@ideasonboard.com>
Cc: Thomas Gleixner <t...@linutronix.de>
Cc: Kefeng Wang <wangkefeng.w...@huawei.com>
Cc: Sam Ravnborg <s...@ravnborg.org>
---
 .../gpu/drm/omapdrm/displays/panel-dsi-cm.c    | 18 ++++++++----------
 1 file changed, 8 insertions(+), 10 deletions(-)

diff --git a/drivers/gpu/drm/omapdrm/displays/panel-dsi-cm.c 
b/drivers/gpu/drm/omapdrm/displays/panel-dsi-cm.c
index 3484b5d4a91c..faca5c873bde 100644
--- a/drivers/gpu/drm/omapdrm/displays/panel-dsi-cm.c
+++ b/drivers/gpu/drm/omapdrm/displays/panel-dsi-cm.c
@@ -1163,7 +1163,7 @@ static const struct omap_dss_driver dsicm_dss_driver = {
 static int dsicm_probe_of(struct platform_device *pdev)
 {
        struct device_node *node = pdev->dev.of_node;
-       struct device_node *backlight;
+       struct backlight_device *backlight;
        struct panel_drv_data *ddata = platform_get_drvdata(pdev);
        struct display_timing timing;
        int err;
@@ -1216,17 +1216,15 @@ static int dsicm_probe_of(struct platform_device *pdev)
                ddata->vddi = NULL;
        }
 
-       backlight = of_parse_phandle(node, "backlight", 0);
-       if (backlight) {
-               ddata->extbldev = of_find_backlight_by_node(backlight);
-               of_node_put(backlight);
+       backlight = devm_of_find_backlight(&pdev->dev);
+       if (IS_ERR(backlight))
+               return PTR_ERR(backlight);
 
-               if (!ddata->extbldev)
-                       return -EPROBE_DEFER;
-       } else {
-               /* assume native backlight support */
+       /* If no backlight device is found assume native backlight support */
+       if (backlight)
+               ddata->extbldev = backlight;
+       else
                ddata->use_dsi_backlight = true;
-       }
 
        /* TODO: ulps */
 
-- 
2.25.1

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

Reply via email to