From 5a859b820ddf99e084b7fef2ec520b2df90a0a19 Mon Sep 17 00:00:00 2001 From: Luca Ceresoli Date: Fri, 14 Aug 2026 16:05:49 +0200 Subject: [PATCH] drm: of: drm_of_find_panel_or_bridge: simplify freeing the remote node pointer In prepataion to further modify the logic of this function, simplify putting the struct device_node pointer by using a cleanup action. Reviewed-by: Maxime Ripard Link: https://patch.msgid.link/20260814-drm-bridge-every-panel-v1-1-19cd5277cc8d@bootlin.com Signed-off-by: Luca Ceresoli --- drivers/gpu/drm/drm_of.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/drivers/gpu/drm/drm_of.c b/drivers/gpu/drm/drm_of.c index cf02dbca5458..25ebaff580fe 100644 --- a/drivers/gpu/drm/drm_of.c +++ b/drivers/gpu/drm/drm_of.c @@ -288,7 +288,6 @@ int drm_of_find_panel_or_bridge(const struct device_node *np, struct drm_bridge **bridge) { int ret = -EPROBE_DEFER; - struct device_node *remote; if (WARN_ON(!panel)) return -EINVAL; @@ -304,7 +303,8 @@ int drm_of_find_panel_or_bridge(const struct device_node *np, if (!of_graph_is_present(np)) return -ENODEV; - remote = of_graph_get_remote_node(np, port, endpoint); + struct device_node *remote __free(device_node) = + of_graph_get_remote_node(np, port, endpoint); if (!remote) return -ENODEV; @@ -326,7 +326,6 @@ int drm_of_find_panel_or_bridge(const struct device_node *np, } - of_node_put(remote); return ret; } EXPORT_SYMBOL_GPL(drm_of_find_panel_or_bridge);