Lines Matching +full:freertos +full:- +full:kernel

2  * FreeRTOS Kernel V11.0.1
5 * SPDX-License-Identifier: MIT
24 * https://www.FreeRTOS.org
25 * https://github.com/FreeRTOS
33 * https://www.freertos.org/a00110.html
56 /* configSYSTICK_CLOCK_HZ is an optional parameter for ARM Cortex-M ports only.
58 * By default ARM Cortex-M ports generate the RTOS tick interrupt from the
59 * Cortex-M SysTick timer. Most Cortex-M MCUs run the SysTick timer at the same
60 * frequency as the MCU itself - when that is the case configSYSTICK_CLOCK_HZ is
80 /* Set configUSE_PREEMPTION to 1 to use pre-emptive scheduling. Set
81 * configUSE_PREEMPTION to 0 to use co-operative scheduling.
82 * See https://www.freertos.org/single-core-amp-smp-rtos-scheduling.html. */
89 * https://freertos.org/single-core-amp-smp-rtos-scheduling.html. */
93 * run using an algorithm optimised to the instruction set of the target hardware -
95 * the next task to run using a generic C algorithm that works for all FreeRTOS
96 * ports. Not all FreeRTOS ports have this option. Defaults to 0 if left
101 * 0 to keep the tick interrupt running at all times. Not all FreeRTOS ports
102 * support tickless mode. See https://www.freertos.org/low-power-tickless-rtos.html
107 * be assigned priorities of 0 to (configMAX_PRIORITIES - 1). Zero is the lowest
112 * (in words, not in bytes!). The kernel does not use this constant for any other
121 /* Time is measured in 'ticks' - which is the number of times the tick interrupt
122 * has executed since the RTOS kernel was started.
125 * configTICK_TYPE_WIDTH_IN_BITS controls the type (and therefore bit-width) of TickType_t:
128 * TickType_t to be defined (typedef'ed) as an unsigned 16-bit type.
131 * TickType_t to be defined (typedef'ed) as an unsigned 32-bit type.
134 * TickType_t to be defined (typedef'ed) as an unsigned 64-bit type. */
145 * See https://www.freertos.org/RTOS-task-notifications.html Defaults to 1 if
151 * kernel aware debugger. Defaults to 0 if left undefined. */
155 * datatypes from old version of FreeRTOS to their latest equivalent. Defaults to
161 * the array. See https://www.freertos.org/thread-local-storage-pointers.html
179 * each message written to a FreeRTOS message buffer (the length is also written to
180 * the message buffer. Defaults to size_t if left undefined - but that may waste
202 * tested by the FreeRTOS maintainers themselves. FreeRTOS is not responsible for
204 * system-wide implementations of the necessary stubs. Note that (at the time of
205 * writing) the current newlib design implements a system-wide malloc() that must
215 * FreeRTOS/source/timers.c source file must be included in the build if
217 * https://www.freertos.org/RTOS-software-timer.html. */
221 * used if configUSE_TIMERS is set to 1. The timer task is a standard FreeRTOS
223 * https://www.freertos.org/RTOS-software-timer-service-daemon-task.html Only used
225 #define configTIMER_TASK_PRIORITY ( configMAX_PRIORITIES - 1 )
228 * timer task (in words, not in bytes!). The timer task is a standard FreeRTOS
229 * task. See https://www.freertos.org/RTOS-software-timer-service-daemon-task.html
235 * https://www.freertos.org/RTOS-software-timer-service-daemon-task.html Only used
243 /* Set configSUPPORT_STATIC_ALLOCATION to 1 to include FreeRTOS API functions
244 * that create FreeRTOS objects (tasks, queues, etc.) using statically allocated
247 * https://www.freertos.org/Static_Vs_Dynamic_Memory_Allocation.html. */
250 /* Set configSUPPORT_DYNAMIC_ALLOCATION to 1 to include FreeRTOS API functions
251 * that create FreeRTOS objects (tasks, queues, etc.) using dynamically allocated
254 * https://www.freertos.org/Static_Vs_Dynamic_Memory_Allocation.html. */
257 /* Sets the total size of the FreeRTOS heap, in bytes, when heap_1.c, heap_2.c
260 * section. See https://www.freertos.org/a00111.html. */
264 * the array used as the FreeRTOS heap. Set to 0 to have the linker allocate the
265 * array used as the FreeRTOS heap. Defaults to 0 if left undefined. */
269 * allocated from somewhere other than the FreeRTOS heap. This is useful if you
271 * come from the standard FreeRTOS heap. The application writer must provide
287 * priority (0). Not supported by all FreeRTOS ports. See
288 * https://www.freertos.org/RTOS-Cortex-M3-M4.html for information specific to ARM
289 * Cortex-M devices. */
293 * FreeRTOS API calls must not be made. Interrupts above this priority are never
295 * highest interrupt priority (0). Not supported by all FreeRTOS ports.
296 * See https://www.freertos.org/RTOS-Cortex-M3-M4.html for information specific to
297 * ARM Cortex-M devices. */
300 /* Another name for configMAX_SYSCALL_INTERRUPT_PRIORITY - the name used depends
301 * on the FreeRTOS port. */
311 * for any set to 1. See https://www.freertos.org/a00016.html. */
325 /* Set configCHECK_FOR_STACK_OVERFLOW to 1 or 2 for FreeRTOS to check for a
329 * to its stack - this is fast but somewhat ineffective. If
334 * See https://www.freertos.org/Stacks-and-stack-overflow-checking.html Defaults
342 /* Set configGENERATE_RUN_TIME_STATS to 1 to have FreeRTOS collect data on the
345 * if left undefined. See https://www.freertos.org/rtos-run-time-stats.html. */
357 * otherwise not exist - hence they are kept separate. Defaults to 0 if left
362 /* Co-routine related definitions. ********************************************/
365 /* Set configUSE_CO_ROUTINES to 1 to include co-routine functionality in the
366 * build, or 0 to omit co-routine functionality from the build. To include
367 * co-routines, croutine.c must be included in the project. Defaults to 0 if left
372 * to the application co-routines. Any number of co-routines can share the same
397 /* FreeRTOS MPU specific definitions. *****************************************/
402 * See: https://www.freertos.org/a00110.html#configINCLUDE_APPLICATION_DEFINED_PRIVILEGED_FUNCTIONS
403 * Defaults to 0 if left undefined. Only used by the FreeRTOS Cortex-M MPU ports,
404 * not the standard ARMv7-M Cortex-M port. */
408 * target hardware. Normally 8 or 16. Only used by the FreeRTOS Cortex-M MPU
409 * ports, not the standard ARMv7-M Cortex-M port. Defaults to 8 if left
416 * C=1, B=1) if left undefined. Only used by the FreeRTOS Cortex-M MPU ports, not
417 * the standard ARMv7-M Cortex-M port. */
423 * B=1) if left undefined. Only used by the FreeRTOS Cortex-M MPU ports, not
424 * the standard ARMv7-M Cortex-M port. */
428 * escalations originating from outside of the kernel code itself. Set to 1 to
430 * Only used by the FreeRTOS Cortex-M MPU ports, not the standard ARMv7-M Cortex-M
437 * undefined. Only used by the FreeRTOS Cortex-M MPU ports, not the standard
438 * ARMv7-M Cortex-M port. */
441 /* FreeRTOS Kernel version 10.6.0 introduced a new v2 MPU wrapper, namely
448 * the total number of kernel objects, which includes tasks, queues, semaphores,
451 * configPROTECTED_KERNEL_OBJECT_POOL_SIZE kernel objects at any point of
465 * unprivileged task by default does not have access to any kernel object other
467 * unprivileged task access to the kernel objects it needs using the APIs
487 * with different priorities may run simultaneously - so a higher and lower
495 * configUSE_CORE_AFFINITY is set to 0 then the FreeRTOS scheduler is free to
501 * either pre-emptive or co-operative mode using the vTaskPreemptionDisable and
519 /* ARMv8-M secure side port related definitions. ******************************/
523 * call into the secure side of an ARMv8-M chip. Not used by any other ports. */
526 /* Defines the kernel provided implementation of