linux/arch/powerpc
Paul Mackerras d968014b72 [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>
2007-10-11 21:39:31 +10:00
..
boot [POWERPC] Enable debug info on boot wrapper 2007-10-09 21:01:55 +10:00
configs [POWERPC] Add initial MPC8610 HPCD Platform files. 2007-10-08 08:38:31 -05:00
kernel [POWERPC] Prevent decrementer clockevents from firing early 2007-10-11 21:39:31 +10:00
lib [POWERPC] Limit range of __init_ref_ok somewhat 2007-10-03 11:48:44 +10:00
math-emu [POWERPC] ppc math-emu needs -fno-builtin-fabs for math.c and fabs.c 2006-09-26 15:24:35 +10:00
mm [POWERPC] 85xx: Failure with odd memory sizes and CONFIG_HIGHMEM 2007-10-08 08:38:34 -05:00
oprofile [POWERPC] cell: Move cbe_regs.h to include/asm-powerpc/cell-regs.h 2007-10-09 21:01:56 +10:00
platforms [POWERPC] Don't enable cpu hotplug on pSeries machines with MPIC 2007-10-11 21:06:06 +10:00
sysdev [POWERPC] Move of_platform_driver initialisations: arch/powerpc 2007-10-11 20:40:49 +10:00
xmon [POWERPC] fix showing xmon help 2007-07-22 21:30:58 +10:00
.gitignore [POWERPC] Add files build to .gitignore 2006-12-04 20:41:29 +11:00
Kconfig [POWERPC] 8xx: Move softemu8xx.c from arch/ppc 2007-10-04 11:02:54 -05:00
Kconfig.debug [POWERPC] cpm: Describe multi-user ram in its own device node. 2007-10-04 15:47:05 -05:00
Makefile [POWERPC] Select proper defconfig for crosscompiles 2007-10-03 12:02:44 +10:00