xref: /openbmc/linux/kernel/time/Kconfig (revision 12ad1000)
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
16576094b7SJohn Stultzconfig GENERIC_TIME_VSYSCALL
17576094b7SJohn Stultz	bool
18576094b7SJohn Stultz
19576094b7SJohn Stultz# Timekeeping vsyscall support
2070639421SJohn Stultzconfig GENERIC_TIME_VSYSCALL_OLD
21b5e498adSThomas Gleixner	bool
22b5e498adSThomas Gleixner
23b5e498adSThomas Gleixner# ktime_t scalar 64bit nsec representation
24b5e498adSThomas Gleixnerconfig KTIME_SCALAR
25b5e498adSThomas Gleixner	bool
26b5e498adSThomas Gleixner
27b5e498adSThomas Gleixner# Old style timekeeping
28b5e498adSThomas Gleixnerconfig ARCH_USES_GETTIMEOFFSET
29b5e498adSThomas Gleixner	bool
30b5e498adSThomas Gleixner
31b5e498adSThomas Gleixner# The generic clock events infrastructure
32b5e498adSThomas Gleixnerconfig GENERIC_CLOCKEVENTS
33b5e498adSThomas Gleixner	bool
34b5e498adSThomas Gleixner
35764e0da1SThomas Gleixner# Migration helper. Builds, but does not invoke
36764e0da1SThomas Gleixnerconfig GENERIC_CLOCKEVENTS_BUILD
37764e0da1SThomas Gleixner	bool
38764e0da1SThomas Gleixner	default y
39764e0da1SThomas Gleixner	depends on GENERIC_CLOCKEVENTS
40764e0da1SThomas Gleixner
4112ad1000SMark Rutland# Architecture can handle broadcast in a driver-agnostic way
4212ad1000SMark Rutlandconfig ARCH_HAS_TICK_BROADCAST
4312ad1000SMark Rutland	bool
4412ad1000SMark Rutland
45b5e498adSThomas Gleixner# Clockevents broadcasting infrastructure
46b5e498adSThomas Gleixnerconfig GENERIC_CLOCKEVENTS_BROADCAST
47b5e498adSThomas Gleixner	bool
48b5e498adSThomas Gleixner	depends on GENERIC_CLOCKEVENTS
49b5e498adSThomas Gleixner
50764e0da1SThomas Gleixner# Automatically adjust the min. reprogramming time for
51764e0da1SThomas Gleixner# clock event device
52764e0da1SThomas Gleixnerconfig GENERIC_CLOCKEVENTS_MIN_ADJUST
53764e0da1SThomas Gleixner	bool
54764e0da1SThomas Gleixner
55b5e498adSThomas Gleixner# Generic update of CMOS clock
56b5e498adSThomas Gleixnerconfig GENERIC_CMOS_UPDATE
57b5e498adSThomas Gleixner	bool
58764e0da1SThomas Gleixner
59764e0da1SThomas Gleixnerif GENERIC_CLOCKEVENTS
60764e0da1SThomas Gleixnermenu "Timers subsystem"
61764e0da1SThomas Gleixner
62764e0da1SThomas Gleixner# Core internal switch. Selected by NO_HZ / HIGH_RES_TIMERS. This is
63764e0da1SThomas Gleixner# only related to the tick functionality. Oneshot clockevent devices
64764e0da1SThomas Gleixner# are supported independ of this.
65764e0da1SThomas Gleixnerconfig TICK_ONESHOT
66764e0da1SThomas Gleixner	bool
67764e0da1SThomas Gleixner
68764e0da1SThomas Gleixnerconfig NO_HZ
69764e0da1SThomas Gleixner	bool "Tickless System (Dynamic Ticks)"
70764e0da1SThomas Gleixner	depends on !ARCH_USES_GETTIMEOFFSET && GENERIC_CLOCKEVENTS
71764e0da1SThomas Gleixner	select TICK_ONESHOT
72764e0da1SThomas Gleixner	help
73764e0da1SThomas Gleixner	  This option enables a tickless system: timer interrupts will
74764e0da1SThomas Gleixner	  only trigger on an as-needed basis both when the system is
75764e0da1SThomas Gleixner	  busy and when the system is idle.
76764e0da1SThomas Gleixner
77764e0da1SThomas Gleixnerconfig HIGH_RES_TIMERS
78764e0da1SThomas Gleixner	bool "High Resolution Timer Support"
79764e0da1SThomas Gleixner	depends on !ARCH_USES_GETTIMEOFFSET && GENERIC_CLOCKEVENTS
80764e0da1SThomas Gleixner	select TICK_ONESHOT
81764e0da1SThomas Gleixner	help
82764e0da1SThomas Gleixner	  This option enables high resolution timer support. If your
83764e0da1SThomas Gleixner	  hardware is not capable then this option only increases
84764e0da1SThomas Gleixner	  the size of the kernel image.
85764e0da1SThomas Gleixner
86764e0da1SThomas Gleixnerendmenu
87764e0da1SThomas Gleixnerendif
88