clk: ccf: replace the get_rate helper
The12d152620d
commit fixed the get_rate helper because the set_parent one did not re-parent the clock device to the new parent. The4d139f3838
commit allows you to remove this workaround by calling the clk_get_parent_rate routine. Signed-off-by: Dario Binacchi <dariobin@libero.it>
This commit is contained in:
parent
69509fb0a5
commit
fa181d1a95
@ -150,32 +150,8 @@ static int clk_mux_set_parent(struct clk *clk, struct clk *parent)
|
||||
return 0;
|
||||
}
|
||||
|
||||
static ulong clk_mux_get_rate(struct clk *clk)
|
||||
{
|
||||
struct clk_mux *mux = to_clk_mux(clk_dev_binded(clk) ?
|
||||
dev_get_clk_ptr(clk->dev) : clk);
|
||||
struct udevice *parent;
|
||||
struct clk *pclk;
|
||||
int err, index;
|
||||
|
||||
index = clk_mux_get_parent(clk);
|
||||
if (index >= mux->num_parents)
|
||||
return -EFAULT;
|
||||
|
||||
err = uclass_get_device_by_name(UCLASS_CLK, mux->parent_names[index],
|
||||
&parent);
|
||||
if (err)
|
||||
return err;
|
||||
|
||||
pclk = dev_get_clk_ptr(parent);
|
||||
if (!pclk)
|
||||
return -ENODEV;
|
||||
|
||||
return clk_get_rate(pclk);
|
||||
}
|
||||
|
||||
const struct clk_ops clk_mux_ops = {
|
||||
.get_rate = clk_mux_get_rate,
|
||||
.get_rate = clk_generic_get_rate,
|
||||
.set_parent = clk_mux_set_parent,
|
||||
};
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user