123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596 |
- # Timer driver configuration options
- # Copyright (c) 2014-2015 Wind River Systems, Inc.
- # Copyright (c) 2016 Cadence Design Systems, Inc.
- # Copyright (c) 2019 Intel Corp.
- # SPDX-License-Identifier: Apache-2.0
- menu "Timer Drivers"
- DT_COMPAT_ARM_V6M_SYSTICK := arm,armv6m-systick
- DT_COMPAT_ARM_V7M_SYSTICK := arm,armv7m-systick
- DT_COMPAT_ARM_V8M_SYSTICK := arm,armv8m-systick
- DT_COMPAT_ARM_V8_1M_SYSTICK := arm,armv8.1m-systick
- config CORTEX_M_SYSTICK
- bool "Cortex-M SYSTICK timer"
- depends on CPU_CORTEX_M_HAS_SYSTICK
- select TICKLESS_CAPABLE
- help
- This module implements a kernel device driver for the Cortex-M processor
- SYSTICK timer and provides the standard "system clock driver" interfaces.
- source "drivers/timer/Kconfig.acts"
- config NPCX_ITIM_TIMER
- bool "Nuvoton NPCX series internal 64/32-bit timers"
- default y
- depends on SOC_FAMILY_NPCX
- select TICKLESS_CAPABLE
- help
- This module implements a kernel device driver for the Nuvoton NPCX
- series internal 64/32-bit timers and provides the standard "system
- clock driver" interfaces.
- config SYSTEM_CLOCK_DISABLE
- bool "API to disable system clock"
- help
- This option enables the sys_clock_disable() API in the kernel. It is
- needed by some subsystems (which will automatically select it), but is
- rarely needed by applications.
- config TIMER_READS_ITS_FREQUENCY_AT_RUNTIME
- bool "Timer queries its hardware to find its frequency at runtime"
- help
- The drivers select this option automatically when needed. Do not modify
- this unless you have a very good reason for it.
- config SYSTEM_CLOCK_SLOPPY_IDLE
- bool "Timer allowed to skew uptime clock during idle"
- help
- When true, the timer driver is not required to maintain a
- correct system uptime count when the system enters idle.
- Some platforms may take advantage of this to reduce the
- overhead from regular interrupts required to handle counter
- wraparound conditions.
- config SYSTEM_CLOCK_INIT_PRIORITY
- int "System clock driver initialization priority"
- default 0
- help
- This options can be used to set a specific initialization priority
- value for the system clock driver. As driver initialization might need
- the clock to be running already, you should let the default value as it
- is (0).
- # Hidden option to be selected by individual SoC.
- config TICKLESS_CAPABLE
- bool
- help
- Timer drivers should select this flag if they are capable of
- supporting tickless operation. That is, a call to
- sys_clock_set_timeout() with a number of ticks greater than
- one should be expected not to produce a call to
- sys_clock_announce() (really, not to produce an interrupt at
- all) until the specified expiration.
- DT_COMPAT_NXP_OS_TIMER := nxp,os-timer
- config MCUX_OS_TIMER
- bool "MCUX OS Event timer"
- depends on HAS_MCUX_OS_TIMER
- default $(dt_compat_enabled,$(DT_COMPAT_NXP_OS_TIMER))
- select TICKLESS_CAPABLE
- help
- This module implements a kernel device driver for the NXP OS
- event timer and provides the standard "system clock driver" interfaces.
- config MCUX_LPTMR_TIMER
- bool "MCUX LPTMR timer"
- depends on HAS_MCUX_LPTMR && !COUNTER_MCUX_LPTMR
- help
- This module implements a kernel device driver for the NXP MCUX Low
- Power Timer (LPTMR) and provides the standard "system clock driver"
- interfaces.
- endmenu
|