On Tue, 2007-10-09 at 09:59 +1000, Paul Mackerras wrote: > On old powermacs, we sometimes set the decrementer to 1 in order to > trigger a decrementer interrupt, which we use to handle an interrupt > that was pending at the time when it was re-enabled. This was causing > the decrementer clock event device to call the event function for the > next event early, which was causing problems when high-res timers were > not enabled. > > This fixes the problem by recording the timebase value at which the > next event should occur, and checking the current timebase against the > recorded value in timer_interrupt. If it isn't time for the next > event, it just reprograms the decrementer and returns. > > This also subtracts 1 from the value stored into the decrementer, > which is appropriate because the decrementer interrupts on the > transition from 0 to -1, not when the decrementer reaches 0. > > Signed-off-by: Paul Mackerras <[EMAIL PROTECTED]> > ---
Do we also need to handle lost ticks ? That is loop & do multiple events like we used to do with the previous implementation ? Cheers, Ben. _______________________________________________ Linuxppc-dev mailing list Linuxppc-dev@ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-dev