Skip to content

Commit 6dfebee

Browse files
committed
drm/imx/dw-hdmi: convert to of_drm_find_and_get_bridge()
of_drm_find_bridge() is deprecated. Move to its replacement of_drm_find_and_get_bridge() which gets a bridge reference, and ensure it is put when done. Acked-by: Maxime Ripard <mripard@kernel.org> Reviewed-by: Philipp Zabel <p.zabel@pengutronix.de> Link: https://patch.msgid.link/20260109-drm-bridge-alloc-getput-drm_of_find_bridge-3-v2-3-8d7a3dbacdf4@bootlin.com Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
1 parent 9afbf7a commit 6dfebee

1 file changed

Lines changed: 5 additions & 2 deletions

File tree

drivers/gpu/drm/imx/ipuv3/dw_hdmi-imx.c

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -241,16 +241,18 @@ static int dw_hdmi_imx_probe(struct platform_device *pdev)
241241
if (IS_ERR(hdmi->hdmi))
242242
return PTR_ERR(hdmi->hdmi);
243243

244-
hdmi->bridge = of_drm_find_bridge(np);
244+
hdmi->bridge = of_drm_find_and_get_bridge(np);
245245
if (!hdmi->bridge) {
246246
dev_err(hdmi->dev, "Unable to find bridge\n");
247247
dw_hdmi_remove(hdmi->hdmi);
248248
return -ENODEV;
249249
}
250250

251251
ret = component_add(&pdev->dev, &dw_hdmi_imx_ops);
252-
if (ret)
252+
if (ret) {
253+
drm_bridge_put(hdmi->bridge);
253254
dw_hdmi_remove(hdmi->hdmi);
255+
}
254256

255257
return ret;
256258
}
@@ -260,6 +262,7 @@ static void dw_hdmi_imx_remove(struct platform_device *pdev)
260262
struct imx_hdmi *hdmi = platform_get_drvdata(pdev);
261263

262264
component_del(&pdev->dev, &dw_hdmi_imx_ops);
265+
drm_bridge_put(hdmi->bridge);
263266
dw_hdmi_remove(hdmi->hdmi);
264267
}
265268

0 commit comments

Comments
 (0)