]> git.hungrycats.org Git - linux/commitdiff
clk: ti: dra7-atl-clock: Fix of_node reference counting
authorPeter Ujfalusi <peter.ujfalusi@ti.com>
Fri, 11 Mar 2016 14:13:32 +0000 (16:13 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 30 Nov 2017 08:35:52 +0000 (08:35 +0000)
commit 660e1551939931657808d47838a3f443c0e83fd0 upstream.

of_find_node_by_name() will call of_node_put() on the node so we need to
get it first to avoid warnings.
The cfg_node needs to be put after we have finished processing the
properties.

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
Tested-by: Nishanth Menon <nm@ti.com>
Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/clk/ti/clk-dra7-atl.c

index 59bb4b39d12e799f6d32d8f5a3d898e4dc9d1c46..dd980c84dab7856f91aec96faa997cc2ee10e429 100644 (file)
@@ -259,6 +259,7 @@ static int of_dra7_atl_clk_probe(struct platform_device *pdev)
 
                /* Get configuration for the ATL instances */
                snprintf(prop, sizeof(prop), "atl%u", i);
+               of_node_get(node);
                cfg_node = of_find_node_by_name(node, prop);
                if (cfg_node) {
                        ret = of_property_read_u32(cfg_node, "bws",
@@ -272,6 +273,7 @@ static int of_dra7_atl_clk_probe(struct platform_device *pdev)
                                atl_write(cinfo, DRA7_ATL_AWSMUX_REG(i),
                                          cdesc->aws);
                        }
+                       of_node_put(cfg_node);
                }
 
                cdesc->probed = true;