On recent kernels clks which are marked with CLK_SET_RATE_GATE are
"protected" against further changes at clk_prepare time, including clk
reparent. Fix this by moving clk_disable_unprepare before clk_set_parent.
Signed-off-by: Viorel Suman <viorel.suman@nxp.com>
return -EINVAL;
}
+ clk_disable_unprepare(micfil->mclk);
if (!clk_is_match(pll, npll)) {
ret = clk_set_parent(p, npll);
if (ret < 0)
"failed to set parrent %d\n", ret);
}
- clk_disable_unprepare(micfil->mclk);
ret = clk_set_rate(micfil->mclk, freq * 1024);
if (ret)
dev_warn(dev, "failed to set rate (%u): %d\n",