ARM: 6145/1: ux500 MTU clockrate correction
authorLinus Walleij <linus.walleij@stericsson.com>
Wed, 26 May 2010 06:38:54 +0000 (07:38 +0100)
committerRussell King <rmk+kernel@arm.linux.org.uk>
Thu, 27 May 2010 09:36:08 +0000 (10:36 +0100)
commitba327b1e5296b70745e50bcf0446ae8f82e3d478
tree294184ed993e00ee735dcedc13086a7daea0d2f6
parentea208f646c8fb91c39c852e952fc911e1ad045ab
ARM: 6145/1: ux500 MTU clockrate correction

This adjusts the clockrate for the MTU timer. On the different
UX500 variants this rate is different. The platform can also have
been set up at hardware initialization, bootloader or early init
for different clock speeds. To have the clock framework available
early so the timers can use them, the clock initialization for
Nomadik and ux500 is moved to IRQ init time. A custom per-clock
callback is added to handle special cases like this.

This solves a user-visible bug: without this patch the current
UX500 platforms will not be synchronized to wall-clock time and
the platform will drift in time.

Acked-by: Rabin Vincent <rabin.vincent@stericsson.com>
Signed-off-by: Linus Walleij <linus.walleij@stericsson.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
arch/arm/mach-nomadik/clock.c
arch/arm/mach-nomadik/clock.h
arch/arm/mach-nomadik/cpu-8815.c
arch/arm/mach-ux500/clock.c
arch/arm/mach-ux500/clock.h
arch/arm/mach-ux500/cpu.c
arch/arm/plat-nomadik/timer.c