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: Jyri Sarha <jsa...@ti.com>
Cc: Tomi Valkeinen <tomi.valkei...@ti.com>
---
 drivers/gpu/drm/tilcdc/tilcdc_panel.c | 17 ++++++-----------
 1 file changed, 6 insertions(+), 11 deletions(-)

diff --git a/drivers/gpu/drm/tilcdc/tilcdc_panel.c 
b/drivers/gpu/drm/tilcdc/tilcdc_panel.c
index 12823d60c4e8..b207b2f19d42 100644
--- a/drivers/gpu/drm/tilcdc/tilcdc_panel.c
+++ b/drivers/gpu/drm/tilcdc/tilcdc_panel.c
@@ -299,7 +299,8 @@ static struct tilcdc_panel_info *of_get_panel_info(struct 
device_node *np)
 
 static int panel_probe(struct platform_device *pdev)
 {
-       struct device_node *bl_node, *node = pdev->dev.of_node;
+       struct device_node *node = pdev->dev.of_node;
+       struct backlight_device *backlight;
        struct panel_module *panel_mod;
        struct tilcdc_module *mod;
        struct pinctrl *pinctrl;
@@ -315,16 +316,10 @@ static int panel_probe(struct platform_device *pdev)
        if (!panel_mod)
                return -ENOMEM;
 
-       bl_node = of_parse_phandle(node, "backlight", 0);
-       if (bl_node) {
-               panel_mod->backlight = of_find_backlight_by_node(bl_node);
-               of_node_put(bl_node);
-
-               if (!panel_mod->backlight)
-                       return -EPROBE_DEFER;
-
-               dev_info(&pdev->dev, "found backlight\n");
-       }
+       backlight = devm_of_find_backlight(&pdev->dev);
+       if (IS_ERR(backlight))
+               return PTR_ERR(backlight);
+       panel_mod->backlight = backlight;
 
        panel_mod->enable_gpio = devm_gpiod_get_optional(&pdev->dev, "enable",
                                                         GPIOD_OUT_LOW);
-- 
2.25.1

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

Reply via email to