]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
drm/tegra: hdmi: Open-code drm_simple_encoder_init()
authorSouradipto Das <souradiptodas6@gmail.com>
Wed, 13 May 2026 10:05:01 +0000 (15:35 +0530)
committerThierry Reding <treding@nvidia.com>
Thu, 28 May 2026 15:19:28 +0000 (17:19 +0200)
The helper drm_simple_encoder_init() is a trivial wrapper around
drm_encoder_init() that only provides a static drm_encoder_funcs with
.destroy set to drm_encoder_cleanup(). Open-code the initialization
with a driver-specific instance of drm_encoder_funcs and remove the
dependency on drm_simple_kms_helper.

Suggested-by: Thomas Zimmermann <tzimmermann@suse.de>
Signed-off-by: Souradipto Das <souradiptodas6@gmail.com>
[treding@nvidia.com: fix issues flagged by checkpatch]
Signed-off-by: Thierry Reding <treding@nvidia.com>
Link: https://patch.msgid.link/20260513100501.6468-1-souradiptodas6@gmail.com
drivers/gpu/drm/tegra/hdmi.c

index 10f02f35c86610f7681a7e1b25ce082ddddfaf4a..0d2c0ab0a63e9fb0dcb56fa99cc8810fba219a1e 100644 (file)
 #include <drm/drm_crtc.h>
 #include <drm/drm_debugfs.h>
 #include <drm/drm_edid.h>
+#include <drm/drm_encoder.h>
 #include <drm/drm_eld.h>
 #include <drm/drm_file.h>
 #include <drm/drm_fourcc.h>
 #include <drm/drm_print.h>
 #include <drm/drm_probe_helper.h>
-#include <drm/drm_simple_kms_helper.h>
 
 #include "hda.h"
 #include "hdmi.h"
@@ -372,6 +372,10 @@ static const struct tmds_config tegra124_tmds_config[] = {
        },
 };
 
+static const struct drm_encoder_funcs tegra_hdmi_encoder_funcs = {
+       .destroy = drm_encoder_cleanup,
+};
+
 static void tegra_hdmi_audio_lock(struct tegra_hdmi *hdmi)
 {
        mutex_lock(&hdmi->audio_lock);
@@ -1555,8 +1559,8 @@ static int tegra_hdmi_init(struct host1x_client *client)
 
        hdmi->output.dev = client->dev;
 
-       drm_simple_encoder_init(drm, &hdmi->output.encoder,
-                               DRM_MODE_ENCODER_TMDS);
+       drm_encoder_init(drm, &hdmi->output.encoder, &tegra_hdmi_encoder_funcs,
+                        DRM_MODE_ENCODER_TMDS, NULL);
        drm_encoder_helper_add(&hdmi->output.encoder,
                               &tegra_hdmi_encoder_helper_funcs);