xref: /linux-6.15/kernel/time/Kconfig (revision 6f16eebe)
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
1505ad717cSFeng Tang# Platforms has a persistent clock
16*6f16eebeSJohn Stultzconfig ALWAYS_USE_PERSISTENT_CLOCK
1705ad717cSFeng Tang	bool
1805ad717cSFeng Tang	default n
1905ad717cSFeng Tang
20b5e498adSThomas Gleixner# Timekeeping vsyscall support
21576094b7SJohn Stultzconfig GENERIC_TIME_VSYSCALL
22576094b7SJohn Stultz	bool
23576094b7SJohn Stultz
24576094b7SJohn Stultz# Timekeeping vsyscall support
2570639421SJohn Stultzconfig GENERIC_TIME_VSYSCALL_OLD
26b5e498adSThomas Gleixner	bool
27b5e498adSThomas Gleixner
28b5e498adSThomas Gleixner# ktime_t scalar 64bit nsec representation
29b5e498adSThomas Gleixnerconfig KTIME_SCALAR
30b5e498adSThomas Gleixner	bool
31b5e498adSThomas Gleixner
32b5e498adSThomas Gleixner# Old style timekeeping
33b5e498adSThomas Gleixnerconfig ARCH_USES_GETTIMEOFFSET
34b5e498adSThomas Gleixner	bool
35b5e498adSThomas Gleixner
36b5e498adSThomas Gleixner# The generic clock events infrastructure
37b5e498adSThomas Gleixnerconfig GENERIC_CLOCKEVENTS
38b5e498adSThomas Gleixner	bool
39b5e498adSThomas Gleixner
40764e0da1SThomas Gleixner# Migration helper. Builds, but does not invoke
41764e0da1SThomas Gleixnerconfig GENERIC_CLOCKEVENTS_BUILD
42764e0da1SThomas Gleixner	bool
43764e0da1SThomas Gleixner	default y
44764e0da1SThomas Gleixner	depends on GENERIC_CLOCKEVENTS
45764e0da1SThomas Gleixner
46b5e498adSThomas Gleixner# Clockevents broadcasting infrastructure
47b5e498adSThomas Gleixnerconfig GENERIC_CLOCKEVENTS_BROADCAST
48b5e498adSThomas Gleixner	bool
49b5e498adSThomas Gleixner	depends on GENERIC_CLOCKEVENTS
50b5e498adSThomas Gleixner
51764e0da1SThomas Gleixner# Automatically adjust the min. reprogramming time for
52764e0da1SThomas Gleixner# clock event device
53764e0da1SThomas Gleixnerconfig GENERIC_CLOCKEVENTS_MIN_ADJUST
54764e0da1SThomas Gleixner	bool
55764e0da1SThomas Gleixner
56b5e498adSThomas Gleixner# Generic update of CMOS clock
57b5e498adSThomas Gleixnerconfig GENERIC_CMOS_UPDATE
58b5e498adSThomas Gleixner	bool
59764e0da1SThomas Gleixner
60764e0da1SThomas Gleixnerif GENERIC_CLOCKEVENTS
61764e0da1SThomas Gleixnermenu "Timers subsystem"
62764e0da1SThomas Gleixner
63764e0da1SThomas Gleixner# Core internal switch. Selected by NO_HZ / HIGH_RES_TIMERS. This is
64764e0da1SThomas Gleixner# only related to the tick functionality. Oneshot clockevent devices
65764e0da1SThomas Gleixner# are supported independ of this.
66764e0da1SThomas Gleixnerconfig TICK_ONESHOT
67764e0da1SThomas Gleixner	bool
68764e0da1SThomas Gleixner
69764e0da1SThomas Gleixnerconfig NO_HZ
70764e0da1SThomas Gleixner	bool "Tickless System (Dynamic Ticks)"
71764e0da1SThomas Gleixner	depends on !ARCH_USES_GETTIMEOFFSET && GENERIC_CLOCKEVENTS
72764e0da1SThomas Gleixner	select TICK_ONESHOT
73764e0da1SThomas Gleixner	help
74764e0da1SThomas Gleixner	  This option enables a tickless system: timer interrupts will
75764e0da1SThomas Gleixner	  only trigger on an as-needed basis both when the system is
76764e0da1SThomas Gleixner	  busy and when the system is idle.
77764e0da1SThomas Gleixner
78764e0da1SThomas Gleixnerconfig HIGH_RES_TIMERS
79764e0da1SThomas Gleixner	bool "High Resolution Timer Support"
80764e0da1SThomas Gleixner	depends on !ARCH_USES_GETTIMEOFFSET && GENERIC_CLOCKEVENTS
81764e0da1SThomas Gleixner	select TICK_ONESHOT
82764e0da1SThomas Gleixner	help
83764e0da1SThomas Gleixner	  This option enables high resolution timer support. If your
84764e0da1SThomas Gleixner	  hardware is not capable then this option only increases
85764e0da1SThomas Gleixner	  the size of the kernel image.
86764e0da1SThomas Gleixner
87764e0da1SThomas Gleixnerendmenu
88764e0da1SThomas Gleixnerendif
89