[PATCH] drm/mediatek: Use CPU when fail to get cmdq event
Chun-Kuang Hu
chunkuang.hu at kernel.org
Tue Sep 8 19:00:25 EDT 2020
Chun-Kuang Hu <chunkuang.hu at kernel.org> 於 2020年9月3日 週四 上午6:06寫道:
>
> Even though cmdq client is created successfully, without the cmdq event,
> cmdq could not work correctly, so use CPU when fail to get cmdq event.
Applied to mediatek-drm-fixes [1].
[1] https://git.kernel.org/pub/scm/linux/kernel/git/chunkuang.hu/linux.git/log/?h=mediatek-drm-fixes
Regards,
Chun-Kuang.
>
> Fixes: 60fa8c13ab1a ("drm/mediatek: Move gce event property to mutex device node")
> Signed-off-by: Chun-Kuang Hu <chunkuang.hu at kernel.org>
> ---
> drivers/gpu/drm/mediatek/mtk_drm_crtc.c | 20 +++++++++++++-------
> 1 file changed, 13 insertions(+), 7 deletions(-)
>
> diff --git a/drivers/gpu/drm/mediatek/mtk_drm_crtc.c b/drivers/gpu/drm/mediatek/mtk_drm_crtc.c
> index 3fc5511330b9..4d29568be3f5 100644
> --- a/drivers/gpu/drm/mediatek/mtk_drm_crtc.c
> +++ b/drivers/gpu/drm/mediatek/mtk_drm_crtc.c
> @@ -831,13 +831,19 @@ int mtk_drm_crtc_create(struct drm_device *drm_dev,
> drm_crtc_index(&mtk_crtc->base));
> mtk_crtc->cmdq_client = NULL;
> }
> - ret = of_property_read_u32_index(priv->mutex_node,
> - "mediatek,gce-events",
> - drm_crtc_index(&mtk_crtc->base),
> - &mtk_crtc->cmdq_event);
> - if (ret)
> - dev_dbg(dev, "mtk_crtc %d failed to get mediatek,gce-events property\n",
> - drm_crtc_index(&mtk_crtc->base));
> +
> + if (mtk_crtc->cmdq_client) {
> + ret = of_property_read_u32_index(priv->mutex_node,
> + "mediatek,gce-events",
> + drm_crtc_index(&mtk_crtc->base),
> + &mtk_crtc->cmdq_event);
> + if (ret) {
> + dev_dbg(dev, "mtk_crtc %d failed to get mediatek,gce-events property\n",
> + drm_crtc_index(&mtk_crtc->base));
> + cmdq_mbox_destroy(mtk_crtc->cmdq_client);
> + mtk_crtc->cmdq_client = NULL;
> + }
> + }
> #endif
> return 0;
> }
> --
> 2.17.1
>
More information about the Linux-mediatek
mailing list