[PATCH v6 0/5] ARM/ARM64 architected timer updates
Sudeep.KarkadaNagesha at arm.com
Thu Aug 29 10:55:37 EDT 2013
From: Sudeep KarkadaNagesha <sudeep.karkadanagesha at arm.com>
This patch series adds support to configure the rate and enable the
event stream for architected timer. The event streams can be used to
impose a timeout on a wfe, to safeguard against any programming error
in case an expected event is not generated or even to implement
wfe-based timeouts for userspace locking implementations. This feature
can be disabled(enabled by default).
Since the timer control register is reset to zero on warm boot, CPU
PM notifier is added to save and restore the value.
1. Disabling event stream by default on boot and enable it
only if CONFIG_ARM_ARCH_TIMER_EVTSTREAM=y
This removes runtime configuration of timer event stream.
2. Moved COMPAT_ELF_HWCAP_DEFAULT to arch/arm64/kernel/setup.c
1. Removed compat_dyn_elf_hwcap and used just compat_elf_hwcap as per
2. Instead of resetting event stream in CPU PM callbacks, saving and
restoring counter control register now.
1. Added a config option to en/disable the timer event stream feature.
Due to this the ordering of the patches as well as some cosmetic
code changes are done.( So dropped previous reviewed-by tags)
2. Removed exporting compat_dyn_elf_hwcap as there are no modules
requiring it for now.
1. Moved ARM and ARM64 changes into separate patches
2. Added native hwcaps definations(ARM/ARM64) and compat-specific
definitions(ARM64) to the users for the event stream feature.
1. Saved event stream divider value on cold reset path and re-used it
in CPU PM notifier instead of calculating every time.
2. Rebased on v3.11-rc2(to avoid conflicts with __cpuinit* deletion)
3. Dropped "ARM/ARM64: arch_timer: remove __cpuinit attribute for
arch_counter_set_user_access"(already done as part of __cpuinit*
Sudeep KarkadaNagesha (4):
ARM/ARM64: arch_timer: add macros for bits in control register
ARM: arch_timer: add support to configure and enable event stream
ARM64: arch_timer: add support to configure and enable event stream
drivers: clocksource: add CPU PM notifier for ARM architected timer
Will Deacon (1):
drivers: clocksource: add support for ARM architected timer event
arch/arm/include/asm/arch_timer.h | 36 ++++++++++++++++++++++----
arch/arm/include/uapi/asm/hwcap.h | 1 +
arch/arm/kernel/setup.c | 1 +
arch/arm64/include/asm/arch_timer.h | 42 ++++++++++++++++++++++++++-----
arch/arm64/include/asm/hwcap.h | 11 ++++----
arch/arm64/include/uapi/asm/hwcap.h | 1 +
arch/arm64/kernel/setup.c | 11 ++++++++
drivers/clocksource/Kconfig | 14 +++++++++++
drivers/clocksource/arm_arch_timer.c | 49 ++++++++++++++++++++++++++++++++++++
include/clocksource/arm_arch_timer.h | 10 ++++++++
10 files changed, 160 insertions(+), 16 deletions(-)
More information about the linux-arm-kernel