Use the backlight support in drm_panel to simplify the driver

Signed-off-by: Sam Ravnborg <s...@ravnborg.org>
Cc: Jagan Teki <ja...@amarulasolutions.com>
Cc: Thierry Reding <thierry.red...@gmail.com>
Cc: Sam Ravnborg <s...@ravnborg.org>
---
 drivers/gpu/drm/panel/panel-sitronix-st7701.c | 12 ++++--------
 1 file changed, 4 insertions(+), 8 deletions(-)

diff --git a/drivers/gpu/drm/panel/panel-sitronix-st7701.c 
b/drivers/gpu/drm/panel/panel-sitronix-st7701.c
index c08a865a2a93..4b4f2558e3b4 100644
--- a/drivers/gpu/drm/panel/panel-sitronix-st7701.c
+++ b/drivers/gpu/drm/panel/panel-sitronix-st7701.c
@@ -9,7 +9,6 @@
 #include <drm/drm_panel.h>
 #include <drm/drm_print.h>
 
-#include <linux/backlight.h>
 #include <linux/gpio/consumer.h>
 #include <linux/delay.h>
 #include <linux/module.h>
@@ -103,7 +102,6 @@ struct st7701 {
        struct mipi_dsi_device *dsi;
        const struct st7701_panel_desc *desc;
 
-       struct backlight_device *backlight;
        struct regulator_bulk_data *supplies;
        struct gpio_desc *reset;
        unsigned int sleep_delay;
@@ -223,7 +221,6 @@ static int st7701_enable(struct drm_panel *panel)
        struct st7701 *st7701 = panel_to_st7701(panel);
 
        ST7701_DSI(st7701, MIPI_DCS_SET_DISPLAY_ON, 0x00);
-       backlight_enable(st7701->backlight);
 
        return 0;
 }
@@ -232,7 +229,6 @@ static int st7701_disable(struct drm_panel *panel)
 {
        struct st7701 *st7701 = panel_to_st7701(panel);
 
-       backlight_disable(st7701->backlight);
        ST7701_DSI(st7701, MIPI_DCS_SET_DISPLAY_OFF, 0x00);
 
        return 0;
@@ -366,10 +362,6 @@ static int st7701_dsi_probe(struct mipi_dsi_device *dsi)
                return PTR_ERR(st7701->reset);
        }
 
-       st7701->backlight = devm_of_find_backlight(&dsi->dev);
-       if (IS_ERR(st7701->backlight))
-               return PTR_ERR(st7701->backlight);
-
        drm_panel_init(&st7701->panel, &dsi->dev, &st7701_funcs,
                       DRM_MODE_CONNECTOR_DSI);
 
@@ -384,6 +376,10 @@ static int st7701_dsi_probe(struct mipi_dsi_device *dsi)
         */
        st7701->sleep_delay = 120 + desc->panel_sleep_delay;
 
+       ret = drm_panel_of_backlight(&st7701->panel);
+       if (ret)
+               return ret;
+
        ret = drm_panel_add(&st7701->panel);
        if (ret < 0)
                return ret;
-- 
2.20.1

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

Reply via email to