Hi Hsin-Yi

Thanks for sending the patch upstream

On 6/4/20 7:11, Hsin-Yi Wang wrote:
> drm device is now probed from mmsys. We need to use mmsys device to get gce
> nodes. Fix following errors:
> 
> [    0.740068] mediatek-drm mediatek-drm.1.auto: error -2 can't parse 
> gce-client-reg property (0)
> [    0.748721] mediatek-drm mediatek-drm.1.auto: error -2 can't parse 
> gce-client-reg property (0)
> ...
> [    2.659645] mediatek-drm mediatek-drm.1.auto: failed to request channel
> [    2.666270] mediatek-drm mediatek-drm.1.auto: failed to request channel
> 
> Fixes: 1d367541aded ("soc / drm: mediatek: Fix mediatek-drm device probing")
> Signed-off-by: Hsin-Yi Wang <hsi...@chromium.org>

Right, the mmsys device is now the parent of the drm device.

Reviewed-by: Enric Balletbo i Serra <enric.balle...@collabora.com>

Also I tested drm with the patch applied and adding the gce client register to
my device-tree.

Tested-by: Enric Balletbo i Serra <enric.balle...@collabora.com>

Thanks,
 Enric

> ---
>  drivers/gpu/drm/mediatek/mtk_drm_crtc.c | 6 ++++--
>  drivers/gpu/drm/mediatek/mtk_drm_drv.c  | 3 ++-
>  2 files changed, 6 insertions(+), 3 deletions(-)
> 
> diff --git a/drivers/gpu/drm/mediatek/mtk_drm_crtc.c 
> b/drivers/gpu/drm/mediatek/mtk_drm_crtc.c
> index 615a54e60fe2..8621f0289399 100644
> --- a/drivers/gpu/drm/mediatek/mtk_drm_crtc.c
> +++ b/drivers/gpu/drm/mediatek/mtk_drm_crtc.c
> @@ -822,14 +822,16 @@ int mtk_drm_crtc_create(struct drm_device *drm_dev,
>  
>  #if IS_REACHABLE(CONFIG_MTK_CMDQ)
>       mtk_crtc->cmdq_client =
> -                     cmdq_mbox_create(dev, drm_crtc_index(&mtk_crtc->base),
> +                     cmdq_mbox_create(mtk_crtc->mmsys_dev,
> +                                      drm_crtc_index(&mtk_crtc->base),
>                                        2000);
>       if (IS_ERR(mtk_crtc->cmdq_client)) {
>               dev_dbg(dev, "mtk_crtc %d failed to create mailbox client, 
> writing register by CPU now\n",
>                       drm_crtc_index(&mtk_crtc->base));
>               mtk_crtc->cmdq_client = NULL;
>       }
> -     ret = of_property_read_u32_index(dev->of_node, "mediatek,gce-events",
> +     ret = of_property_read_u32_index(mtk_crtc->mmsys_dev->of_node,
> +                                      "mediatek,gce-events",
>                                        drm_crtc_index(&mtk_crtc->base),
>                                        &mtk_crtc->cmdq_event);
>       if (ret)
> diff --git a/drivers/gpu/drm/mediatek/mtk_drm_drv.c 
> b/drivers/gpu/drm/mediatek/mtk_drm_drv.c
> index e2bb0d19ef99..dc78e86bccc0 100644
> --- a/drivers/gpu/drm/mediatek/mtk_drm_drv.c
> +++ b/drivers/gpu/drm/mediatek/mtk_drm_drv.c
> @@ -517,7 +517,8 @@ static int mtk_drm_probe(struct platform_device *pdev)
>                               goto err_node;
>                       }
>  
> -                     ret = mtk_ddp_comp_init(dev, node, comp, comp_id, NULL);
> +                     ret = mtk_ddp_comp_init(dev->parent, node, comp,
> +                                             comp_id, NULL);
>                       if (ret) {
>                               of_node_put(node);
>                               goto err_node;
> 
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

Reply via email to