Message ID | 20200409060209.202677-1-hsinyi@chromium.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [v2] drm: mediatek: fix device passed to cmdq | expand |
Hi, Hsin-Yi: Hsin-Yi Wang <hsinyi@chromium.org> 於 2020年4月9日 週四 下午2:02寫道: > > 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 Reviewed-by: Chun-Kuang Hu <chunkuang.hu@kernel.org> > > Fixes: 1d367541aded ("soc / drm: mediatek: Fix mediatek-drm device probing") > Signed-off-by: Hsin-Yi Wang <hsinyi@chromium.org> > Reviewed-by: Enric Balletbo i Serra <enric.balletbo@collabora.com> > Tested-by: Enric Balletbo i Serra <enric.balletbo@collabora.com> > --- > The patch is based on > https://git.kernel.org/pub/scm/linux/kernel/git/matthias.bgg/linux.git > branch v5.6-next/soc > > Change log: > v1->v2: > align with 60fa8c13ab1a ("drm/mediatek: Move gce event property to mutex device node") > --- > drivers/gpu/drm/mediatek/mtk_drm_crtc.c | 3 ++- > drivers/gpu/drm/mediatek/mtk_drm_drv.c | 2 +- > 2 files changed, 3 insertions(+), 2 deletions(-) > > diff --git a/drivers/gpu/drm/mediatek/mtk_drm_crtc.c b/drivers/gpu/drm/mediatek/mtk_drm_crtc.c > index 615a54e60fe2..7247c6f87f4a 100644 > --- a/drivers/gpu/drm/mediatek/mtk_drm_crtc.c > +++ b/drivers/gpu/drm/mediatek/mtk_drm_crtc.c > @@ -822,7 +822,8 @@ 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", > diff --git a/drivers/gpu/drm/mediatek/mtk_drm_drv.c b/drivers/gpu/drm/mediatek/mtk_drm_drv.c > index e2bb0d19ef99..28418e5b83ee 100644 > --- a/drivers/gpu/drm/mediatek/mtk_drm_drv.c > +++ b/drivers/gpu/drm/mediatek/mtk_drm_drv.c > @@ -517,7 +517,7 @@ 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; > -- > 2.26.0.292.g33ef6b2f38-goog >
diff --git a/drivers/gpu/drm/mediatek/mtk_drm_crtc.c b/drivers/gpu/drm/mediatek/mtk_drm_crtc.c index 615a54e60fe2..7247c6f87f4a 100644 --- a/drivers/gpu/drm/mediatek/mtk_drm_crtc.c +++ b/drivers/gpu/drm/mediatek/mtk_drm_crtc.c @@ -822,7 +822,8 @@ 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", diff --git a/drivers/gpu/drm/mediatek/mtk_drm_drv.c b/drivers/gpu/drm/mediatek/mtk_drm_drv.c index e2bb0d19ef99..28418e5b83ee 100644 --- a/drivers/gpu/drm/mediatek/mtk_drm_drv.c +++ b/drivers/gpu/drm/mediatek/mtk_drm_drv.c @@ -517,7 +517,7 @@ 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;