Zephyr Project API 3.7.0
A Scalable Open Source RTOS
|
#include <zephyr/sys/slist.h>
Go to the source code of this file.
Data Structures | |
struct | k_obj_core_stats_desc |
Object core statistics descriptor. More... | |
struct | k_obj_type |
Object type structure. More... | |
struct | k_obj_core |
Object core structure. More... | |
Macros | |
#define | K_OBJ_CORE(kobj) (&((kobj)->obj_core)) |
Convert kernel object pointer into its object core pointer. | |
#define | K_OBJ_TYPE_ID_GEN(s) ((s[0] << 24) | (s[1] << 16) | (s[2] << 8) | (s[3])) |
Generate new object type IDs based on a 4 letter string. | |
#define | K_OBJ_TYPE_CONDVAR_ID K_OBJ_TYPE_ID_GEN("COND") |
Condition variable object type. | |
#define | K_OBJ_TYPE_CPU_ID K_OBJ_TYPE_ID_GEN("CPU_") |
CPU object type. | |
#define | K_OBJ_TYPE_EVENT_ID K_OBJ_TYPE_ID_GEN("EVNT") |
Event object type. | |
#define | K_OBJ_TYPE_FIFO_ID K_OBJ_TYPE_ID_GEN("FIFO") |
FIFO object type. | |
#define | K_OBJ_TYPE_KERNEL_ID K_OBJ_TYPE_ID_GEN("KRNL") |
Kernel object type. | |
#define | K_OBJ_TYPE_LIFO_ID K_OBJ_TYPE_ID_GEN("LIFO") |
LIFO object type. | |
#define | K_OBJ_TYPE_MEM_BLOCK_ID K_OBJ_TYPE_ID_GEN("MBLK") |
Memory block object type. | |
#define | K_OBJ_TYPE_MBOX_ID K_OBJ_TYPE_ID_GEN("MBOX") |
Mailbox object type. | |
#define | K_OBJ_TYPE_MEM_SLAB_ID K_OBJ_TYPE_ID_GEN("SLAB") |
Memory slab object type. | |
#define | K_OBJ_TYPE_MSGQ_ID K_OBJ_TYPE_ID_GEN("MSGQ") |
Message queue object type. | |
#define | K_OBJ_TYPE_MUTEX_ID K_OBJ_TYPE_ID_GEN("MUTX") |
Mutex object type. | |
#define | K_OBJ_TYPE_PIPE_ID K_OBJ_TYPE_ID_GEN("PIPE") |
Pipe object type. | |
#define | K_OBJ_TYPE_SEM_ID K_OBJ_TYPE_ID_GEN("SEM4") |
Semaphore object type. | |
#define | K_OBJ_TYPE_STACK_ID K_OBJ_TYPE_ID_GEN("STCK") |
Stack object type. | |
#define | K_OBJ_TYPE_THREAD_ID K_OBJ_TYPE_ID_GEN("THRD") |
Thread object type. | |
#define | K_OBJ_TYPE_TIMER_ID K_OBJ_TYPE_ID_GEN("TIMR") |
Timer object type. | |
Functions | |
struct k_obj_type * | k_obj_type_find (uint32_t type_id) |
Find a specific object type by ID. | |
int | k_obj_type_walk_locked (struct k_obj_type *type, int(*func)(struct k_obj_core *, void *), void *data) |
Walk the object type's list of object cores. | |
int | k_obj_type_walk_unlocked (struct k_obj_type *type, int(*func)(struct k_obj_core *, void *), void *data) |
Walk the object type's list of object cores. | |
void | k_obj_core_init (struct k_obj_core *obj_core, struct k_obj_type *type) |
Initialize the core of the kernel object. | |
void | k_obj_core_link (struct k_obj_core *obj_core) |
Link the kernel object to the kernel object type list. | |
void | k_obj_core_init_and_link (struct k_obj_core *obj_core, struct k_obj_type *type) |
Automatically link the kernel object after initializing it. | |
void | k_obj_core_unlink (struct k_obj_core *obj_core) |
Unlink the kernel object from the kernel object type list. | |
int | k_obj_core_stats_register (struct k_obj_core *obj_core, void *stats, size_t stats_len) |
Register kernel object for gathering statistics. | |
int | k_obj_core_stats_deregister (struct k_obj_core *obj_core) |
Deregister kernel object from gathering statistics. | |
int | k_obj_core_stats_raw (struct k_obj_core *obj_core, void *stats, size_t stats_len) |
Retrieve the raw statistics associated with the kernel object. | |
int | k_obj_core_stats_query (struct k_obj_core *obj_core, void *stats, size_t stats_len) |
Retrieve the statistics associated with the kernel object. | |
int | k_obj_core_stats_reset (struct k_obj_core *obj_core) |
Reset the stats associated with the kernel object. | |
int | k_obj_core_stats_disable (struct k_obj_core *obj_core) |
Stop gathering the stats associated with the kernel object. | |
int | k_obj_core_stats_enable (struct k_obj_core *obj_core) |
Reset the stats associated with the kernel object. | |