mirror of
https://github.com/torvalds/linux.git
synced 2024-12-04 18:13:04 +00:00
191124efb4
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. Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
128 lines
2.9 KiB
Plaintext
128 lines
2.9 KiB
Plaintext
config CLKSRC_OF
|
|
bool
|
|
|
|
config CLKSRC_I8253
|
|
bool
|
|
|
|
config CLKEVT_I8253
|
|
bool
|
|
|
|
config I8253_LOCK
|
|
bool
|
|
|
|
config CLKBLD_I8253
|
|
def_bool y if CLKSRC_I8253 || CLKEVT_I8253 || I8253_LOCK
|
|
|
|
config CLKSRC_MMIO
|
|
bool
|
|
|
|
config DW_APB_TIMER
|
|
bool
|
|
|
|
config DW_APB_TIMER_OF
|
|
bool
|
|
select DW_APB_TIMER
|
|
select CLKSRC_OF
|
|
|
|
config ARMADA_370_XP_TIMER
|
|
bool
|
|
select CLKSRC_OF
|
|
|
|
config ORION_TIMER
|
|
select CLKSRC_OF
|
|
select CLKSRC_MMIO
|
|
bool
|
|
|
|
config SUN4I_TIMER
|
|
bool
|
|
|
|
config VT8500_TIMER
|
|
bool
|
|
|
|
config CADENCE_TTC_TIMER
|
|
bool
|
|
|
|
config CLKSRC_NOMADIK_MTU
|
|
bool
|
|
depends on (ARCH_NOMADIK || ARCH_U8500)
|
|
select CLKSRC_MMIO
|
|
help
|
|
Support for Multi Timer Unit. MTU provides access
|
|
to multiple interrupt generating programmable
|
|
32-bit free running decrementing counters.
|
|
|
|
config CLKSRC_NOMADIK_MTU_SCHED_CLOCK
|
|
bool
|
|
depends on CLKSRC_NOMADIK_MTU
|
|
help
|
|
Use the Multi Timer Unit as the sched_clock.
|
|
|
|
config CLKSRC_DBX500_PRCMU
|
|
bool "Clocksource PRCMU Timer"
|
|
depends on UX500_SOC_DB8500
|
|
default y
|
|
help
|
|
Use the always on PRCMU Timer as clocksource
|
|
|
|
config CLKSRC_DBX500_PRCMU_SCHED_CLOCK
|
|
bool "Clocksource PRCMU Timer sched_clock"
|
|
depends on (CLKSRC_DBX500_PRCMU && !CLKSRC_NOMADIK_MTU_SCHED_CLOCK)
|
|
default y
|
|
help
|
|
Use the always on PRCMU Timer as sched_clock
|
|
|
|
config ARM_ARCH_TIMER
|
|
bool
|
|
select CLKSRC_OF if OF
|
|
|
|
config ARM_ARCH_TIMER_EVTSTREAM
|
|
bool "Support for ARM architected timer event stream generation"
|
|
default y if ARM_ARCH_TIMER
|
|
help
|
|
This option enables support for event stream generation based on
|
|
the ARM architected timer. It is used for waking up CPUs executing
|
|
the wfe instruction at a frequency represented as a power-of-2
|
|
divisor of the clock rate.
|
|
The main use of the event stream is wfe-based timeouts of userspace
|
|
locking implementations. It might also be useful for imposing timeout
|
|
on wfe to safeguard against any programming errors in case an expected
|
|
event is not generated.
|
|
This must be disabled for hardware validation purposes to detect any
|
|
hardware anomalies of missing events.
|
|
|
|
config ARM_GLOBAL_TIMER
|
|
bool
|
|
select CLKSRC_OF if OF
|
|
help
|
|
This options enables support for the ARM global timer unit
|
|
|
|
config CLKSRC_ARM_GLOBAL_TIMER_SCHED_CLOCK
|
|
bool
|
|
depends on ARM_GLOBAL_TIMER
|
|
default y
|
|
help
|
|
Use ARM global timer clock source as sched_clock
|
|
|
|
config CLKSRC_METAG_GENERIC
|
|
def_bool y if METAG
|
|
help
|
|
This option enables support for the Meta per-thread timers.
|
|
|
|
config CLKSRC_EXYNOS_MCT
|
|
def_bool y if ARCH_EXYNOS
|
|
help
|
|
Support for Multi Core Timer controller on Exynos SoCs.
|
|
|
|
config CLKSRC_SAMSUNG_PWM
|
|
bool
|
|
help
|
|
This is a new clocksource driver for the PWM timer found in
|
|
Samsung S3C, S5P and Exynos SoCs, replacing an earlier driver
|
|
for all devicetree enabled platforms. This driver will be
|
|
needed only on systems that do not have the Exynos MCT available.
|
|
|
|
config VF_PIT_TIMER
|
|
bool
|
|
help
|
|
Support for Period Interrupt Timer on Freescale Vybrid Family SoCs.
|