1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2024-12-29 04:50:03 +01:00
RIOT/sys/event/Kconfig
Leandro Lanzieri 004da59672
sys/ztimer/kconfig: enable xtimer compat only with timer backend
This also moves the selection of MODULE_ZTIMER_PERIPH_TIMER from
MODULE_ZTIMER_USEC to the visible symbol ZTIMER_USEC.
2021-12-02 09:38:06 +01:00

69 lines
1.8 KiB
Plaintext

# Copyright (c) 2020 HAW Hamburg
#
# This file is subject to the terms and conditions of the GNU Lesser
# General Public License v2.1. See the file LICENSE in the top level
# directory for more details.
#
menuconfig MODULE_EVENT
bool "Event queue"
depends on TEST_KCONFIG
select MODULE_CORE_THREAD_FLAGS
help
This module offers an event queue framework like libevent or libuev.
An event queue is basically a FIFO queue of events, with some functions
to efficiently and safely handle adding and getting events to / from
such a queue.
if MODULE_EVENT
config MODULE_EVENT_CALLBACK
bool "Support for callback-with-argument event type"
menuconfig MODULE_EVENT_THREAD
bool "Support for event handler threads"
help
There are three threads of different priorities that can be enabled.
if MODULE_EVENT_THREAD
config MODULE_EVENT_THREAD_LOWEST
bool "Lowest priority thread"
config MODULE_EVENT_THREAD_MEDIUM
bool "Medium priority thread"
config MODULE_EVENT_THREAD_HIGHEST
bool "Highest priority thread"
endif # MODULE_EVENT_THREAD
config MODULE_EVENT_TIMEOUT_ZTIMER
bool "Support for triggering events after timeout, ztimer backend"
select MODULE_ZTIMER
config MODULE_EVENT_TIMEOUT
bool "Legacy API, support for triggering events after timeout"
if MODULE_EVENT_TIMEOUT
choice EVENT_TIMEOUT_IMPLEMENTATION
bool "Event Timeout Implementation"
default EVENT_TIMEOUT_ON_XTIMER
config EVENT_TIMEOUT_ON_ZTIMER
bool "Use ztimer as backend"
select MODULE_EVENT_TIMEOUT_ZTIMER
select ZTIMER_USEC
config EVENT_TIMEOUT_ON_XTIMER
bool "Use xtimer as backend"
select MODULE_XTIMER if !ZTIMER_USEC
endchoice # EVENT_TIMEOUT_IMPLEMENTATION
endif # MODULE_EVENT_TIMEOUT
endif # MODULE_EVENT