drm/bridge: tc358767: fix missing of_node_put() in for_each_endpoint_of_node()
authorJavier Carrasco <javier.carrasco.cruz@gmail.com>
Sun, 13 Oct 2024 18:11:29 +0000 (20:11 +0200)
committerNeil Armstrong <neil.armstrong@linaro.org>
Mon, 21 Oct 2024 13:00:35 +0000 (15:00 +0200)
for_each_endpoint_of_node() requires a call to of_node_put() for every
early exit. A new error path was added to the loop without observing
this requirement.

Add the missing call to of_node_put() in the error path.

Fixes: 1fb4dceeedc5 ("drm/bridge: tc358767: Add configurable default preemphasis")
Signed-off-by: Javier Carrasco <javier.carrasco.cruz@gmail.com>
Reviewed-by: Marek Vasut <marex@denx.de>
Link: https://lore.kernel.org/r/20241013-tc358767-of_node_put-v1-1-97431772c0ff@gmail.com
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
Link: https://patchwork.freedesktop.org/patch/msgid/20241013-tc358767-of_node_put-v1-1-97431772c0ff@gmail.com
drivers/gpu/drm/bridge/tc358767.c

index 290e2532fab19125aeb2cdf45b6bb013ae800af3..f3afdab55c113e046a773d3024b718eb0472d007 100644 (file)
@@ -2391,6 +2391,7 @@ static int tc_probe_bridge_endpoint(struct tc_data *tc)
                        if (tc->pre_emphasis[0] < 0 || tc->pre_emphasis[0] > 2 ||
                            tc->pre_emphasis[1] < 0 || tc->pre_emphasis[1] > 2) {
                                dev_err(dev, "Incorrect Pre-Emphasis setting, use either 0=0dB 1=3.5dB 2=6dB\n");
+                               of_node_put(node);
                                return -EINVAL;
                        }
                }