Commit 3555339f authored by Sam Ravnborg's avatar Sam Ravnborg
Browse files

drm/panel: tpo-td028ttec1: use drm_panel backlight support



Use the backlight support in drm_panel to simplify the driver

Signed-off-by: default avatarSam Ravnborg <sam@ravnborg.org>
Reviewed-by: default avatarLaurent Pinchart <laurent.pinchart@ideasonboard.com>
Cc: Thierry Reding <thierry.reding@gmail.com>
Cc: Sam Ravnborg <sam@ravnborg.org>
Link: https://patchwork.freedesktop.org/patch/msgid/20191207140353.23967-25-sam@ravnborg.org
parent 31a59a9c
Loading
Loading
Loading
Loading
+4 −10
Original line number Diff line number Diff line
@@ -17,7 +17,6 @@
 * H. Nikolaus Schaller <hns@goldelico.com>
 */

#include <linux/backlight.h>
#include <linux/delay.h>
#include <linux/module.h>
#include <linux/spi/spi.h>
@@ -83,7 +82,6 @@ struct td028ttec1_panel {
	struct drm_panel panel;

	struct spi_device *spi;
	struct backlight_device *backlight;
};

#define to_td028ttec1_device(p) container_of(p, struct td028ttec1_panel, panel)
@@ -243,8 +241,6 @@ static int td028ttec1_enable(struct drm_panel *panel)
	if (ret)
		return ret;

	backlight_enable(lcd->backlight);

	return 0;
}

@@ -252,8 +248,6 @@ static int td028ttec1_disable(struct drm_panel *panel)
{
	struct td028ttec1_panel *lcd = to_td028ttec1_device(panel);

	backlight_disable(lcd->backlight);

	jbt_ret_write_0(lcd, JBT_REG_DISPLAY_OFF, NULL);

	return 0;
@@ -334,10 +328,6 @@ static int td028ttec1_probe(struct spi_device *spi)
	spi_set_drvdata(spi, lcd);
	lcd->spi = spi;

	lcd->backlight = devm_of_find_backlight(&spi->dev);
	if (IS_ERR(lcd->backlight))
		return PTR_ERR(lcd->backlight);

	spi->mode = SPI_MODE_3;
	spi->bits_per_word = 9;

@@ -350,6 +340,10 @@ static int td028ttec1_probe(struct spi_device *spi)
	drm_panel_init(&lcd->panel, &lcd->spi->dev, &td028ttec1_funcs,
		       DRM_MODE_CONNECTOR_DPI);

	ret = drm_panel_of_backlight(&lcd->panel);
	if (ret)
		return ret;

	return drm_panel_add(&lcd->panel);
}