1# Copyright (c) 2024 Intel Corp. 2# SPDX-License-Identifier: Apache-2.0 3# 4menuconfig OBJ_CORE 5 bool "Object core framework" 6 default n 7 help 8 This option enables the object core framework. This will link 9 participating kernel objects and their respective types together 10 in a way that allows them to both have common information stored 11 together and for that information to be easily retrieved by 12 automated means. 13 14if OBJ_CORE 15config OBJ_CORE_CONDVAR 16 bool "Integrate condition variables into object core framework" 17 default y 18 help 19 When enabled, this option integrates condition variables into the 20 object core framework. 21 22config OBJ_CORE_EVENT 23 bool "Integrate events into object core framework" 24 default y if EVENTS 25 help 26 When enabled, this option integrate kernel events into the object 27 core framework. 28 29config OBJ_CORE_FIFO 30 bool "Integrate FIFOs into object core framework" 31 default y 32 help 33 When enabled, this option integrates FIFOs into the object core 34 framework. 35 36config OBJ_CORE_LIFO 37 bool "Integrate LIFOs into object core framework" 38 default y 39 help 40 When enabled, this option integrates LIFOs into the object core 41 framework. 42 43config OBJ_CORE_MAILBOX 44 bool "Integrate mailboxes into object core framework" 45 default y 46 help 47 When enabled, this option integrates mailboxes into the object core 48 framework. 49 50config OBJ_CORE_MEM_SLAB 51 bool "Integrate memory slabs into object core framework" 52 default y 53 help 54 When enabled, this option integrates memory slabs into the object 55 core framework. 56 57config OBJ_CORE_MUTEX 58 bool "Integrate mutexes into object core framework" 59 default y 60 help 61 When enabled, this option integrates mutexes into the object core 62 framework. 63 64config OBJ_CORE_MSGQ 65 bool "Integrate message queues into object core framework" 66 default y 67 help 68 When enabled, this option integrates message queues into the object 69 core framework. 70 71config OBJ_CORE_SEM 72 bool "Integrate semaphores into object core framework" 73 default y 74 help 75 When enabled, this option integrates semaphores into the object core 76 framework. 77 78config OBJ_CORE_PIPE 79 bool "Integrate pipe into object core framework" 80 default y if PIPES 81 help 82 When enabled, this option integrates pipes into the object core 83 framework. 84 85config OBJ_CORE_SEM 86 bool "Integrate semaphores into object core framework" 87 default y 88 help 89 When enabled, this option integrates semaphores into the object core 90 framework. 91 92config OBJ_CORE_STACK 93 bool "Integrate stacks into object core framework" 94 default y 95 help 96 When enabled, this option integrates stacks into the object core 97 framework. 98 99config OBJ_CORE_THREAD 100 bool "Integrate threads into object core framework" 101 default y 102 help 103 When enabled, this option integrates threads into the object core 104 framework. 105 106config OBJ_CORE_TIMER 107 bool "Integrate timers into object core framework" 108 default y 109 help 110 When enabled, this option integrates timers into the object core 111 framework. 112 113config OBJ_CORE_SYSTEM 114 bool 115 default y 116 help 117 When enabled, this option integrates the internal CPU and kernel 118 system objects into the object core framework. As these are internal 119 structures, this option is hidden by default and only available to 120 advanced users. 121 122menuconfig OBJ_CORE_STATS 123 bool "Object core statistics" 124 default n 125 help 126 This option integrates statistics gathering into the object core 127 framework. 128 129if OBJ_CORE_STATS 130config OBJ_CORE_STATS_MEM_SLAB 131 bool "Object core statistics for memory slabs" 132 default y if OBJ_CORE_MEM_SLAB 133 help 134 When enabled, this allows memory slab statistics to be integrated 135 into kernel objects. 136 137config OBJ_CORE_STATS_THREAD 138 bool "Object core statistics for threads" 139 default y if OBJ_CORE_THREAD 140 select THREAD_RUNTIME_STATS 141 help 142 When enabled, this integrates thread runtime statistics into the 143 object core statistics framework. 144 145config OBJ_CORE_STATS_SYSTEM 146 bool "Object core statistics for system level objects" 147 default y if OBJ_CORE_SYSTEM 148 select SCHED_THREAD_USAGE_ALL 149 help 150 When enabled, this integrates thread runtime statistics at the 151 CPU and system level into the object core statistics framework. 152 153endif # OBJ_CORE_STATS 154 155endif # OBJ_CORE 156