zephyr/drivers/timer/Kconfig.nrf_grtc
Adam Kondraciuk bc7a5b6781 drivers: timer: nrf_grtc_timer: Align Zephyr to new AUTOEN read manner
The new GRTC reading manner of the SYSCOUNTER uses hardware mechanism which
allows to keep it alive when any of CPUs is not sleeping. Otherwise
the SYSCOUNTER goes into sleep mode. Thus there is no
longer need to maintain the `CONFIG_NRF_GRTC_SLEEP_ALLOWED` symbol, however
if the user wants to have the SYSCOUNTER enabled all the time the
`CONFIG_NRF_GRTC_ALWAYS_ON` can be used instead.
The nrfx_grtc  driver no longer provides the `wakeup-read-sleep` reading
manner.
Also setting the GRTC clock source is performed by the nrfx_grtc driver so
it has been removed from the `sys_clock_driver_init()` function.

Signed-off-by: Adam Kondraciuk <adam.kondraciuk@nordicsemi.no>
2024-10-07 18:42:14 +02:00

60 lines
1.8 KiB
Plaintext

# Timer driver configuration options
# Copyright (c) 2024 Nordic Semiconductor ASA
menuconfig NRF_GRTC_TIMER
bool "nRF GRTC Timer"
default y
depends on DT_HAS_NORDIC_NRF_GRTC_ENABLED
select TICKLESS_CAPABLE
select TIMER_HAS_64BIT_CYCLE_COUNTER
select NRFX_GRTC
help
This module implements a kernel device driver for the nRF Global Real
Time Counter NRF_GRTC and provides the standard "system clock driver"
interfaces.
if NRF_GRTC_TIMER
config NRF_GRTC_ALWAYS_ON
bool
help
Always keep the SYSCOUNTER active even if the CPU is in sleep mode.
config NRF_GRTC_TIMER_APP_DEFINED_INIT
bool "Application defines GRTC initialization"
help
Application defines the initialization procedure and time of the GRTC
drivers, rather than leaving it up to SYS_INIT.
config NRF_GRTC_START_SYSCOUNTER
bool "Start SYSCOUNTER on driver init"
select NRF_GRTC_TIMER_CLOCK_MANAGEMENT
help
Start the SYSCOUNTER when initializing the GRTC. This should only be
handled by one processor in the system.
config NRF_GRTC_TIMER_CLOCK_MANAGEMENT
bool
help
Compile additional driver code for enabling management functionality of
the GRTC. Usually this is only needed by the processor that is starting
the SYSCOUNTER, but can be shared by multiple processors in the system.
config NRF_GRTC_SYSCOUNTER_SLEEP_MINIMUM_LATENCY
int
default 1000
depends on POWEROFF
help
The value (in us) ensures that the wakeup event will not fire
too early. In other words, applying SYSCOUNTER sleep state for less than
NRF_GRTC_SYSCOUNTER_SLEEP_MINIMUM_LATENCY period makes no sense.
config NRF_GRTC_TIMER_AUTO_KEEP_ALIVE
bool
default y if NRF_GRTC_START_SYSCOUNTER
help
This feature prevents the SYSCOUNTER from sleeping when any core is in
active state.
endif # NRF_GRTC_TIMER