linux-IllusionX/arch
Mark Fortescue 196bffa5dc [SPARC32]: Fix rounding errors in ndelay/udelay implementation.
__ndelay and __udelay have not been delayung >= specified time.
The problem with __ndelay has been tacked down to the rounding of the
multiplier constant. By changing this, delays > app 18us are correctly
calculated.
The problem with __udelay has also been tracked down to rounding issues.
Changing the multiplier constant (to match that used in sparc64) corrects
for large delays and adding in a rounding constant corrects for trunctaion
errors in the claculations.
Many short delays will return without looping. This is not an error as there
is the fixed delay of doing all the maths to calculate the loop count.

Signed-off-by: Mark Fortescue <mark@mtfhpc.demon.co.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
2007-07-21 19:17:41 -07:00
..
alpha
arm
arm26
avr32
blackfin
cris
frv
h8300
i386
ia64
m32r
m68k
m68knommu
mips
parisc
powerpc [CELL] spufs: rework list management and associated locking 2007-07-20 21:42:28 +02:00
ppc
s390
sh
sh64
sparc [SPARC32]: Fix rounding errors in ndelay/udelay implementation. 2007-07-21 19:17:41 -07:00
sparc64 [SPARC64]: fix section mismatch warning in mdesc.c 2007-07-20 17:20:56 -07:00
um
v850
x86_64
xtensa