Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

clk: davinci: Use of_get_available_child_by_name()

Simplify of_davinci_pll_init() by using of_get_available_child_by_name().

While at it, move of_node_put(child) inside the if block to avoid
additional check if of_child is NULL.

Reviewed-by: David Lechner <david@lechnology.com>
Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com>
Link: https://lore.kernel.org/r/20250410062040.6346-1-biju.das.jz@bp.renesas.com
Signed-off-by: Stephen Boyd <sboyd@kernel.org>

authored by

Biju Das and committed by
Stephen Boyd
6064cfaa 73c46d9a

+15 -13
+15 -13
drivers/clk/davinci/pll.c
··· 763 763 return PTR_ERR(clk); 764 764 } 765 765 766 - child = of_get_child_by_name(node, "pllout"); 767 - if (of_device_is_available(child)) 766 + child = of_get_available_child_by_name(node, "pllout"); 767 + if (child) { 768 768 of_clk_add_provider(child, of_clk_src_simple_get, clk); 769 - of_node_put(child); 769 + of_node_put(child); 770 + } 770 771 771 - child = of_get_child_by_name(node, "sysclk"); 772 - if (of_device_is_available(child)) { 772 + child = of_get_available_child_by_name(node, "sysclk"); 773 + if (child) { 773 774 struct clk_onecell_data *clk_data; 774 775 struct clk **clks; 775 776 int n_clks = max_sysclk_id + 1; ··· 804 803 clks[(*div_info)->id] = clk; 805 804 } 806 805 of_clk_add_provider(child, of_clk_src_onecell_get, clk_data); 806 + of_node_put(child); 807 807 } 808 - of_node_put(child); 809 808 810 - child = of_get_child_by_name(node, "auxclk"); 811 - if (of_device_is_available(child)) { 809 + child = of_get_available_child_by_name(node, "auxclk"); 810 + if (child) { 812 811 char child_name[MAX_NAME_SIZE]; 813 812 814 813 snprintf(child_name, MAX_NAME_SIZE, "%s_auxclk", info->name); ··· 819 818 child_name, PTR_ERR(clk)); 820 819 else 821 820 of_clk_add_provider(child, of_clk_src_simple_get, clk); 822 - } 823 - of_node_put(child); 824 821 825 - child = of_get_child_by_name(node, "obsclk"); 826 - if (of_device_is_available(child)) { 822 + of_node_put(child); 823 + } 824 + 825 + child = of_get_available_child_by_name(node, "obsclk"); 826 + if (child) { 827 827 if (obsclk_info) 828 828 clk = davinci_pll_obsclk_register(dev, obsclk_info, base); 829 829 else ··· 835 833 PTR_ERR(clk)); 836 834 else 837 835 of_clk_add_provider(child, of_clk_src_simple_get, clk); 836 + of_node_put(child); 838 837 } 839 - of_node_put(child); 840 838 841 839 return 0; 842 840 }