drm/panel: simple: Add AUO G156HAN04.0 LVDS display support
authorElmar Albert <ealbert@data-modul.com>
Sat, 9 Dec 2023 06:37:00 +0000 (07:37 +0100)
committerNeil Armstrong <neil.armstrong@linaro.org>
Mon, 11 Dec 2023 09:13:38 +0000 (10:13 +0100)
G156HAN04.0 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 16:9 FHD, 1920(H) x 1080(V) screen
and 16.7M colors (RGB 8-bits) with LED backlight driving circuit.
All input signals are LVDS interface compatible.

G156HAN04.0 is designed for a display unit of notebook style
personal computer and industrial machine.

Signed-off-by: Elmar Albert <ealbert@data-modul.com>
Signed-off-by: Marek Vasut <marex@denx.de>
Acked-by: Maxime Ripard <mripard@kernel.org>
Link: https://lore.kernel.org/r/20231209063714.1381913-2-marex@denx.de
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Link: https://patchwork.freedesktop.org/patch/msgid/20231209063714.1381913-2-marex@denx.de
drivers/gpu/drm/panel/panel-simple.c

index 8017ad33cf18dfc991ac00a0e8d5e36ba928b510..2214cb09678cd6a234359c2cb7972c9beb3f5851 100644 (file)
@@ -1134,6 +1134,37 @@ static const struct panel_desc auo_g133han01 = {
        .connector_type = DRM_MODE_CONNECTOR_LVDS,
 };
 
+static const struct display_timing auo_g156han04_timings = {
+       .pixelclock = { 137000000, 141000000, 146000000 },
+       .hactive = { 1920, 1920, 1920 },
+       .hfront_porch = { 60, 60, 60 },
+       .hback_porch = { 90, 92, 111 },
+       .hsync_len =  { 32, 32, 32 },
+       .vactive = { 1080, 1080, 1080 },
+       .vfront_porch = { 12, 12, 12 },
+       .vback_porch = { 24, 36, 56 },
+       .vsync_len = { 8, 8, 8 },
+};
+
+static const struct panel_desc auo_g156han04 = {
+       .timings = &auo_g156han04_timings,
+       .num_timings = 1,
+       .bpc = 8,
+       .size = {
+               .width = 344,
+               .height = 194,
+       },
+       .delay = {
+               .prepare = 50,          /* T2 */
+               .enable = 200,          /* T3 */
+               .disable = 110,         /* T10 */
+               .unprepare = 1000,      /* T13 */
+       },
+       .bus_format = MEDIA_BUS_FMT_RGB888_1X7X4_SPWG,
+       .bus_flags = DRM_BUS_FLAG_DE_HIGH,
+       .connector_type = DRM_MODE_CONNECTOR_LVDS,
+};
+
 static const struct drm_display_mode auo_g156xtn01_mode = {
        .clock = 76000,
        .hdisplay = 1366,
@@ -4288,6 +4319,9 @@ static const struct of_device_id platform_of_match[] = {
        }, {
                .compatible = "auo,g133han01",
                .data = &auo_g133han01,
+       }, {
+               .compatible = "auo,g156han04",
+               .data = &auo_g156han04,
        }, {
                .compatible = "auo,g156xtn01",
                .data = &auo_g156xtn01,