In tc_probe_bridge_endpoint(), we should call of_node_put() when
breaking out of the for_each_endpoint_of_node() which will automatically
increase and decrease the refcount.

Fixes: 71f7d9c03118 ("drm/bridge: tc358767: Detect bridge mode from connected 
endpoints in DT")
Signed-off-by: Liang He <[email protected]>
---
 changelog:

 v2: (1) rebase with drm-misc-next advised by Robert Foss
     (2) use proper title
 v1: https://lore.kernel.org/all/[email protected]/

 drivers/gpu/drm/bridge/tc358767.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/bridge/tc358767.c 
b/drivers/gpu/drm/bridge/tc358767.c
index 02bd757a8987..1dc107f13645 100644
--- a/drivers/gpu/drm/bridge/tc358767.c
+++ b/drivers/gpu/drm/bridge/tc358767.c
@@ -2010,9 +2010,10 @@ static int tc_probe_bridge_endpoint(struct tc_data *tc)
 
        for_each_endpoint_of_node(dev->of_node, node) {
                of_graph_parse_endpoint(node, &endpoint);
-               if (endpoint.port > 2)
+               if (endpoint.port > 2) {
+                       of_node_put(node);
                        return -EINVAL;
-
+               }
                mode |= BIT(endpoint.port);
        }
 
-- 
2.25.1

Reply via email to