* This file based on panel-ilitek-ili9881c.c
  */
 
-#include <linux/backlight.h>
 #include <linux/delay.h>
 #include <linux/device.h>
 #include <linux/err.h>
 struct rb070d30_panel {
        struct drm_panel panel;
        struct mipi_dsi_device *dsi;
-       struct backlight_device *backlight;
        struct regulator *supply;
 
        struct {
        if (ret)
                return ret;
 
-       ret = backlight_enable(ctx->backlight);
-       if (ret)
-               goto out;
-
        return 0;
-
-out:
-       mipi_dsi_dcs_enter_sleep_mode(ctx->dsi);
-       return ret;
 }
 
 static int rb070d30_panel_disable(struct drm_panel *panel)
 {
        struct rb070d30_panel *ctx = panel_to_rb070d30_panel(panel);
 
-       backlight_disable(ctx->backlight);
        return mipi_dsi_dcs_enter_sleep_mode(ctx->dsi);
 }
 
                return PTR_ERR(ctx->gpios.shlr);
        }
 
-       ctx->backlight = devm_of_find_backlight(&dsi->dev);
-       if (IS_ERR(ctx->backlight)) {
-               DRM_DEV_ERROR(&dsi->dev, "Couldn't get our backlight\n");
-               return PTR_ERR(ctx->backlight);
-       }
+       ret = drm_panel_of_backlight(&ctx->panel);
+       if (ret)
+               return ret;
 
        ret = drm_panel_add(&ctx->panel);
        if (ret < 0)