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

Commit 0881841f authored by Daniel Lezcano's avatar Daniel Lezcano
Browse files

clocksource/drivers/tango-xtal: Replace code by clocksource_mmio_init



The current code to initialize, register and read the clocksource is
already factored out in mmio.c via the clocksource_mmio_init function.

Factor out the code with the clocksource_mmio_init function.

Signed-off-by: default avatarDaniel Lezcano <daniel.lezcano@linaro.org>
parent 46e7c3c6
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -351,6 +351,7 @@ config CLKSRC_TANGO_XTAL
	bool "Clocksource for Tango SoC" if COMPILE_TEST
	depends on ARM
	select CLKSRC_OF
	select CLKSRC_MMIO
	help
	  This enables the clocksource for Tango SoC

+3 −15
Original line number Diff line number Diff line
@@ -19,19 +19,6 @@ static u64 notrace read_sched_clock(void)
	return read_xtal_counter();
}

static cycle_t read_clocksource(struct clocksource *cs)
{
	return read_xtal_counter();
}

static struct clocksource tango_xtal = {
	.name	= "tango-xtal",
	.rating	= 350,
	.read	= read_clocksource,
	.mask	= CLOCKSOURCE_MASK(32),
	.flags	= CLOCK_SOURCE_IS_CONTINUOUS,
};

static void __init tango_clocksource_init(struct device_node *np)
{
	struct clk *clk;
@@ -53,8 +40,9 @@ static void __init tango_clocksource_init(struct device_node *np)
	delay_timer.freq = xtal_freq;
	delay_timer.read_current_timer = read_xtal_counter;

	ret = clocksource_register_hz(&tango_xtal, xtal_freq);
	if (ret != 0) {
	ret = clocksource_mmio_init(xtal_in_cnt, "tango-xtal", xtal_freq, 350,
				    32, clocksource_mmio_readl_up);
	if (!ret) {
		pr_err("%s: registration failed\n", np->full_name);
		return;
	}