ARM: SAMSUNG: Fix clksrc-clk's checks for bad register settings

The WARN_ON() was only checking the first clock in the array, instead of
being executed for each clksrc clock being registered.

Since this is an array of clocks, WARN_ON() does not provide a lot of
useful information about the problem, so change to using printk(KERN_ERR)
to report the problem to the console.

As a note, we still try and register the clock even if these problems are
present just in case and to avoid changing the behaviour of the registration
process.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
This commit is contained in:
Ben Dooks 2010-01-18 15:37:25 +09:00
parent b8792dbff6
commit f3b464cca9

View File

@ -177,9 +177,11 @@ void __init s3c_register_clksrc(struct clksrc_clk *clksrc, int size)
{ {
int ret; int ret;
WARN_ON(!clksrc->reg_div.reg && !clksrc->reg_src.reg);
for (; size > 0; size--, clksrc++) { for (; size > 0; size--, clksrc++) {
if (!clksrc->reg_div.reg && !clksrc->reg_src.reg)
printk(KERN_ERR "%s: clock %s has no registers set\n",
__func__, clksrc->clk.name);
/* fill in the default functions */ /* fill in the default functions */
if (!clksrc->clk.ops) { if (!clksrc->clk.ops) {