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

Commit 00c5a0ac authored by Viresh Kumar's avatar Viresh Kumar Committed by Daniel Lezcano
Browse files

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



Migrate openrisc 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: Jonas Bonn <jonas@southpole.se>
Cc: linux@lists.openrisc.net
Signed-off-by: default avatarViresh Kumar <viresh.kumar@linaro.org>
Signed-off-by: default avatarDaniel Lezcano <daniel.lezcano@linaro.org>
parent 032facef
Loading
Loading
Loading
Loading
+0 −24
Original line number Diff line number Diff line
@@ -48,29 +48,6 @@ static int openrisc_timer_set_next_event(unsigned long delta,
	return 0;
}

static void openrisc_timer_set_mode(enum clock_event_mode mode,
				    struct clock_event_device *evt)
{
	switch (mode) {
	case CLOCK_EVT_MODE_PERIODIC:
		pr_debug(KERN_INFO "%s: periodic\n", __func__);
		BUG();
		break;
	case CLOCK_EVT_MODE_ONESHOT:
		pr_debug(KERN_INFO "%s: oneshot\n", __func__);
		break;
	case CLOCK_EVT_MODE_UNUSED:
		pr_debug(KERN_INFO "%s: unused\n", __func__);
		break;
	case CLOCK_EVT_MODE_SHUTDOWN:
		pr_debug(KERN_INFO "%s: shutdown\n", __func__);
		break;
	case CLOCK_EVT_MODE_RESUME:
		pr_debug(KERN_INFO "%s: resume\n", __func__);
		break;
	}
}

/* This is the clock event device based on the OR1K tick timer.
 * As the timer is being used as a continuous clock-source (required for HR
 * timers) we cannot enable the PERIODIC feature.  The tick timer can run using
@@ -82,7 +59,6 @@ static struct clock_event_device clockevent_openrisc_timer = {
	.features = CLOCK_EVT_FEAT_ONESHOT,
	.rating = 300,
	.set_next_event = openrisc_timer_set_next_event,
	.set_mode = openrisc_timer_set_mode,
};

static inline void timer_ack(void)