Commit a54868b4 authored by Viresh Kumar's avatar Viresh Kumar Committed by Olof Johansson
Browse files

ARM: ep93xx/timer: Migrate to new 'set-state' interface



Migrate EP93xx driver to the new 'set-state' interface provided by
clockevents core, the earlier 'set-mode' interface is marked obsolete
now.

This also enables us to implement callbacks for new states of clockevent
devices, for example: ONESHOT_STOPPED.

Signed-off-by: default avatarViresh Kumar <viresh.kumar@linaro.org>
Acked-by: default avatarLinus Walleij <linus.walleij@linaro.org>
Reviewed-by: default avatarH Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: default avatarOlof Johansson <olof@lixom.net>
parent 4f2f1f76
Loading
Loading
Loading
Loading
+10 −7
Original line number Diff line number Diff line
@@ -86,17 +86,20 @@ static int ep93xx_clkevt_set_next_event(unsigned long next,
}


static void ep93xx_clkevt_set_mode(enum clock_event_mode mode,
				   struct clock_event_device *evt)
static int ep93xx_clkevt_shutdown(struct clock_event_device *evt)
{
	/* Disable timer */
	writel(0, EP93XX_TIMER3_CONTROL);

	return 0;
}

static struct clock_event_device ep93xx_clockevent = {
	.name			= "timer1",
	.features		= CLOCK_EVT_FEAT_ONESHOT,
	.set_mode	= ep93xx_clkevt_set_mode,
	.set_state_shutdown	= ep93xx_clkevt_shutdown,
	.set_state_oneshot	= ep93xx_clkevt_shutdown,
	.tick_resume		= ep93xx_clkevt_shutdown,
	.set_next_event		= ep93xx_clkevt_set_next_event,
	.rating			= 300,
};