@@ -65,6 +65,7 @@ struct st7703_panel_desc {
unsigned int lanes;
unsigned long mode_flags;
enum mipi_dsi_pixel_format format;
+ bool prepare_prev_first;
int (*init_sequence)(struct st7703 *ctx);
};
@@ -335,6 +336,7 @@ static const struct st7703_panel_desc xbd599_desc = {
.lanes = 4,
.mode_flags = MIPI_DSI_MODE_VIDEO | MIPI_DSI_MODE_VIDEO_SYNC_PULSE,
.format = MIPI_DSI_FMT_RGB888,
+ .prepare_prev_first = true,
.init_sequence = xbd599_init_sequence,
};
@@ -544,6 +546,7 @@ static int st7703_probe(struct mipi_dsi_device *dsi)
drm_panel_init(&ctx->panel, dev, &st7703_drm_funcs,
DRM_MODE_CONNECTOR_DSI);
+ ctx->panel.prepare_prev_first = ctx->desc->prepare_prev_first;
ret = drm_panel_of_backlight(&ctx->panel);
if (ret)
Enable the drm panel prepare_prev_first flag for xbd599 panel so-that the previous controller should be prepared first before the prepare for the panel is called. This makes sure that the previous controller(sun6i-mipi-dsi), likely to be a DSI host controller should be initialized to LP-11 before the panel is powered up. Cc: Ondrej Jirman <megous@megous.com> Signed-off-by: Jagan Teki <jagan@amarulasolutions.com> --- Changes for v7: - new patch drivers/gpu/drm/panel/panel-sitronix-st7703.c | 3 +++ 1 file changed, 3 insertions(+)