1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2024-12-29 04:50:03 +01:00
RIOT/core/Kconfig
Marian Buschsieweke 3e86e39646
core: add core_mutex_debug to aid debugging deadlocks
Adding `USEMODULE += core_mutex_debug` to your `Makefile` results in
on log messages such as

    [mutex] waiting for thread 1 (pc = 0x800024d)

being added whenever `mutex_lock()` blocks. This makes tracing down
deadlocks easier.
2023-04-25 15:10:34 +02:00

85 lines
2.0 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_CORE
bool "RIOT Core"
default y
depends on TEST_KCONFIG
depends on MODULE_CORE_LIB
help
RIOT's core module. Only change this if you know what you are doing. If
unsure, say Y.
if MODULE_CORE
config MODULE_CORE_IDLE_THREAD
bool
prompt "Use Idle thread" if HAS_NO_IDLE_THREAD
default y if !HAS_NO_IDLE_THREAD
help
Select y to include the Idle thread. This is mandatory for some CPUs.
config MODULE_CORE_INIT
bool "Kernel initialization module"
default y
config MODULE_CORE_MBOX
bool "Kernel message box module"
config MODULE_CORE_MSG
bool "Kernel messaging module"
default y
config MODULE_CORE_MSG_BUS
bool "Messaging Bus module"
help
Messaging Bus API for inter process message broadcast.
config MODULE_CORE_MUTEX_DEBUG
bool "Aid debugging deadlocks by printing on whom mutex_lock() is waiting"
config MODULE_CORE_MUTEX_PRIORITY_INHERITANCE
bool "Use priority inheritance to mitigate priority inversion for mutexes"
config MODULE_CORE_PANIC
bool "Kernel crash handling module"
default y
config MODULE_CORE_THREAD
bool "Support for Threads"
default y
config MODULE_CORE_THREAD_FLAGS
bool "Thread flags"
config MODULE_SCHED_CB
bool "Callback support on the scheduler"
endif # MODULE_CORE
config MODULE_CORE_LIB
bool
default y
help
Select y to to include core libs
menuconfig KCONFIG_USEMODULE_CORE
bool "Configure RIOT Core"
depends on USEMODULE_CORE
help
Configure RIOT Core using Kconfig.
if KCONFIG_USEMODULE_CORE
config THREAD_NAMES
bool "Store thread name strings"
help
By default, thread names are not stored if DEVELHELP is not used.
Use this parameter to store them for non-devel builds.
endif # KCONFIG_USEMODULE_CORE