clocksource: arch_timer: Only use the virtual counter (CNTVCT) on arm64
authorCatalin Marinas <catalin.marinas@arm.com>
Wed, 10 Dec 2014 11:02:09 +0000 (11:02 +0000)
committerArnd Bergmann <arnd@arndb.de>
Tue, 16 Dec 2014 21:26:44 +0000 (22:26 +0100)
commitd6ad36913083d683aad4e02e53580c995f1a6ede
tree5747e14cc4bdd26de3ef46b875f8c7f78c1b2cfe
parent5f1b2953da58e51e97eea9b7235545d72e9e1dab
clocksource: arch_timer: Only use the virtual counter (CNTVCT) on arm64

Commit 0b46b8a718c6 (clocksource: arch_timer: Fix code to use physical
timers when requested) introduces the use of physical counters in the
ARM architected timer driver. However, he arm64 kernel uses CNTVCT in
VDSO. When booting in EL2, the kernel switches to the physical timers to
make things easier for KVM but it continues to use the virtual counter
both in user and kernel. While in such scenario CNTVCT == CNTPCT (since
CNTVOFF is initialised by the kernel to 0), we want to spot firmware
bugs corrupting CNTVOFF early (which would affect CNTVCT).

Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Tested-by: Yingjoe Chen <yingjoe.chen@mediatek.com>
Cc: Daniel Lezcano <daniel.lezcano@linaro.org>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
drivers/clocksource/arm_arch_timer.c