1# NXP PCF8523 RTC
2
3# Copyright (c) 2019-2023 Henrik Brix Andersen <henrik@brixandersen.dk>
4# SPDX-License-Identifier: Apache-2.0
5
6config RTC_PCF8523
7	bool "NXP PCF8523 RTC driver"
8	default y
9	depends on DT_HAS_NXP_PCF8523_ENABLED
10	select I2C
11	help
12	  Enable the NXP PCF8523 RTC driver.
13
14if RTC_PCF8523
15
16choice RTC_PCF8523_OFFSET_MODE
17	prompt "Offset mode"
18	default RTC_PCF8523_OFFSET_MODE_SLOW
19	depends on RTC_CALIBRATION
20	help
21	  Offset register mode selection.
22
23config RTC_PCF8523_OFFSET_MODE_SLOW
24	bool "Slow"
25	help
26	  Offset correction is made once per two hours and then correction pulses are applied once
27	  per minute until the programmed correction values have been implemented (MODE = 0).
28
29config RTC_PCF8523_OFFSET_MODE_FAST
30	bool "Fast"
31	help
32	  Offset correction is made once per minute and then correction pulses are applied once per
33	  second up to a maximum of 60 pulses. When correction values greater than 60 pulses are
34	  used, additional correction pulses are made in the 59th second (MODE = 1).
35
36endchoice
37
38if RTC_ALARM || RTC_UPDATE
39
40config RTC_PCF8523_THREAD_STACK_SIZE
41	int "Stack size for the PCF8523 interrupt thread"
42	default 512
43	help
44	  Size of the stack used for the thread handling interrupts and dispatching callbacks.
45
46config RTC_PCF8523_THREAD_PRIO
47	int "Priority for the PCF8523 interrupt thread"
48	default 0
49	help
50	  Priority level for the thread handling interrupts and dispatching callbacks.
51
52endif # RTC_ALARM || RTC_UPDATE
53
54endif # RTC_PCF8523
55