Message ID | 20200819081752.4805-6-linux@fw-web.de (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | make hdmi work on bananapi-r2 | expand |
On 19/08/2020 10:17, Frank Wunderlich wrote: > From: Jitao Shi <jitao.shi@mediatek.com> > > For current mediatek dsi encoder, its possible crtc is fixed in crtc > 0, and mediatek dpi encoder's possible crtc is fixed in crtc 1. In > some SoC the possible crtc is not fixed in this case, so call > mtk_drm_find_possible_crtc_by_comp() to find out the correct possible > crtc. > Hm, shouldn't we stash this int 4/7, otherwise we will have not used functions in 4/7. Regards, Matthias > Signed-off-by: Jitao Shi <jitao.shi@mediatek.com> > Signed-off-by: Frank Wunderlich <frank-w@public-files.de> > Reviewed-by: Chun-Kuang Hu <chunkuang.hu@kernel.org> > --- > drivers/gpu/drm/mediatek/mtk_dpi.c | 3 ++- > drivers/gpu/drm/mediatek/mtk_dsi.c | 3 ++- > 2 files changed, 4 insertions(+), 2 deletions(-) > > diff --git a/drivers/gpu/drm/mediatek/mtk_dpi.c b/drivers/gpu/drm/mediatek/mtk_dpi.c > index d4f0fb7ad312..e43977015843 100644 > --- a/drivers/gpu/drm/mediatek/mtk_dpi.c > +++ b/drivers/gpu/drm/mediatek/mtk_dpi.c > @@ -608,7 +608,8 @@ static int mtk_dpi_bind(struct device *dev, struct device *master, void *data) > drm_encoder_helper_add(&dpi->encoder, &mtk_dpi_encoder_helper_funcs); > > /* Currently DPI0 is fixed to be driven by OVL1 */ > - dpi->encoder.possible_crtcs = BIT(1); > + dpi->encoder.possible_crtcs = > + mtk_drm_find_possible_crtc_by_comp(drm_dev, dpi->ddp_comp); > > ret = drm_bridge_attach(&dpi->encoder, dpi->bridge, NULL, 0); > if (ret) { > diff --git a/drivers/gpu/drm/mediatek/mtk_dsi.c b/drivers/gpu/drm/mediatek/mtk_dsi.c > index 16fd99dcdacf..c9f4ad029cb1 100644 > --- a/drivers/gpu/drm/mediatek/mtk_dsi.c > +++ b/drivers/gpu/drm/mediatek/mtk_dsi.c > @@ -974,7 +974,8 @@ static int mtk_dsi_encoder_init(struct drm_device *drm, struct mtk_dsi *dsi) > * Currently display data paths are statically assigned to a crtc each. > * crtc 0 is OVL0 -> COLOR0 -> AAL -> OD -> RDMA0 -> UFOE -> DSI0 > */ > - dsi->encoder.possible_crtcs = 1; > + dsi->encoder.possible_crtcs = > + mtk_drm_find_possible_crtc_by_comp(drm, dsi->ddp_comp); > > ret = drm_bridge_attach(&dsi->encoder, &dsi->bridge, NULL, > DRM_BRIDGE_ATTACH_NO_CONNECTOR); >
Hi, Matthias Brugger <matthias.bgg@gmail.com> 於 2020年8月20日 週四 上午1:14寫道: > > > > On 19/08/2020 10:17, Frank Wunderlich wrote: > > From: Jitao Shi <jitao.shi@mediatek.com> > > > > For current mediatek dsi encoder, its possible crtc is fixed in crtc > > 0, and mediatek dpi encoder's possible crtc is fixed in crtc 1. In > > some SoC the possible crtc is not fixed in this case, so call > > mtk_drm_find_possible_crtc_by_comp() to find out the correct possible > > crtc. > > > > Hm, shouldn't we stash this int 4/7, otherwise we will have not used functions > in 4/7. Agree with Matthias, so squash this patch into 4/7, and applied to mediatek-drm-next [1], thanks. [1] https://git.kernel.org/pub/scm/linux/kernel/git/chunkuang.hu/linux.git/log/?h=mediatek-drm-next Regards, Chun-Kuang. > > Regards, > Matthias > > > Signed-off-by: Jitao Shi <jitao.shi@mediatek.com> > > Signed-off-by: Frank Wunderlich <frank-w@public-files.de> > > Reviewed-by: Chun-Kuang Hu <chunkuang.hu@kernel.org> > > --- > > drivers/gpu/drm/mediatek/mtk_dpi.c | 3 ++- > > drivers/gpu/drm/mediatek/mtk_dsi.c | 3 ++- > > 2 files changed, 4 insertions(+), 2 deletions(-) > > > > diff --git a/drivers/gpu/drm/mediatek/mtk_dpi.c b/drivers/gpu/drm/mediatek/mtk_dpi.c > > index d4f0fb7ad312..e43977015843 100644 > > --- a/drivers/gpu/drm/mediatek/mtk_dpi.c > > +++ b/drivers/gpu/drm/mediatek/mtk_dpi.c > > @@ -608,7 +608,8 @@ static int mtk_dpi_bind(struct device *dev, struct device *master, void *data) > > drm_encoder_helper_add(&dpi->encoder, &mtk_dpi_encoder_helper_funcs); > > > > /* Currently DPI0 is fixed to be driven by OVL1 */ > > - dpi->encoder.possible_crtcs = BIT(1); > > + dpi->encoder.possible_crtcs = > > + mtk_drm_find_possible_crtc_by_comp(drm_dev, dpi->ddp_comp); > > > > ret = drm_bridge_attach(&dpi->encoder, dpi->bridge, NULL, 0); > > if (ret) { > > diff --git a/drivers/gpu/drm/mediatek/mtk_dsi.c b/drivers/gpu/drm/mediatek/mtk_dsi.c > > index 16fd99dcdacf..c9f4ad029cb1 100644 > > --- a/drivers/gpu/drm/mediatek/mtk_dsi.c > > +++ b/drivers/gpu/drm/mediatek/mtk_dsi.c > > @@ -974,7 +974,8 @@ static int mtk_dsi_encoder_init(struct drm_device *drm, struct mtk_dsi *dsi) > > * Currently display data paths are statically assigned to a crtc each. > > * crtc 0 is OVL0 -> COLOR0 -> AAL -> OD -> RDMA0 -> UFOE -> DSI0 > > */ > > - dsi->encoder.possible_crtcs = 1; > > + dsi->encoder.possible_crtcs = > > + mtk_drm_find_possible_crtc_by_comp(drm, dsi->ddp_comp); > > > > ret = drm_bridge_attach(&dsi->encoder, &dsi->bridge, NULL, > > DRM_BRIDGE_ATTACH_NO_CONNECTOR); > >
diff --git a/drivers/gpu/drm/mediatek/mtk_dpi.c b/drivers/gpu/drm/mediatek/mtk_dpi.c index d4f0fb7ad312..e43977015843 100644 --- a/drivers/gpu/drm/mediatek/mtk_dpi.c +++ b/drivers/gpu/drm/mediatek/mtk_dpi.c @@ -608,7 +608,8 @@ static int mtk_dpi_bind(struct device *dev, struct device *master, void *data) drm_encoder_helper_add(&dpi->encoder, &mtk_dpi_encoder_helper_funcs); /* Currently DPI0 is fixed to be driven by OVL1 */ - dpi->encoder.possible_crtcs = BIT(1); + dpi->encoder.possible_crtcs = + mtk_drm_find_possible_crtc_by_comp(drm_dev, dpi->ddp_comp); ret = drm_bridge_attach(&dpi->encoder, dpi->bridge, NULL, 0); if (ret) { diff --git a/drivers/gpu/drm/mediatek/mtk_dsi.c b/drivers/gpu/drm/mediatek/mtk_dsi.c index 16fd99dcdacf..c9f4ad029cb1 100644 --- a/drivers/gpu/drm/mediatek/mtk_dsi.c +++ b/drivers/gpu/drm/mediatek/mtk_dsi.c @@ -974,7 +974,8 @@ static int mtk_dsi_encoder_init(struct drm_device *drm, struct mtk_dsi *dsi) * Currently display data paths are statically assigned to a crtc each. * crtc 0 is OVL0 -> COLOR0 -> AAL -> OD -> RDMA0 -> UFOE -> DSI0 */ - dsi->encoder.possible_crtcs = 1; + dsi->encoder.possible_crtcs = + mtk_drm_find_possible_crtc_by_comp(drm, dsi->ddp_comp); ret = drm_bridge_attach(&dsi->encoder, &dsi->bridge, NULL, DRM_BRIDGE_ATTACH_NO_CONNECTOR);