Message ID | 20201124124538.660710-81-tomi.valkeinen@ti.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | Convert DSI code to use drm_mipi_dsi and drm_panel | expand |
Hi Tomi, Thank you for the patch. On Tue, Nov 24, 2020 at 02:45:38PM +0200, Tomi Valkeinen wrote: > We only need to set VC_CTRL:DCS_CMD_ENABLE for command mode panels when > the HW has DSI_QUIRK_DCS_CMD_CONFIG_VC quirk. The old code did this > right by accident, but now we set DCS_CMD_ENABLE for video mode panels > too. > > Fix this by skipping the set for video mode. > > Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> > --- > drivers/gpu/drm/omapdrm/dss/dsi.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/omapdrm/dss/dsi.c b/drivers/gpu/drm/omapdrm/dss/dsi.c > index ffecacd7350a..d52bef0c7aa2 100644 > --- a/drivers/gpu/drm/omapdrm/dss/dsi.c > +++ b/drivers/gpu/drm/omapdrm/dss/dsi.c > @@ -3401,7 +3401,8 @@ static void dsi_setup_dsi_vcs(struct dsi_data *dsi) > REG_FLD_MOD(dsi, DSI_VC_CTRL(VC_VIDEO), 1, 1, 1); /* SOURCE_VP */ > dsi->vc[VC_VIDEO].source = DSI_VC_SOURCE_VP; > > - if (dsi->data->quirks & DSI_QUIRK_DCS_CMD_CONFIG_VC) > + if ((dsi->data->quirks & DSI_QUIRK_DCS_CMD_CONFIG_VC) && > + !(dsi->dsidev->mode_flags & MIPI_DSI_MODE_VIDEO)) > REG_FLD_MOD(dsi, DSI_VC_CTRL(VC_VIDEO), 1, 30, 30); /* DCS_CMD_ENABLE */ > > dsi_vc_enable(dsi, VC_CMD, 1);
diff --git a/drivers/gpu/drm/omapdrm/dss/dsi.c b/drivers/gpu/drm/omapdrm/dss/dsi.c index ffecacd7350a..d52bef0c7aa2 100644 --- a/drivers/gpu/drm/omapdrm/dss/dsi.c +++ b/drivers/gpu/drm/omapdrm/dss/dsi.c @@ -3401,7 +3401,8 @@ static void dsi_setup_dsi_vcs(struct dsi_data *dsi) REG_FLD_MOD(dsi, DSI_VC_CTRL(VC_VIDEO), 1, 1, 1); /* SOURCE_VP */ dsi->vc[VC_VIDEO].source = DSI_VC_SOURCE_VP; - if (dsi->data->quirks & DSI_QUIRK_DCS_CMD_CONFIG_VC) + if ((dsi->data->quirks & DSI_QUIRK_DCS_CMD_CONFIG_VC) && + !(dsi->dsidev->mode_flags & MIPI_DSI_MODE_VIDEO)) REG_FLD_MOD(dsi, DSI_VC_CTRL(VC_VIDEO), 1, 30, 30); /* DCS_CMD_ENABLE */ dsi_vc_enable(dsi, VC_CMD, 1);
We only need to set VC_CTRL:DCS_CMD_ENABLE for command mode panels when the HW has DSI_QUIRK_DCS_CMD_CONFIG_VC quirk. The old code did this right by accident, but now we set DCS_CMD_ENABLE for video mode panels too. Fix this by skipping the set for video mode. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> --- drivers/gpu/drm/omapdrm/dss/dsi.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)