drm/tidss: encoder: convert to devm_drm_bridge_alloc()

Convert the tidss encoder to use devm_drm_bridge_alloc(). Instead of
allocating the memory by drmm_simple_encoder_alloc() use
devm_drm_bridge_alloc() and initialize the encoder afterwards.

Fixes: a7748dd127 ("drm/bridge: get/put the bridge reference in drm_bridge_add/remove()")
Signed-off-by: Michael Walle <mwalle@kernel.org>
Link: https://lore.kernel.org/r/20250716134107.4084945-1-mwalle@kernel.org
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com>
This commit is contained in:
Michael Walle 2025-07-16 15:41:07 +02:00 committed by Tomi Valkeinen
parent fe69a39180
commit 66cdf05f85

View File

@ -90,14 +90,18 @@ int tidss_encoder_create(struct tidss_device *tidss,
struct drm_connector *connector;
int ret;
t_enc = drmm_simple_encoder_alloc(&tidss->ddev, struct tidss_encoder,
encoder, encoder_type);
t_enc = devm_drm_bridge_alloc(tidss->dev, struct tidss_encoder,
bridge, &tidss_bridge_funcs);
if (IS_ERR(t_enc))
return PTR_ERR(t_enc);
ret = drm_simple_encoder_init(&tidss->ddev, &t_enc->encoder,
encoder_type);
if (ret)
return ret;
t_enc->tidss = tidss;
t_enc->next_bridge = next_bridge;
t_enc->bridge.funcs = &tidss_bridge_funcs;
enc = &t_enc->encoder;
enc->possible_crtcs = possible_crtcs;