xref: /openbmc/linux/kernel/time/Kconfig (revision 764e0da1)
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
31764e0da1SThomas Gleixner# Migration helper. Builds, but does not invoke
32764e0da1SThomas Gleixnerconfig GENERIC_CLOCKEVENTS_BUILD
33764e0da1SThomas Gleixner	bool
34764e0da1SThomas Gleixner	default y
35764e0da1SThomas Gleixner	depends on GENERIC_CLOCKEVENTS
36764e0da1SThomas Gleixner
37b5e498adSThomas Gleixner# Clockevents broadcasting infrastructure
38b5e498adSThomas Gleixnerconfig GENERIC_CLOCKEVENTS_BROADCAST
39b5e498adSThomas Gleixner	bool
40b5e498adSThomas Gleixner	depends on GENERIC_CLOCKEVENTS
41b5e498adSThomas Gleixner
42764e0da1SThomas Gleixner# Automatically adjust the min. reprogramming time for
43764e0da1SThomas Gleixner# clock event device
44764e0da1SThomas Gleixnerconfig GENERIC_CLOCKEVENTS_MIN_ADJUST
45764e0da1SThomas Gleixner	bool
46764e0da1SThomas Gleixner
47b5e498adSThomas Gleixner# Generic update of CMOS clock
48b5e498adSThomas Gleixnerconfig GENERIC_CMOS_UPDATE
49b5e498adSThomas Gleixner	bool
50764e0da1SThomas Gleixner
51764e0da1SThomas Gleixnerif GENERIC_CLOCKEVENTS
52764e0da1SThomas Gleixnermenu "Timers subsystem"
53764e0da1SThomas Gleixner
54764e0da1SThomas Gleixner# Core internal switch. Selected by NO_HZ / HIGH_RES_TIMERS. This is
55764e0da1SThomas Gleixner# only related to the tick functionality. Oneshot clockevent devices
56764e0da1SThomas Gleixner# are supported independ of this.
57764e0da1SThomas Gleixnerconfig TICK_ONESHOT
58764e0da1SThomas Gleixner	bool
59764e0da1SThomas Gleixner
60764e0da1SThomas Gleixnerconfig NO_HZ
61764e0da1SThomas Gleixner	bool "Tickless System (Dynamic Ticks)"
62764e0da1SThomas Gleixner	depends on !ARCH_USES_GETTIMEOFFSET && GENERIC_CLOCKEVENTS
63764e0da1SThomas Gleixner	select TICK_ONESHOT
64764e0da1SThomas Gleixner	help
65764e0da1SThomas Gleixner	  This option enables a tickless system: timer interrupts will
66764e0da1SThomas Gleixner	  only trigger on an as-needed basis both when the system is
67764e0da1SThomas Gleixner	  busy and when the system is idle.
68764e0da1SThomas Gleixner
69764e0da1SThomas Gleixnerconfig HIGH_RES_TIMERS
70764e0da1SThomas Gleixner	bool "High Resolution Timer Support"
71764e0da1SThomas Gleixner	depends on !ARCH_USES_GETTIMEOFFSET && GENERIC_CLOCKEVENTS
72764e0da1SThomas Gleixner	select TICK_ONESHOT
73764e0da1SThomas Gleixner	help
74764e0da1SThomas Gleixner	  This option enables high resolution timer support. If your
75764e0da1SThomas Gleixner	  hardware is not capable then this option only increases
76764e0da1SThomas Gleixner	  the size of the kernel image.
77764e0da1SThomas Gleixner
78764e0da1SThomas Gleixnerendmenu
79764e0da1SThomas Gleixnerendif
80