drm/panel: simple: Add Innolux G121XCE-L01 LVDS display support
authorMarek Vasut <marex@denx.de>
Thu, 28 Mar 2024 10:27:38 +0000 (11:27 +0100)
committerMarek Vasut <marex@denx.de>
Wed, 17 Apr 2024 16:58:37 +0000 (18:58 +0200)
G121XCE-L01 is a Color Active Matrix Liquid Crystal Display composed of
a TFT LCD panel, a driver circuit, and LED backlight system. The screen
format is intended to support the 4:3, 1024(H) x 768(V) screen and either
262k/16.7M colors (RGB 6-bits or 8-bits) with LED backlight driver circuit.
All input signals are LVDS interface compatible.

Documentation [1] and [2] indicate that G121X1-L03 and G121XCE-L01 are
effectively identical panels, use the former as RGB 6-bits variant and
add the later as RGB 8-bits variant.

[1] https://www.distec.de/fileadmin/pdf/produkte/TFT-Displays/Innolux/G121X1-L03_Datasheet.pdf
[2] https://www.distec.de/fileadmin/pdf/produkte/TFT-Displays/Innolux/G121XCE-L01_Datasheet.pdf

Signed-off-by: Marek Vasut <marex@denx.de>
Acked-by: Jessica Zhang <quic_jesszhan@quicinc.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20240328102746.17868-4-marex@denx.de
drivers/gpu/drm/panel/panel-simple.c

index 366d81932882335bf4f83fafa902754125c43569..50c855476d788eaf1fd57bc12afc4c1440efca54 100644 (file)
@@ -2622,6 +2622,24 @@ static const struct panel_desc innolux_g121x1_l03 = {
        .connector_type = DRM_MODE_CONNECTOR_LVDS,
 };
 
+static const struct panel_desc innolux_g121xce_l01 = {
+       .timings = &innolux_g121x1_l03_timings,
+       .num_timings = 1,
+       .bpc = 8,
+       .size = {
+               .width = 246,
+               .height = 185,
+       },
+       .delay = {
+               .enable = 200,
+               .unprepare = 200,
+               .disable = 400,
+       },
+       .bus_format = MEDIA_BUS_FMT_RGB888_1X7X4_SPWG,
+       .bus_flags = DRM_BUS_FLAG_DE_HIGH,
+       .connector_type = DRM_MODE_CONNECTOR_LVDS,
+};
+
 static const struct display_timing innolux_g156hce_l01_timings = {
        .pixelclock = { 120000000, 141860000, 150000000 },
        .hactive = { 1920, 1920, 1920 },
@@ -4595,6 +4613,9 @@ static const struct of_device_id platform_of_match[] = {
        }, {
                .compatible = "innolux,g121x1-l03",
                .data = &innolux_g121x1_l03,
+       }, {
+               .compatible = "innolux,g121xce-l01",
+               .data = &innolux_g121xce_l01,
        }, {
                .compatible = "innolux,g156hce-l01",
                .data = &innolux_g156hce_l01,