Schlägl "Manfred jun." wrote:
> Am Freitag, den 30.03.2007, 16:41 +0200 schrieb Gilles Chanteperdrix:
> > Richard Cochran wrote:
> > >>The timer is aperiodic (most of the time) when running Xenomai, so
> > >>__ipipe_mach_set_dec is called for each timer tick and programs the
> > >>timer hardware for the next tick.
> > >
> > >
> > > Okay, so does that mean that I should implement a "one-shot" timer, or
> > > are we talking about resetting the periodic timer once in a while?
> > >
> > > (BTW, in one-shot mode, the IXP425 timer does not do what the Developers
> > > Manual, part 252480-006, says that it does!)
> >
> > Yes, the one shot mode is Xenomai default mode. The implementation of a
> > periodic timer over the one-shot timer is already done by the generic
> > ARM part of the Adeos patch.
>
> It's better to use a periodic implementation in background, because then
> you are able to messure the lost ticks between a timer-interrupt and
> programming next timer-event.
>
> Example with 16bit timer:
> * Periode: 27000 Ticks
> * Timer counts down to zero (Interrupt) & wrap around to 2^16-1
> * Reprogramm Timer with new Periode (lost-ticks = 2^16 - timerval)
>
> These lost-ticks should be added to the global time-stamp (returned by
> get_tsc) and should mentioned at the linux-gettimeoffset-function also.
>
>
> Lost-ticks could sum up to a bothering time-error.
This is needed for machines where the hardware timer is based on a
decrementer. But for machines with a free-running counter and a match
register, reading the value of the free-running counter is
simpler. IXP425 is in the "free-running counter and match register
category". So, its implementation should look like the one of the PXA.
--
Gilles Chanteperdrix.
_______________________________________________
Adeos-main mailing list
[email protected]
https://mail.gna.org/listinfo/adeos-main