Hi Daniel, > On 04.01.2017, at 15:19, Daniel Lezcano <daniel.lezc...@linaro.org> wrote: > > On 02/01/2017 10:34, Viresh Kumar wrote: > > [ ... ] > >>> --- a/drivers/clocksource/cs5535-clockevt.c >>> +++ b/drivers/clocksource/cs5535-clockevt.c >>> @@ -117,7 +117,8 @@ static irqreturn_t mfgpt_tick(int irq, void *dev_id) >>> /* Turn off the clock (and clear the event) */ >>> disable_timer(cs5535_event_clock); >>> >>> - if (clockevent_state_shutdown(&cs5535_clockevent)) >>> + if (clockevent_state_shutdown(&cs5535_clockevent) || >>> + clockevent_state_detached(&cs5535_clockevent)) >>> return IRQ_HANDLED; >>> >>> /* Clear the counter */ >> >> Sorry for breaking it, but it looks we have unearthed a bug because of >> my patch. >> >> I wouldn't enable the IRQ unless the clockevents core has asked for >> it, i.e. by calling set_state_periodic() or set_state_oneshot(). >> >> The driver is currently enabling the IRQ from its init code and that's >> where the problem is IMHO. > > Hi David, > > can you look at this ?
Yes, sure! I’ll get back to you with a new patch. - David