-
CONFIG_SYS_CLOCK_TICKS_PER_SEC
¶
System tick frequency (in ticks/second)
Type: int
Help¶
This option specifies the nominal frequency of the system clock in Hz.
For asynchronous timekeeping, the kernel defines a “ticks” concept. A “tick” is the internal count in which the kernel does all its internal uptime and timeout bookeeping. Interrupts are expected to be delivered on tick boundaries to the extent practical, and no fractional ticks are tracked.
The choice of tick rate is configurable by this option. Also the number of cycles per tick should be chosen so that 1 millisecond is exactly represented by an integral number of ticks. Defaults on most hardware platforms (ones that support setting arbitrary interrupt timeouts) are expected to be in the range of 10 kHz, with software emulation platforms and legacy drivers using a more traditional 100 Hz value.
Note that when available and enabled, in “tickless” mode this config variable specifies the minimum available timing granularity, not necessarily the number or frequency of interrupts delivered to the kernel.
A value of 0 completely disables timer support in the kernel.
Defaults¶
32768
1000
32768
1000
1000
100
128
128
32768
4096 if
STM32_LPTIM_TIMER
&&STM32_LPTIM_CLOCK_LSE
4000 if
STM32_LPTIM_TIMER
&&STM32_LPTIM_CLOCK_LSI
32768
50000
50000
50000
50000
100 if
QEMU_TARGET
||SOC_POSIX
10000 if
TICKLESS_CAPABLE
100
Kconfig definitions¶
At <Zephyr>/boards/arm/mec1501modular_assy6885/Kconfig.defconfig:23
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:24
Menu path: (Top)
config SYS_CLOCK_TICKS_PER_SEC int default 32768 depends onRTOS_TIMER
&&BOARD_MEC1501MODULAR_ASSY6885
At <Zephyr>/boards/arm/mec1501modular_assy6885/Kconfig.defconfig:37
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:24
Menu path: (Top)
config SYS_CLOCK_TICKS_PER_SEC int default 1000 depends on !RTOS_TIMER
&&BOARD_MEC1501MODULAR_ASSY6885
At <Zephyr>/boards/arm/mec15xxevb_assy6853/Kconfig.defconfig:22
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:24
Menu path: (Top)
config SYS_CLOCK_TICKS_PER_SEC int default 32768 depends onRTOS_TIMER
&&BOARD_MEC15XXEVB_ASSY6853
At <Zephyr>/boards/arm/mec15xxevb_assy6853/Kconfig.defconfig:37
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:24
Menu path: (Top)
config SYS_CLOCK_TICKS_PER_SEC int default 1000 depends on !RTOS_TIMER
&&BOARD_MEC15XXEVB_ASSY6853
At <Zephyr>/boards/arm/npcx7m6fb_evb/Kconfig.defconfig:11
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:24
Menu path: (Top)
config SYS_CLOCK_TICKS_PER_SEC
int
default 1000
At <Zephyr>/boards/arm/qemu_cortex_m0/Kconfig.defconfig:32
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:24
Menu path: (Top)
config SYS_CLOCK_TICKS_PER_SEC
int
default 100
depends on BOARD_QEMU_CORTEX_M0
At <Zephyr>/boards/riscv/hifive1/Kconfig.defconfig:8
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:24
Menu path: (Top)
config SYS_CLOCK_TICKS_PER_SEC
int
default 128
depends on BOARD_HIFIVE1
At <Zephyr>/boards/riscv/hifive1_revb/Kconfig.defconfig:18
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:24
Menu path: (Top)
config SYS_CLOCK_TICKS_PER_SEC
int
default 128
depends on BOARD_HIFIVE1_REVB
At <Zephyr>/soc/arm/nordic_nrf/Kconfig.defconfig:24
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:25
→ <BuildDir>/Kconfig/Kconfig.soc.defconfig:1
Menu path: (Top)
config SYS_CLOCK_TICKS_PER_SEC
int
default 32768
depends on SOC_FAMILY_NRF
At <Zephyr>/soc/arm/st_stm32/common/Kconfig.defconfig.series:16
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:25
→ <BuildDir>/Kconfig/Kconfig.soc.defconfig:1
→ <Zephyr>/soc/arm/st_stm32/Kconfig.defconfig:3
Menu path: (Top)
config SYS_CLOCK_TICKS_PER_SEC int default 4096 ifSTM32_LPTIM_TIMER
&&STM32_LPTIM_CLOCK_LSE
default 4000 ifSTM32_LPTIM_TIMER
&&STM32_LPTIM_CLOCK_LSI
depends onSOC_FAMILY_STM32
At <Zephyr>/soc/arm/ti_simplelink/cc13x2_cc26x2/Kconfig.defconfig.series:19
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:25
→ <BuildDir>/Kconfig/Kconfig.soc.defconfig:1
→ <Zephyr>/soc/arm/ti_simplelink/Kconfig.defconfig:3
Menu path: (Top)
config SYS_CLOCK_TICKS_PER_SEC
int
default 32768
depends on SOC_SERIES_CC13X2_CC26X2
At <Zephyr>/soc/xtensa/intel_adsp/cavs_v15/Kconfig.defconfig.series:30
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:25
→ <BuildDir>/Kconfig/Kconfig.soc.defconfig:1
→ <Zephyr>/soc/xtensa/intel_adsp/Kconfig.defconfig:6
Menu path: (Top)
config SYS_CLOCK_TICKS_PER_SEC
int
default 50000
depends on SOC_SERIES_INTEL_CAVS_V15
At <Zephyr>/soc/xtensa/intel_adsp/cavs_v18/Kconfig.defconfig.series:18
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:25
→ <BuildDir>/Kconfig/Kconfig.soc.defconfig:1
→ <Zephyr>/soc/xtensa/intel_adsp/Kconfig.defconfig:6
Menu path: (Top)
config SYS_CLOCK_TICKS_PER_SEC
int
default 50000
depends on SOC_SERIES_INTEL_CAVS_V18
At <Zephyr>/soc/xtensa/intel_adsp/cavs_v20/Kconfig.defconfig.series:18
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:25
→ <BuildDir>/Kconfig/Kconfig.soc.defconfig:1
→ <Zephyr>/soc/xtensa/intel_adsp/Kconfig.defconfig:6
Menu path: (Top)
config SYS_CLOCK_TICKS_PER_SEC
int
default 50000
depends on SOC_SERIES_INTEL_CAVS_V20
At <Zephyr>/soc/xtensa/intel_adsp/cavs_v25/Kconfig.defconfig.series:18
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:25
→ <BuildDir>/Kconfig/Kconfig.soc.defconfig:1
→ <Zephyr>/soc/xtensa/intel_adsp/Kconfig.defconfig:6
Menu path: (Top)
config SYS_CLOCK_TICKS_PER_SEC
int
default 50000
depends on SOC_SERIES_INTEL_CAVS_V25
At <Zephyr>/kernel/Kconfig:558
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:30
Menu path: (Top) → General Kernel Options
config SYS_CLOCK_TICKS_PER_SEC int "System tick frequency (in ticks/second)" default 100 ifQEMU_TARGET
||SOC_POSIX
default 10000 ifTICKLESS_CAPABLE
default 100 help This option specifies the nominal frequency of the system clock in Hz. For asynchronous timekeeping, the kernel defines a "ticks" concept. A "tick" is the internal count in which the kernel does all its internal uptime and timeout bookeeping. Interrupts are expected to be delivered on tick boundaries to the extent practical, and no fractional ticks are tracked. The choice of tick rate is configurable by this option. Also the number of cycles per tick should be chosen so that 1 millisecond is exactly represented by an integral number of ticks. Defaults on most hardware platforms (ones that support setting arbitrary interrupt timeouts) are expected to be in the range of 10 kHz, with software emulation platforms and legacy drivers using a more traditional 100 Hz value. Note that when available and enabled, in "tickless" mode this config variable specifies the minimum available timing granularity, not necessarily the number or frequency of interrupts delivered to the kernel. A value of 0 completely disables timer support in the kernel.
(The ‘depends on’ condition includes propagated dependencies from ifs and menus.)