[PATCH] drm/panel: simple: add support for innolux at070tn83

Pawel Zalewski pzalewski at thegoodpenguin.co.uk
Fri Mar 10 17:05:35 UTC 2023


Add config for innolux at070tn83 [1] which is a 152x91 display.
Tested on a stm32mp1 based platform.

[1] https://elinux.org/images/0/07/AT070TN83.pdf

Signed-off-by: Pawel Zalewski <pzalewski at thegoodpenguin.co.uk>
---
 drivers/gpu/drm/panel/panel-simple.c | 28 ++++++++++++++++++++++++++++
 1 file changed, 28 insertions(+)

diff --git a/drivers/gpu/drm/panel/panel-simple.c b/drivers/gpu/drm/panel/panel-simple.c
index 065f378bba9d..ad84e9b21299 100644
--- a/drivers/gpu/drm/panel/panel-simple.c
+++ b/drivers/gpu/drm/panel/panel-simple.c
@@ -2120,6 +2120,31 @@ static const struct panel_desc innolux_at043tn24 = {
 	.bus_flags = DRM_BUS_FLAG_DE_HIGH | DRM_BUS_FLAG_PIXDATA_DRIVE_POSEDGE,
 };
 
+static const struct drm_display_mode innolux_at070tn83_mode = {
+	.clock = 40000,
+	.hdisplay = 800,
+	.hsync_start = 800 + 210,
+	.hsync_end = 800 + 210 + 1,
+	.htotal = 800 + 210 + 1 + 45,
+	.vdisplay = 480,
+	.vsync_start = 480 + 132,
+	.vsync_end = 480 + 132 + 1,
+	.vtotal = 480 + 132 + 1 + 22,
+};
+
+static const struct panel_desc innolux_at070tn83 = {
+	.modes = &innolux_at070tn83_mode,
+	.num_modes = 1,
+	.bpc = 6,
+	.size = {
+		.width = 152,
+		.height = 91,
+	},
+	.bus_format = MEDIA_BUS_FMT_RGB666_1X18,
+	.bus_flags = DRM_BUS_FLAG_DE_HIGH | DRM_BUS_FLAG_PIXDATA_SAMPLE_NEGEDGE,
+	.connector_type = DRM_MODE_CONNECTOR_DPI,
+};
+
 static const struct drm_display_mode innolux_at070tn92_mode = {
 	.clock = 33333,
 	.hdisplay = 800,
@@ -4095,6 +4120,9 @@ static const struct of_device_id platform_of_match[] = {
 	}, {
 		.compatible = "innolux,at043tn24",
 		.data = &innolux_at043tn24,
+	}, {
+		.compatible = "innolux,at070tn83",
+		.data = &innolux_at070tn83,
 	}, {
 		.compatible = "innolux,at070tn92",
 		.data = &innolux_at070tn92,
-- 
2.34.1



More information about the dri-devel mailing list