Re: [patch 3/3] clockevent driver for arm/pxa2xx

From: Thomas Gleixner
Date: Sat Jan 20 2007 - 11:14:01 EST


On Sat, 2007-01-20 at 17:08 +0100, Guennadi Liakhovetski wrote:
> > static int hpet_next_event(unsigned long delta,
> > struct clock_event_device *evt)
> > {
> > unsigned long cnt;
> >
> > cnt = hpet_readl(HPET_COUNTER);
> > cnt += delta;
> > hpet_writel(cnt, HPET_T0_CMP);
> >
> > return ((long)(hpet_readl(HPET_COUNTER) - cnt ) > 0);
> > }
> >
> > The generic code takes care of the already expired event.
>
> The thing is - 2.6.20-rc5-rt3 didn't provide clockevent on PXA, so, I took
> Sascha's patch instead of my own, which I've been using with 2.6.18, as
> his patches were already submitted to various lists and had chances to
> become mainline. And strait away it didn't work. The code above seems to
> be doing something close to Sascha's patch, so, I expect it would behave
> in the same way. And until I introduced a minimum increment for the match
> register, it didn't work. I either got hangs, or WARN_ON dumps about "time
> warp detected". I think, any timer related code for PXA has to be tested
> on real hardware under significant (real-time) load before going upstream.
> Haven't tested -rt7 though, so, maybe it is already handled there?

No, as I'm reworking clock events a bit and I added the handling for the
match register based devices. The above will catch the event in the past
and the generic code handles that. Will be on -rt soon.

tglx


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/