[PATCH v4 0/2] arch_timers patches to enable KVM support

Marc Zyngier marc.zyngier at arm.com
Tue Sep 4 13:38:47 EDT 2012

This series is aimed at offering the minimum level of support that KVM
needs when it comes to architected timers.

The first patch changes the driver to use the virtual timer by default
instead of the physical one (access to the later is conditioned by the
hypervisor settings, while the former is always available). This could
be required even if the kernel is not running as a guest.

The second patch exposes a clockcycle counter that can be used by
other subsystems.

Tested on A15 (VE+TC2), both as a host and a KVM guest. Patches
against v3.6-rc4.

* From v3:
- Use %Q/%R qualifiers to read 64bit registers, and move accessors
  into a separate function.
- Some minor cleanup.

* From v2:
- Trick the compiler into generating really nice code, at the expense
  of a certain lack of abstraction
- Don't mandate physical timer non-secure PPI, in order to stay
  compatible with existing and possibly incomplete DTs.

Marc Zyngier (2):
  ARM: arch_timers: enable the use of the virtual timer
  ARM: arch_timers: register a time/cycle counter

 arch/arm/include/asm/arch_timer.h |   7 +
 arch/arm/kernel/arch_timer.c      | 368 +++++++++++++++++++++++++++-----------
 2 files changed, 273 insertions(+), 102 deletions(-)


More information about the linux-arm-kernel mailing list