Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 80a5931b authored by Russell King's avatar Russell King Committed by Russell King
Browse files

[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: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
parent 846b368e
Loading
Loading
Loading
Loading
+4 −61
Original line number Diff line number Diff line
@@ -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);