xref: /openbmc/linux/kernel/time/Kconfig (revision 764e0da14fd7ac2d259d98d34ece0a87d32306c9)
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