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 bookkeeping. 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
32768
1000
1000
1000
1000
100
128
128
1000
1000
32768
4096 if
MCUX_GPT_TIMER
8192
4096 if
STM32_LPTIM_TIMER
&&STM32_LPTIM_CLOCK_LSE
4000 if
STM32_LPTIM_TIMER
&&STM32_LPTIM_CLOCK_LSI
32768
32768
100 if !
CACHE_ENABLE
50000
50000
50000
50000
50000
50000
32768
4096 if
MCUX_GPT_TIMER
8192
4096 if
STM32_LPTIM_TIMER
&&STM32_LPTIM_CLOCK_LSE
4000 if
STM32_LPTIM_TIMER
&&STM32_LPTIM_CLOCK_LSI
32768
32768
100 if !
CACHE_ENABLE
50000
50000
50000
50000
50000
50000
100 if
QEMU_TARGET
||SOC_POSIX
10000 if
TICKLESS_KERNEL
100
Kconfig definitions
At <Zephyr>/boards/arm/mec1501modular_assy6885/Kconfig.defconfig:23
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:22
Menu path: (Top)
config SYS_CLOCK_TICKS_PER_SEC
int
default 32768
depends on RTOS_TIMER && BOARD_MEC1501MODULAR_ASSY6885
At <Zephyr>/boards/arm/mec1501modular_assy6885/Kconfig.defconfig:37
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:22
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:22
Menu path: (Top)
config SYS_CLOCK_TICKS_PER_SEC
int
default 32768
depends on RTOS_TIMER && BOARD_MEC15XXEVB_ASSY6853
At <Zephyr>/boards/arm/mec15xxevb_assy6853/Kconfig.defconfig:37
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:22
Menu path: (Top)
config SYS_CLOCK_TICKS_PER_SEC
int
default 1000
depends on !RTOS_TIMER && BOARD_MEC15XXEVB_ASSY6853
At <Zephyr>/boards/arm/mec172xevb_assy6906/Kconfig.defconfig:18
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:22
Menu path: (Top)
config SYS_CLOCK_TICKS_PER_SEC
int
default 32768
depends on RTOS_TIMER && BOARD_MEC172XEVB_ASSY6906
At <Zephyr>/boards/arm/mec172xevb_assy6906/Kconfig.defconfig:34
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:22
Menu path: (Top)
config SYS_CLOCK_TICKS_PER_SEC
int
default 1000
depends on !RTOS_TIMER && BOARD_MEC172XEVB_ASSY6906
At <Zephyr>/boards/arm/npcx7m6fb_evb/Kconfig.defconfig:11
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:22
Menu path: (Top)
config SYS_CLOCK_TICKS_PER_SEC
int
default 1000
At <Zephyr>/boards/arm/npcx9m6f_evb/Kconfig.defconfig:11
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:22
Menu path: (Top)
config SYS_CLOCK_TICKS_PER_SEC
int
default 1000
At <Zephyr>/boards/arm/qemu_cortex_a9/Kconfig.defconfig:20
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:22
Menu path: (Top)
config SYS_CLOCK_TICKS_PER_SEC
int
default 1000
depends on BOARD_QEMU_CORTEX_A9
At <Zephyr>/boards/arm/qemu_cortex_m0/Kconfig.defconfig:32
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:22
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:22
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:22
Menu path: (Top)
config SYS_CLOCK_TICKS_PER_SEC
int
default 128
depends on BOARD_HIFIVE1_REVB
At <Zephyr>/boards/riscv/hifive_unleashed/Kconfig.defconfig:9
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:22
Menu path: (Top)
config SYS_CLOCK_TICKS_PER_SEC
int
default 1000
depends on BOARD_HIFIVE_UNLEASHED
At <Zephyr>/boards/riscv/hifive_unmatched/Kconfig.defconfig:9
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:22
Menu path: (Top)
config SYS_CLOCK_TICKS_PER_SEC
int
default 1000
depends on BOARD_HIFIVE_UNMATCHED
At <Zephyr>/soc/arm/nordic_nrf/Kconfig.defconfig:24
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:25
→ <nRF>/doc/_build/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/nxp_imx/rt/Kconfig.defconfig.series:73
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:25
→ <nRF>/doc/_build/kconfig/Kconfig.soc.defconfig:1
→ <Zephyr>/soc/arm/nxp_imx/Kconfig.defconfig:8
Menu path: (Top)
config SYS_CLOCK_TICKS_PER_SEC
int
default 4096 if MCUX_GPT_TIMER
depends on SOC_SERIES_IMX_RT
At <Zephyr>/soc/arm/nxp_imx/rt/Kconfig.defconfig.series:204
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:25
→ <nRF>/doc/_build/kconfig/Kconfig.soc.defconfig:1
→ <Zephyr>/soc/arm/nxp_imx/Kconfig.defconfig:8
Menu path: (Top)
config SYS_CLOCK_TICKS_PER_SEC
int
default 8192
depends on MCUX_GPT_TIMER && SOC_SERIES_IMX_RT
At <Zephyr>/soc/arm/st_stm32/common/Kconfig.defconfig.series:20
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:25
→ <nRF>/doc/_build/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 if STM32_LPTIM_TIMER && STM32_LPTIM_CLOCK_LSE
default 4000 if STM32_LPTIM_TIMER && STM32_LPTIM_CLOCK_LSI
depends on SOC_FAMILY_STM32
At <Zephyr>/soc/arm/ti_simplelink/cc13x2_cc26x2/Kconfig.defconfig.series:19
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:25
→ <nRF>/doc/_build/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/riscv/riscv-ite/it8xxx2/Kconfig.defconfig.series:25
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:25
→ <nRF>/doc/_build/kconfig/Kconfig.soc.defconfig:1
→ <Zephyr>/soc/riscv/riscv-ite/Kconfig.defconfig:4
Menu path: (Top)
config SYS_CLOCK_TICKS_PER_SEC
int
default 32768
depends on SOC_SERIES_RISCV32_IT8XXX2
At <Zephyr>/soc/riscv/riscv-privilege/andes_v5/Kconfig.defconfig.ae350:9
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:25
→ <nRF>/doc/_build/kconfig/Kconfig.soc.defconfig:1
→ <Zephyr>/soc/riscv/riscv-privilege/Kconfig.defconfig:6
→ <Zephyr>/soc/riscv/riscv-privilege/andes_v5/Kconfig.defconfig.series:9
Menu path: (Top)
config SYS_CLOCK_TICKS_PER_SEC
int
default 100 if !CACHE_ENABLE
depends on SOC_RISCV_ANDES_AE350 && SOC_SERIES_RISCV_ANDES_V5
At <Zephyr>/soc/xtensa/intel_adsp/cavs_v15/Kconfig.defconfig.series:52
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:25
→ <nRF>/doc/_build/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:38
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:25
→ <nRF>/doc/_build/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:38
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:25
→ <nRF>/doc/_build/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:35
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:25
→ <nRF>/doc/_build/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>/soc/xtensa/nxp_adsp/imx8/Kconfig.defconfig.series:27
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:25
→ <nRF>/doc/_build/kconfig/Kconfig.soc.defconfig:1
→ <Zephyr>/soc/xtensa/nxp_adsp/Kconfig.defconfig:6
Menu path: (Top)
config SYS_CLOCK_TICKS_PER_SEC
int
default 50000
depends on SOC_SERIES_NXP_IMX8
At <Zephyr>/soc/xtensa/nxp_adsp/imx8m/Kconfig.defconfig.series:27
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:25
→ <nRF>/doc/_build/kconfig/Kconfig.soc.defconfig:1
→ <Zephyr>/soc/xtensa/nxp_adsp/Kconfig.defconfig:6
Menu path: (Top)
config SYS_CLOCK_TICKS_PER_SEC
int
default 50000
depends on SOC_SERIES_NXP_IMX8M
At <Zephyr>/soc/arm/nordic_nrf/Kconfig.defconfig:24
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:27
Menu path: (Top)
config SYS_CLOCK_TICKS_PER_SEC
int
default 32768
depends on SOC_FAMILY_NRF
At <Zephyr>/soc/arm/nxp_imx/rt/Kconfig.defconfig.series:73
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:27
→ <Zephyr>/soc/arm/nxp_imx/Kconfig.defconfig:8
Menu path: (Top)
config SYS_CLOCK_TICKS_PER_SEC
int
default 4096 if MCUX_GPT_TIMER
depends on SOC_SERIES_IMX_RT
At <Zephyr>/soc/arm/nxp_imx/rt/Kconfig.defconfig.series:204
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:27
→ <Zephyr>/soc/arm/nxp_imx/Kconfig.defconfig:8
Menu path: (Top)
config SYS_CLOCK_TICKS_PER_SEC
int
default 8192
depends on MCUX_GPT_TIMER && SOC_SERIES_IMX_RT
At <Zephyr>/soc/arm/st_stm32/common/Kconfig.defconfig.series:20
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:27
→ <Zephyr>/soc/arm/st_stm32/Kconfig.defconfig:3
Menu path: (Top)
config SYS_CLOCK_TICKS_PER_SEC
int
default 4096 if STM32_LPTIM_TIMER && STM32_LPTIM_CLOCK_LSE
default 4000 if STM32_LPTIM_TIMER && STM32_LPTIM_CLOCK_LSI
depends on SOC_FAMILY_STM32
At <Zephyr>/soc/arm/ti_simplelink/cc13x2_cc26x2/Kconfig.defconfig.series:19
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:27
→ <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/riscv/riscv-ite/it8xxx2/Kconfig.defconfig.series:25
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:27
→ <Zephyr>/soc/riscv/riscv-ite/Kconfig.defconfig:4
Menu path: (Top)
config SYS_CLOCK_TICKS_PER_SEC
int
default 32768
depends on SOC_SERIES_RISCV32_IT8XXX2
At <Zephyr>/soc/riscv/riscv-privilege/andes_v5/Kconfig.defconfig.ae350:9
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:27
→ <Zephyr>/soc/riscv/riscv-privilege/Kconfig.defconfig:6
→ <Zephyr>/soc/riscv/riscv-privilege/andes_v5/Kconfig.defconfig.series:9
Menu path: (Top)
config SYS_CLOCK_TICKS_PER_SEC
int
default 100 if !CACHE_ENABLE
depends on SOC_RISCV_ANDES_AE350 && SOC_SERIES_RISCV_ANDES_V5
At <Zephyr>/soc/xtensa/intel_adsp/cavs_v15/Kconfig.defconfig.series:52
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:27
→ <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:38
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:27
→ <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:38
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:27
→ <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:35
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:27
→ <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>/soc/xtensa/nxp_adsp/imx8/Kconfig.defconfig.series:27
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:27
→ <Zephyr>/soc/xtensa/nxp_adsp/Kconfig.defconfig:6
Menu path: (Top)
config SYS_CLOCK_TICKS_PER_SEC
int
default 50000
depends on SOC_SERIES_NXP_IMX8
At <Zephyr>/soc/xtensa/nxp_adsp/imx8m/Kconfig.defconfig.series:27
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:27
→ <Zephyr>/soc/xtensa/nxp_adsp/Kconfig.defconfig:6
Menu path: (Top)
config SYS_CLOCK_TICKS_PER_SEC
int
default 50000
depends on SOC_SERIES_NXP_IMX8M
At <Zephyr>/kernel/Kconfig:584
Included via <Zephyr>/Kconfig:8
→ <Zephyr>/Kconfig.zephyr:40
Menu path: (Top) → General Kernel Options
config SYS_CLOCK_TICKS_PER_SEC
int "System tick frequency (in ticks/second)"
default 100 if QEMU_TARGET || SOC_POSIX
default 10000 if TICKLESS_KERNEL
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 bookkeeping. 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.)