From: Guillaume Ranquet Date: Fri, 1 Jul 2022 03:58:44 +0000 (+0800) Subject: drm/mediatek: dpi: Only enable dpi after the bridge is enabled X-Git-Tag: baikal/mips/sdk5.8.2~3141 X-Git-Url: https://git.baikalelectronics.ru/?a=commitdiff_plain;h=4332e8ce8afdfe1cf2c6a5d3f2653769d3453e56;p=kernel.git drm/mediatek: dpi: Only enable dpi after the bridge is enabled [ Upstream commit 1b207ac09499a86c44205ef0f29a53e6e5bba830 ] Enabling the dpi too early causes glitches on screen. Move the call to mtk_dpi_enable() at the end of the bridge_enable callback to ensure everything is setup properly before enabling dpi. Fixes: 81d04dda894e ("drm/mediatek: Add DPI sub driver") Signed-off-by: Guillaume Ranquet Signed-off-by: Bo-Chen Chen Tested-by: AngeloGioacchino Del Regno Link: https://patchwork.kernel.org/project/linux-mediatek/patch/20220701035845.16458-16-rex-bc.chen@mediatek.com/ Signed-off-by: Chun-Kuang Hu Signed-off-by: Sasha Levin --- diff --git a/drivers/gpu/drm/mediatek/mtk_dpi.c b/drivers/gpu/drm/mediatek/mtk_dpi.c index 8f4a9f245a9aa..4a64d8aed9da9 100644 --- a/drivers/gpu/drm/mediatek/mtk_dpi.c +++ b/drivers/gpu/drm/mediatek/mtk_dpi.c @@ -394,7 +394,6 @@ static int mtk_dpi_power_on(struct mtk_dpi *dpi) if (dpi->pinctrl && dpi->pins_dpi) pinctrl_select_state(dpi->pinctrl, dpi->pins_dpi); - mtk_dpi_enable(dpi); return 0; err_pixel: @@ -538,6 +537,7 @@ static void mtk_dpi_encoder_enable(struct drm_encoder *encoder) mtk_dpi_power_on(dpi); mtk_dpi_set_display_mode(dpi, &dpi->mode); + mtk_dpi_enable(dpi); } static int mtk_dpi_atomic_check(struct drm_encoder *encoder,