aboutsummaryrefslogtreecommitdiffstats
path: root/arch/sparc
diff options
context:
space:
mode:
authorPaul Mackerras <paulus@samba.org>2007-10-08 19:59:17 -0400
committerPaul Mackerras <paulus@samba.org>2007-10-11 07:39:31 -0400
commitd968014b7280e2c447b20363e576999040ac72ef (patch)
tree579a94f3b9e76fdd88113d4ac707425926e4dfaa /arch/sparc
parent87a72f9e171e558a0288aa83ef1dc6ae4af32224 (diff)
[POWERPC] Prevent decrementer clockevents from firing early
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 <paulus@samba.org>
Diffstat (limited to 'arch/sparc')
0 files changed, 0 insertions, 0 deletions