arm64: arch_timer: Workaround for Cortex-A73 erratum 858921
authorMarc Zyngier <marc.zyngier@arm.com>
Fri, 27 Jan 2017 12:52:31 +0000 (12:52 +0000)
committerMarc Zyngier <marc.zyngier@arm.com>
Fri, 7 Apr 2017 10:22:10 +0000 (11:22 +0100)
commitfa8d815fac96e7c9247783d5a1f8fa4685b3c543
tree2bf8488d8d20bdcbfba0f69cd30999e96d365c35
parenta86bd139f2ae02f960caeb0c1dd5f871d3e087cd
arm64: arch_timer: Workaround for Cortex-A73 erratum 858921

Cortex-A73 (all versions) counter read can return a wrong value
when the counter crosses a 32bit boundary.

The workaround involves performing the read twice, and to return
one or the other depending on whether a transition has taken place.

Acked-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
drivers/clocksource/Kconfig
drivers/clocksource/arm_arch_timer.c