soc: bcm: brcmstb: biuctrl: Add missing of_node_put()
authorLiang He <windhl@126.com>
Wed, 15 Jun 2022 14:02:31 +0000 (22:02 +0800)
committerFlorian Fainelli <f.fainelli@gmail.com>
Fri, 17 Jun 2022 21:54:22 +0000 (14:54 -0700)
In brcmstb_biuctrl_init(), of_find_compatible_node() will return a
node pointer with refcount incremented. We should use of_node_put()
in each fail path or when it is not used anymore.

Signed-off-by: Liang He <windhl@126.com>
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
drivers/soc/bcm/brcmstb/biuctrl.c

index 2c975d79fe8e6abf135eb416a82aec57c92bf8e6..1467bbd59690a4fc49b51e4c55e9f39569d69083 100644 (file)
@@ -340,12 +340,12 @@ static int __init brcmstb_biuctrl_init(void)
 
        ret = setup_hifcpubiuctrl_regs(np);
        if (ret)
-               return ret;
+               goto out_put;
 
        ret = mcp_write_pairing_set();
        if (ret) {
                pr_err("MCP: Unable to disable write pairing!\n");
-               return ret;
+               goto out_put;
        }
 
        a72_b53_rac_enable_all(np);
@@ -353,6 +353,9 @@ static int __init brcmstb_biuctrl_init(void)
 #ifdef CONFIG_PM_SLEEP
        register_syscore_ops(&brcmstb_cpu_credit_syscore_ops);
 #endif
-       return 0;
+       ret = 0;
+out_put:
+       of_node_put(np);
+       return ret;
 }
 early_initcall(brcmstb_biuctrl_init);