Kernel related settings and hooks.
#define CH_CFG_NUM_THREADS 3 |
#define CH_CFG_ST_RESOLUTION 32 |
System time counter resolution.
- Note
- Allowed values are 16 or 32 bits.
Definition at line 61 of file chconf.h.
#define CH_CFG_ST_FREQUENCY 1000 |
System tick frequency.
- Note
- This value together with the
CH_CFG_ST_RESOLUTION
option defines the maximum amount of time allowed for timeouts.
Definition at line 69 of file chconf.h.
#define CH_CFG_ST_TIMEDELTA 0 |
Time delta constant for the tick-less mode.
- Note
- If this value is zero then the system uses the classic periodic tick. This value represents the minimum number of ticks that is safe to specify in a timeout directive. The value one is not valid, timeouts are rounded up to this value.
Definition at line 79 of file chconf.h.
Referenced by chSchGoSleepTimeoutS().
#define CH_CFG_USE_SEMAPHORES TRUE |
Semaphores APIs.
If enabled then the Semaphores APIs are included in the kernel.
- Note
- The default is
TRUE
.
Definition at line 96 of file chconf.h.
#define CH_CFG_USE_MUTEXES FALSE |
Mutexes APIs.
If enabled then the mutexes APIs are included in the kernel.
- Note
- Feature not currently implemented.
-
The default is
FALSE
.
Definition at line 105 of file chconf.h.
#define CH_CFG_USE_EVENTS TRUE |
Events Flags APIs.
If enabled then the event flags APIs are included in the kernel.
- Note
- The default is
TRUE
.
Definition at line 113 of file chconf.h.
#define CH_CFG_USE_MAILBOXES TRUE |
Mailboxes APIs.
If enabled then the asynchronous messages (mailboxes) APIs are included in the kernel.
- Note
- The default is
TRUE
.
-
Requires
CH_CFG_USE_SEMAPHORES
.
Definition at line 123 of file chconf.h.
#define CH_CFG_USE_MEMCORE TRUE |
Core Memory Manager APIs.
If enabled then the core memory manager APIs are included in the kernel.
- Note
- The default is
TRUE
.
Definition at line 132 of file chconf.h.
#define CH_CFG_USE_HEAP TRUE |
Heap Allocator APIs.
If enabled then the memory heap allocator APIs are included in the kernel.
- Note
- The default is
TRUE
.
Definition at line 141 of file chconf.h.
#define CH_CFG_USE_MEMPOOLS TRUE |
Memory Pools Allocator APIs.
If enabled then the memory pools allocator APIs are included in the kernel.
- Note
- The default is
TRUE
.
Definition at line 150 of file chconf.h.
#define CH_CFG_USE_OBJ_FIFOS TRUE |
Objects FIFOs APIs.
If enabled then the objects FIFOs APIs are included in the kernel.
- Note
- The default is
TRUE
.
Definition at line 159 of file chconf.h.
#define CH_CFG_MEMCORE_SIZE 0 |
Managed RAM size.
Size of the RAM area to be managed by the OS. If set to zero then the whole available RAM is used. The core memory is made available to the heap allocator and/or can be used directly through the simplified core memory allocator.
- Note
- In order to let the OS manage the whole RAM the linker script must provide the
heap_base
and heap_end
symbols.
-
Requires
CH_CFG_USE_MEMCORE
.
Definition at line 172 of file chconf.h.
Referenced by _core_init().
#define CH_CFG_USE_FACTORY TRUE |
Objects Factory APIs.
If enabled then the objects factory APIs are included in the kernel.
- Note
- The default is
FALSE
.
Definition at line 190 of file chconf.h.
#define CH_CFG_FACTORY_MAX_NAMES_LENGTH 8 |
Maximum length for object names.
If the specified length is zero then the name is stored by pointer but this could have unintended side effects.
Definition at line 197 of file chconf.h.
#define CH_CFG_FACTORY_OBJECTS_REGISTRY TRUE |
Enables the registry of generic objects.
Definition at line 202 of file chconf.h.
#define CH_CFG_FACTORY_GENERIC_BUFFERS TRUE |
Enables factory for generic buffers.
Definition at line 207 of file chconf.h.
#define CH_CFG_FACTORY_SEMAPHORES TRUE |
Enables factory for semaphores.
Definition at line 212 of file chconf.h.
#define CH_CFG_FACTORY_MAILBOXES TRUE |
Enables factory for mailboxes.
Definition at line 217 of file chconf.h.
#define CH_CFG_FACTORY_OBJ_FIFOS TRUE |
Enables factory for objects FIFOs.
Definition at line 222 of file chconf.h.
#define CH_DBG_STATISTICS FALSE |
Debug option, kernel statistics.
- Note
- Feature not currently implemented.
-
The default is
FALSE
.
Definition at line 239 of file chconf.h.
#define CH_DBG_SYSTEM_STATE_CHECK TRUE |
Debug option, system state check.
- Note
- The default is
FALSE
.
Definition at line 246 of file chconf.h.
#define CH_DBG_ENABLE_CHECKS TRUE |
Debug option, parameters checks.
- Note
- The default is
FALSE
.
Definition at line 253 of file chconf.h.
#define CH_DBG_ENABLE_ASSERTS TRUE |
System assertions.
- Note
- The default is
FALSE
.
Definition at line 260 of file chconf.h.
#define CH_DBG_ENABLE_STACK_CHECK TRUE |
Stack check.
- Note
- The default is
FALSE
.
Definition at line 267 of file chconf.h.
#define CH_CFG_SYSTEM_INIT_HOOK |
( |
| ) |
|
#define CH_CFG_THREAD_EXT_FIELDS /* Add threads custom fields here.*/ |
Threads descriptor structure extension.
User fields added to the end of the thread_t
structure.
Definition at line 290 of file chconf.h.
#define CH_CFG_THREAD_EXT_INIT_HOOK |
( |
|
tr | ) |
|
#define CH_CFG_IDLE_ENTER_HOOK |
( |
| ) |
|
Value:
Idle thread enter hook.
- Note
- This hook is invoked within a critical zone, no OS functions should be invoked from here.
-
This macro can be used to activate a power saving mode.
Definition at line 306 of file chconf.h.
Referenced by chSchGoSleepTimeoutS().
#define CH_CFG_IDLE_LEAVE_HOOK |
( |
| ) |
|
Value:
Idle thread leave hook.
- Note
- This hook is invoked within a critical zone, no OS functions should be invoked from here.
-
This macro can be used to deactivate a power saving mode.
Definition at line 315 of file chconf.h.
Referenced by chSchDoReschedule().
#define CH_CFG_SYSTEM_HALT_HOOK |
( |
|
reason | ) |
|