linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 0/2] Allwinner A64 timer workaround
@ 2018-07-12  2:25 Samuel Holland
  2018-07-12  2:25 ` [PATCH v2 1/2] arm64: arch_timer: Workaround for Allwinner A64 timer instability Samuel Holland
  2018-07-12  2:25 ` [PATCH v2 2/2] arm64: dts: allwinner: a64: Enable A64 timer workaround Samuel Holland
  0 siblings, 2 replies; 4+ messages in thread
From: Samuel Holland @ 2018-07-12  2:25 UTC (permalink / raw)
  To: Maxime Ripard, Chen-Yu Tsai, Catalin Marinas, Will Deacon,
	Daniel Lezcano, Thomas Gleixner, Marc Zyngier, Mark Rutland
  Cc: linux-arm-kernel, linux-kernel, linux-sunxi, Samuel Holland

Hello,

Several people (including me) have experienced extremely large system
clock jumps on their A64-based devices, apparently due to the
architectural timer going backward, which is interpreted by Linux as
the timer wrapping around after 2^56 cycles.

Investigation led to discovery of some obvious problems with this SoC's
architectural timer, and this patch series introduces at least a partial
workaround. It covers up small-scale instability in the timer, which
reduces the incidence of the large system clock jumps. More details are
in the commit message for patch 1. Patch 2 simply enables the workaround
in the device tree.

I chose not to send this to stable, since it is most likely not a
complete solution.

Thanks,
Samuel

changes since v1:
- Add an iteration limit like most other arch timer workarounds
- Added Andre's Tested-by

Samuel Holland (2):
  arm64: arch_timer: Workaround for Allwinner A64 timer instability
  arm64: dts: allwinner: a64: Enable A64 timer workaround

 arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi |  1 +
 drivers/clocksource/Kconfig                   | 11 +++++++
 drivers/clocksource/arm_arch_timer.c          | 43 +++++++++++++++++++++++++++
 3 files changed, 55 insertions(+)

-- 
2.16.1


^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2018-07-12 10:59 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-07-12  2:25 [PATCH v2 0/2] Allwinner A64 timer workaround Samuel Holland
2018-07-12  2:25 ` [PATCH v2 1/2] arm64: arch_timer: Workaround for Allwinner A64 timer instability Samuel Holland
2018-07-12 10:59   ` Marc Zyngier
2018-07-12  2:25 ` [PATCH v2 2/2] arm64: dts: allwinner: a64: Enable A64 timer workaround Samuel Holland

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).