Re: [PATCH 12/15] drm/arm/komeda: remove dependency on DRM simple helpers

From: Liviu Dudau

Date: Tue Jul 28 2026 - 13:54:47 EST


On Sun, Jul 19, 2026 at 01:35:43AM +0200, Diogo Silva wrote:
> The simple KMS helpers are deprecated because they only add an
> intermediate layer between drivers and atomic modesetting.
>
> Open-code drm_simple_encoder_init() by calling drm_encoder_init()
> directly and providing driver-local drm_encoder_funcs.
>
> Signed-off-by: Diogo Silva <diogompaissilva@xxxxxxxxx>

Reviewed-by: Liviu Dudau <liviu.dudau@xxxxxxx>

Best regards,
Liviu

> ---
> drivers/gpu/drm/arm/display/komeda/komeda_crtc.c | 9 +++++++--
> 1 file changed, 7 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/gpu/drm/arm/display/komeda/komeda_crtc.c b/drivers/gpu/drm/arm/display/komeda/komeda_crtc.c
> index e8cb782a6f8e..719568d9f7c2 100644
> --- a/drivers/gpu/drm/arm/display/komeda/komeda_crtc.c
> +++ b/drivers/gpu/drm/arm/display/komeda/komeda_crtc.c
> @@ -11,9 +11,9 @@
>
> #include <drm/drm_atomic.h>
> #include <drm/drm_atomic_helper.h>
> +#include <drm/drm_encoder.h>
> #include <drm/drm_print.h>
> #include <drm/drm_vblank.h>
> -#include <drm/drm_simple_kms_helper.h>
> #include <drm/drm_bridge.h>
>
> #include "komeda_dev.h"
> @@ -635,6 +635,10 @@ static int komeda_attach_bridge(struct device *dev,
> return err;
> }
>
> +static const struct drm_encoder_funcs komeda_encoder_funcs = {
> + .destroy = drm_encoder_cleanup,
> +};
> +
> static int komeda_crtc_add(struct komeda_kms_dev *kms,
> struct komeda_crtc *kcrtc)
> {
> @@ -658,7 +662,8 @@ static int komeda_crtc_add(struct komeda_kms_dev *kms,
> * bridge
> */
> kcrtc->encoder.possible_crtcs = drm_crtc_mask(crtc);
> - err = drm_simple_encoder_init(base, encoder, DRM_MODE_ENCODER_TMDS);
> + err = drm_encoder_init(base, encoder, &komeda_encoder_funcs,
> + DRM_MODE_ENCODER_TMDS, NULL);
> if (err)
> return err;
>
>
> --
> 2.54.0
>

--
====================
| I would like to |
| fix the world, |
| but they're not |
| giving me the |
\ source code! /
---------------
¯\_(ツ)_/¯