2020-02-19 14:15:26

by Phong LE

[permalink] [raw]
Subject: [PATCH] drm/mediatek: component type MTK_DISP_OVL_2L is not correctly handled

The larb device remains NULL if the type is MTK_DISP_OVL_2L.
A kernel panic is raised when a crtc uses mtk_smi_larb_get or
mtk_smi_larb_put.

Signed-off-by: Phong LE <[email protected]>
---
drivers/gpu/drm/mediatek/mtk_drm_ddp_comp.c | 1 +
1 file changed, 1 insertion(+)

diff --git a/drivers/gpu/drm/mediatek/mtk_drm_ddp_comp.c b/drivers/gpu/drm/mediatek/mtk_drm_ddp_comp.c
index 1f5a112bb034..57c88de9a329 100644
--- a/drivers/gpu/drm/mediatek/mtk_drm_ddp_comp.c
+++ b/drivers/gpu/drm/mediatek/mtk_drm_ddp_comp.c
@@ -471,6 +471,7 @@ int mtk_ddp_comp_init(struct device *dev, struct device_node *node,
/* Only DMA capable components need the LARB property */
comp->larb_dev = NULL;
if (type != MTK_DISP_OVL &&
+ type != MTK_DISP_OVL_2L &&
type != MTK_DISP_RDMA &&
type != MTK_DISP_WDMA)
return 0;
--
2.17.1


2020-02-20 01:36:32

by CK Hu (胡俊光)

[permalink] [raw]
Subject: Re: [PATCH] drm/mediatek: component type MTK_DISP_OVL_2L is not correctly handled

Hi, Phong:

On Wed, 2020-02-19 at 15:13 +0100, Phong LE wrote:
> The larb device remains NULL if the type is MTK_DISP_OVL_2L.
> A kernel panic is raised when a crtc uses mtk_smi_larb_get or
> mtk_smi_larb_put.
>

Reviewed-by: CK Hu <[email protected]>

> Signed-off-by: Phong LE <[email protected]>
> ---
> drivers/gpu/drm/mediatek/mtk_drm_ddp_comp.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/drivers/gpu/drm/mediatek/mtk_drm_ddp_comp.c b/drivers/gpu/drm/mediatek/mtk_drm_ddp_comp.c
> index 1f5a112bb034..57c88de9a329 100644
> --- a/drivers/gpu/drm/mediatek/mtk_drm_ddp_comp.c
> +++ b/drivers/gpu/drm/mediatek/mtk_drm_ddp_comp.c
> @@ -471,6 +471,7 @@ int mtk_ddp_comp_init(struct device *dev, struct device_node *node,
> /* Only DMA capable components need the LARB property */
> comp->larb_dev = NULL;
> if (type != MTK_DISP_OVL &&
> + type != MTK_DISP_OVL_2L &&
> type != MTK_DISP_RDMA &&
> type != MTK_DISP_WDMA)
> return 0;

2020-02-25 05:08:36

by CK Hu (胡俊光)

[permalink] [raw]
Subject: Re: [PATCH] drm/mediatek: component type MTK_DISP_OVL_2L is not correctly handled

Hi, Phong:

On Thu, 2020-02-20 at 09:36 +0800, CK Hu wrote:
> Hi, Phong:
>
> On Wed, 2020-02-19 at 15:13 +0100, Phong LE wrote:
> > The larb device remains NULL if the type is MTK_DISP_OVL_2L.
> > A kernel panic is raised when a crtc uses mtk_smi_larb_get or
> > mtk_smi_larb_put.
> >
>
> Reviewed-by: CK Hu <[email protected]>
>

Applied to mediatek-drm-fixes-5.6 [1], thanks.

[1]
https://github.com/ckhu-mediatek/linux.git-tags/commits/mediatek-drm-fixes-5.6

Regards,
CK

> > Signed-off-by: Phong LE <[email protected]>
> > ---
> > drivers/gpu/drm/mediatek/mtk_drm_ddp_comp.c | 1 +
> > 1 file changed, 1 insertion(+)
> >
> > diff --git a/drivers/gpu/drm/mediatek/mtk_drm_ddp_comp.c b/drivers/gpu/drm/mediatek/mtk_drm_ddp_comp.c
> > index 1f5a112bb034..57c88de9a329 100644
> > --- a/drivers/gpu/drm/mediatek/mtk_drm_ddp_comp.c
> > +++ b/drivers/gpu/drm/mediatek/mtk_drm_ddp_comp.c
> > @@ -471,6 +471,7 @@ int mtk_ddp_comp_init(struct device *dev, struct device_node *node,
> > /* Only DMA capable components need the LARB property */
> > comp->larb_dev = NULL;
> > if (type != MTK_DISP_OVL &&
> > + type != MTK_DISP_OVL_2L &&
> > type != MTK_DISP_RDMA &&
> > type != MTK_DISP_WDMA)
> > return 0;
>