diff options
author | Tony Lindgren <tony@atomide.com> | 2022-02-04 10:14:43 +0300 |
---|---|---|
committer | Stephen Boyd <sboyd@kernel.org> | 2022-03-11 05:55:59 +0300 |
commit | 80864594ff2ad002e2755daf97d46ff0c86faf1f (patch) | |
tree | 640c3f89aa3544e1e893732c2c4dc2aece403660 /drivers | |
parent | 78ab3a9a3d57193f7080422aea30bf5905608b7d (diff) | |
download | linux-80864594ff2ad002e2755daf97d46ff0c86faf1f.tar.xz |
clk: ti: Preserve node in ti_dt_clocks_register()
In preparation for making use of the clock-output-names, we want to
keep node around in ti_dt_clocks_register().
This change should not needed as a fix currently.
Signed-off-by: Tony Lindgren <tony@atomide.com>
Link: https://lore.kernel.org/r/20220204071449.16762-3-tony@atomide.com
Signed-off-by: Stephen Boyd <sboyd@kernel.org>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/clk/ti/clk.c | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/drivers/clk/ti/clk.c b/drivers/clk/ti/clk.c index 3da33c786d77..29eafab4353e 100644 --- a/drivers/clk/ti/clk.c +++ b/drivers/clk/ti/clk.c @@ -131,7 +131,7 @@ int ti_clk_setup_ll_ops(struct ti_clk_ll_ops *ops) void __init ti_dt_clocks_register(struct ti_dt_clk oclks[]) { struct ti_dt_clk *c; - struct device_node *node, *parent; + struct device_node *node, *parent, *child; struct clk *clk; struct of_phandle_args clkspec; char buf[64]; @@ -171,10 +171,13 @@ void __init ti_dt_clocks_register(struct ti_dt_clk oclks[]) node = of_find_node_by_name(NULL, buf); if (num_args && compat_mode) { parent = node; - node = of_get_child_by_name(parent, "clock"); - if (!node) - node = of_get_child_by_name(parent, "clk"); - of_node_put(parent); + child = of_get_child_by_name(parent, "clock"); + if (!child) + child = of_get_child_by_name(parent, "clk"); + if (child) { + of_node_put(parent); + node = child; + } } clkspec.np = node; |