Hi again, On 8/7/20 17:12, Enric Balletbo i Serra wrote: > Hi Boris, > > Thank you to spend some time to review the patches. > > On 1/7/20 13:41, Boris Brezillon wrote: >> On Mon, 18 May 2020 19:39:09 +0200 >> Enric Balletbo i Serra <enric.balle...@collabora.com> wrote: >> >>> The mtk_dpi driver uses an empty implementation for its encoder. Replace >>> the code with the generic simple encoder. >>> >>> Signed-off-by: Enric Balletbo i Serra <enric.balle...@collabora.com> >>> Reviewed-by: Chun-Kuang Hu <chunkuang...@kernel.org> >>> --- >>> >>> drivers/gpu/drm/mediatek/mtk_dpi.c | 14 +++----------- >>> 1 file changed, 3 insertions(+), 11 deletions(-) >>> >>> diff --git a/drivers/gpu/drm/mediatek/mtk_dpi.c >>> b/drivers/gpu/drm/mediatek/mtk_dpi.c >>> index baad198c69eb..80778b2aac2a 100644 >>> --- a/drivers/gpu/drm/mediatek/mtk_dpi.c >>> +++ b/drivers/gpu/drm/mediatek/mtk_dpi.c >>> @@ -20,6 +20,7 @@ >>> #include <drm/drm_bridge.h> >>> #include <drm/drm_crtc.h> >>> #include <drm/drm_of.h> >>> +#include <drm/drm_simple_kms_helper.h> >>> >>> #include "mtk_dpi_regs.h" >>> #include "mtk_drm_ddp_comp.h" >>> @@ -510,15 +511,6 @@ static int mtk_dpi_set_display_mode(struct mtk_dpi >>> *dpi, >>> return 0; >>> } >>> >>> -static void mtk_dpi_encoder_destroy(struct drm_encoder *encoder) >>> -{ >>> - drm_encoder_cleanup(encoder); >>> -} >>> - >>> -static const struct drm_encoder_funcs mtk_dpi_encoder_funcs = { >>> - .destroy = mtk_dpi_encoder_destroy, >>> -}; >>> - >>> static int mtk_dpi_bridge_attach(struct drm_bridge *bridge, >>> enum drm_bridge_attach_flags flags) >>> { >>> @@ -591,8 +583,8 @@ static int mtk_dpi_bind(struct device *dev, struct >>> device *master, void *data) >>> return ret; >>> } >>> >>> - ret = drm_encoder_init(drm_dev, &dpi->encoder, &mtk_dpi_encoder_funcs, >>> - DRM_MODE_ENCODER_TMDS, NULL); >>> + ret = drm_simple_encoder_init(drm_dev, &dpi->encoder, >>> + DRM_MODE_ENCODER_TMDS); >> >> Not related to this change, but shouldn't we have DRM_MODE_ENCODER_DPI >> here? >> >
Thinking a bit more about this and this patchset in general, I think I'll drop this patch from the series, at the end, all the encoder creation stuff should be moved to mtk_drm_drv. > Right, I'll add a patch to fix this. > >>> if (ret) { >>> dev_err(dev, "Failed to initialize decoder: %d\n", ret); >>> goto err_unregister; >> >