]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
arm64: arch_timer: Add workaround for ARM erratum 1188873
authorMarc Zyngier <marc.zyngier@arm.com>
Thu, 31 Mar 2022 18:33:34 +0000 (19:33 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 2 Apr 2022 10:41:08 +0000 (12:41 +0200)
commit9aeb4a5a73d392580a2f5ee018dfe5506a2e8359
tree1c06dce43404f9c21eafe5a910c6533a8776bdba
parentaf1af6ebca0e28a97e5f802b9da695678fcd226a
arm64: arch_timer: Add workaround for ARM erratum 1188873

commit 95b861a4a6d94f64d5242605569218160ebacdbe upstream.

When running on Cortex-A76, a timer access from an AArch32 EL0
task may end up with a corrupted value or register. The workaround for
this is to trap these accesses at EL1/EL2 and execute them there.

This only affects versions r0p0, r1p0 and r2p0 of the CPU.

Acked-by: Mark Rutland <mark.rutland@arm.com>
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: James Morse <james.morse@arm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
arch/arm64/Kconfig
arch/arm64/include/asm/cpucaps.h
arch/arm64/include/asm/cputype.h
arch/arm64/kernel/cpu_errata.c
drivers/clocksource/arm_arch_timer.c