Commit d3468daa authored by Ben Dooks's avatar Ben Dooks Committed by Russell King

[ARM] 3331/1: S3C24XX - add clk_set_parent() to clock code

Patch from Ben Dooks

Add clk_set_parent() call to clock code
Signed-off-by: default avatarBen Dooks <ben-linux@fluff.org>
Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
parent 8e40a2f9
...@@ -192,6 +192,23 @@ struct clk *clk_get_parent(struct clk *clk) ...@@ -192,6 +192,23 @@ struct clk *clk_get_parent(struct clk *clk)
return clk->parent; return clk->parent;
} }
int clk_set_parent(struct clk *clk, struct clk *parent)
{
int ret = 0;
if (IS_ERR(clk))
return -EINVAL;
mutex_lock(&clocks_mutex);
if (clk->set_parent)
ret = (clk->set_parent)(clk, parent);
mutex_unlock(&clocks_mutex);
return ret;
}
EXPORT_SYMBOL(clk_get); EXPORT_SYMBOL(clk_get);
EXPORT_SYMBOL(clk_put); EXPORT_SYMBOL(clk_put);
EXPORT_SYMBOL(clk_enable); EXPORT_SYMBOL(clk_enable);
...@@ -200,6 +217,7 @@ EXPORT_SYMBOL(clk_get_rate); ...@@ -200,6 +217,7 @@ EXPORT_SYMBOL(clk_get_rate);
EXPORT_SYMBOL(clk_round_rate); EXPORT_SYMBOL(clk_round_rate);
EXPORT_SYMBOL(clk_set_rate); EXPORT_SYMBOL(clk_set_rate);
EXPORT_SYMBOL(clk_get_parent); EXPORT_SYMBOL(clk_get_parent);
EXPORT_SYMBOL(clk_set_parent);
/* base clock enable */ /* base clock enable */
......
...@@ -19,7 +19,9 @@ struct clk { ...@@ -19,7 +19,9 @@ struct clk {
int usage; int usage;
unsigned long rate; unsigned long rate;
unsigned long ctrlbit; unsigned long ctrlbit;
int (*enable)(struct clk *, int enable); int (*enable)(struct clk *, int enable);
int (*set_parent)(struct clk *c, struct clk *parent);
}; };
/* other clocks which may be registered by board support */ /* other clocks which may be registered by board support */
......
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