[ARM] lh7a40x: convert to simple clk API
lh7a40x only uses the clk API for the framebuffer, so there's no point having a complicated implementation. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
This commit is contained in:
Родитель
846b368eb9
Коммит
80a5931b51
|
@ -72,31 +72,15 @@ unsigned int pclkfreq_get (void)
|
|||
|
||||
/* ----- */
|
||||
|
||||
static LIST_HEAD(clocks);
|
||||
static DECLARE_MUTEX(clocks_sem);
|
||||
|
||||
struct clk *clk_get (struct device *dev, const char *id)
|
||||
{
|
||||
struct clk *p;
|
||||
struct clk *clk = ERR_PTR(-ENOENT);
|
||||
|
||||
down (&clocks_sem);
|
||||
list_for_each_entry (p, &clocks, node) {
|
||||
if (strcmp (id, p->name) == 0
|
||||
&& try_module_get(p->owner)) {
|
||||
clk = p;
|
||||
break;
|
||||
}
|
||||
}
|
||||
up (&clocks_sem);
|
||||
|
||||
return clk;
|
||||
return dev && strcmp(dev_name(dev), "cldc-lh7a40x") == 0
|
||||
? NULL : ERR_PTR(-ENOENT);
|
||||
}
|
||||
EXPORT_SYMBOL(clk_get);
|
||||
|
||||
void clk_put (struct clk *clk)
|
||||
{
|
||||
module_put(clk->owner);
|
||||
}
|
||||
EXPORT_SYMBOL(clk_put);
|
||||
|
||||
|
@ -111,20 +95,9 @@ void clk_disable (struct clk *clk)
|
|||
}
|
||||
EXPORT_SYMBOL(clk_disable);
|
||||
|
||||
int clk_use (struct clk *clk)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
EXPORT_SYMBOL(clk_use);
|
||||
|
||||
void clk_unuse (struct clk *clk)
|
||||
{
|
||||
}
|
||||
EXPORT_SYMBOL(clk_unuse);
|
||||
|
||||
unsigned long clk_get_rate (struct clk *clk)
|
||||
{
|
||||
return clk->rate;
|
||||
return 0;
|
||||
}
|
||||
EXPORT_SYMBOL(clk_get_rate);
|
||||
|
||||
|
@ -136,36 +109,6 @@ EXPORT_SYMBOL(clk_round_rate);
|
|||
|
||||
int clk_set_rate (struct clk *clk, unsigned long rate)
|
||||
{
|
||||
int ret = -EIO;
|
||||
return ret;
|
||||
return -EIO;
|
||||
}
|
||||
EXPORT_SYMBOL(clk_set_rate);
|
||||
|
||||
static struct clk clcd_clk = {
|
||||
.name = "CLCDCLK",
|
||||
.rate = 0,
|
||||
};
|
||||
|
||||
int clk_register (struct clk *clk)
|
||||
{
|
||||
down (&clocks_sem);
|
||||
list_add (&clk->node, &clocks);
|
||||
up (&clocks_sem);
|
||||
return 0;
|
||||
}
|
||||
EXPORT_SYMBOL(clk_register);
|
||||
|
||||
void clk_unregister (struct clk *clk)
|
||||
{
|
||||
down (&clocks_sem);
|
||||
list_del (&clk->node);
|
||||
up (&clocks_sem);
|
||||
}
|
||||
EXPORT_SYMBOL(clk_unregister);
|
||||
|
||||
static int __init clk_init (void)
|
||||
{
|
||||
clk_register(&clcd_clk);
|
||||
return 0;
|
||||
}
|
||||
arch_initcall(clk_init);
|
||||
|
|
Загрузка…
Ссылка в новой задаче