Commit d70e22d5 authored by Viresh Kumar's avatar Viresh Kumar Committed by Richard Kuo

hexagon/time: Migrate to new 'set-state' interface

Migrate hexagon 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.

We weren't doing anything in the ->set_mode() callback. So, this patch
doesn't provide any set-state callbacks.

Cc: linux-hexagon@vger.kernel.org
Signed-off-by: default avatarViresh Kumar <viresh.kumar@linaro.org>
Signed-off-by: default avatarRichard Kuo <rkuo@codeaurora.org>
parent 64291f7d
...@@ -97,20 +97,6 @@ static int set_next_event(unsigned long delta, struct clock_event_device *evt) ...@@ -97,20 +97,6 @@ static int set_next_event(unsigned long delta, struct clock_event_device *evt)
return 0; return 0;
} }
/*
* Sets the mode (periodic, shutdown, oneshot, etc) of a timer.
*/
static void set_mode(enum clock_event_mode mode,
struct clock_event_device *evt)
{
switch (mode) {
case CLOCK_EVT_MODE_SHUTDOWN:
/* XXX implement me */
default:
break;
}
}
#ifdef CONFIG_SMP #ifdef CONFIG_SMP
/* Broadcast mechanism */ /* Broadcast mechanism */
static void broadcast(const struct cpumask *mask) static void broadcast(const struct cpumask *mask)
...@@ -119,13 +105,13 @@ static void broadcast(const struct cpumask *mask) ...@@ -119,13 +105,13 @@ static void broadcast(const struct cpumask *mask)
} }
#endif #endif
/* XXX Implement set_state_shutdown() */
static struct clock_event_device hexagon_clockevent_dev = { static struct clock_event_device hexagon_clockevent_dev = {
.name = "clockevent", .name = "clockevent",
.features = CLOCK_EVT_FEAT_ONESHOT, .features = CLOCK_EVT_FEAT_ONESHOT,
.rating = 400, .rating = 400,
.irq = RTOS_TIMER_INT, .irq = RTOS_TIMER_INT,
.set_next_event = set_next_event, .set_next_event = set_next_event,
.set_mode = set_mode,
#ifdef CONFIG_SMP #ifdef CONFIG_SMP
.broadcast = broadcast, .broadcast = broadcast,
#endif #endif
...@@ -146,7 +132,6 @@ void setup_percpu_clockdev(void) ...@@ -146,7 +132,6 @@ void setup_percpu_clockdev(void)
dummy_clock_dev->features = CLOCK_EVT_FEAT_DUMMY; dummy_clock_dev->features = CLOCK_EVT_FEAT_DUMMY;
dummy_clock_dev->cpumask = cpumask_of(cpu); dummy_clock_dev->cpumask = cpumask_of(cpu);
dummy_clock_dev->mode = CLOCK_EVT_MODE_UNUSED;
clockevents_register_device(dummy_clock_dev); clockevents_register_device(dummy_clock_dev);
} }
......
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