Commit b8792dbf authored by Thomas Abraham's avatar Thomas Abraham Committed by Ben Dooks

ARM: SAMSUNG: Add check to ensure that clksrc_clk does have multiple clock sources

Adds a additional check in s3c_set_clksrc function to ensure that the clksrc_clk
does have a choice of multiple clock sources. In addition to this, a check is
added to ensure that a parent is assigned to the clksrc_clk in case it does not
have a choice of parent clocks.
Signed-off-by: default avatarThomas Abraham <thomas.ab@samsung.com>
Signed-off-by: default avatarBen Dooks <ben-linux@fluff.org>
parent a0de298a
...@@ -129,11 +129,16 @@ void __init_or_cpufreq s3c_set_clksrc(struct clksrc_clk *clk, bool announce) ...@@ -129,11 +129,16 @@ void __init_or_cpufreq s3c_set_clksrc(struct clksrc_clk *clk, bool announce)
{ {
struct clksrc_sources *srcs = clk->sources; struct clksrc_sources *srcs = clk->sources;
u32 mask = bit_mask(clk->reg_src.shift, clk->reg_src.size); u32 mask = bit_mask(clk->reg_src.shift, clk->reg_src.size);
u32 clksrc = 0; u32 clksrc;
if (clk->reg_src.reg) if (!clk->reg_src.reg) {
clksrc = __raw_readl(clk->reg_src.reg); if (!clk->clk.parent)
printk(KERN_ERR "%s: no parent clock specified\n",
clk->clk.name);
return;
}
clksrc = __raw_readl(clk->reg_src.reg);
clksrc &= mask; clksrc &= mask;
clksrc >>= clk->reg_src.shift; clksrc >>= clk->reg_src.shift;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment