zephyr/kernel/Kconfig.obj_core

156 lines
4.1 KiB
Plaintext

# Copyright (c) 2024 Intel Corp.
# SPDX-License-Identifier: Apache-2.0
#
menuconfig OBJ_CORE
bool "Object core framework"
default n
help
This option enables the object core framework. This will link
participating kernel objects and their respective types together
in a way that allows them to both have common information stored
together and for that information to be easily retrieved by
automated means.
if OBJ_CORE
config OBJ_CORE_CONDVAR
bool "Integrate condition variables into object core framework"
default y
help
When enabled, this option integrates condition variables into the
object core framework.
config OBJ_CORE_EVENT
bool "Integrate events into object core framework"
default y if EVENTS
help
When enabled, this option integrate kernel events into the object
core framework.
config OBJ_CORE_FIFO
bool "Integrate FIFOs into object core framework"
default y
help
When enabled, this option integrates FIFOs into the object core
framework.
config OBJ_CORE_LIFO
bool "Integrate LIFOs into object core framework"
default y
help
When enabled, this option integrates LIFOs into the object core
framework.
config OBJ_CORE_MAILBOX
bool "Integrate mailboxes into object core framework"
default y
help
When enabled, this option integrates mailboxes into the object core
framework.
config OBJ_CORE_MEM_SLAB
bool "Integrate memory slabs into object core framework"
default y
help
When enabled, this option integrates memory slabs into the object
core framework.
config OBJ_CORE_MUTEX
bool "Integrate mutexes into object core framework"
default y
help
When enabled, this option integrates mutexes into the object core
framework.
config OBJ_CORE_MSGQ
bool "Integrate message queues into object core framework"
default y
help
When enabled, this option integrates message queues into the object
core framework.
config OBJ_CORE_SEM
bool "Integrate semaphores into object core framework"
default y
help
When enabled, this option integrates semaphores into the object core
framework.
config OBJ_CORE_PIPE
bool "Integrate pipe into object core framework"
default y if PIPES
help
When enabled, this option integrates pipes into the object core
framework.
config OBJ_CORE_SEM
bool "Integrate semaphores into object core framework"
default y
help
When enabled, this option integrates semaphores into the object core
framework.
config OBJ_CORE_STACK
bool "Integrate stacks into object core framework"
default y
help
When enabled, this option integrates stacks into the object core
framework.
config OBJ_CORE_THREAD
bool "Integrate threads into object core framework"
default y
help
When enabled, this option integrates threads into the object core
framework.
config OBJ_CORE_TIMER
bool "Integrate timers into object core framework"
default y
help
When enabled, this option integrates timers into the object core
framework.
config OBJ_CORE_SYSTEM
bool
default y
help
When enabled, this option integrates the internal CPU and kernel
system objects into the object core framework. As these are internal
structures, this option is hidden by default and only available to
advanced users.
menuconfig OBJ_CORE_STATS
bool "Object core statistics"
default n
help
This option integrates statistics gathering into the object core
framework.
if OBJ_CORE_STATS
config OBJ_CORE_STATS_MEM_SLAB
bool "Object core statistics for memory slabs"
default y if OBJ_CORE_MEM_SLAB
help
When enabled, this allows memory slab statistics to be integrated
into kernel objects.
config OBJ_CORE_STATS_THREAD
bool "Object core statistics for threads"
default y if OBJ_CORE_THREAD
select THREAD_RUNTIME_STATS
help
When enabled, this integrates thread runtime statistics into the
object core statistics framework.
config OBJ_CORE_STATS_SYSTEM
bool "Object core statistics for system level objects"
default y if OBJ_CORE_SYSTEM
select SCHED_THREAD_USAGE_ALL
help
When enabled, this integrates thread runtime statistics at the
CPU and system level into the object core statistics framework.
endif # OBJ_CORE_STATS
endif # OBJ_CORE