This adds support for ARM Corstone System Architecture Specification Ma2 (ARM CRSAS-MA2) System Counter and System Timer. The HW consists of one 64-byt System Counter, and any number of System Timers that have match registers to generate interrupts based on the value of the System Counter. The timers don't have any counter/timer of their own, meaning that System Counter can't be started or stopped independently if there is an enabled System Timer. Add the crsas-ma2 timer to the test for counters. Signed-off-by: Mike J. Chen <mjchen@google.com> Signed-off-by: Krystian Hebel <khebel@antmicro.com>
148 lines
5 KiB
Text
148 lines
5 KiB
Text
# Counter configuration options
|
|
|
|
# Copyright (c) 2016 Intel Corporation
|
|
# SPDX-License-Identifier: Apache-2.0
|
|
|
|
menuconfig COUNTER
|
|
bool "Counter drivers"
|
|
help
|
|
Enable support for counter and timer.
|
|
|
|
if COUNTER
|
|
|
|
config COUNTER_CAPTURE
|
|
bool "Counter capture"
|
|
select EXPERIMENTAL
|
|
depends on COUNTER_SUPPORTS_CAPTURE
|
|
help
|
|
Enable support for counter capture. This is a feature that allows
|
|
hardware timestamping of external events as well as a software
|
|
interrupt on the event. This feature is not supported by all
|
|
counter drivers.
|
|
|
|
config COUNTER_SUPPORTS_CAPTURE
|
|
bool
|
|
help
|
|
Select this option if the counter driver supports the counter capture
|
|
API. This is to be set the driver.
|
|
|
|
config COUNTER_INIT_PRIORITY
|
|
int "Counter init priority"
|
|
default KERNEL_INIT_PRIORITY_DEVICE
|
|
help
|
|
Counter driver device initialization priority.
|
|
|
|
config COUNTER_SHELL
|
|
bool "Counter shell"
|
|
depends on SHELL
|
|
help
|
|
Enable Shell Commands for Counter and Timer
|
|
|
|
config COUNTER_64BITS_FREQ
|
|
bool
|
|
help
|
|
Select this option if the counter driver should use 64-bits for frequency.
|
|
This is typically set by drivers that have frequencies greater than
|
|
4,294,967,295 Hz.
|
|
|
|
config COUNTER_SUPPORTS_64BITS_TICKS
|
|
bool
|
|
help
|
|
Select this option if the counter driver supports 64-bits for ticks.
|
|
This is typically set by drivers that require extended
|
|
tick ranges beyond the 32-bit limit.
|
|
|
|
config COUNTER_64BITS_TICKS
|
|
bool "API to support ticks longer than 32-bits"
|
|
depends on COUNTER_SUPPORTS_64BITS_TICKS
|
|
help
|
|
This enables APIs to handle ticks larger than 32-bits with a
|
|
64-bit typedef. It is up to the driver to implement the necessary
|
|
functions to supports.
|
|
|
|
config COUNTER_CALIBRATION
|
|
bool "Counter driver calibration support"
|
|
help
|
|
Enable support for counter clock calibration. Calibration
|
|
is specified in parts per billion (ppb). A positive value
|
|
speeds up the counter, a negative value slows it down.
|
|
|
|
module = COUNTER
|
|
module-str = counter
|
|
source "subsys/logging/Kconfig.template.log_config"
|
|
|
|
# zephyr-keep-sorted-start
|
|
source "drivers/counter/Kconfig.ace"
|
|
source "drivers/counter/Kconfig.ambiq"
|
|
source "drivers/counter/Kconfig.ameba_tmr"
|
|
source "drivers/counter/Kconfig.andes_atcpit100"
|
|
source "drivers/counter/Kconfig.bee_rtc"
|
|
source "drivers/counter/Kconfig.bee_timer"
|
|
source "drivers/counter/Kconfig.bflb"
|
|
source "drivers/counter/Kconfig.cc23x0_lgpt"
|
|
source "drivers/counter/Kconfig.cc23x0_rtc"
|
|
source "drivers/counter/Kconfig.cmos"
|
|
source "drivers/counter/Kconfig.crsas_ma2"
|
|
source "drivers/counter/Kconfig.dtmr_cmsdk_apb"
|
|
source "drivers/counter/Kconfig.dw"
|
|
source "drivers/counter/Kconfig.esp32_rtc"
|
|
source "drivers/counter/Kconfig.esp32_tmr"
|
|
source "drivers/counter/Kconfig.gd32"
|
|
source "drivers/counter/Kconfig.imx_epit"
|
|
source "drivers/counter/Kconfig.infineon"
|
|
source "drivers/counter/Kconfig.infineon_tcpwm"
|
|
source "drivers/counter/Kconfig.ite_it51xxx"
|
|
source "drivers/counter/Kconfig.ite_it8xxx2"
|
|
source "drivers/counter/Kconfig.k3_rtc_counter"
|
|
source "drivers/counter/Kconfig.max32_rtc"
|
|
source "drivers/counter/Kconfig.max32_timer"
|
|
source "drivers/counter/Kconfig.max32_wut"
|
|
source "drivers/counter/Kconfig.mchp"
|
|
source "drivers/counter/Kconfig.mchp_sam_pit64b"
|
|
source "drivers/counter/Kconfig.mcp7940n"
|
|
source "drivers/counter/Kconfig.mcux_ctimer"
|
|
source "drivers/counter/Kconfig.mcux_ftm"
|
|
source "drivers/counter/Kconfig.mcux_gpt"
|
|
source "drivers/counter/Kconfig.mcux_lpc_rtc"
|
|
source "drivers/counter/Kconfig.mcux_lpit"
|
|
source "drivers/counter/Kconfig.mcux_lptmr"
|
|
source "drivers/counter/Kconfig.mcux_qtmr"
|
|
source "drivers/counter/Kconfig.mcux_rtc"
|
|
source "drivers/counter/Kconfig.mcux_rtc_jdp"
|
|
source "drivers/counter/Kconfig.mcux_snvs"
|
|
source "drivers/counter/Kconfig.mcux_stm"
|
|
source "drivers/counter/Kconfig.mcux_sysctr"
|
|
source "drivers/counter/Kconfig.mcux_tpm"
|
|
source "drivers/counter/Kconfig.mcux_tstmr"
|
|
source "drivers/counter/Kconfig.mcux_wake_timer"
|
|
source "drivers/counter/Kconfig.mspm0"
|
|
source "drivers/counter/Kconfig.native_sim"
|
|
source "drivers/counter/Kconfig.neorv32"
|
|
source "drivers/counter/Kconfig.npcx"
|
|
source "drivers/counter/Kconfig.nrfx"
|
|
source "drivers/counter/Kconfig.nxp_irtc"
|
|
source "drivers/counter/Kconfig.nxp_mrt"
|
|
source "drivers/counter/Kconfig.nxp_pit"
|
|
source "drivers/counter/Kconfig.nxp_s32"
|
|
source "drivers/counter/Kconfig.renesas_ra"
|
|
source "drivers/counter/Kconfig.renesas_rz"
|
|
source "drivers/counter/Kconfig.rpi_pico"
|
|
source "drivers/counter/Kconfig.rpi_pico_pit"
|
|
source "drivers/counter/Kconfig.rts5912"
|
|
source "drivers/counter/Kconfig.rts5912_slwtmr"
|
|
source "drivers/counter/Kconfig.sam"
|
|
source "drivers/counter/Kconfig.sam0"
|
|
source "drivers/counter/Kconfig.silabs"
|
|
source "drivers/counter/Kconfig.smartbond_timer"
|
|
source "drivers/counter/Kconfig.stm32_rtc"
|
|
source "drivers/counter/Kconfig.stm32_timer"
|
|
source "drivers/counter/Kconfig.tmr_cmsdk_apb"
|
|
source "drivers/counter/Kconfig.xec"
|
|
source "drivers/counter/Kconfig.xlnx"
|
|
source "drivers/counter/Kconfig.xlnx_ttc"
|
|
source "drivers/counter/Kconfig.xlnx_zynqmp_rtc"
|
|
# zephyr-keep-sorted-stop
|
|
|
|
source "drivers/counter/Kconfig.rv3032_counter"
|
|
|
|
endif # COUNTER
|