drm: panel: Enable prepare_prev_first flag for samsung-s6e panels
authorJagan Teki <jagan@amarulasolutions.com>
Mon, 12 Dec 2022 18:29:21 +0000 (23:59 +0530)
committerInki Dae <inki.dae@samsung.com>
Thu, 26 Jan 2023 06:11:23 +0000 (15:11 +0900)
Enable the drm panel prepare_prev_first flag so-that the previous
controller should be prepared first before the prepare for the
panel is called.

samsung-s6e3ha2, samsung-s6e63j0x03 and samsung-s6e8aa0 are the
effected samsung-s6e panels for this change.

This makes sure that the previous controller, likely to be a DSI
host controller should be initialized to LP-11 before the panel
is powered up.

Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
Reviewed-by: Frieder Schrempf <frieder.schrempf@kontron.de>
Signed-off-by: Inki Dae <inki.dae@samsung.com>
drivers/gpu/drm/panel/panel-samsung-s6e3ha2.c
drivers/gpu/drm/panel/panel-samsung-s6e63j0x03.c
drivers/gpu/drm/panel/panel-samsung-s6e8aa0.c

index 439ef30..39eef3d 100644 (file)
@@ -733,6 +733,7 @@ static int s6e3ha2_probe(struct mipi_dsi_device *dsi)
 
        drm_panel_init(&ctx->panel, dev, &s6e3ha2_drm_funcs,
                       DRM_MODE_CONNECTOR_DSI);
+       ctx->panel.prepare_prev_first = true;
 
        drm_panel_add(&ctx->panel);
 
index 9c3e761..46d6f4a 100644 (file)
@@ -463,6 +463,7 @@ static int s6e63j0x03_probe(struct mipi_dsi_device *dsi)
 
        drm_panel_init(&ctx->panel, dev, &s6e63j0x03_funcs,
                       DRM_MODE_CONNECTOR_DSI);
+       ctx->panel.prepare_prev_first = true;
 
        ctx->bl_dev = backlight_device_register("s6e63j0x03", dev, ctx,
                                                &s6e63j0x03_bl_ops, NULL);
index ebf4c2d..c51d07e 100644 (file)
@@ -1016,6 +1016,7 @@ static int s6e8aa0_probe(struct mipi_dsi_device *dsi)
 
        drm_panel_init(&ctx->panel, dev, &s6e8aa0_drm_funcs,
                       DRM_MODE_CONNECTOR_DSI);
+       ctx->panel.prepare_prev_first = true;
 
        drm_panel_add(&ctx->panel);