[PATCH] drm/mediatek: Fix missing configuration flags in mtk_crtc_ddp_config()

AngeloGioacchino Del Regno angelogioacchino.delregno at collabora.com
Thu Jul 4 08:39:39 UTC 2024


Il 03/07/24 12:33, Jason-JH.Lin ha scritto:
> In mtk_crtc_ddp_config(), mtk_crtc will use some configuration flags to
> generate instructions to cmdq_handle, such as:
>    state->pending_config
>    mtk_crtc->pending_planes
>    plane_state->pending.config
>    mtk_crtc->pending_async_planes
>    plane_state->pending.async_config
> 
> These configuration flags may be set to false when a GCE IRQ comes calling
> ddp_cmdq_cb(). This may result in missing prepare instructions,
> especially if mtk_crtc_update_config() with the flase need_vblank (no need
> to wait for vblank) cases.
> 
> Therefore, use the mtk_crtc->config_updating flag set at the beginning of
> mtk_crtc_update_config() to ensure that these configuration flags won't be
> changed when the mtk_crtc_ddp_config() is preparing instructions.
> 
> Fixes: 7f82d9c43879 ("drm/mediatek: Clear pending flag when cmdq packet is done")
> Signed-off-by: Jason-JH.Lin <jason-jh.lin at mediatek.com>

Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno at collabora.com>




More information about the dri-devel mailing list