179bf2bb3SThomas Gleixner# 279bf2bb3SThomas Gleixner# Timer subsystem related configuration options 379bf2bb3SThomas Gleixner# 43872c48bSThomas Gleixner 5b5e498adSThomas Gleixner# Options selectable by arch Kconfig 6b5e498adSThomas Gleixner 7b5e498adSThomas Gleixner# Watchdog function for clocksources to detect instabilities 8b5e498adSThomas Gleixnerconfig CLOCKSOURCE_WATCHDOG 9b5e498adSThomas Gleixner bool 10b5e498adSThomas Gleixner 11b5e498adSThomas Gleixner# Architecture has extra clocksource data 12b5e498adSThomas Gleixnerconfig ARCH_CLOCKSOURCE_DATA 13b5e498adSThomas Gleixner bool 14b5e498adSThomas Gleixner 15b5e498adSThomas Gleixner# Timekeeping vsyscall support 16b5e498adSThomas Gleixnerconfig GENERIC_TIME_VSYSCALL 17b5e498adSThomas Gleixner bool 18b5e498adSThomas Gleixner 19b5e498adSThomas Gleixner# ktime_t scalar 64bit nsec representation 20b5e498adSThomas Gleixnerconfig KTIME_SCALAR 21b5e498adSThomas Gleixner bool 22b5e498adSThomas Gleixner 23b5e498adSThomas Gleixner# Old style timekeeping 24b5e498adSThomas Gleixnerconfig ARCH_USES_GETTIMEOFFSET 25b5e498adSThomas Gleixner bool 26b5e498adSThomas Gleixner 27b5e498adSThomas Gleixner# The generic clock events infrastructure 28b5e498adSThomas Gleixnerconfig GENERIC_CLOCKEVENTS 29b5e498adSThomas Gleixner bool 30b5e498adSThomas Gleixner 31*764e0da1SThomas Gleixner# Migration helper. Builds, but does not invoke 32*764e0da1SThomas Gleixnerconfig GENERIC_CLOCKEVENTS_BUILD 33*764e0da1SThomas Gleixner bool 34*764e0da1SThomas Gleixner default y 35*764e0da1SThomas Gleixner depends on GENERIC_CLOCKEVENTS 36*764e0da1SThomas Gleixner 37b5e498adSThomas Gleixner# Clockevents broadcasting infrastructure 38b5e498adSThomas Gleixnerconfig GENERIC_CLOCKEVENTS_BROADCAST 39b5e498adSThomas Gleixner bool 40b5e498adSThomas Gleixner depends on GENERIC_CLOCKEVENTS 41b5e498adSThomas Gleixner 42*764e0da1SThomas Gleixner# Automatically adjust the min. reprogramming time for 43*764e0da1SThomas Gleixner# clock event device 44*764e0da1SThomas Gleixnerconfig GENERIC_CLOCKEVENTS_MIN_ADJUST 45*764e0da1SThomas Gleixner bool 46*764e0da1SThomas Gleixner 47b5e498adSThomas Gleixner# Generic update of CMOS clock 48b5e498adSThomas Gleixnerconfig GENERIC_CMOS_UPDATE 49b5e498adSThomas Gleixner bool 50*764e0da1SThomas Gleixner 51*764e0da1SThomas Gleixnerif GENERIC_CLOCKEVENTS 52*764e0da1SThomas Gleixnermenu "Timers subsystem" 53*764e0da1SThomas Gleixner 54*764e0da1SThomas Gleixner# Core internal switch. Selected by NO_HZ / HIGH_RES_TIMERS. This is 55*764e0da1SThomas Gleixner# only related to the tick functionality. Oneshot clockevent devices 56*764e0da1SThomas Gleixner# are supported independ of this. 57*764e0da1SThomas Gleixnerconfig TICK_ONESHOT 58*764e0da1SThomas Gleixner bool 59*764e0da1SThomas Gleixner 60*764e0da1SThomas Gleixnerconfig NO_HZ 61*764e0da1SThomas Gleixner bool "Tickless System (Dynamic Ticks)" 62*764e0da1SThomas Gleixner depends on !ARCH_USES_GETTIMEOFFSET && GENERIC_CLOCKEVENTS 63*764e0da1SThomas Gleixner select TICK_ONESHOT 64*764e0da1SThomas Gleixner help 65*764e0da1SThomas Gleixner This option enables a tickless system: timer interrupts will 66*764e0da1SThomas Gleixner only trigger on an as-needed basis both when the system is 67*764e0da1SThomas Gleixner busy and when the system is idle. 68*764e0da1SThomas Gleixner 69*764e0da1SThomas Gleixnerconfig HIGH_RES_TIMERS 70*764e0da1SThomas Gleixner bool "High Resolution Timer Support" 71*764e0da1SThomas Gleixner depends on !ARCH_USES_GETTIMEOFFSET && GENERIC_CLOCKEVENTS 72*764e0da1SThomas Gleixner select TICK_ONESHOT 73*764e0da1SThomas Gleixner help 74*764e0da1SThomas Gleixner This option enables high resolution timer support. If your 75*764e0da1SThomas Gleixner hardware is not capable then this option only increases 76*764e0da1SThomas Gleixner the size of the kernel image. 77*764e0da1SThomas Gleixner 78*764e0da1SThomas Gleixnerendmenu 79*764e0da1SThomas Gleixnerendif 80