drm/panel-simple: Add N116BCA-EA1
authorDouglas Anderson <dianders@chromium.org>
Fri, 15 Jan 2021 22:44:20 +0000 (14:44 -0800)
committerLinus Walleij <linus.walleij@linaro.org>
Thu, 11 Mar 2021 16:14:43 +0000 (17:14 +0100)
This panel is quite similar to the similarly named N116BGE panel (the
nominal timings are, in fact identical).  However, let's add a new
entry because the full range of clocks listed for N116BGE aren't
supported for N116BCA-EA1, at least according to the datasheet.

Signed-off-by: Douglas Anderson <dianders@chromium.org>
Reviewed-by: Stephen Boyd <swboyd@chromium.org>
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Link: https://patchwork.freedesktop.org/patch/msgid/20210115144345.v2.5.I3c01f3aab8335cb509da7009d8938c1a27a266dc@changeid
drivers/gpu/drm/panel/panel-simple.c

index 8f25508..dab830d 100644 (file)
@@ -2407,6 +2407,36 @@ static const struct panel_desc innolux_g121x1_l03 = {
        },
 };
 
+static const struct drm_display_mode innolux_n116bca_ea1_mode = {
+       .clock = 76420,
+       .hdisplay = 1366,
+       .hsync_start = 1366 + 136,
+       .hsync_end = 1366 + 136 + 30,
+       .htotal = 1366 + 136 + 30 + 60,
+       .vdisplay = 768,
+       .vsync_start = 768 + 8,
+       .vsync_end = 768 + 8 + 12,
+       .vtotal = 768 + 8 + 12 + 12,
+       .flags = DRM_MODE_FLAG_NHSYNC | DRM_MODE_FLAG_NVSYNC,
+};
+
+static const struct panel_desc innolux_n116bca_ea1 = {
+       .modes = &innolux_n116bca_ea1_mode,
+       .num_modes = 1,
+       .bpc = 6,
+       .size = {
+               .width = 256,
+               .height = 144,
+       },
+       .delay = {
+               .hpd_absent_delay = 200,
+               .prepare_to_enable = 80,
+               .unprepare = 500,
+       },
+       .bus_format = MEDIA_BUS_FMT_RGB666_1X18,
+       .connector_type = DRM_MODE_CONNECTOR_eDP,
+};
+
 /*
  * Datasheet specifies that at 60 Hz refresh rate:
  * - total horizontal time: { 1506, 1592, 1716 }
@@ -4323,6 +4353,9 @@ static const struct of_device_id platform_of_match[] = {
                .compatible = "innolux,g121x1-l03",
                .data = &innolux_g121x1_l03,
        }, {
+               .compatible = "innolux,n116bca-ea1",
+               .data = &innolux_n116bca_ea1,
+       }, {
                .compatible = "innolux,n116bge",
                .data = &innolux_n116bge,
        }, {