diff --git a/drivers/clk/clk.c b/drivers/clk/clk.c index 5bb147e..24759b4 100644 --- a/drivers/clk/clk.c +++ b/drivers/clk/clk.c @@ -22,6 +22,7 @@ #include #include #include +#include static LIST_HEAD(clks); @@ -596,10 +597,12 @@ list_for_each_entry_safe(clk_provider, next, &clk_provider_list, node) { - if (force || parent_ready(clk_provider->np)) { + struct device_node *np = clk_provider->np; + if (force || parent_ready(np)) { - clk_provider->clk_init_cb(clk_provider->np); - of_clk_set_defaults(clk_provider->np, true); + of_pinctrl_select_state_default(np); + clk_provider->clk_init_cb(np); + of_clk_set_defaults(np, true); list_del(&clk_provider->node); free(clk_provider);