drivers/rtc/Kconfig

Source file repositories/reference/linux-study-clean/drivers/rtc/Kconfig

File Facts

System
Linux kernel
Corpus path
drivers/rtc/Kconfig
Extension
[no extension]
Size
63685 bytes
Lines
2183
Domain
Driver Families
Bucket
drivers/rtc
Inferred role
Driver Families: build/configuration rule
Status
atlas-only

Why This File Exists

Repeatable hardware-adapter layer. Deep compatibility for every driver is out of scope; this atlas records patterns, probe lifecycles, bus glue, IRQ/DMA usage, and links back to core abstractions.

Dependency Surface

Detected Declarations

Annotated Snippet

# SPDX-License-Identifier: GPL-2.0-only
#
# RTC class/drivers configuration
#

config RTC_LIB
	bool

config RTC_MC146818_LIB
	bool
	select RTC_LIB

menuconfig RTC_CLASS
	bool "Real Time Clock"
	default n
	depends on !S390
	select RTC_LIB
	help
	  Generic RTC class support. If you say yes here, you will
	  be allowed to plug one or more RTCs to your system. You will
	  probably want to enable one or more of the interfaces below.

if RTC_CLASS

config RTC_HCTOSYS
	bool "Set system time from RTC on startup and resume"
	default y
	help
	  If you say yes here, the system time (wall clock) will be set using
	  the value read from a specified RTC device. This is useful to avoid
	  unnecessary fsck runs at boot time, and to network better.

config RTC_HCTOSYS_DEVICE
	string "RTC used to set the system time"
	depends on RTC_HCTOSYS
	default "rtc0"
	help
	  The RTC device that will be used to (re)initialize the system
	  clock, usually rtc0. Initialization is done when the system
	  starts up, and when it resumes from a low power state. This
	  device should record time in UTC, since the kernel won't do
	  timezone correction.

	  This clock should be battery-backed, so that it reads the correct
	  time when the system boots from a power-off state. Otherwise, your
	  system will need an external clock source (like an NTP server).

	  If the clock you specify here is not battery backed, it may still
	  be useful to reinitialize system time when resuming from system
	  sleep states. Do not specify an RTC here unless it stays powered
	  during all this system's supported sleep states.

config RTC_SYSTOHC
	bool "Set the RTC time based on NTP synchronization"
	default y
	help
	  If you say yes here, the system time (wall clock) will be stored
	  in the RTC specified by RTC_HCTOSYS_DEVICE approximately every 11
	  minutes if userspace reports synchronized NTP status.

config RTC_SYSTOHC_DEVICE
	string "RTC used to synchronize NTP adjustment"
	depends on RTC_SYSTOHC
	default RTC_HCTOSYS_DEVICE if RTC_HCTOSYS
	default "rtc0"
	help
	  The RTC device used for NTP synchronization. The main difference
	  between RTC_HCTOSYS_DEVICE and RTC_SYSTOHC_DEVICE is that this
	  one can sleep when setting time, because it runs in the workqueue
	  context.

Annotation

Implementation Notes