diff mbox

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

Message ID 744dca162a7626694770a9f51457566a33c3e08f.1438852023.git.viresh.kumar@linaro.org
State New
Headers show

Commit Message

Viresh Kumar Aug. 6, 2015, 9:11 a.m. UTC
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: Viresh Kumar <viresh.kumar@linaro.org>
---
Linus,

All other clockevent drivers are migrated to the new interface and yours
was left as it adapted generic clockevents framework just now.

Probably Olof can apply it directly to ARM SoC tree..

 arch/arm/mach-ep93xx/timer-ep93xx.c | 17 ++++++++++-------
 1 file changed, 10 insertions(+), 7 deletions(-)

Comments

Linus Walleij Aug. 10, 2015, 9:01 a.m. UTC | #1
On Thu, Aug 6, 2015 at 11:11 AM, Viresh Kumar <viresh.kumar@linaro.org> wrote:

> 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: Viresh Kumar <viresh.kumar@linaro.org>
> ---
> Linus,
>
> All other clockevent drivers are migrated to the new interface and yours
> was left as it adapted generic clockevents framework just now.
>
> Probably Olof can apply it directly to ARM SoC tree..

Sure, but does it work right off or does Olof have to
pull a branch from your tree in for it to work? In that
case I suggest you take this in the -rc phase. Anyways:
Acked-by: Linus Walleij <linus.walleij@linaro.org>

Yours,
Linus Walleij
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/
Viresh Kumar Aug. 10, 2015, 9:03 a.m. UTC | #2
On 10-08-15, 11:01, Linus Walleij wrote:
> Sure, but does it work right off or does Olof have to
> pull a branch from your tree in for it to work? In that
> case I suggest you take this in the -rc phase. Anyways:
> Acked-by: Linus Walleij <linus.walleij@linaro.org>

It should work with latest 4.2 rc..
Viresh Kumar Aug. 11, 2015, 2:07 p.m. UTC | #3
On 11-08-15, 15:19, Olof Johansson wrote:
> Latest? We don't base our tree on the latest -- instead we try to keep
> back on -rc2/3 if we can. Right now our tree is on -rc2.
> 
> 
> Please confirm that this is still OK to merge with that as base. Thanks.

Yeah, rc2 should be fine.
diff mbox

Patch

diff --git a/arch/arm/mach-ep93xx/timer-ep93xx.c b/arch/arm/mach-ep93xx/timer-ep93xx.c
index ac48ac1fd16d..e5f791145bd0 100644
--- a/arch/arm/mach-ep93xx/timer-ep93xx.c
+++ b/arch/arm/mach-ep93xx/timer-ep93xx.c
@@ -86,19 +86,22 @@  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_next_event	= ep93xx_clkevt_set_next_event,
-	.rating		= 300,
+	.name			= "timer1",
+	.features		= CLOCK_EVT_FEAT_ONESHOT,
+	.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,
 };
 
 static irqreturn_t ep93xx_timer_interrupt(int irq, void *dev_id)