ARM: 7685/1: delay: use private ticks_per_jiffy field for timer-based delay ops
authorWill Deacon <will.deacon@arm.com>
Thu, 28 Mar 2013 10:17:55 +0000 (11:17 +0100)
committerRussell King <rmk+kernel@arm.linux.org.uk>
Wed, 3 Apr 2013 15:45:50 +0000 (16:45 +0100)
commit6f3d90e55660ba42301b5e9c7eed332cc9f70fd7
tree0f5ef09981f5322d80a79a12125d291adaab175b
parent93dc68876b608da041fe40ed39424b0fcd5aa2fb
ARM: 7685/1: delay: use private ticks_per_jiffy field for timer-based delay ops

Commit 70264367a243 ("ARM: 7653/2: do not scale loops_per_jiffy when
using a constant delay clock") fixed a problem with our timer-based
delay loop, where loops_per_jiffy is scaled by cpufreq yet used directly
by the timer delay ops.

This patch fixes the problem in a more elegant way by keeping a private
ticks_per_jiffy field in the delay ops, independent of loops_per_jiffy
and therefore not subject to scaling. The loop-based delay continues to
use loops_per_jiffy directly, as it should.

Acked-by: Nicolas Pitre <nico@linaro.org>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
arch/arm/include/asm/delay.h
arch/arm/kernel/smp.c
arch/arm/lib/delay.c