firmware
IEM Firmware Documentation
Loading...
Searching...
No Matches
FreeRTOS.h
Go to the documentation of this file.
1/*
2 * FreeRTOS Kernel V11.1.0
3 * Copyright (C) 2021 Amazon.com, Inc. or its affiliates. All Rights Reserved.
4 *
5 * SPDX-License-Identifier: MIT
6 *
7 * Permission is hereby granted, free of charge, to any person obtaining a copy of
8 * this software and associated documentation files (the "Software"), to deal in
9 * the Software without restriction, including without limitation the rights to
10 * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
11 * the Software, and to permit persons to whom the Software is furnished to do so,
12 * subject to the following conditions:
13 *
14 * The above copyright notice and this permission notice shall be included in all
15 * copies or substantial portions of the Software.
16 *
17 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
18 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
19 * FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
20 * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
21 * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
22 * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
23 *
24 * https://www.FreeRTOS.org
25 * https://github.com/FreeRTOS
26 *
27 */
28
29#ifndef INC_FREERTOS_H
30#define INC_FREERTOS_H
31
32/*
33 * Include the generic headers required for the FreeRTOS port being used.
34 */
35#include <stddef.h>
36
37/*
38 * If stdint.h cannot be located then:
39 * + If using GCC ensure the -nostdint options is *not* being used.
40 * + Ensure the project's include path includes the directory in which your
41 * compiler stores stdint.h.
42 * + Set any compiler options necessary for it to support C99, as technically
43 * stdint.h is only mandatory with C99 (FreeRTOS does not require C99 in any
44 * other way).
45 * + The FreeRTOS download includes a simple stdint.h definition that can be
46 * used in cases where none is provided by the compiler. The files only
47 * contains the typedefs required to build FreeRTOS. Read the instructions
48 * in FreeRTOS/source/stdint.readme for more information.
49 */
50#include <stdint.h> /* READ COMMENT ABOVE. */
51
52/* *INDENT-OFF* */
53#ifdef __cplusplus
54 extern "C" {
55#endif
56/* *INDENT-ON* */
57
58/* Acceptable values for configTICK_TYPE_WIDTH_IN_BITS. */
59#define TICK_TYPE_WIDTH_16_BITS 0
60#define TICK_TYPE_WIDTH_32_BITS 1
61#define TICK_TYPE_WIDTH_64_BITS 2
62
63/* Application specific configuration options. */
64#include "FreeRTOSConfig.h"
65
66#if !defined( configUSE_16_BIT_TICKS ) && !defined( configTICK_TYPE_WIDTH_IN_BITS )
67 #error Missing definition: One of configUSE_16_BIT_TICKS and configTICK_TYPE_WIDTH_IN_BITS must be defined in FreeRTOSConfig.h. See the Configuration section of the FreeRTOS API documentation for details.
68#endif
69
70#if defined( configUSE_16_BIT_TICKS ) && defined( configTICK_TYPE_WIDTH_IN_BITS )
71 #error Only one of configUSE_16_BIT_TICKS and configTICK_TYPE_WIDTH_IN_BITS must be defined in FreeRTOSConfig.h. See the Configuration section of the FreeRTOS API documentation for details.
72#endif
73
74/* Define configTICK_TYPE_WIDTH_IN_BITS according to the
75 * value of configUSE_16_BIT_TICKS for backward compatibility. */
76#ifndef configTICK_TYPE_WIDTH_IN_BITS
77 #if ( configUSE_16_BIT_TICKS == 1 )
78 #define configTICK_TYPE_WIDTH_IN_BITS TICK_TYPE_WIDTH_16_BITS
79 #else
80 #define configTICK_TYPE_WIDTH_IN_BITS TICK_TYPE_WIDTH_32_BITS
81 #endif
82#endif
83
84/* Set configUSE_MPU_WRAPPERS_V1 to 1 to use MPU wrappers v1. */
85#ifndef configUSE_MPU_WRAPPERS_V1
86 #define configUSE_MPU_WRAPPERS_V1 0
87#endif
88
89/* Set configENABLE_ACCESS_CONTROL_LIST to 1 to enable access control list support. */
90#ifndef configENABLE_ACCESS_CONTROL_LIST
91 #define configENABLE_ACCESS_CONTROL_LIST 0
92#endif
93
94/* Set default value of configNUMBER_OF_CORES to 1 to use single core FreeRTOS. */
95#ifndef configNUMBER_OF_CORES
96 #define configNUMBER_OF_CORES 1
97#endif
98
99#ifndef configUSE_MALLOC_FAILED_HOOK
100 #define configUSE_MALLOC_FAILED_HOOK 0
101#endif
102
103/* Basic FreeRTOS definitions. */
104#include "projdefs.h"
105
106/* Definitions specific to the port being used. */
107#include "portable.h"
108
109/* Must be defaulted before configUSE_NEWLIB_REENTRANT is used below. */
110#ifndef configUSE_NEWLIB_REENTRANT
111 #define configUSE_NEWLIB_REENTRANT 0
112#endif
113
114/* Required if struct _reent is used. */
115#if ( configUSE_NEWLIB_REENTRANT == 1 )
116
117 #include "newlib-freertos.h"
118
119#endif /* if ( configUSE_NEWLIB_REENTRANT == 1 ) */
120
121/* Must be defaulted before configUSE_PICOLIBC_TLS is used below. */
122#ifndef configUSE_PICOLIBC_TLS
123 #define configUSE_PICOLIBC_TLS 0
124#endif
125
126#if ( configUSE_PICOLIBC_TLS == 1 )
127
128 #include "picolibc-freertos.h"
129
130#endif /* if ( configUSE_PICOLIBC_TLS == 1 ) */
131
132#ifndef configUSE_C_RUNTIME_TLS_SUPPORT
133 #define configUSE_C_RUNTIME_TLS_SUPPORT 0
134#endif
135
136#if ( configUSE_C_RUNTIME_TLS_SUPPORT == 1 )
137
138 #ifndef configTLS_BLOCK_TYPE
139 #error Missing definition: configTLS_BLOCK_TYPE must be defined in FreeRTOSConfig.h when configUSE_C_RUNTIME_TLS_SUPPORT is set to 1.
140 #endif
141
142 #ifndef configINIT_TLS_BLOCK
143 #error Missing definition: configINIT_TLS_BLOCK must be defined in FreeRTOSConfig.h when configUSE_C_RUNTIME_TLS_SUPPORT is set to 1.
144 #endif
145
146 #ifndef configSET_TLS_BLOCK
147 #error Missing definition: configSET_TLS_BLOCK must be defined in FreeRTOSConfig.h when configUSE_C_RUNTIME_TLS_SUPPORT is set to 1.
148 #endif
149
150 #ifndef configDEINIT_TLS_BLOCK
151 #error Missing definition: configDEINIT_TLS_BLOCK must be defined in FreeRTOSConfig.h when configUSE_C_RUNTIME_TLS_SUPPORT is set to 1.
152 #endif
153#endif /* if ( configUSE_C_RUNTIME_TLS_SUPPORT == 1 ) */
154
155/*
156 * Check all the required application specific macros have been defined.
157 * These macros are application specific and (as downloaded) are defined
158 * within FreeRTOSConfig.h.
159 */
160
161#ifndef configMINIMAL_STACK_SIZE
162 #error Missing definition: configMINIMAL_STACK_SIZE must be defined in FreeRTOSConfig.h. configMINIMAL_STACK_SIZE defines the size (in words) of the stack allocated to the idle task. Refer to the demo project provided for your port for a suitable value.
163#endif
164
165#ifndef configMAX_PRIORITIES
166 #error Missing definition: configMAX_PRIORITIES must be defined in FreeRTOSConfig.h. See the Configuration section of the FreeRTOS API documentation for details.
167#endif
168
169#if configMAX_PRIORITIES < 1
170 #error configMAX_PRIORITIES must be defined to be greater than or equal to 1.
171#endif
172
173#ifndef configUSE_PREEMPTION
174 #error Missing definition: configUSE_PREEMPTION must be defined in FreeRTOSConfig.h as either 1 or 0. See the Configuration section of the FreeRTOS API documentation for details.
175#endif
176
177#ifndef configUSE_IDLE_HOOK
178 #error Missing definition: configUSE_IDLE_HOOK must be defined in FreeRTOSConfig.h as either 1 or 0. See the Configuration section of the FreeRTOS API documentation for details.
179#endif
180
181#if ( configNUMBER_OF_CORES > 1 )
182 #ifndef configUSE_PASSIVE_IDLE_HOOK
183 #error Missing definition: configUSE_PASSIVE_IDLE_HOOK must be defined in FreeRTOSConfig.h as either 1 or 0. See the Configuration section of the FreeRTOS API documentation for details.
184 #endif
185#endif
186
187#ifndef configUSE_TICK_HOOK
188 #error Missing definition: configUSE_TICK_HOOK must be defined in FreeRTOSConfig.h as either 1 or 0. See the Configuration section of the FreeRTOS API documentation for details.
189#endif
190
191#if ( ( configTICK_TYPE_WIDTH_IN_BITS != TICK_TYPE_WIDTH_16_BITS ) && \
192 ( configTICK_TYPE_WIDTH_IN_BITS != TICK_TYPE_WIDTH_32_BITS ) && \
193 ( configTICK_TYPE_WIDTH_IN_BITS != TICK_TYPE_WIDTH_64_BITS ) )
194 #error Macro configTICK_TYPE_WIDTH_IN_BITS is defined to incorrect value. See the Configuration section of the FreeRTOS API documentation for details.
195#endif
196
197#ifndef configUSE_CO_ROUTINES
198 #define configUSE_CO_ROUTINES 0
199#endif
200
201#ifndef INCLUDE_vTaskPrioritySet
202 #define INCLUDE_vTaskPrioritySet 0
203#endif
204
205#ifndef INCLUDE_uxTaskPriorityGet
206 #define INCLUDE_uxTaskPriorityGet 0
207#endif
208
209#ifndef INCLUDE_vTaskDelete
210 #define INCLUDE_vTaskDelete 0
211#endif
212
213#ifndef INCLUDE_vTaskSuspend
214 #define INCLUDE_vTaskSuspend 0
215#endif
216
217#ifdef INCLUDE_xTaskDelayUntil
218 #ifdef INCLUDE_vTaskDelayUntil
219
220/* INCLUDE_vTaskDelayUntil was replaced by INCLUDE_xTaskDelayUntil. Backward
221 * compatibility is maintained if only one or the other is defined, but
222 * there is a conflict if both are defined. */
223 #error INCLUDE_vTaskDelayUntil and INCLUDE_xTaskDelayUntil are both defined. INCLUDE_vTaskDelayUntil is no longer required and should be removed
224 #endif
225#endif
226
227#ifndef INCLUDE_xTaskDelayUntil
228 #ifdef INCLUDE_vTaskDelayUntil
229
230/* If INCLUDE_vTaskDelayUntil is set but INCLUDE_xTaskDelayUntil is not then
231 * the project's FreeRTOSConfig.h probably pre-dates the introduction of
232 * xTaskDelayUntil and setting INCLUDE_xTaskDelayUntil to whatever
233 * INCLUDE_vTaskDelayUntil is set to will ensure backward compatibility.
234 */
235 #define INCLUDE_xTaskDelayUntil INCLUDE_vTaskDelayUntil
236 #endif
237#endif
238
239#ifndef INCLUDE_xTaskDelayUntil
240 #define INCLUDE_xTaskDelayUntil 0
241#endif
242
243#ifndef INCLUDE_vTaskDelay
244 #define INCLUDE_vTaskDelay 0
245#endif
246
247#ifndef INCLUDE_xTaskGetIdleTaskHandle
248 #define INCLUDE_xTaskGetIdleTaskHandle 0
249#endif
250
251#ifndef INCLUDE_xTaskAbortDelay
252 #define INCLUDE_xTaskAbortDelay 0
253#endif
254
255#ifndef INCLUDE_xQueueGetMutexHolder
256 #define INCLUDE_xQueueGetMutexHolder 0
257#endif
258
259#ifndef INCLUDE_xSemaphoreGetMutexHolder
260 #define INCLUDE_xSemaphoreGetMutexHolder INCLUDE_xQueueGetMutexHolder
261#endif
262
263#ifndef INCLUDE_xTaskGetHandle
264 #define INCLUDE_xTaskGetHandle 0
265#endif
266
267#ifndef INCLUDE_uxTaskGetStackHighWaterMark
268 #define INCLUDE_uxTaskGetStackHighWaterMark 0
269#endif
270
271#ifndef INCLUDE_uxTaskGetStackHighWaterMark2
272 #define INCLUDE_uxTaskGetStackHighWaterMark2 0
273#endif
274
275#ifndef INCLUDE_eTaskGetState
276 #define INCLUDE_eTaskGetState 0
277#endif
278
279#ifndef INCLUDE_xTaskResumeFromISR
280 #define INCLUDE_xTaskResumeFromISR 1
281#endif
282
283#ifndef INCLUDE_xTimerPendFunctionCall
284 #define INCLUDE_xTimerPendFunctionCall 0
285#endif
286
287#ifndef INCLUDE_xTaskGetSchedulerState
288 #define INCLUDE_xTaskGetSchedulerState 0
289#endif
290
291#ifndef INCLUDE_xTaskGetCurrentTaskHandle
292 #define INCLUDE_xTaskGetCurrentTaskHandle 1
293#endif
294
295#if configUSE_CO_ROUTINES != 0
296 #ifndef configMAX_CO_ROUTINE_PRIORITIES
297 #error configMAX_CO_ROUTINE_PRIORITIES must be greater than or equal to 1.
298 #endif
299#endif
300
301#ifndef configUSE_APPLICATION_TASK_TAG
302 #define configUSE_APPLICATION_TASK_TAG 0
303#endif
304
305#ifndef configNUM_THREAD_LOCAL_STORAGE_POINTERS
306 #define configNUM_THREAD_LOCAL_STORAGE_POINTERS 0
307#endif
308
309#ifndef configUSE_RECURSIVE_MUTEXES
310 #define configUSE_RECURSIVE_MUTEXES 0
311#endif
312
313#ifndef configUSE_MUTEXES
314 #define configUSE_MUTEXES 0
315#endif
316
317#ifndef configUSE_TIMERS
318 #define configUSE_TIMERS 0
319#endif
320
321#ifndef configUSE_EVENT_GROUPS
322 #define configUSE_EVENT_GROUPS 1
323#endif
324
325#ifndef configUSE_STREAM_BUFFERS
326 #define configUSE_STREAM_BUFFERS 1
327#endif
328
329#ifndef configUSE_DAEMON_TASK_STARTUP_HOOK
330 #define configUSE_DAEMON_TASK_STARTUP_HOOK 0
331#endif
332
333#if ( configUSE_DAEMON_TASK_STARTUP_HOOK != 0 )
334 #if ( configUSE_TIMERS == 0 )
335 #error configUSE_DAEMON_TASK_STARTUP_HOOK is set, but the daemon task is not created because configUSE_TIMERS is 0.
336 #endif
337#endif
338
339#ifndef configUSE_COUNTING_SEMAPHORES
340 #define configUSE_COUNTING_SEMAPHORES 0
341#endif
342
343#ifndef configUSE_TASK_PREEMPTION_DISABLE
344 #define configUSE_TASK_PREEMPTION_DISABLE 0
345#endif
346
347#ifndef configUSE_ALTERNATIVE_API
348 #define configUSE_ALTERNATIVE_API 0
349#endif
350
351#ifndef portCRITICAL_NESTING_IN_TCB
352 #define portCRITICAL_NESTING_IN_TCB 0
353#endif
354
355#ifndef configMAX_TASK_NAME_LEN
356 #define configMAX_TASK_NAME_LEN 16
357#endif
358
359#ifndef configIDLE_SHOULD_YIELD
360 #define configIDLE_SHOULD_YIELD 1
361#endif
362
363#if configMAX_TASK_NAME_LEN < 1
364 #error configMAX_TASK_NAME_LEN must be set to a minimum of 1 in FreeRTOSConfig.h
365#endif
366
367#ifndef configASSERT
368 #define configASSERT( x )
369 #define configASSERT_DEFINED 0
370#else
371 #define configASSERT_DEFINED 1
372#endif
373
374/* configPRECONDITION should be defined as configASSERT.
375 * The CBMC proofs need a way to track assumptions and assertions.
376 * A configPRECONDITION statement should express an implicit invariant or
377 * assumption made. A configASSERT statement should express an invariant that must
378 * hold explicit before calling the code. */
379#ifndef configPRECONDITION
380 #define configPRECONDITION( X ) configASSERT( X )
381 #define configPRECONDITION_DEFINED 0
382#else
383 #define configPRECONDITION_DEFINED 1
384#endif
385
386#ifndef configCHECK_HANDLER_INSTALLATION
387 #define configCHECK_HANDLER_INSTALLATION 1
388#else
389
390/* The application has explicitly defined configCHECK_HANDLER_INSTALLATION
391 * to 1. The checks requires configASSERT() to be defined. */
392 #if ( ( configCHECK_HANDLER_INSTALLATION == 1 ) && ( configASSERT_DEFINED == 0 ) )
393 #error You must define configASSERT() when configCHECK_HANDLER_INSTALLATION is 1.
394 #endif
395#endif
396
397#ifndef portMEMORY_BARRIER
398 #define portMEMORY_BARRIER()
399#endif
400
401#ifndef portSOFTWARE_BARRIER
402 #define portSOFTWARE_BARRIER()
403#endif
404
405#ifndef configRUN_MULTIPLE_PRIORITIES
406 #define configRUN_MULTIPLE_PRIORITIES 0
407#endif
408
409#ifndef portGET_CORE_ID
410
411 #if ( configNUMBER_OF_CORES == 1 )
412 #define portGET_CORE_ID() 0
413 #else
414 #error configNUMBER_OF_CORES is set to more than 1 then portGET_CORE_ID must also be defined.
415 #endif /* configNUMBER_OF_CORES */
416
417#endif /* portGET_CORE_ID */
418
419#ifndef portYIELD_CORE
420
421 #if ( configNUMBER_OF_CORES == 1 )
422 #define portYIELD_CORE( x ) portYIELD()
423 #else
424 #error configNUMBER_OF_CORES is set to more than 1 then portYIELD_CORE must also be defined.
425 #endif /* configNUMBER_OF_CORES */
426
427#endif /* portYIELD_CORE */
428
429#ifndef portSET_INTERRUPT_MASK
430
431 #if ( configNUMBER_OF_CORES > 1 )
432 #error portSET_INTERRUPT_MASK is required in SMP
433 #endif
434
435#endif /* portSET_INTERRUPT_MASK */
436
437#ifndef portCLEAR_INTERRUPT_MASK
438
439 #if ( configNUMBER_OF_CORES > 1 )
440 #error portCLEAR_INTERRUPT_MASK is required in SMP
441 #endif
442
443#endif /* portCLEAR_INTERRUPT_MASK */
444
445#ifndef portRELEASE_TASK_LOCK
446
447 #if ( configNUMBER_OF_CORES == 1 )
448 #define portRELEASE_TASK_LOCK()
449 #else
450 #error portRELEASE_TASK_LOCK is required in SMP
451 #endif
452
453#endif /* portRELEASE_TASK_LOCK */
454
455#ifndef portGET_TASK_LOCK
456
457 #if ( configNUMBER_OF_CORES == 1 )
458 #define portGET_TASK_LOCK()
459 #else
460 #error portGET_TASK_LOCK is required in SMP
461 #endif
462
463#endif /* portGET_TASK_LOCK */
464
465#ifndef portRELEASE_ISR_LOCK
466
467 #if ( configNUMBER_OF_CORES == 1 )
468 #define portRELEASE_ISR_LOCK()
469 #else
470 #error portRELEASE_ISR_LOCK is required in SMP
471 #endif
472
473#endif /* portRELEASE_ISR_LOCK */
474
475#ifndef portGET_ISR_LOCK
476
477 #if ( configNUMBER_OF_CORES == 1 )
478 #define portGET_ISR_LOCK()
479 #else
480 #error portGET_ISR_LOCK is required in SMP
481 #endif
482
483#endif /* portGET_ISR_LOCK */
484
485#ifndef portENTER_CRITICAL_FROM_ISR
486
487 #if ( configNUMBER_OF_CORES > 1 )
488 #error portENTER_CRITICAL_FROM_ISR is required in SMP
489 #endif
490
491#endif
492
493#ifndef portEXIT_CRITICAL_FROM_ISR
494
495 #if ( configNUMBER_OF_CORES > 1 )
496 #error portEXIT_CRITICAL_FROM_ISR is required in SMP
497 #endif
498
499#endif
500
501#ifndef configUSE_CORE_AFFINITY
502 #define configUSE_CORE_AFFINITY 0
503#endif /* configUSE_CORE_AFFINITY */
504
505#if ( ( configNUMBER_OF_CORES > 1 ) && ( configUSE_CORE_AFFINITY == 1 ) )
506 #ifndef configTASK_DEFAULT_CORE_AFFINITY
507 #define configTASK_DEFAULT_CORE_AFFINITY tskNO_AFFINITY
508 #endif
509#endif
510
511#ifndef configUSE_PASSIVE_IDLE_HOOK
512 #define configUSE_PASSIVE_IDLE_HOOK 0
513#endif /* configUSE_PASSIVE_IDLE_HOOK */
514
515/* The timers module relies on xTaskGetSchedulerState(). */
516#if configUSE_TIMERS == 1
517
518 #ifndef configTIMER_TASK_PRIORITY
519 #error If configUSE_TIMERS is set to 1 then configTIMER_TASK_PRIORITY must also be defined.
520 #endif /* configTIMER_TASK_PRIORITY */
521
522 #ifndef configTIMER_QUEUE_LENGTH
523 #error If configUSE_TIMERS is set to 1 then configTIMER_QUEUE_LENGTH must also be defined.
524 #endif /* configTIMER_QUEUE_LENGTH */
525
526 #ifndef configTIMER_TASK_STACK_DEPTH
527 #error If configUSE_TIMERS is set to 1 then configTIMER_TASK_STACK_DEPTH must also be defined.
528 #endif /* configTIMER_TASK_STACK_DEPTH */
529
530 #ifndef portTIMER_CALLBACK_ATTRIBUTE
531 #define portTIMER_CALLBACK_ATTRIBUTE
532 #endif /* portTIMER_CALLBACK_ATTRIBUTE */
533
534#endif /* configUSE_TIMERS */
535
536#ifndef portHAS_NESTED_INTERRUPTS
537 #if defined( portSET_INTERRUPT_MASK_FROM_ISR ) && defined( portCLEAR_INTERRUPT_MASK_FROM_ISR )
538 #define portHAS_NESTED_INTERRUPTS 1
539 #else
540 #define portHAS_NESTED_INTERRUPTS 0
541 #endif
542#endif
543
544#ifndef portSET_INTERRUPT_MASK_FROM_ISR
545 #if ( portHAS_NESTED_INTERRUPTS == 1 )
546 #error portSET_INTERRUPT_MASK_FROM_ISR must be defined for ports that support nested interrupts (i.e. portHAS_NESTED_INTERRUPTS is set to 1)
547 #else
548 #define portSET_INTERRUPT_MASK_FROM_ISR() 0
549 #endif
550#else
551 #if ( portHAS_NESTED_INTERRUPTS == 0 )
552 #error portSET_INTERRUPT_MASK_FROM_ISR must not be defined for ports that do not support nested interrupts (i.e. portHAS_NESTED_INTERRUPTS is set to 0)
553 #endif
554#endif
555
556#ifndef portCLEAR_INTERRUPT_MASK_FROM_ISR
557 #if ( portHAS_NESTED_INTERRUPTS == 1 )
558 #error portCLEAR_INTERRUPT_MASK_FROM_ISR must be defined for ports that support nested interrupts (i.e. portHAS_NESTED_INTERRUPTS is set to 1)
559 #else
560 #define portCLEAR_INTERRUPT_MASK_FROM_ISR( uxSavedStatusValue ) ( void ) ( uxSavedStatusValue )
561 #endif
562#else
563 #if ( portHAS_NESTED_INTERRUPTS == 0 )
564 #error portCLEAR_INTERRUPT_MASK_FROM_ISR must not be defined for ports that do not support nested interrupts (i.e. portHAS_NESTED_INTERRUPTS is set to 0)
565 #endif
566#endif
567
568#ifndef portCLEAN_UP_TCB
569 #define portCLEAN_UP_TCB( pxTCB ) ( void ) ( pxTCB )
570#endif
571
572#ifndef portPRE_TASK_DELETE_HOOK
573 #define portPRE_TASK_DELETE_HOOK( pvTaskToDelete, pxYieldPending )
574#endif
575
576#ifndef portSETUP_TCB
577 #define portSETUP_TCB( pxTCB ) ( void ) ( pxTCB )
578#endif
579
580#ifndef portTASK_SWITCH_HOOK
581 #define portTASK_SWITCH_HOOK( pxTCB ) ( void ) ( pxTCB )
582#endif
583
584#ifndef configQUEUE_REGISTRY_SIZE
585 #define configQUEUE_REGISTRY_SIZE 0U
586#endif
587
588#if ( configQUEUE_REGISTRY_SIZE < 1 )
589 #define vQueueAddToRegistry( xQueue, pcName )
590 #define vQueueUnregisterQueue( xQueue )
591 #define pcQueueGetName( xQueue )
592#endif
593
594#ifndef configUSE_MINI_LIST_ITEM
595 #define configUSE_MINI_LIST_ITEM 1
596#endif
597
598#ifndef portPOINTER_SIZE_TYPE
599 #define portPOINTER_SIZE_TYPE uint32_t
600#endif
601
602/* Remove any unused trace macros. */
603#ifndef traceSTART
604
605/* Used to perform any necessary initialisation - for example, open a file
606 * into which trace is to be written. */
607 #define traceSTART()
608#endif
609
610#ifndef traceEND
611
612/* Use to close a trace, for example close a file into which trace has been
613 * written. */
614 #define traceEND()
615#endif
616
617#ifndef traceTASK_SWITCHED_IN
618
619/* Called after a task has been selected to run. pxCurrentTCB holds a pointer
620 * to the task control block of the selected task. */
621 #define traceTASK_SWITCHED_IN()
622#endif
623
624#ifndef traceINCREASE_TICK_COUNT
625
626/* Called before stepping the tick count after waking from tickless idle
627 * sleep. */
628 #define traceINCREASE_TICK_COUNT( x )
629#endif
630
631#ifndef traceLOW_POWER_IDLE_BEGIN
632 /* Called immediately before entering tickless idle. */
633 #define traceLOW_POWER_IDLE_BEGIN()
634#endif
635
636#ifndef traceLOW_POWER_IDLE_END
637 /* Called when returning to the Idle task after a tickless idle. */
638 #define traceLOW_POWER_IDLE_END()
639#endif
640
641#ifndef traceTASK_SWITCHED_OUT
642
643/* Called before a task has been selected to run. pxCurrentTCB holds a pointer
644 * to the task control block of the task being switched out. */
645 #define traceTASK_SWITCHED_OUT()
646#endif
647
648#ifndef traceTASK_PRIORITY_INHERIT
649
650/* Called when a task attempts to take a mutex that is already held by a
651 * lower priority task. pxTCBOfMutexHolder is a pointer to the TCB of the task
652 * that holds the mutex. uxInheritedPriority is the priority the mutex holder
653 * will inherit (the priority of the task that is attempting to obtain the
654 * muted. */
655 #define traceTASK_PRIORITY_INHERIT( pxTCBOfMutexHolder, uxInheritedPriority )
656#endif
657
658#ifndef traceTASK_PRIORITY_DISINHERIT
659
660/* Called when a task releases a mutex, the holding of which had resulted in
661 * the task inheriting the priority of a higher priority task.
662 * pxTCBOfMutexHolder is a pointer to the TCB of the task that is releasing the
663 * mutex. uxOriginalPriority is the task's configured (base) priority. */
664 #define traceTASK_PRIORITY_DISINHERIT( pxTCBOfMutexHolder, uxOriginalPriority )
665#endif
666
667#ifndef traceBLOCKING_ON_QUEUE_RECEIVE
668
669/* Task is about to block because it cannot read from a
670 * queue/mutex/semaphore. pxQueue is a pointer to the queue/mutex/semaphore
671 * upon which the read was attempted. pxCurrentTCB points to the TCB of the
672 * task that attempted the read. */
673 #define traceBLOCKING_ON_QUEUE_RECEIVE( pxQueue )
674#endif
675
676#ifndef traceBLOCKING_ON_QUEUE_PEEK
677
678/* Task is about to block because it cannot read from a
679 * queue/mutex/semaphore. pxQueue is a pointer to the queue/mutex/semaphore
680 * upon which the read was attempted. pxCurrentTCB points to the TCB of the
681 * task that attempted the read. */
682 #define traceBLOCKING_ON_QUEUE_PEEK( pxQueue )
683#endif
684
685#ifndef traceBLOCKING_ON_QUEUE_SEND
686
687/* Task is about to block because it cannot write to a
688 * queue/mutex/semaphore. pxQueue is a pointer to the queue/mutex/semaphore
689 * upon which the write was attempted. pxCurrentTCB points to the TCB of the
690 * task that attempted the write. */
691 #define traceBLOCKING_ON_QUEUE_SEND( pxQueue )
692#endif
693
694#ifndef configCHECK_FOR_STACK_OVERFLOW
695 #define configCHECK_FOR_STACK_OVERFLOW 0
696#endif
697
698#ifndef configRECORD_STACK_HIGH_ADDRESS
699 #define configRECORD_STACK_HIGH_ADDRESS 0
700#endif
701
702#ifndef configINCLUDE_FREERTOS_TASK_C_ADDITIONS_H
703 #define configINCLUDE_FREERTOS_TASK_C_ADDITIONS_H 0
704#endif
705
706/* The following event macros are embedded in the kernel API calls. */
707
708#ifndef traceMOVED_TASK_TO_READY_STATE
709 #define traceMOVED_TASK_TO_READY_STATE( pxTCB )
710#endif
711
712#ifndef tracePOST_MOVED_TASK_TO_READY_STATE
713 #define tracePOST_MOVED_TASK_TO_READY_STATE( pxTCB )
714#endif
715
716#ifndef traceMOVED_TASK_TO_DELAYED_LIST
717 #define traceMOVED_TASK_TO_DELAYED_LIST()
718#endif
719
720#ifndef traceMOVED_TASK_TO_OVERFLOW_DELAYED_LIST
721 #define traceMOVED_TASK_TO_OVERFLOW_DELAYED_LIST()
722#endif
723
724#ifndef traceQUEUE_CREATE
725 #define traceQUEUE_CREATE( pxNewQueue )
726#endif
727
728#ifndef traceQUEUE_CREATE_FAILED
729 #define traceQUEUE_CREATE_FAILED( ucQueueType )
730#endif
731
732#ifndef traceCREATE_MUTEX
733 #define traceCREATE_MUTEX( pxNewQueue )
734#endif
735
736#ifndef traceCREATE_MUTEX_FAILED
737 #define traceCREATE_MUTEX_FAILED()
738#endif
739
740#ifndef traceGIVE_MUTEX_RECURSIVE
741 #define traceGIVE_MUTEX_RECURSIVE( pxMutex )
742#endif
743
744#ifndef traceGIVE_MUTEX_RECURSIVE_FAILED
745 #define traceGIVE_MUTEX_RECURSIVE_FAILED( pxMutex )
746#endif
747
748#ifndef traceTAKE_MUTEX_RECURSIVE
749 #define traceTAKE_MUTEX_RECURSIVE( pxMutex )
750#endif
751
752#ifndef traceTAKE_MUTEX_RECURSIVE_FAILED
753 #define traceTAKE_MUTEX_RECURSIVE_FAILED( pxMutex )
754#endif
755
756#ifndef traceCREATE_COUNTING_SEMAPHORE
757 #define traceCREATE_COUNTING_SEMAPHORE()
758#endif
759
760#ifndef traceCREATE_COUNTING_SEMAPHORE_FAILED
761 #define traceCREATE_COUNTING_SEMAPHORE_FAILED()
762#endif
763
764#ifndef traceQUEUE_SET_SEND
765 #define traceQUEUE_SET_SEND traceQUEUE_SEND
766#endif
767
768#ifndef traceQUEUE_SEND
769 #define traceQUEUE_SEND( pxQueue )
770#endif
771
772#ifndef traceQUEUE_SEND_FAILED
773 #define traceQUEUE_SEND_FAILED( pxQueue )
774#endif
775
776#ifndef traceQUEUE_RECEIVE
777 #define traceQUEUE_RECEIVE( pxQueue )
778#endif
779
780#ifndef traceQUEUE_PEEK
781 #define traceQUEUE_PEEK( pxQueue )
782#endif
783
784#ifndef traceQUEUE_PEEK_FAILED
785 #define traceQUEUE_PEEK_FAILED( pxQueue )
786#endif
787
788#ifndef traceQUEUE_PEEK_FROM_ISR
789 #define traceQUEUE_PEEK_FROM_ISR( pxQueue )
790#endif
791
792#ifndef traceQUEUE_RECEIVE_FAILED
793 #define traceQUEUE_RECEIVE_FAILED( pxQueue )
794#endif
795
796#ifndef traceQUEUE_SEND_FROM_ISR
797 #define traceQUEUE_SEND_FROM_ISR( pxQueue )
798#endif
799
800#ifndef traceQUEUE_SEND_FROM_ISR_FAILED
801 #define traceQUEUE_SEND_FROM_ISR_FAILED( pxQueue )
802#endif
803
804#ifndef traceQUEUE_RECEIVE_FROM_ISR
805 #define traceQUEUE_RECEIVE_FROM_ISR( pxQueue )
806#endif
807
808#ifndef traceQUEUE_RECEIVE_FROM_ISR_FAILED
809 #define traceQUEUE_RECEIVE_FROM_ISR_FAILED( pxQueue )
810#endif
811
812#ifndef traceQUEUE_PEEK_FROM_ISR_FAILED
813 #define traceQUEUE_PEEK_FROM_ISR_FAILED( pxQueue )
814#endif
815
816#ifndef traceQUEUE_DELETE
817 #define traceQUEUE_DELETE( pxQueue )
818#endif
819
820#ifndef traceTASK_CREATE
821 #define traceTASK_CREATE( pxNewTCB )
822#endif
823
824#ifndef traceTASK_CREATE_FAILED
825 #define traceTASK_CREATE_FAILED()
826#endif
827
828#ifndef traceTASK_DELETE
829 #define traceTASK_DELETE( pxTaskToDelete )
830#endif
831
832#ifndef traceTASK_DELAY_UNTIL
833 #define traceTASK_DELAY_UNTIL( x )
834#endif
835
836#ifndef traceTASK_DELAY
837 #define traceTASK_DELAY()
838#endif
839
840#ifndef traceTASK_PRIORITY_SET
841 #define traceTASK_PRIORITY_SET( pxTask, uxNewPriority )
842#endif
843
844#ifndef traceTASK_SUSPEND
845 #define traceTASK_SUSPEND( pxTaskToSuspend )
846#endif
847
848#ifndef traceTASK_RESUME
849 #define traceTASK_RESUME( pxTaskToResume )
850#endif
851
852#ifndef traceTASK_RESUME_FROM_ISR
853 #define traceTASK_RESUME_FROM_ISR( pxTaskToResume )
854#endif
855
856#ifndef traceTASK_INCREMENT_TICK
857 #define traceTASK_INCREMENT_TICK( xTickCount )
858#endif
859
860#ifndef traceTIMER_CREATE
861 #define traceTIMER_CREATE( pxNewTimer )
862#endif
863
864#ifndef traceTIMER_CREATE_FAILED
865 #define traceTIMER_CREATE_FAILED()
866#endif
867
868#ifndef traceTIMER_COMMAND_SEND
869 #define traceTIMER_COMMAND_SEND( xTimer, xMessageID, xMessageValueValue, xReturn )
870#endif
871
872#ifndef traceTIMER_EXPIRED
873 #define traceTIMER_EXPIRED( pxTimer )
874#endif
875
876#ifndef traceTIMER_COMMAND_RECEIVED
877 #define traceTIMER_COMMAND_RECEIVED( pxTimer, xMessageID, xMessageValue )
878#endif
879
880#ifndef traceMALLOC
881 #define traceMALLOC( pvAddress, uiSize )
882#endif
883
884#ifndef traceFREE
885 #define traceFREE( pvAddress, uiSize )
886#endif
887
888#ifndef traceEVENT_GROUP_CREATE
889 #define traceEVENT_GROUP_CREATE( xEventGroup )
890#endif
891
892#ifndef traceEVENT_GROUP_CREATE_FAILED
893 #define traceEVENT_GROUP_CREATE_FAILED()
894#endif
895
896#ifndef traceEVENT_GROUP_SYNC_BLOCK
897 #define traceEVENT_GROUP_SYNC_BLOCK( xEventGroup, uxBitsToSet, uxBitsToWaitFor )
898#endif
899
900#ifndef traceEVENT_GROUP_SYNC_END
901 #define traceEVENT_GROUP_SYNC_END( xEventGroup, uxBitsToSet, uxBitsToWaitFor, xTimeoutOccurred ) ( void ) ( xTimeoutOccurred )
902#endif
903
904#ifndef traceEVENT_GROUP_WAIT_BITS_BLOCK
905 #define traceEVENT_GROUP_WAIT_BITS_BLOCK( xEventGroup, uxBitsToWaitFor )
906#endif
907
908#ifndef traceEVENT_GROUP_WAIT_BITS_END
909 #define traceEVENT_GROUP_WAIT_BITS_END( xEventGroup, uxBitsToWaitFor, xTimeoutOccurred ) ( void ) ( xTimeoutOccurred )
910#endif
911
912#ifndef traceEVENT_GROUP_CLEAR_BITS
913 #define traceEVENT_GROUP_CLEAR_BITS( xEventGroup, uxBitsToClear )
914#endif
915
916#ifndef traceEVENT_GROUP_CLEAR_BITS_FROM_ISR
917 #define traceEVENT_GROUP_CLEAR_BITS_FROM_ISR( xEventGroup, uxBitsToClear )
918#endif
919
920#ifndef traceEVENT_GROUP_SET_BITS
921 #define traceEVENT_GROUP_SET_BITS( xEventGroup, uxBitsToSet )
922#endif
923
924#ifndef traceEVENT_GROUP_SET_BITS_FROM_ISR
925 #define traceEVENT_GROUP_SET_BITS_FROM_ISR( xEventGroup, uxBitsToSet )
926#endif
927
928#ifndef traceEVENT_GROUP_DELETE
929 #define traceEVENT_GROUP_DELETE( xEventGroup )
930#endif
931
932#ifndef tracePEND_FUNC_CALL
933 #define tracePEND_FUNC_CALL( xFunctionToPend, pvParameter1, ulParameter2, ret )
934#endif
935
936#ifndef tracePEND_FUNC_CALL_FROM_ISR
937 #define tracePEND_FUNC_CALL_FROM_ISR( xFunctionToPend, pvParameter1, ulParameter2, ret )
938#endif
939
940#ifndef traceQUEUE_REGISTRY_ADD
941 #define traceQUEUE_REGISTRY_ADD( xQueue, pcQueueName )
942#endif
943
944#ifndef traceTASK_NOTIFY_TAKE_BLOCK
945 #define traceTASK_NOTIFY_TAKE_BLOCK( uxIndexToWait )
946#endif
947
948#ifndef traceTASK_NOTIFY_TAKE
949 #define traceTASK_NOTIFY_TAKE( uxIndexToWait )
950#endif
951
952#ifndef traceTASK_NOTIFY_WAIT_BLOCK
953 #define traceTASK_NOTIFY_WAIT_BLOCK( uxIndexToWait )
954#endif
955
956#ifndef traceTASK_NOTIFY_WAIT
957 #define traceTASK_NOTIFY_WAIT( uxIndexToWait )
958#endif
959
960#ifndef traceTASK_NOTIFY
961 #define traceTASK_NOTIFY( uxIndexToNotify )
962#endif
963
964#ifndef traceTASK_NOTIFY_FROM_ISR
965 #define traceTASK_NOTIFY_FROM_ISR( uxIndexToNotify )
966#endif
967
968#ifndef traceTASK_NOTIFY_GIVE_FROM_ISR
969 #define traceTASK_NOTIFY_GIVE_FROM_ISR( uxIndexToNotify )
970#endif
971
972#ifndef traceISR_EXIT_TO_SCHEDULER
973 #define traceISR_EXIT_TO_SCHEDULER()
974#endif
975
976#ifndef traceISR_EXIT
977 #define traceISR_EXIT()
978#endif
979
980#ifndef traceISR_ENTER
981 #define traceISR_ENTER()
982#endif
983
984#ifndef traceSTREAM_BUFFER_CREATE_FAILED
985 #define traceSTREAM_BUFFER_CREATE_FAILED( xStreamBufferType )
986#endif
987
988#ifndef traceSTREAM_BUFFER_CREATE_STATIC_FAILED
989 #define traceSTREAM_BUFFER_CREATE_STATIC_FAILED( xReturn, xStreamBufferType )
990#endif
991
992#ifndef traceSTREAM_BUFFER_CREATE
993 #define traceSTREAM_BUFFER_CREATE( pxStreamBuffer, xStreamBufferType )
994#endif
995
996#ifndef traceSTREAM_BUFFER_DELETE
997 #define traceSTREAM_BUFFER_DELETE( xStreamBuffer )
998#endif
999
1000#ifndef traceSTREAM_BUFFER_RESET
1001 #define traceSTREAM_BUFFER_RESET( xStreamBuffer )
1002#endif
1003
1004#ifndef traceSTREAM_BUFFER_RESET_FROM_ISR
1005 #define traceSTREAM_BUFFER_RESET_FROM_ISR( xStreamBuffer )
1006#endif
1007
1008#ifndef traceBLOCKING_ON_STREAM_BUFFER_SEND
1009 #define traceBLOCKING_ON_STREAM_BUFFER_SEND( xStreamBuffer )
1010#endif
1011
1012#ifndef traceSTREAM_BUFFER_SEND
1013 #define traceSTREAM_BUFFER_SEND( xStreamBuffer, xBytesSent )
1014#endif
1015
1016#ifndef traceSTREAM_BUFFER_SEND_FAILED
1017 #define traceSTREAM_BUFFER_SEND_FAILED( xStreamBuffer )
1018#endif
1019
1020#ifndef traceSTREAM_BUFFER_SEND_FROM_ISR
1021 #define traceSTREAM_BUFFER_SEND_FROM_ISR( xStreamBuffer, xBytesSent )
1022#endif
1023
1024#ifndef traceBLOCKING_ON_STREAM_BUFFER_RECEIVE
1025 #define traceBLOCKING_ON_STREAM_BUFFER_RECEIVE( xStreamBuffer )
1026#endif
1027
1028#ifndef traceSTREAM_BUFFER_RECEIVE
1029 #define traceSTREAM_BUFFER_RECEIVE( xStreamBuffer, xReceivedLength )
1030#endif
1031
1032#ifndef traceSTREAM_BUFFER_RECEIVE_FAILED
1033 #define traceSTREAM_BUFFER_RECEIVE_FAILED( xStreamBuffer )
1034#endif
1035
1036#ifndef traceSTREAM_BUFFER_RECEIVE_FROM_ISR
1037 #define traceSTREAM_BUFFER_RECEIVE_FROM_ISR( xStreamBuffer, xReceivedLength )
1038#endif
1039
1040#ifndef traceENTER_xEventGroupCreateStatic
1041 #define traceENTER_xEventGroupCreateStatic( pxEventGroupBuffer )
1042#endif
1043
1044#ifndef traceRETURN_xEventGroupCreateStatic
1045 #define traceRETURN_xEventGroupCreateStatic( pxEventBits )
1046#endif
1047
1048#ifndef traceENTER_xEventGroupCreate
1049 #define traceENTER_xEventGroupCreate()
1050#endif
1051
1052#ifndef traceRETURN_xEventGroupCreate
1053 #define traceRETURN_xEventGroupCreate( pxEventBits )
1054#endif
1055
1056#ifndef traceENTER_xEventGroupSync
1057 #define traceENTER_xEventGroupSync( xEventGroup, uxBitsToSet, uxBitsToWaitFor, xTicksToWait )
1058#endif
1059
1060#ifndef traceRETURN_xEventGroupSync
1061 #define traceRETURN_xEventGroupSync( uxReturn )
1062#endif
1063
1064#ifndef traceENTER_xEventGroupWaitBits
1065 #define traceENTER_xEventGroupWaitBits( xEventGroup, uxBitsToWaitFor, xClearOnExit, xWaitForAllBits, xTicksToWait )
1066#endif
1067
1068#ifndef traceRETURN_xEventGroupWaitBits
1069 #define traceRETURN_xEventGroupWaitBits( uxReturn )
1070#endif
1071
1072#ifndef traceENTER_xEventGroupClearBits
1073 #define traceENTER_xEventGroupClearBits( xEventGroup, uxBitsToClear )
1074#endif
1075
1076#ifndef traceRETURN_xEventGroupClearBits
1077 #define traceRETURN_xEventGroupClearBits( uxReturn )
1078#endif
1079
1080#ifndef traceENTER_xEventGroupClearBitsFromISR
1081 #define traceENTER_xEventGroupClearBitsFromISR( xEventGroup, uxBitsToClear )
1082#endif
1083
1084#ifndef traceRETURN_xEventGroupClearBitsFromISR
1085 #define traceRETURN_xEventGroupClearBitsFromISR( xReturn )
1086#endif
1087
1088#ifndef traceENTER_xEventGroupGetBitsFromISR
1089 #define traceENTER_xEventGroupGetBitsFromISR( xEventGroup )
1090#endif
1091
1092#ifndef traceRETURN_xEventGroupGetBitsFromISR
1093 #define traceRETURN_xEventGroupGetBitsFromISR( uxReturn )
1094#endif
1095
1096#ifndef traceENTER_xEventGroupSetBits
1097 #define traceENTER_xEventGroupSetBits( xEventGroup, uxBitsToSet )
1098#endif
1099
1100#ifndef traceRETURN_xEventGroupSetBits
1101 #define traceRETURN_xEventGroupSetBits( uxEventBits )
1102#endif
1103
1104#ifndef traceENTER_vEventGroupDelete
1105 #define traceENTER_vEventGroupDelete( xEventGroup )
1106#endif
1107
1108#ifndef traceRETURN_vEventGroupDelete
1109 #define traceRETURN_vEventGroupDelete()
1110#endif
1111
1112#ifndef traceENTER_xEventGroupGetStaticBuffer
1113 #define traceENTER_xEventGroupGetStaticBuffer( xEventGroup, ppxEventGroupBuffer )
1114#endif
1115
1116#ifndef traceRETURN_xEventGroupGetStaticBuffer
1117 #define traceRETURN_xEventGroupGetStaticBuffer( xReturn )
1118#endif
1119
1120#ifndef traceENTER_vEventGroupSetBitsCallback
1121 #define traceENTER_vEventGroupSetBitsCallback( pvEventGroup, ulBitsToSet )
1122#endif
1123
1124#ifndef traceRETURN_vEventGroupSetBitsCallback
1125 #define traceRETURN_vEventGroupSetBitsCallback()
1126#endif
1127
1128#ifndef traceENTER_vEventGroupClearBitsCallback
1129 #define traceENTER_vEventGroupClearBitsCallback( pvEventGroup, ulBitsToClear )
1130#endif
1131
1132#ifndef traceRETURN_vEventGroupClearBitsCallback
1133 #define traceRETURN_vEventGroupClearBitsCallback()
1134#endif
1135
1136#ifndef traceENTER_xEventGroupSetBitsFromISR
1137 #define traceENTER_xEventGroupSetBitsFromISR( xEventGroup, uxBitsToSet, pxHigherPriorityTaskWoken )
1138#endif
1139
1140#ifndef traceRETURN_xEventGroupSetBitsFromISR
1141 #define traceRETURN_xEventGroupSetBitsFromISR( xReturn )
1142#endif
1143
1144#ifndef traceENTER_uxEventGroupGetNumber
1145 #define traceENTER_uxEventGroupGetNumber( xEventGroup )
1146#endif
1147
1148#ifndef traceRETURN_uxEventGroupGetNumber
1149 #define traceRETURN_uxEventGroupGetNumber( xReturn )
1150#endif
1151
1152#ifndef traceENTER_vEventGroupSetNumber
1153 #define traceENTER_vEventGroupSetNumber( xEventGroup, uxEventGroupNumber )
1154#endif
1155
1156#ifndef traceRETURN_vEventGroupSetNumber
1157 #define traceRETURN_vEventGroupSetNumber()
1158#endif
1159
1160#ifndef traceENTER_xQueueGenericReset
1161 #define traceENTER_xQueueGenericReset( xQueue, xNewQueue )
1162#endif
1163
1164#ifndef traceRETURN_xQueueGenericReset
1165 #define traceRETURN_xQueueGenericReset( xReturn )
1166#endif
1167
1168#ifndef traceENTER_xQueueGenericCreateStatic
1169 #define traceENTER_xQueueGenericCreateStatic( uxQueueLength, uxItemSize, pucQueueStorage, pxStaticQueue, ucQueueType )
1170#endif
1171
1172#ifndef traceRETURN_xQueueGenericCreateStatic
1173 #define traceRETURN_xQueueGenericCreateStatic( pxNewQueue )
1174#endif
1175
1176#ifndef traceENTER_xQueueGenericGetStaticBuffers
1177 #define traceENTER_xQueueGenericGetStaticBuffers( xQueue, ppucQueueStorage, ppxStaticQueue )
1178#endif
1179
1180#ifndef traceRETURN_xQueueGenericGetStaticBuffers
1181 #define traceRETURN_xQueueGenericGetStaticBuffers( xReturn )
1182#endif
1183
1184#ifndef traceENTER_xQueueGenericCreate
1185 #define traceENTER_xQueueGenericCreate( uxQueueLength, uxItemSize, ucQueueType )
1186#endif
1187
1188#ifndef traceRETURN_xQueueGenericCreate
1189 #define traceRETURN_xQueueGenericCreate( pxNewQueue )
1190#endif
1191
1192#ifndef traceENTER_xQueueCreateMutex
1193 #define traceENTER_xQueueCreateMutex( ucQueueType )
1194#endif
1195
1196#ifndef traceRETURN_xQueueCreateMutex
1197 #define traceRETURN_xQueueCreateMutex( xNewQueue )
1198#endif
1199
1200#ifndef traceENTER_xQueueCreateMutexStatic
1201 #define traceENTER_xQueueCreateMutexStatic( ucQueueType, pxStaticQueue )
1202#endif
1203
1204#ifndef traceRETURN_xQueueCreateMutexStatic
1205 #define traceRETURN_xQueueCreateMutexStatic( xNewQueue )
1206#endif
1207
1208#ifndef traceENTER_xQueueGetMutexHolder
1209 #define traceENTER_xQueueGetMutexHolder( xSemaphore )
1210#endif
1211
1212#ifndef traceRETURN_xQueueGetMutexHolder
1213 #define traceRETURN_xQueueGetMutexHolder( pxReturn )
1214#endif
1215
1216#ifndef traceENTER_xQueueGetMutexHolderFromISR
1217 #define traceENTER_xQueueGetMutexHolderFromISR( xSemaphore )
1218#endif
1219
1220#ifndef traceRETURN_xQueueGetMutexHolderFromISR
1221 #define traceRETURN_xQueueGetMutexHolderFromISR( pxReturn )
1222#endif
1223
1224#ifndef traceENTER_xQueueGiveMutexRecursive
1225 #define traceENTER_xQueueGiveMutexRecursive( xMutex )
1226#endif
1227
1228#ifndef traceRETURN_xQueueGiveMutexRecursive
1229 #define traceRETURN_xQueueGiveMutexRecursive( xReturn )
1230#endif
1231
1232#ifndef traceENTER_xQueueTakeMutexRecursive
1233 #define traceENTER_xQueueTakeMutexRecursive( xMutex, xTicksToWait )
1234#endif
1235
1236#ifndef traceRETURN_xQueueTakeMutexRecursive
1237 #define traceRETURN_xQueueTakeMutexRecursive( xReturn )
1238#endif
1239
1240#ifndef traceENTER_xQueueCreateCountingSemaphoreStatic
1241 #define traceENTER_xQueueCreateCountingSemaphoreStatic( uxMaxCount, uxInitialCount, pxStaticQueue )
1242#endif
1243
1244#ifndef traceRETURN_xQueueCreateCountingSemaphoreStatic
1245 #define traceRETURN_xQueueCreateCountingSemaphoreStatic( xHandle )
1246#endif
1247
1248#ifndef traceENTER_xQueueCreateCountingSemaphore
1249 #define traceENTER_xQueueCreateCountingSemaphore( uxMaxCount, uxInitialCount )
1250#endif
1251
1252#ifndef traceRETURN_xQueueCreateCountingSemaphore
1253 #define traceRETURN_xQueueCreateCountingSemaphore( xHandle )
1254#endif
1255
1256#ifndef traceENTER_xQueueGenericSend
1257 #define traceENTER_xQueueGenericSend( xQueue, pvItemToQueue, xTicksToWait, xCopyPosition )
1258#endif
1259
1260#ifndef traceRETURN_xQueueGenericSend
1261 #define traceRETURN_xQueueGenericSend( xReturn )
1262#endif
1263
1264#ifndef traceENTER_xQueueGenericSendFromISR
1265 #define traceENTER_xQueueGenericSendFromISR( xQueue, pvItemToQueue, pxHigherPriorityTaskWoken, xCopyPosition )
1266#endif
1267
1268#ifndef traceRETURN_xQueueGenericSendFromISR
1269 #define traceRETURN_xQueueGenericSendFromISR( xReturn )
1270#endif
1271
1272#ifndef traceENTER_xQueueGiveFromISR
1273 #define traceENTER_xQueueGiveFromISR( xQueue, pxHigherPriorityTaskWoken )
1274#endif
1275
1276#ifndef traceRETURN_xQueueGiveFromISR
1277 #define traceRETURN_xQueueGiveFromISR( xReturn )
1278#endif
1279
1280#ifndef traceENTER_xQueueReceive
1281 #define traceENTER_xQueueReceive( xQueue, pvBuffer, xTicksToWait )
1282#endif
1283
1284#ifndef traceRETURN_xQueueReceive
1285 #define traceRETURN_xQueueReceive( xReturn )
1286#endif
1287
1288#ifndef traceENTER_xQueueSemaphoreTake
1289 #define traceENTER_xQueueSemaphoreTake( xQueue, xTicksToWait )
1290#endif
1291
1292#ifndef traceRETURN_xQueueSemaphoreTake
1293 #define traceRETURN_xQueueSemaphoreTake( xReturn )
1294#endif
1295
1296#ifndef traceENTER_xQueuePeek
1297 #define traceENTER_xQueuePeek( xQueue, pvBuffer, xTicksToWait )
1298#endif
1299
1300#ifndef traceRETURN_xQueuePeek
1301 #define traceRETURN_xQueuePeek( xReturn )
1302#endif
1303
1304#ifndef traceENTER_xQueueReceiveFromISR
1305 #define traceENTER_xQueueReceiveFromISR( xQueue, pvBuffer, pxHigherPriorityTaskWoken )
1306#endif
1307
1308#ifndef traceRETURN_xQueueReceiveFromISR
1309 #define traceRETURN_xQueueReceiveFromISR( xReturn )
1310#endif
1311
1312#ifndef traceENTER_xQueuePeekFromISR
1313 #define traceENTER_xQueuePeekFromISR( xQueue, pvBuffer )
1314#endif
1315
1316#ifndef traceRETURN_xQueuePeekFromISR
1317 #define traceRETURN_xQueuePeekFromISR( xReturn )
1318#endif
1319
1320#ifndef traceENTER_uxQueueMessagesWaiting
1321 #define traceENTER_uxQueueMessagesWaiting( xQueue )
1322#endif
1323
1324#ifndef traceRETURN_uxQueueMessagesWaiting
1325 #define traceRETURN_uxQueueMessagesWaiting( uxReturn )
1326#endif
1327
1328#ifndef traceENTER_uxQueueSpacesAvailable
1329 #define traceENTER_uxQueueSpacesAvailable( xQueue )
1330#endif
1331
1332#ifndef traceRETURN_uxQueueSpacesAvailable
1333 #define traceRETURN_uxQueueSpacesAvailable( uxReturn )
1334#endif
1335
1336#ifndef traceENTER_uxQueueMessagesWaitingFromISR
1337 #define traceENTER_uxQueueMessagesWaitingFromISR( xQueue )
1338#endif
1339
1340#ifndef traceRETURN_uxQueueMessagesWaitingFromISR
1341 #define traceRETURN_uxQueueMessagesWaitingFromISR( uxReturn )
1342#endif
1343
1344#ifndef traceENTER_vQueueDelete
1345 #define traceENTER_vQueueDelete( xQueue )
1346#endif
1347
1348#ifndef traceRETURN_vQueueDelete
1349 #define traceRETURN_vQueueDelete()
1350#endif
1351
1352#ifndef traceENTER_uxQueueGetQueueNumber
1353 #define traceENTER_uxQueueGetQueueNumber( xQueue )
1354#endif
1355
1356#ifndef traceRETURN_uxQueueGetQueueNumber
1357 #define traceRETURN_uxQueueGetQueueNumber( uxQueueNumber )
1358#endif
1359
1360#ifndef traceENTER_vQueueSetQueueNumber
1361 #define traceENTER_vQueueSetQueueNumber( xQueue, uxQueueNumber )
1362#endif
1363
1364#ifndef traceRETURN_vQueueSetQueueNumber
1365 #define traceRETURN_vQueueSetQueueNumber()
1366#endif
1367
1368#ifndef traceENTER_ucQueueGetQueueType
1369 #define traceENTER_ucQueueGetQueueType( xQueue )
1370#endif
1371
1372#ifndef traceRETURN_ucQueueGetQueueType
1373 #define traceRETURN_ucQueueGetQueueType( ucQueueType )
1374#endif
1375
1376#ifndef traceENTER_uxQueueGetQueueItemSize
1377 #define traceENTER_uxQueueGetQueueItemSize( xQueue )
1378#endif
1379
1380#ifndef traceRETURN_uxQueueGetQueueItemSize
1381 #define traceRETURN_uxQueueGetQueueItemSize( uxItemSize )
1382#endif
1383
1384#ifndef traceENTER_uxQueueGetQueueLength
1385 #define traceENTER_uxQueueGetQueueLength( xQueue )
1386#endif
1387
1388#ifndef traceRETURN_uxQueueGetQueueLength
1389 #define traceRETURN_uxQueueGetQueueLength( uxLength )
1390#endif
1391
1392#ifndef traceENTER_xQueueIsQueueEmptyFromISR
1393 #define traceENTER_xQueueIsQueueEmptyFromISR( xQueue )
1394#endif
1395
1396#ifndef traceRETURN_xQueueIsQueueEmptyFromISR
1397 #define traceRETURN_xQueueIsQueueEmptyFromISR( xReturn )
1398#endif
1399
1400#ifndef traceENTER_xQueueIsQueueFullFromISR
1401 #define traceENTER_xQueueIsQueueFullFromISR( xQueue )
1402#endif
1403
1404#ifndef traceRETURN_xQueueIsQueueFullFromISR
1405 #define traceRETURN_xQueueIsQueueFullFromISR( xReturn )
1406#endif
1407
1408#ifndef traceENTER_xQueueCRSend
1409 #define traceENTER_xQueueCRSend( xQueue, pvItemToQueue, xTicksToWait )
1410#endif
1411
1412#ifndef traceRETURN_xQueueCRSend
1413 #define traceRETURN_xQueueCRSend( xReturn )
1414#endif
1415
1416#ifndef traceENTER_xQueueCRReceive
1417 #define traceENTER_xQueueCRReceive( xQueue, pvBuffer, xTicksToWait )
1418#endif
1419
1420#ifndef traceRETURN_xQueueCRReceive
1421 #define traceRETURN_xQueueCRReceive( xReturn )
1422#endif
1423
1424#ifndef traceENTER_xQueueCRSendFromISR
1425 #define traceENTER_xQueueCRSendFromISR( xQueue, pvItemToQueue, xCoRoutinePreviouslyWoken )
1426#endif
1427
1428#ifndef traceRETURN_xQueueCRSendFromISR
1429 #define traceRETURN_xQueueCRSendFromISR( xCoRoutinePreviouslyWoken )
1430#endif
1431
1432#ifndef traceENTER_xQueueCRReceiveFromISR
1433 #define traceENTER_xQueueCRReceiveFromISR( xQueue, pvBuffer, pxCoRoutineWoken )
1434#endif
1435
1436#ifndef traceRETURN_xQueueCRReceiveFromISR
1437 #define traceRETURN_xQueueCRReceiveFromISR( xReturn )
1438#endif
1439
1440#ifndef traceENTER_vQueueAddToRegistry
1441 #define traceENTER_vQueueAddToRegistry( xQueue, pcQueueName )
1442#endif
1443
1444#ifndef traceRETURN_vQueueAddToRegistry
1445 #define traceRETURN_vQueueAddToRegistry()
1446#endif
1447
1448#ifndef traceENTER_pcQueueGetName
1449 #define traceENTER_pcQueueGetName( xQueue )
1450#endif
1451
1452#ifndef traceRETURN_pcQueueGetName
1453 #define traceRETURN_pcQueueGetName( pcReturn )
1454#endif
1455
1456#ifndef traceENTER_vQueueUnregisterQueue
1457 #define traceENTER_vQueueUnregisterQueue( xQueue )
1458#endif
1459
1460#ifndef traceRETURN_vQueueUnregisterQueue
1461 #define traceRETURN_vQueueUnregisterQueue()
1462#endif
1463
1464#ifndef traceENTER_vQueueWaitForMessageRestricted
1465 #define traceENTER_vQueueWaitForMessageRestricted( xQueue, xTicksToWait, xWaitIndefinitely )
1466#endif
1467
1468#ifndef traceRETURN_vQueueWaitForMessageRestricted
1469 #define traceRETURN_vQueueWaitForMessageRestricted()
1470#endif
1471
1472#ifndef traceENTER_xQueueCreateSet
1473 #define traceENTER_xQueueCreateSet( uxEventQueueLength )
1474#endif
1475
1476#ifndef traceRETURN_xQueueCreateSet
1477 #define traceRETURN_xQueueCreateSet( pxQueue )
1478#endif
1479
1480#ifndef traceENTER_xQueueAddToSet
1481 #define traceENTER_xQueueAddToSet( xQueueOrSemaphore, xQueueSet )
1482#endif
1483
1484#ifndef traceRETURN_xQueueAddToSet
1485 #define traceRETURN_xQueueAddToSet( xReturn )
1486#endif
1487
1488#ifndef traceENTER_xQueueRemoveFromSet
1489 #define traceENTER_xQueueRemoveFromSet( xQueueOrSemaphore, xQueueSet )
1490#endif
1491
1492#ifndef traceRETURN_xQueueRemoveFromSet
1493 #define traceRETURN_xQueueRemoveFromSet( xReturn )
1494#endif
1495
1496#ifndef traceENTER_xQueueSelectFromSet
1497 #define traceENTER_xQueueSelectFromSet( xQueueSet, xTicksToWait )
1498#endif
1499
1500#ifndef traceRETURN_xQueueSelectFromSet
1501 #define traceRETURN_xQueueSelectFromSet( xReturn )
1502#endif
1503
1504#ifndef traceENTER_xQueueSelectFromSetFromISR
1505 #define traceENTER_xQueueSelectFromSetFromISR( xQueueSet )
1506#endif
1507
1508#ifndef traceRETURN_xQueueSelectFromSetFromISR
1509 #define traceRETURN_xQueueSelectFromSetFromISR( xReturn )
1510#endif
1511
1512#ifndef traceENTER_xTimerCreateTimerTask
1513 #define traceENTER_xTimerCreateTimerTask()
1514#endif
1515
1516#ifndef traceRETURN_xTimerCreateTimerTask
1517 #define traceRETURN_xTimerCreateTimerTask( xReturn )
1518#endif
1519
1520#ifndef traceENTER_xTimerCreate
1521 #define traceENTER_xTimerCreate( pcTimerName, xTimerPeriodInTicks, xAutoReload, pvTimerID, pxCallbackFunction )
1522#endif
1523
1524#ifndef traceRETURN_xTimerCreate
1525 #define traceRETURN_xTimerCreate( pxNewTimer )
1526#endif
1527
1528#ifndef traceENTER_xTimerCreateStatic
1529 #define traceENTER_xTimerCreateStatic( pcTimerName, xTimerPeriodInTicks, xAutoReload, pvTimerID, pxCallbackFunction, pxTimerBuffer )
1530#endif
1531
1532#ifndef traceRETURN_xTimerCreateStatic
1533 #define traceRETURN_xTimerCreateStatic( pxNewTimer )
1534#endif
1535
1536#ifndef traceENTER_xTimerGenericCommandFromTask
1537 #define traceENTER_xTimerGenericCommandFromTask( xTimer, xCommandID, xOptionalValue, pxHigherPriorityTaskWoken, xTicksToWait )
1538#endif
1539
1540#ifndef traceRETURN_xTimerGenericCommandFromTask
1541 #define traceRETURN_xTimerGenericCommandFromTask( xReturn )
1542#endif
1543
1544#ifndef traceENTER_xTimerGenericCommandFromISR
1545 #define traceENTER_xTimerGenericCommandFromISR( xTimer, xCommandID, xOptionalValue, pxHigherPriorityTaskWoken, xTicksToWait )
1546#endif
1547
1548#ifndef traceRETURN_xTimerGenericCommandFromISR
1549 #define traceRETURN_xTimerGenericCommandFromISR( xReturn )
1550#endif
1551
1552#ifndef traceENTER_xTimerGetTimerDaemonTaskHandle
1553 #define traceENTER_xTimerGetTimerDaemonTaskHandle()
1554#endif
1555
1556#ifndef traceRETURN_xTimerGetTimerDaemonTaskHandle
1557 #define traceRETURN_xTimerGetTimerDaemonTaskHandle( xTimerTaskHandle )
1558#endif
1559
1560#ifndef traceENTER_xTimerGetPeriod
1561 #define traceENTER_xTimerGetPeriod( xTimer )
1562#endif
1563
1564#ifndef traceRETURN_xTimerGetPeriod
1565 #define traceRETURN_xTimerGetPeriod( xTimerPeriodInTicks )
1566#endif
1567
1568#ifndef traceENTER_vTimerSetReloadMode
1569 #define traceENTER_vTimerSetReloadMode( xTimer, xAutoReload )
1570#endif
1571
1572#ifndef traceRETURN_vTimerSetReloadMode
1573 #define traceRETURN_vTimerSetReloadMode()
1574#endif
1575
1576#ifndef traceENTER_xTimerGetReloadMode
1577 #define traceENTER_xTimerGetReloadMode( xTimer )
1578#endif
1579
1580#ifndef traceRETURN_xTimerGetReloadMode
1581 #define traceRETURN_xTimerGetReloadMode( xReturn )
1582#endif
1583
1584#ifndef traceENTER_uxTimerGetReloadMode
1585 #define traceENTER_uxTimerGetReloadMode( xTimer )
1586#endif
1587
1588#ifndef traceRETURN_uxTimerGetReloadMode
1589 #define traceRETURN_uxTimerGetReloadMode( uxReturn )
1590#endif
1591
1592#ifndef traceENTER_xTimerGetExpiryTime
1593 #define traceENTER_xTimerGetExpiryTime( xTimer )
1594#endif
1595
1596#ifndef traceRETURN_xTimerGetExpiryTime
1597 #define traceRETURN_xTimerGetExpiryTime( xReturn )
1598#endif
1599
1600#ifndef traceENTER_xTimerGetStaticBuffer
1601 #define traceENTER_xTimerGetStaticBuffer( xTimer, ppxTimerBuffer )
1602#endif
1603
1604#ifndef traceRETURN_xTimerGetStaticBuffer
1605 #define traceRETURN_xTimerGetStaticBuffer( xReturn )
1606#endif
1607
1608#ifndef traceENTER_pcTimerGetName
1609 #define traceENTER_pcTimerGetName( xTimer )
1610#endif
1611
1612#ifndef traceRETURN_pcTimerGetName
1613 #define traceRETURN_pcTimerGetName( pcTimerName )
1614#endif
1615
1616#ifndef traceENTER_xTimerIsTimerActive
1617 #define traceENTER_xTimerIsTimerActive( xTimer )
1618#endif
1619
1620#ifndef traceRETURN_xTimerIsTimerActive
1621 #define traceRETURN_xTimerIsTimerActive( xReturn )
1622#endif
1623
1624#ifndef traceENTER_pvTimerGetTimerID
1625 #define traceENTER_pvTimerGetTimerID( xTimer )
1626#endif
1627
1628#ifndef traceRETURN_pvTimerGetTimerID
1629 #define traceRETURN_pvTimerGetTimerID( pvReturn )
1630#endif
1631
1632#ifndef traceENTER_vTimerSetTimerID
1633 #define traceENTER_vTimerSetTimerID( xTimer, pvNewID )
1634#endif
1635
1636#ifndef traceRETURN_vTimerSetTimerID
1637 #define traceRETURN_vTimerSetTimerID()
1638#endif
1639
1640#ifndef traceENTER_xTimerPendFunctionCallFromISR
1641 #define traceENTER_xTimerPendFunctionCallFromISR( xFunctionToPend, pvParameter1, ulParameter2, pxHigherPriorityTaskWoken )
1642#endif
1643
1644#ifndef traceRETURN_xTimerPendFunctionCallFromISR
1645 #define traceRETURN_xTimerPendFunctionCallFromISR( xReturn )
1646#endif
1647
1648#ifndef traceENTER_xTimerPendFunctionCall
1649 #define traceENTER_xTimerPendFunctionCall( xFunctionToPend, pvParameter1, ulParameter2, xTicksToWait )
1650#endif
1651
1652#ifndef traceRETURN_xTimerPendFunctionCall
1653 #define traceRETURN_xTimerPendFunctionCall( xReturn )
1654#endif
1655
1656#ifndef traceENTER_uxTimerGetTimerNumber
1657 #define traceENTER_uxTimerGetTimerNumber( xTimer )
1658#endif
1659
1660#ifndef traceRETURN_uxTimerGetTimerNumber
1661 #define traceRETURN_uxTimerGetTimerNumber( uxTimerNumber )
1662#endif
1663
1664#ifndef traceENTER_vTimerSetTimerNumber
1665 #define traceENTER_vTimerSetTimerNumber( xTimer, uxTimerNumber )
1666#endif
1667
1668#ifndef traceRETURN_vTimerSetTimerNumber
1669 #define traceRETURN_vTimerSetTimerNumber()
1670#endif
1671
1672#ifndef traceENTER_xTaskCreateStatic
1673 #define traceENTER_xTaskCreateStatic( pxTaskCode, pcName, uxStackDepth, pvParameters, uxPriority, puxStackBuffer, pxTaskBuffer )
1674#endif
1675
1676#ifndef traceRETURN_xTaskCreateStatic
1677 #define traceRETURN_xTaskCreateStatic( xReturn )
1678#endif
1679
1680#ifndef traceENTER_xTaskCreateStaticAffinitySet
1681 #define traceENTER_xTaskCreateStaticAffinitySet( pxTaskCode, pcName, uxStackDepth, pvParameters, uxPriority, puxStackBuffer, pxTaskBuffer, uxCoreAffinityMask )
1682#endif
1683
1684#ifndef traceRETURN_xTaskCreateStaticAffinitySet
1685 #define traceRETURN_xTaskCreateStaticAffinitySet( xReturn )
1686#endif
1687
1688#ifndef traceENTER_xTaskCreateRestrictedStatic
1689 #define traceENTER_xTaskCreateRestrictedStatic( pxTaskDefinition, pxCreatedTask )
1690#endif
1691
1692#ifndef traceRETURN_xTaskCreateRestrictedStatic
1693 #define traceRETURN_xTaskCreateRestrictedStatic( xReturn )
1694#endif
1695
1696#ifndef traceENTER_xTaskCreateRestrictedStaticAffinitySet
1697 #define traceENTER_xTaskCreateRestrictedStaticAffinitySet( pxTaskDefinition, uxCoreAffinityMask, pxCreatedTask )
1698#endif
1699
1700#ifndef traceRETURN_xTaskCreateRestrictedStaticAffinitySet
1701 #define traceRETURN_xTaskCreateRestrictedStaticAffinitySet( xReturn )
1702#endif
1703
1704#ifndef traceENTER_xTaskCreateRestricted
1705 #define traceENTER_xTaskCreateRestricted( pxTaskDefinition, pxCreatedTask )
1706#endif
1707
1708#ifndef traceRETURN_xTaskCreateRestricted
1709 #define traceRETURN_xTaskCreateRestricted( xReturn )
1710#endif
1711
1712#ifndef traceENTER_xTaskCreateRestrictedAffinitySet
1713 #define traceENTER_xTaskCreateRestrictedAffinitySet( pxTaskDefinition, uxCoreAffinityMask, pxCreatedTask )
1714#endif
1715
1716#ifndef traceRETURN_xTaskCreateRestrictedAffinitySet
1717 #define traceRETURN_xTaskCreateRestrictedAffinitySet( xReturn )
1718#endif
1719
1720#ifndef traceENTER_xTaskCreate
1721 #define traceENTER_xTaskCreate( pxTaskCode, pcName, uxStackDepth, pvParameters, uxPriority, pxCreatedTask )
1722#endif
1723
1724#ifndef traceRETURN_xTaskCreate
1725 #define traceRETURN_xTaskCreate( xReturn )
1726#endif
1727
1728#ifndef traceENTER_xTaskCreateAffinitySet
1729 #define traceENTER_xTaskCreateAffinitySet( pxTaskCode, pcName, uxStackDepth, pvParameters, uxPriority, uxCoreAffinityMask, pxCreatedTask )
1730#endif
1731
1732#ifndef traceRETURN_xTaskCreateAffinitySet
1733 #define traceRETURN_xTaskCreateAffinitySet( xReturn )
1734#endif
1735
1736#ifndef traceENTER_vTaskDelete
1737 #define traceENTER_vTaskDelete( xTaskToDelete )
1738#endif
1739
1740#ifndef traceRETURN_vTaskDelete
1741 #define traceRETURN_vTaskDelete()
1742#endif
1743
1744#ifndef traceENTER_xTaskDelayUntil
1745 #define traceENTER_xTaskDelayUntil( pxPreviousWakeTime, xTimeIncrement )
1746#endif
1747
1748#ifndef traceRETURN_xTaskDelayUntil
1749 #define traceRETURN_xTaskDelayUntil( xShouldDelay )
1750#endif
1751
1752#ifndef traceENTER_vTaskDelay
1753 #define traceENTER_vTaskDelay( xTicksToDelay )
1754#endif
1755
1756#ifndef traceRETURN_vTaskDelay
1757 #define traceRETURN_vTaskDelay()
1758#endif
1759
1760#ifndef traceENTER_eTaskGetState
1761 #define traceENTER_eTaskGetState( xTask )
1762#endif
1763
1764#ifndef traceRETURN_eTaskGetState
1765 #define traceRETURN_eTaskGetState( eReturn )
1766#endif
1767
1768#ifndef traceENTER_uxTaskPriorityGet
1769 #define traceENTER_uxTaskPriorityGet( xTask )
1770#endif
1771
1772#ifndef traceRETURN_uxTaskPriorityGet
1773 #define traceRETURN_uxTaskPriorityGet( uxReturn )
1774#endif
1775
1776#ifndef traceENTER_uxTaskPriorityGetFromISR
1777 #define traceENTER_uxTaskPriorityGetFromISR( xTask )
1778#endif
1779
1780#ifndef traceRETURN_uxTaskPriorityGetFromISR
1781 #define traceRETURN_uxTaskPriorityGetFromISR( uxReturn )
1782#endif
1783
1784#ifndef traceENTER_uxTaskBasePriorityGet
1785 #define traceENTER_uxTaskBasePriorityGet( xTask )
1786#endif
1787
1788#ifndef traceRETURN_uxTaskBasePriorityGet
1789 #define traceRETURN_uxTaskBasePriorityGet( uxReturn )
1790#endif
1791
1792#ifndef traceENTER_uxTaskBasePriorityGetFromISR
1793 #define traceENTER_uxTaskBasePriorityGetFromISR( xTask )
1794#endif
1795
1796#ifndef traceRETURN_uxTaskBasePriorityGetFromISR
1797 #define traceRETURN_uxTaskBasePriorityGetFromISR( uxReturn )
1798#endif
1799
1800#ifndef traceENTER_vTaskPrioritySet
1801 #define traceENTER_vTaskPrioritySet( xTask, uxNewPriority )
1802#endif
1803
1804#ifndef traceRETURN_vTaskPrioritySet
1805 #define traceRETURN_vTaskPrioritySet()
1806#endif
1807
1808#ifndef traceENTER_vTaskCoreAffinitySet
1809 #define traceENTER_vTaskCoreAffinitySet( xTask, uxCoreAffinityMask )
1810#endif
1811
1812#ifndef traceRETURN_vTaskCoreAffinitySet
1813 #define traceRETURN_vTaskCoreAffinitySet()
1814#endif
1815
1816#ifndef traceENTER_vTaskCoreAffinityGet
1817 #define traceENTER_vTaskCoreAffinityGet( xTask )
1818#endif
1819
1820#ifndef traceRETURN_vTaskCoreAffinityGet
1821 #define traceRETURN_vTaskCoreAffinityGet( uxCoreAffinityMask )
1822#endif
1823
1824#ifndef traceENTER_vTaskPreemptionDisable
1825 #define traceENTER_vTaskPreemptionDisable( xTask )
1826#endif
1827
1828#ifndef traceRETURN_vTaskPreemptionDisable
1829 #define traceRETURN_vTaskPreemptionDisable()
1830#endif
1831
1832#ifndef traceENTER_vTaskPreemptionEnable
1833 #define traceENTER_vTaskPreemptionEnable( xTask )
1834#endif
1835
1836#ifndef traceRETURN_vTaskPreemptionEnable
1837 #define traceRETURN_vTaskPreemptionEnable()
1838#endif
1839
1840#ifndef traceENTER_vTaskSuspend
1841 #define traceENTER_vTaskSuspend( xTaskToSuspend )
1842#endif
1843
1844#ifndef traceRETURN_vTaskSuspend
1845 #define traceRETURN_vTaskSuspend()
1846#endif
1847
1848#ifndef traceENTER_vTaskResume
1849 #define traceENTER_vTaskResume( xTaskToResume )
1850#endif
1851
1852#ifndef traceRETURN_vTaskResume
1853 #define traceRETURN_vTaskResume()
1854#endif
1855
1856#ifndef traceENTER_xTaskResumeFromISR
1857 #define traceENTER_xTaskResumeFromISR( xTaskToResume )
1858#endif
1859
1860#ifndef traceRETURN_xTaskResumeFromISR
1861 #define traceRETURN_xTaskResumeFromISR( xYieldRequired )
1862#endif
1863
1864#ifndef traceENTER_vTaskStartScheduler
1865 #define traceENTER_vTaskStartScheduler()
1866#endif
1867
1868#ifndef traceRETURN_vTaskStartScheduler
1869 #define traceRETURN_vTaskStartScheduler()
1870#endif
1871
1872#ifndef traceENTER_vTaskEndScheduler
1873 #define traceENTER_vTaskEndScheduler()
1874#endif
1875
1876#ifndef traceRETURN_vTaskEndScheduler
1877 #define traceRETURN_vTaskEndScheduler()
1878#endif
1879
1880#ifndef traceENTER_vTaskSuspendAll
1881 #define traceENTER_vTaskSuspendAll()
1882#endif
1883
1884#ifndef traceRETURN_vTaskSuspendAll
1885 #define traceRETURN_vTaskSuspendAll()
1886#endif
1887
1888#ifndef traceENTER_xTaskResumeAll
1889 #define traceENTER_xTaskResumeAll()
1890#endif
1891
1892#ifndef traceRETURN_xTaskResumeAll
1893 #define traceRETURN_xTaskResumeAll( xAlreadyYielded )
1894#endif
1895
1896#ifndef traceENTER_xTaskGetTickCount
1897 #define traceENTER_xTaskGetTickCount()
1898#endif
1899
1900#ifndef traceRETURN_xTaskGetTickCount
1901 #define traceRETURN_xTaskGetTickCount( xTicks )
1902#endif
1903
1904#ifndef traceENTER_xTaskGetTickCountFromISR
1905 #define traceENTER_xTaskGetTickCountFromISR()
1906#endif
1907
1908#ifndef traceRETURN_xTaskGetTickCountFromISR
1909 #define traceRETURN_xTaskGetTickCountFromISR( xReturn )
1910#endif
1911
1912#ifndef traceENTER_uxTaskGetNumberOfTasks
1913 #define traceENTER_uxTaskGetNumberOfTasks()
1914#endif
1915
1916#ifndef traceRETURN_uxTaskGetNumberOfTasks
1917 #define traceRETURN_uxTaskGetNumberOfTasks( uxCurrentNumberOfTasks )
1918#endif
1919
1920#ifndef traceENTER_pcTaskGetName
1921 #define traceENTER_pcTaskGetName( xTaskToQuery )
1922#endif
1923
1924#ifndef traceRETURN_pcTaskGetName
1925 #define traceRETURN_pcTaskGetName( pcTaskName )
1926#endif
1927
1928#ifndef traceENTER_xTaskGetHandle
1929 #define traceENTER_xTaskGetHandle( pcNameToQuery )
1930#endif
1931
1932#ifndef traceRETURN_xTaskGetHandle
1933 #define traceRETURN_xTaskGetHandle( pxTCB )
1934#endif
1935
1936#ifndef traceENTER_xTaskGetStaticBuffers
1937 #define traceENTER_xTaskGetStaticBuffers( xTask, ppuxStackBuffer, ppxTaskBuffer )
1938#endif
1939
1940#ifndef traceRETURN_xTaskGetStaticBuffers
1941 #define traceRETURN_xTaskGetStaticBuffers( xReturn )
1942#endif
1943
1944#ifndef traceENTER_uxTaskGetSystemState
1945 #define traceENTER_uxTaskGetSystemState( pxTaskStatusArray, uxArraySize, pulTotalRunTime )
1946#endif
1947
1948#ifndef traceRETURN_uxTaskGetSystemState
1949 #define traceRETURN_uxTaskGetSystemState( uxTask )
1950#endif
1951
1952#if ( configNUMBER_OF_CORES == 1 )
1953 #ifndef traceENTER_xTaskGetIdleTaskHandle
1954 #define traceENTER_xTaskGetIdleTaskHandle()
1955 #endif
1956#endif
1957
1958#if ( configNUMBER_OF_CORES == 1 )
1959 #ifndef traceRETURN_xTaskGetIdleTaskHandle
1960 #define traceRETURN_xTaskGetIdleTaskHandle( xIdleTaskHandle )
1961 #endif
1962#endif
1963
1964#ifndef traceENTER_xTaskGetIdleTaskHandleForCore
1965 #define traceENTER_xTaskGetIdleTaskHandleForCore( xCoreID )
1966#endif
1967
1968#ifndef traceRETURN_xTaskGetIdleTaskHandleForCore
1969 #define traceRETURN_xTaskGetIdleTaskHandleForCore( xIdleTaskHandle )
1970#endif
1971
1972#ifndef traceENTER_vTaskStepTick
1973 #define traceENTER_vTaskStepTick( xTicksToJump )
1974#endif
1975
1976#ifndef traceRETURN_vTaskStepTick
1977 #define traceRETURN_vTaskStepTick()
1978#endif
1979
1980#ifndef traceENTER_xTaskCatchUpTicks
1981 #define traceENTER_xTaskCatchUpTicks( xTicksToCatchUp )
1982#endif
1983
1984#ifndef traceRETURN_xTaskCatchUpTicks
1985 #define traceRETURN_xTaskCatchUpTicks( xYieldOccurred )
1986#endif
1987
1988#ifndef traceENTER_xTaskAbortDelay
1989 #define traceENTER_xTaskAbortDelay( xTask )
1990#endif
1991
1992#ifndef traceRETURN_xTaskAbortDelay
1993 #define traceRETURN_xTaskAbortDelay( xReturn )
1994#endif
1995
1996#ifndef traceENTER_xTaskIncrementTick
1997 #define traceENTER_xTaskIncrementTick()
1998#endif
1999
2000#ifndef traceRETURN_xTaskIncrementTick
2001 #define traceRETURN_xTaskIncrementTick( xSwitchRequired )
2002#endif
2003
2004#ifndef traceENTER_vTaskSetApplicationTaskTag
2005 #define traceENTER_vTaskSetApplicationTaskTag( xTask, pxHookFunction )
2006#endif
2007
2008#ifndef traceRETURN_vTaskSetApplicationTaskTag
2009 #define traceRETURN_vTaskSetApplicationTaskTag()
2010#endif
2011
2012#ifndef traceENTER_xTaskGetApplicationTaskTag
2013 #define traceENTER_xTaskGetApplicationTaskTag( xTask )
2014#endif
2015
2016#ifndef traceRETURN_xTaskGetApplicationTaskTag
2017 #define traceRETURN_xTaskGetApplicationTaskTag( xReturn )
2018#endif
2019
2020#ifndef traceENTER_xTaskGetApplicationTaskTagFromISR
2021 #define traceENTER_xTaskGetApplicationTaskTagFromISR( xTask )
2022#endif
2023
2024#ifndef traceRETURN_xTaskGetApplicationTaskTagFromISR
2025 #define traceRETURN_xTaskGetApplicationTaskTagFromISR( xReturn )
2026#endif
2027
2028#ifndef traceENTER_xTaskCallApplicationTaskHook
2029 #define traceENTER_xTaskCallApplicationTaskHook( xTask, pvParameter )
2030#endif
2031
2032#ifndef traceRETURN_xTaskCallApplicationTaskHook
2033 #define traceRETURN_xTaskCallApplicationTaskHook( xReturn )
2034#endif
2035
2036#ifndef traceENTER_vTaskSwitchContext
2037 #define traceENTER_vTaskSwitchContext()
2038#endif
2039
2040#ifndef traceRETURN_vTaskSwitchContext
2041 #define traceRETURN_vTaskSwitchContext()
2042#endif
2043
2044#ifndef traceENTER_vTaskPlaceOnEventList
2045 #define traceENTER_vTaskPlaceOnEventList( pxEventList, xTicksToWait )
2046#endif
2047
2048#ifndef traceRETURN_vTaskPlaceOnEventList
2049 #define traceRETURN_vTaskPlaceOnEventList()
2050#endif
2051
2052#ifndef traceENTER_vTaskPlaceOnUnorderedEventList
2053 #define traceENTER_vTaskPlaceOnUnorderedEventList( pxEventList, xItemValue, xTicksToWait )
2054#endif
2055
2056#ifndef traceRETURN_vTaskPlaceOnUnorderedEventList
2057 #define traceRETURN_vTaskPlaceOnUnorderedEventList()
2058#endif
2059
2060#ifndef traceENTER_vTaskPlaceOnEventListRestricted
2061 #define traceENTER_vTaskPlaceOnEventListRestricted( pxEventList, xTicksToWait, xWaitIndefinitely )
2062#endif
2063
2064#ifndef traceRETURN_vTaskPlaceOnEventListRestricted
2065 #define traceRETURN_vTaskPlaceOnEventListRestricted()
2066#endif
2067
2068#ifndef traceENTER_xTaskRemoveFromEventList
2069 #define traceENTER_xTaskRemoveFromEventList( pxEventList )
2070#endif
2071
2072#ifndef traceRETURN_xTaskRemoveFromEventList
2073 #define traceRETURN_xTaskRemoveFromEventList( xReturn )
2074#endif
2075
2076#ifndef traceENTER_vTaskRemoveFromUnorderedEventList
2077 #define traceENTER_vTaskRemoveFromUnorderedEventList( pxEventListItem, xItemValue )
2078#endif
2079
2080#ifndef traceRETURN_vTaskRemoveFromUnorderedEventList
2081 #define traceRETURN_vTaskRemoveFromUnorderedEventList()
2082#endif
2083
2084#ifndef traceENTER_vTaskSetTimeOutState
2085 #define traceENTER_vTaskSetTimeOutState( pxTimeOut )
2086#endif
2087
2088#ifndef traceRETURN_vTaskSetTimeOutState
2089 #define traceRETURN_vTaskSetTimeOutState()
2090#endif
2091
2092#ifndef traceENTER_vTaskInternalSetTimeOutState
2093 #define traceENTER_vTaskInternalSetTimeOutState( pxTimeOut )
2094#endif
2095
2096#ifndef traceRETURN_vTaskInternalSetTimeOutState
2097 #define traceRETURN_vTaskInternalSetTimeOutState()
2098#endif
2099
2100#ifndef traceENTER_xTaskCheckForTimeOut
2101 #define traceENTER_xTaskCheckForTimeOut( pxTimeOut, pxTicksToWait )
2102#endif
2103
2104#ifndef traceRETURN_xTaskCheckForTimeOut
2105 #define traceRETURN_xTaskCheckForTimeOut( xReturn )
2106#endif
2107
2108#ifndef traceENTER_vTaskMissedYield
2109 #define traceENTER_vTaskMissedYield()
2110#endif
2111
2112#ifndef traceRETURN_vTaskMissedYield
2113 #define traceRETURN_vTaskMissedYield()
2114#endif
2115
2116#ifndef traceENTER_uxTaskGetTaskNumber
2117 #define traceENTER_uxTaskGetTaskNumber( xTask )
2118#endif
2119
2120#ifndef traceRETURN_uxTaskGetTaskNumber
2121 #define traceRETURN_uxTaskGetTaskNumber( uxReturn )
2122#endif
2123
2124#ifndef traceENTER_vTaskSetTaskNumber
2125 #define traceENTER_vTaskSetTaskNumber( xTask, uxHandle )
2126#endif
2127
2128#ifndef traceRETURN_vTaskSetTaskNumber
2129 #define traceRETURN_vTaskSetTaskNumber()
2130#endif
2131
2132#ifndef traceENTER_eTaskConfirmSleepModeStatus
2133 #define traceENTER_eTaskConfirmSleepModeStatus()
2134#endif
2135
2136#ifndef traceRETURN_eTaskConfirmSleepModeStatus
2137 #define traceRETURN_eTaskConfirmSleepModeStatus( eReturn )
2138#endif
2139
2140#ifndef traceENTER_vTaskSetThreadLocalStoragePointer
2141 #define traceENTER_vTaskSetThreadLocalStoragePointer( xTaskToSet, xIndex, pvValue )
2142#endif
2143
2144#ifndef traceRETURN_vTaskSetThreadLocalStoragePointer
2145 #define traceRETURN_vTaskSetThreadLocalStoragePointer()
2146#endif
2147
2148#ifndef traceENTER_pvTaskGetThreadLocalStoragePointer
2149 #define traceENTER_pvTaskGetThreadLocalStoragePointer( xTaskToQuery, xIndex )
2150#endif
2151
2152#ifndef traceRETURN_pvTaskGetThreadLocalStoragePointer
2153 #define traceRETURN_pvTaskGetThreadLocalStoragePointer( pvReturn )
2154#endif
2155
2156#ifndef traceENTER_vTaskAllocateMPURegions
2157 #define traceENTER_vTaskAllocateMPURegions( xTaskToModify, pxRegions )
2158#endif
2159
2160#ifndef traceRETURN_vTaskAllocateMPURegions
2161 #define traceRETURN_vTaskAllocateMPURegions()
2162#endif
2163
2164#ifndef traceENTER_vTaskGetInfo
2165 #define traceENTER_vTaskGetInfo( xTask, pxTaskStatus, xGetFreeStackSpace, eState )
2166#endif
2167
2168#ifndef traceRETURN_vTaskGetInfo
2169 #define traceRETURN_vTaskGetInfo()
2170#endif
2171
2172#ifndef traceENTER_uxTaskGetStackHighWaterMark2
2173 #define traceENTER_uxTaskGetStackHighWaterMark2( xTask )
2174#endif
2175
2176#ifndef traceRETURN_uxTaskGetStackHighWaterMark2
2177 #define traceRETURN_uxTaskGetStackHighWaterMark2( uxReturn )
2178#endif
2179
2180#ifndef traceENTER_uxTaskGetStackHighWaterMark
2181 #define traceENTER_uxTaskGetStackHighWaterMark( xTask )
2182#endif
2183
2184#ifndef traceRETURN_uxTaskGetStackHighWaterMark
2185 #define traceRETURN_uxTaskGetStackHighWaterMark( uxReturn )
2186#endif
2187
2188#ifndef traceENTER_xTaskGetCurrentTaskHandle
2189 #define traceENTER_xTaskGetCurrentTaskHandle()
2190#endif
2191
2192#ifndef traceRETURN_xTaskGetCurrentTaskHandle
2193 #define traceRETURN_xTaskGetCurrentTaskHandle( xReturn )
2194#endif
2195
2196#ifndef traceENTER_xTaskGetCurrentTaskHandleForCore
2197 #define traceENTER_xTaskGetCurrentTaskHandleForCore( xCoreID )
2198#endif
2199
2200#ifndef traceRETURN_xTaskGetCurrentTaskHandleForCore
2201 #define traceRETURN_xTaskGetCurrentTaskHandleForCore( xReturn )
2202#endif
2203
2204#ifndef traceENTER_xTaskGetSchedulerState
2205 #define traceENTER_xTaskGetSchedulerState()
2206#endif
2207
2208#ifndef traceRETURN_xTaskGetSchedulerState
2209 #define traceRETURN_xTaskGetSchedulerState( xReturn )
2210#endif
2211
2212#ifndef traceENTER_xTaskPriorityInherit
2213 #define traceENTER_xTaskPriorityInherit( pxMutexHolder )
2214#endif
2215
2216#ifndef traceRETURN_xTaskPriorityInherit
2217 #define traceRETURN_xTaskPriorityInherit( xReturn )
2218#endif
2219
2220#ifndef traceENTER_xTaskPriorityDisinherit
2221 #define traceENTER_xTaskPriorityDisinherit( pxMutexHolder )
2222#endif
2223
2224#ifndef traceRETURN_xTaskPriorityDisinherit
2225 #define traceRETURN_xTaskPriorityDisinherit( xReturn )
2226#endif
2227
2228#ifndef traceENTER_vTaskPriorityDisinheritAfterTimeout
2229 #define traceENTER_vTaskPriorityDisinheritAfterTimeout( pxMutexHolder, uxHighestPriorityWaitingTask )
2230#endif
2231
2232#ifndef traceRETURN_vTaskPriorityDisinheritAfterTimeout
2233 #define traceRETURN_vTaskPriorityDisinheritAfterTimeout()
2234#endif
2235
2236#ifndef traceENTER_vTaskYieldWithinAPI
2237 #define traceENTER_vTaskYieldWithinAPI()
2238#endif
2239
2240#ifndef traceRETURN_vTaskYieldWithinAPI
2241 #define traceRETURN_vTaskYieldWithinAPI()
2242#endif
2243
2244#ifndef traceENTER_vTaskEnterCritical
2245 #define traceENTER_vTaskEnterCritical()
2246#endif
2247
2248#ifndef traceRETURN_vTaskEnterCritical
2249 #define traceRETURN_vTaskEnterCritical()
2250#endif
2251
2252#ifndef traceENTER_vTaskEnterCriticalFromISR
2253 #define traceENTER_vTaskEnterCriticalFromISR()
2254#endif
2255
2256#ifndef traceRETURN_vTaskEnterCriticalFromISR
2257 #define traceRETURN_vTaskEnterCriticalFromISR( uxSavedInterruptStatus )
2258#endif
2259
2260#ifndef traceENTER_vTaskExitCritical
2261 #define traceENTER_vTaskExitCritical()
2262#endif
2263
2264#ifndef traceRETURN_vTaskExitCritical
2265 #define traceRETURN_vTaskExitCritical()
2266#endif
2267
2268#ifndef traceENTER_vTaskExitCriticalFromISR
2269 #define traceENTER_vTaskExitCriticalFromISR( uxSavedInterruptStatus )
2270#endif
2271
2272#ifndef traceRETURN_vTaskExitCriticalFromISR
2273 #define traceRETURN_vTaskExitCriticalFromISR()
2274#endif
2275
2276#ifndef traceENTER_vTaskListTasks
2277 #define traceENTER_vTaskListTasks( pcWriteBuffer, uxBufferLength )
2278#endif
2279
2280#ifndef traceRETURN_vTaskListTasks
2281 #define traceRETURN_vTaskListTasks()
2282#endif
2283
2284#ifndef traceENTER_vTaskGetRunTimeStatistics
2285 #define traceENTER_vTaskGetRunTimeStatistics( pcWriteBuffer, uxBufferLength )
2286#endif
2287
2288#ifndef traceRETURN_vTaskGetRunTimeStatistics
2289 #define traceRETURN_vTaskGetRunTimeStatistics()
2290#endif
2291
2292#ifndef traceENTER_uxTaskResetEventItemValue
2293 #define traceENTER_uxTaskResetEventItemValue()
2294#endif
2295
2296#ifndef traceRETURN_uxTaskResetEventItemValue
2297 #define traceRETURN_uxTaskResetEventItemValue( uxReturn )
2298#endif
2299
2300#ifndef traceENTER_pvTaskIncrementMutexHeldCount
2301 #define traceENTER_pvTaskIncrementMutexHeldCount()
2302#endif
2303
2304#ifndef traceRETURN_pvTaskIncrementMutexHeldCount
2305 #define traceRETURN_pvTaskIncrementMutexHeldCount( pxTCB )
2306#endif
2307
2308#ifndef traceENTER_ulTaskGenericNotifyTake
2309 #define traceENTER_ulTaskGenericNotifyTake( uxIndexToWaitOn, xClearCountOnExit, xTicksToWait )
2310#endif
2311
2312#ifndef traceRETURN_ulTaskGenericNotifyTake
2313 #define traceRETURN_ulTaskGenericNotifyTake( ulReturn )
2314#endif
2315
2316#ifndef traceENTER_xTaskGenericNotifyWait
2317 #define traceENTER_xTaskGenericNotifyWait( uxIndexToWaitOn, ulBitsToClearOnEntry, ulBitsToClearOnExit, pulNotificationValue, xTicksToWait )
2318#endif
2319
2320#ifndef traceRETURN_xTaskGenericNotifyWait
2321 #define traceRETURN_xTaskGenericNotifyWait( xReturn )
2322#endif
2323
2324#ifndef traceENTER_xTaskGenericNotify
2325 #define traceENTER_xTaskGenericNotify( xTaskToNotify, uxIndexToNotify, ulValue, eAction, pulPreviousNotificationValue )
2326#endif
2327
2328#ifndef traceRETURN_xTaskGenericNotify
2329 #define traceRETURN_xTaskGenericNotify( xReturn )
2330#endif
2331
2332#ifndef traceENTER_xTaskGenericNotifyFromISR
2333 #define traceENTER_xTaskGenericNotifyFromISR( xTaskToNotify, uxIndexToNotify, ulValue, eAction, pulPreviousNotificationValue, pxHigherPriorityTaskWoken )
2334#endif
2335
2336#ifndef traceRETURN_xTaskGenericNotifyFromISR
2337 #define traceRETURN_xTaskGenericNotifyFromISR( xReturn )
2338#endif
2339
2340#ifndef traceENTER_vTaskGenericNotifyGiveFromISR
2341 #define traceENTER_vTaskGenericNotifyGiveFromISR( xTaskToNotify, uxIndexToNotify, pxHigherPriorityTaskWoken )
2342#endif
2343
2344#ifndef traceRETURN_vTaskGenericNotifyGiveFromISR
2345 #define traceRETURN_vTaskGenericNotifyGiveFromISR()
2346#endif
2347
2348#ifndef traceENTER_xTaskGenericNotifyStateClear
2349 #define traceENTER_xTaskGenericNotifyStateClear( xTask, uxIndexToClear )
2350#endif
2351
2352#ifndef traceRETURN_xTaskGenericNotifyStateClear
2353 #define traceRETURN_xTaskGenericNotifyStateClear( xReturn )
2354#endif
2355
2356#ifndef traceENTER_ulTaskGenericNotifyValueClear
2357 #define traceENTER_ulTaskGenericNotifyValueClear( xTask, uxIndexToClear, ulBitsToClear )
2358#endif
2359
2360#ifndef traceRETURN_ulTaskGenericNotifyValueClear
2361 #define traceRETURN_ulTaskGenericNotifyValueClear( ulReturn )
2362#endif
2363
2364#ifndef traceENTER_ulTaskGetRunTimeCounter
2365 #define traceENTER_ulTaskGetRunTimeCounter( xTask )
2366#endif
2367
2368#ifndef traceRETURN_ulTaskGetRunTimeCounter
2369 #define traceRETURN_ulTaskGetRunTimeCounter( ulRunTimeCounter )
2370#endif
2371
2372#ifndef traceENTER_ulTaskGetRunTimePercent
2373 #define traceENTER_ulTaskGetRunTimePercent( xTask )
2374#endif
2375
2376#ifndef traceRETURN_ulTaskGetRunTimePercent
2377 #define traceRETURN_ulTaskGetRunTimePercent( ulReturn )
2378#endif
2379
2380#ifndef traceENTER_ulTaskGetIdleRunTimeCounter
2381 #define traceENTER_ulTaskGetIdleRunTimeCounter()
2382#endif
2383
2384#ifndef traceRETURN_ulTaskGetIdleRunTimeCounter
2385 #define traceRETURN_ulTaskGetIdleRunTimeCounter( ulReturn )
2386#endif
2387
2388#ifndef traceENTER_ulTaskGetIdleRunTimePercent
2389 #define traceENTER_ulTaskGetIdleRunTimePercent()
2390#endif
2391
2392#ifndef traceRETURN_ulTaskGetIdleRunTimePercent
2393 #define traceRETURN_ulTaskGetIdleRunTimePercent( ulReturn )
2394#endif
2395
2396#ifndef traceENTER_xTaskGetMPUSettings
2397 #define traceENTER_xTaskGetMPUSettings( xTask )
2398#endif
2399
2400#ifndef traceRETURN_xTaskGetMPUSettings
2401 #define traceRETURN_xTaskGetMPUSettings( xMPUSettings )
2402#endif
2403
2404#ifndef traceENTER_xStreamBufferGenericCreate
2405 #define traceENTER_xStreamBufferGenericCreate( xBufferSizeBytes, xTriggerLevelBytes, xStreamBufferType, pxSendCompletedCallback, pxReceiveCompletedCallback )
2406#endif
2407
2408#ifndef traceRETURN_xStreamBufferGenericCreate
2409 #define traceRETURN_xStreamBufferGenericCreate( pvAllocatedMemory )
2410#endif
2411
2412#ifndef traceENTER_xStreamBufferGenericCreateStatic
2413 #define traceENTER_xStreamBufferGenericCreateStatic( xBufferSizeBytes, xTriggerLevelBytes, xStreamBufferType, pucStreamBufferStorageArea, pxStaticStreamBuffer, pxSendCompletedCallback, pxReceiveCompletedCallback )
2414#endif
2415
2416#ifndef traceRETURN_xStreamBufferGenericCreateStatic
2417 #define traceRETURN_xStreamBufferGenericCreateStatic( xReturn )
2418#endif
2419
2420#ifndef traceENTER_xStreamBufferGetStaticBuffers
2421 #define traceENTER_xStreamBufferGetStaticBuffers( xStreamBuffer, ppucStreamBufferStorageArea, ppxStaticStreamBuffer )
2422#endif
2423
2424#ifndef traceRETURN_xStreamBufferGetStaticBuffers
2425 #define traceRETURN_xStreamBufferGetStaticBuffers( xReturn )
2426#endif
2427
2428#ifndef traceENTER_vStreamBufferDelete
2429 #define traceENTER_vStreamBufferDelete( xStreamBuffer )
2430#endif
2431
2432#ifndef traceRETURN_vStreamBufferDelete
2433 #define traceRETURN_vStreamBufferDelete()
2434#endif
2435
2436#ifndef traceENTER_xStreamBufferReset
2437 #define traceENTER_xStreamBufferReset( xStreamBuffer )
2438#endif
2439
2440#ifndef traceRETURN_xStreamBufferReset
2441 #define traceRETURN_xStreamBufferReset( xReturn )
2442#endif
2443
2444#ifndef traceENTER_xStreamBufferResetFromISR
2445 #define traceENTER_xStreamBufferResetFromISR( xStreamBuffer )
2446#endif
2447
2448#ifndef traceRETURN_xStreamBufferResetFromISR
2449 #define traceRETURN_xStreamBufferResetFromISR( xReturn )
2450#endif
2451
2452#ifndef traceENTER_xStreamBufferSetTriggerLevel
2453 #define traceENTER_xStreamBufferSetTriggerLevel( xStreamBuffer, xTriggerLevel )
2454#endif
2455
2456#ifndef traceRETURN_xStreamBufferSetTriggerLevel
2457 #define traceRETURN_xStreamBufferSetTriggerLevel( xReturn )
2458#endif
2459
2460#ifndef traceENTER_xStreamBufferSpacesAvailable
2461 #define traceENTER_xStreamBufferSpacesAvailable( xStreamBuffer )
2462#endif
2463
2464#ifndef traceRETURN_xStreamBufferSpacesAvailable
2465 #define traceRETURN_xStreamBufferSpacesAvailable( xSpace )
2466#endif
2467
2468#ifndef traceENTER_xStreamBufferBytesAvailable
2469 #define traceENTER_xStreamBufferBytesAvailable( xStreamBuffer )
2470#endif
2471
2472#ifndef traceRETURN_xStreamBufferBytesAvailable
2473 #define traceRETURN_xStreamBufferBytesAvailable( xReturn )
2474#endif
2475
2476#ifndef traceENTER_xStreamBufferSend
2477 #define traceENTER_xStreamBufferSend( xStreamBuffer, pvTxData, xDataLengthBytes, xTicksToWait )
2478#endif
2479
2480#ifndef traceRETURN_xStreamBufferSend
2481 #define traceRETURN_xStreamBufferSend( xReturn )
2482#endif
2483
2484#ifndef traceENTER_xStreamBufferSendFromISR
2485 #define traceENTER_xStreamBufferSendFromISR( xStreamBuffer, pvTxData, xDataLengthBytes, pxHigherPriorityTaskWoken )
2486#endif
2487
2488#ifndef traceRETURN_xStreamBufferSendFromISR
2489 #define traceRETURN_xStreamBufferSendFromISR( xReturn )
2490#endif
2491
2492#ifndef traceENTER_xStreamBufferReceive
2493 #define traceENTER_xStreamBufferReceive( xStreamBuffer, pvRxData, xBufferLengthBytes, xTicksToWait )
2494#endif
2495
2496#ifndef traceRETURN_xStreamBufferReceive
2497 #define traceRETURN_xStreamBufferReceive( xReceivedLength )
2498#endif
2499
2500#ifndef traceENTER_xStreamBufferNextMessageLengthBytes
2501 #define traceENTER_xStreamBufferNextMessageLengthBytes( xStreamBuffer )
2502#endif
2503
2504#ifndef traceRETURN_xStreamBufferNextMessageLengthBytes
2505 #define traceRETURN_xStreamBufferNextMessageLengthBytes( xReturn )
2506#endif
2507
2508#ifndef traceENTER_xStreamBufferReceiveFromISR
2509 #define traceENTER_xStreamBufferReceiveFromISR( xStreamBuffer, pvRxData, xBufferLengthBytes, pxHigherPriorityTaskWoken )
2510#endif
2511
2512#ifndef traceRETURN_xStreamBufferReceiveFromISR
2513 #define traceRETURN_xStreamBufferReceiveFromISR( xReceivedLength )
2514#endif
2515
2516#ifndef traceENTER_xStreamBufferIsEmpty
2517 #define traceENTER_xStreamBufferIsEmpty( xStreamBuffer )
2518#endif
2519
2520#ifndef traceRETURN_xStreamBufferIsEmpty
2521 #define traceRETURN_xStreamBufferIsEmpty( xReturn )
2522#endif
2523
2524#ifndef traceENTER_xStreamBufferIsFull
2525 #define traceENTER_xStreamBufferIsFull( xStreamBuffer )
2526#endif
2527
2528#ifndef traceRETURN_xStreamBufferIsFull
2529 #define traceRETURN_xStreamBufferIsFull( xReturn )
2530#endif
2531
2532#ifndef traceENTER_xStreamBufferSendCompletedFromISR
2533 #define traceENTER_xStreamBufferSendCompletedFromISR( xStreamBuffer, pxHigherPriorityTaskWoken )
2534#endif
2535
2536#ifndef traceRETURN_xStreamBufferSendCompletedFromISR
2537 #define traceRETURN_xStreamBufferSendCompletedFromISR( xReturn )
2538#endif
2539
2540#ifndef traceENTER_xStreamBufferReceiveCompletedFromISR
2541 #define traceENTER_xStreamBufferReceiveCompletedFromISR( xStreamBuffer, pxHigherPriorityTaskWoken )
2542#endif
2543
2544#ifndef traceRETURN_xStreamBufferReceiveCompletedFromISR
2545 #define traceRETURN_xStreamBufferReceiveCompletedFromISR( xReturn )
2546#endif
2547
2548#ifndef traceENTER_uxStreamBufferGetStreamBufferNotificationIndex
2549 #define traceENTER_uxStreamBufferGetStreamBufferNotificationIndex( xStreamBuffer )
2550#endif
2551
2552#ifndef traceRETURN_uxStreamBufferGetStreamBufferNotificationIndex
2553 #define traceRETURN_uxStreamBufferGetStreamBufferNotificationIndex( uxNotificationIndex )
2554#endif
2555
2556#ifndef traceENTER_vStreamBufferSetStreamBufferNotificationIndex
2557 #define traceENTER_vStreamBufferSetStreamBufferNotificationIndex( xStreamBuffer, uxNotificationIndex )
2558#endif
2559
2560#ifndef traceRETURN_vStreamBufferSetStreamBufferNotificationIndex
2561 #define traceRETURN_vStreamBufferSetStreamBufferNotificationIndex()
2562#endif
2563
2564#ifndef traceENTER_uxStreamBufferGetStreamBufferNumber
2565 #define traceENTER_uxStreamBufferGetStreamBufferNumber( xStreamBuffer )
2566#endif
2567
2568#ifndef traceRETURN_uxStreamBufferGetStreamBufferNumber
2569 #define traceRETURN_uxStreamBufferGetStreamBufferNumber( uxStreamBufferNumber )
2570#endif
2571
2572#ifndef traceENTER_vStreamBufferSetStreamBufferNumber
2573 #define traceENTER_vStreamBufferSetStreamBufferNumber( xStreamBuffer, uxStreamBufferNumber )
2574#endif
2575
2576#ifndef traceRETURN_vStreamBufferSetStreamBufferNumber
2577 #define traceRETURN_vStreamBufferSetStreamBufferNumber()
2578#endif
2579
2580#ifndef traceENTER_ucStreamBufferGetStreamBufferType
2581 #define traceENTER_ucStreamBufferGetStreamBufferType( xStreamBuffer )
2582#endif
2583
2584#ifndef traceRETURN_ucStreamBufferGetStreamBufferType
2585 #define traceRETURN_ucStreamBufferGetStreamBufferType( ucStreamBufferType )
2586#endif
2587
2588#ifndef traceENTER_vListInitialise
2589 #define traceENTER_vListInitialise( pxList )
2590#endif
2591
2592#ifndef traceRETURN_vListInitialise
2593 #define traceRETURN_vListInitialise()
2594#endif
2595
2596#ifndef traceENTER_vListInitialiseItem
2597 #define traceENTER_vListInitialiseItem( pxItem )
2598#endif
2599
2600#ifndef traceRETURN_vListInitialiseItem
2601 #define traceRETURN_vListInitialiseItem()
2602#endif
2603
2604#ifndef traceENTER_vListInsertEnd
2605 #define traceENTER_vListInsertEnd( pxList, pxNewListItem )
2606#endif
2607
2608#ifndef traceRETURN_vListInsertEnd
2609 #define traceRETURN_vListInsertEnd()
2610#endif
2611
2612#ifndef traceENTER_vListInsert
2613 #define traceENTER_vListInsert( pxList, pxNewListItem )
2614#endif
2615
2616#ifndef traceRETURN_vListInsert
2617 #define traceRETURN_vListInsert()
2618#endif
2619
2620#ifndef traceENTER_uxListRemove
2621 #define traceENTER_uxListRemove( pxItemToRemove )
2622#endif
2623
2624#ifndef traceRETURN_uxListRemove
2625 #define traceRETURN_uxListRemove( uxNumberOfItems )
2626#endif
2627
2628#ifndef traceENTER_xCoRoutineCreate
2629 #define traceENTER_xCoRoutineCreate( pxCoRoutineCode, uxPriority, uxIndex )
2630#endif
2631
2632#ifndef traceRETURN_xCoRoutineCreate
2633 #define traceRETURN_xCoRoutineCreate( xReturn )
2634#endif
2635
2636#ifndef traceENTER_vCoRoutineAddToDelayedList
2637 #define traceENTER_vCoRoutineAddToDelayedList( xTicksToDelay, pxEventList )
2638#endif
2639
2640#ifndef traceRETURN_vCoRoutineAddToDelayedList
2641 #define traceRETURN_vCoRoutineAddToDelayedList()
2642#endif
2643
2644#ifndef traceENTER_vCoRoutineSchedule
2645 #define traceENTER_vCoRoutineSchedule()
2646#endif
2647
2648#ifndef traceRETURN_vCoRoutineSchedule
2649 #define traceRETURN_vCoRoutineSchedule()
2650#endif
2651
2652#ifndef traceENTER_xCoRoutineRemoveFromEventList
2653 #define traceENTER_xCoRoutineRemoveFromEventList( pxEventList )
2654#endif
2655
2656#ifndef traceRETURN_xCoRoutineRemoveFromEventList
2657 #define traceRETURN_xCoRoutineRemoveFromEventList( xReturn )
2658#endif
2659
2660#ifndef configGENERATE_RUN_TIME_STATS
2661 #define configGENERATE_RUN_TIME_STATS 0
2662#endif
2663
2664#if ( configGENERATE_RUN_TIME_STATS == 1 )
2665
2666 #ifndef portCONFIGURE_TIMER_FOR_RUN_TIME_STATS
2667 #error If configGENERATE_RUN_TIME_STATS is defined then portCONFIGURE_TIMER_FOR_RUN_TIME_STATS must also be defined. portCONFIGURE_TIMER_FOR_RUN_TIME_STATS should call a port layer function to setup a peripheral timer/counter that can then be used as the run time counter time base.
2668 #endif /* portCONFIGURE_TIMER_FOR_RUN_TIME_STATS */
2669
2670 #ifndef portGET_RUN_TIME_COUNTER_VALUE
2671 #ifndef portALT_GET_RUN_TIME_COUNTER_VALUE
2672 #error If configGENERATE_RUN_TIME_STATS is defined then either portGET_RUN_TIME_COUNTER_VALUE or portALT_GET_RUN_TIME_COUNTER_VALUE must also be defined. See the examples provided and the FreeRTOS web site for more information.
2673 #endif /* portALT_GET_RUN_TIME_COUNTER_VALUE */
2674 #endif /* portGET_RUN_TIME_COUNTER_VALUE */
2675
2676#endif /* configGENERATE_RUN_TIME_STATS */
2677
2678#ifndef portCONFIGURE_TIMER_FOR_RUN_TIME_STATS
2679 #define portCONFIGURE_TIMER_FOR_RUN_TIME_STATS()
2680#endif
2681
2682#ifndef portPRIVILEGE_BIT
2683 #define portPRIVILEGE_BIT ( ( UBaseType_t ) 0x00 )
2684#endif
2685
2686#ifndef portYIELD_WITHIN_API
2687 #define portYIELD_WITHIN_API portYIELD
2688#endif
2689
2690#ifndef portSUPPRESS_TICKS_AND_SLEEP
2691 #define portSUPPRESS_TICKS_AND_SLEEP( xExpectedIdleTime )
2692#endif
2693
2694#ifndef configEXPECTED_IDLE_TIME_BEFORE_SLEEP
2695 #define configEXPECTED_IDLE_TIME_BEFORE_SLEEP 2
2696#endif
2697
2698#if configEXPECTED_IDLE_TIME_BEFORE_SLEEP < 2
2699 #error configEXPECTED_IDLE_TIME_BEFORE_SLEEP must not be less than 2
2700#endif
2701
2702#ifndef configUSE_TICKLESS_IDLE
2703 #define configUSE_TICKLESS_IDLE 0
2704#endif
2705
2706#ifndef configPRE_SUPPRESS_TICKS_AND_SLEEP_PROCESSING
2707 #define configPRE_SUPPRESS_TICKS_AND_SLEEP_PROCESSING( x )
2708#endif
2709
2710#ifndef configPRE_SLEEP_PROCESSING
2711 #define configPRE_SLEEP_PROCESSING( x )
2712#endif
2713
2714#ifndef configPOST_SLEEP_PROCESSING
2715 #define configPOST_SLEEP_PROCESSING( x )
2716#endif
2717
2718#ifndef configUSE_QUEUE_SETS
2719 #define configUSE_QUEUE_SETS 0
2720#endif
2721
2722#ifndef portTASK_USES_FLOATING_POINT
2723 #define portTASK_USES_FLOATING_POINT()
2724#endif
2725
2726#ifndef portALLOCATE_SECURE_CONTEXT
2727 #define portALLOCATE_SECURE_CONTEXT( ulSecureStackSize )
2728#endif
2729
2730#ifndef portDONT_DISCARD
2731 #define portDONT_DISCARD
2732#endif
2733
2734#ifndef configUSE_TIME_SLICING
2735 #define configUSE_TIME_SLICING 1
2736#endif
2737
2738#ifndef configINCLUDE_APPLICATION_DEFINED_PRIVILEGED_FUNCTIONS
2739 #define configINCLUDE_APPLICATION_DEFINED_PRIVILEGED_FUNCTIONS 0
2740#endif
2741
2742#ifndef configUSE_STATS_FORMATTING_FUNCTIONS
2743 #define configUSE_STATS_FORMATTING_FUNCTIONS 0
2744#endif
2745
2746#ifndef portASSERT_IF_INTERRUPT_PRIORITY_INVALID
2747 #define portASSERT_IF_INTERRUPT_PRIORITY_INVALID()
2748#endif
2749
2750#ifndef configUSE_TRACE_FACILITY
2751 #define configUSE_TRACE_FACILITY 0
2752#endif
2753
2754#ifndef mtCOVERAGE_TEST_MARKER
2755 #define mtCOVERAGE_TEST_MARKER()
2756#endif
2757
2758#ifndef mtCOVERAGE_TEST_DELAY
2759 #define mtCOVERAGE_TEST_DELAY()
2760#endif
2761
2762#ifndef portASSERT_IF_IN_ISR
2763 #define portASSERT_IF_IN_ISR()
2764#endif
2765
2766#ifndef configUSE_PORT_OPTIMISED_TASK_SELECTION
2767 #define configUSE_PORT_OPTIMISED_TASK_SELECTION 0
2768#endif
2769
2770#ifndef configAPPLICATION_ALLOCATED_HEAP
2771 #define configAPPLICATION_ALLOCATED_HEAP 0
2772#endif
2773
2774#ifndef configENABLE_HEAP_PROTECTOR
2775 #define configENABLE_HEAP_PROTECTOR 0
2776#endif
2777
2778#ifndef configUSE_TASK_NOTIFICATIONS
2779 #define configUSE_TASK_NOTIFICATIONS 1
2780#endif
2781
2782#ifndef configTASK_NOTIFICATION_ARRAY_ENTRIES
2783 #define configTASK_NOTIFICATION_ARRAY_ENTRIES 1
2784#endif
2785
2786#if configTASK_NOTIFICATION_ARRAY_ENTRIES < 1
2787 #error configTASK_NOTIFICATION_ARRAY_ENTRIES must be at least 1
2788#endif
2789
2790#ifndef configUSE_POSIX_ERRNO
2791 #define configUSE_POSIX_ERRNO 0
2792#endif
2793
2794#ifndef configUSE_SB_COMPLETED_CALLBACK
2795
2796/* By default per-instance callbacks are not enabled for stream buffer or message buffer. */
2797 #define configUSE_SB_COMPLETED_CALLBACK 0
2798#endif
2799
2800#ifndef portTICK_TYPE_IS_ATOMIC
2801 #define portTICK_TYPE_IS_ATOMIC 0
2802#endif
2803
2804#ifndef configSUPPORT_STATIC_ALLOCATION
2805 /* Defaults to 0 for backward compatibility. */
2806 #define configSUPPORT_STATIC_ALLOCATION 0
2807#endif
2808
2809#ifndef configKERNEL_PROVIDED_STATIC_MEMORY
2810 #define configKERNEL_PROVIDED_STATIC_MEMORY 0
2811#endif
2812
2813#ifndef configSUPPORT_DYNAMIC_ALLOCATION
2814 /* Defaults to 1 for backward compatibility. */
2815 #define configSUPPORT_DYNAMIC_ALLOCATION 1
2816#endif
2817
2818#if ( ( configUSE_STATS_FORMATTING_FUNCTIONS > 0 ) && ( configSUPPORT_DYNAMIC_ALLOCATION != 1 ) )
2819 #error configUSE_STATS_FORMATTING_FUNCTIONS cannot be used without dynamic allocation, but configSUPPORT_DYNAMIC_ALLOCATION is not set to 1.
2820#endif
2821
2822#if ( configUSE_STATS_FORMATTING_FUNCTIONS > 0 )
2823 #if ( ( configUSE_TRACE_FACILITY != 1 ) && ( configGENERATE_RUN_TIME_STATS != 1 ) )
2824 #error configUSE_STATS_FORMATTING_FUNCTIONS is 1 but the functions it enables are not used because neither configUSE_TRACE_FACILITY or configGENERATE_RUN_TIME_STATS are 1. Set configUSE_STATS_FORMATTING_FUNCTIONS to 0 in FreeRTOSConfig.h.
2825 #endif
2826#endif
2827
2828#ifndef configSTATS_BUFFER_MAX_LENGTH
2829 #define configSTATS_BUFFER_MAX_LENGTH 0xFFFF
2830#endif
2831
2832#ifndef configSTACK_DEPTH_TYPE
2833
2834/* Defaults to StackType_t for backward compatibility, but can be overridden
2835 * in FreeRTOSConfig.h if StackType_t is too restrictive. */
2836 #define configSTACK_DEPTH_TYPE StackType_t
2837#endif
2838
2839#ifndef configRUN_TIME_COUNTER_TYPE
2840
2841/* Defaults to uint32_t for backward compatibility, but can be overridden in
2842 * FreeRTOSConfig.h if uint32_t is too restrictive. */
2843
2844 #define configRUN_TIME_COUNTER_TYPE uint32_t
2845#endif
2846
2847#ifndef configMESSAGE_BUFFER_LENGTH_TYPE
2848
2849/* Defaults to size_t for backward compatibility, but can be overridden
2850 * in FreeRTOSConfig.h if lengths will always be less than the number of bytes
2851 * in a size_t. */
2852 #define configMESSAGE_BUFFER_LENGTH_TYPE size_t
2853#endif
2854
2855/* Sanity check the configuration. */
2856#if ( ( configSUPPORT_STATIC_ALLOCATION == 0 ) && ( configSUPPORT_DYNAMIC_ALLOCATION == 0 ) )
2857 #error configSUPPORT_STATIC_ALLOCATION and configSUPPORT_DYNAMIC_ALLOCATION cannot both be 0, but can both be 1.
2858#endif
2859
2860#if ( ( configUSE_RECURSIVE_MUTEXES == 1 ) && ( configUSE_MUTEXES != 1 ) )
2861 #error configUSE_MUTEXES must be set to 1 to use recursive mutexes
2862#endif
2863
2864#if ( ( configRUN_MULTIPLE_PRIORITIES == 0 ) && ( configUSE_TASK_PREEMPTION_DISABLE != 0 ) )
2865 #error configRUN_MULTIPLE_PRIORITIES must be set to 1 to use task preemption disable
2866#endif
2867
2868#if ( ( configUSE_PREEMPTION == 0 ) && ( configUSE_TASK_PREEMPTION_DISABLE != 0 ) )
2869 #error configUSE_PREEMPTION must be set to 1 to use task preemption disable
2870#endif
2871
2872#if ( ( configNUMBER_OF_CORES == 1 ) && ( configUSE_TASK_PREEMPTION_DISABLE != 0 ) )
2873 #error configUSE_TASK_PREEMPTION_DISABLE is not supported in single core FreeRTOS
2874#endif
2875
2876#if ( ( configNUMBER_OF_CORES == 1 ) && ( configUSE_CORE_AFFINITY != 0 ) )
2877 #error configUSE_CORE_AFFINITY is not supported in single core FreeRTOS
2878#endif
2879
2880#if ( ( configNUMBER_OF_CORES > 1 ) && ( configUSE_PORT_OPTIMISED_TASK_SELECTION != 0 ) )
2881 #error configUSE_PORT_OPTIMISED_TASK_SELECTION is not supported in SMP FreeRTOS
2882#endif
2883
2884#ifndef configINITIAL_TICK_COUNT
2885 #define configINITIAL_TICK_COUNT 0
2886#endif
2887
2888#if ( portTICK_TYPE_IS_ATOMIC == 0 )
2889
2890/* Either variables of tick type cannot be read atomically, or
2891 * portTICK_TYPE_IS_ATOMIC was not set - map the critical sections used when
2892 * the tick count is returned to the standard critical section macros. */
2893 #define portTICK_TYPE_ENTER_CRITICAL() portENTER_CRITICAL()
2894 #define portTICK_TYPE_EXIT_CRITICAL() portEXIT_CRITICAL()
2895 #define portTICK_TYPE_SET_INTERRUPT_MASK_FROM_ISR() portSET_INTERRUPT_MASK_FROM_ISR()
2896 #define portTICK_TYPE_CLEAR_INTERRUPT_MASK_FROM_ISR( x ) portCLEAR_INTERRUPT_MASK_FROM_ISR( ( x ) )
2897#else
2898
2899/* The tick type can be read atomically, so critical sections used when the
2900 * tick count is returned can be defined away. */
2901 #define portTICK_TYPE_ENTER_CRITICAL()
2902 #define portTICK_TYPE_EXIT_CRITICAL()
2903 #define portTICK_TYPE_SET_INTERRUPT_MASK_FROM_ISR() 0
2904 #define portTICK_TYPE_CLEAR_INTERRUPT_MASK_FROM_ISR( x ) ( void ) ( x )
2905#endif /* if ( portTICK_TYPE_IS_ATOMIC == 0 ) */
2906
2907/* Definitions to allow backward compatibility with FreeRTOS versions prior to
2908 * V8 if desired. */
2909#ifndef configENABLE_BACKWARD_COMPATIBILITY
2910 #define configENABLE_BACKWARD_COMPATIBILITY 1
2911#endif
2912
2913#ifndef configPRINTF
2914
2915/* configPRINTF() was not defined, so define it away to nothing. To use
2916 * configPRINTF() then define it as follows (where MyPrintFunction() is
2917 * provided by the application writer):
2918 *
2919 * void MyPrintFunction(const char *pcFormat, ... );
2920 #define configPRINTF( X ) MyPrintFunction X
2921 *
2922 * Then call like a standard printf() function, but placing brackets around
2923 * all parameters so they are passed as a single parameter. For example:
2924 * configPRINTF( ("Value = %d", MyVariable) ); */
2925 #define configPRINTF( X )
2926#endif
2927
2928#ifndef configMAX
2929
2930/* The application writer has not provided their own MAX macro, so define
2931 * the following generic implementation. */
2932 #define configMAX( a, b ) ( ( ( a ) > ( b ) ) ? ( a ) : ( b ) )
2933#endif
2934
2935#ifndef configMIN
2936
2937/* The application writer has not provided their own MIN macro, so define
2938 * the following generic implementation. */
2939 #define configMIN( a, b ) ( ( ( a ) < ( b ) ) ? ( a ) : ( b ) )
2940#endif
2941
2942#if configENABLE_BACKWARD_COMPATIBILITY == 1
2943 #define eTaskStateGet eTaskGetState
2944 #define portTickType TickType_t
2945 #define xTaskHandle TaskHandle_t
2946 #define xQueueHandle QueueHandle_t
2947 #define xSemaphoreHandle SemaphoreHandle_t
2948 #define xQueueSetHandle QueueSetHandle_t
2949 #define xQueueSetMemberHandle QueueSetMemberHandle_t
2950 #define xTimeOutType TimeOut_t
2951 #define xMemoryRegion MemoryRegion_t
2952 #define xTaskParameters TaskParameters_t
2953 #define xTaskStatusType TaskStatus_t
2954 #define xTimerHandle TimerHandle_t
2955 #define xCoRoutineHandle CoRoutineHandle_t
2956 #define pdTASK_HOOK_CODE TaskHookFunction_t
2957 #define portTICK_RATE_MS portTICK_PERIOD_MS
2958 #define pcTaskGetTaskName pcTaskGetName
2959 #define pcTimerGetTimerName pcTimerGetName
2960 #define pcQueueGetQueueName pcQueueGetName
2961 #define vTaskGetTaskInfo vTaskGetInfo
2962 #define xTaskGetIdleRunTimeCounter ulTaskGetIdleRunTimeCounter
2963
2964/* Backward compatibility within the scheduler code only - these definitions
2965 * are not really required but are included for completeness. */
2966 #define tmrTIMER_CALLBACK TimerCallbackFunction_t
2967 #define pdTASK_CODE TaskFunction_t
2968 #define xListItem ListItem_t
2969 #define xList List_t
2970
2971/* For libraries that break the list data hiding, and access list structure
2972 * members directly (which is not supposed to be done). */
2973 #define pxContainer pvContainer
2974#endif /* configENABLE_BACKWARD_COMPATIBILITY */
2975
2976#if ( configUSE_ALTERNATIVE_API != 0 )
2977 #error The alternative API was deprecated some time ago, and was removed in FreeRTOS V9.0 0
2978#endif
2979
2980/* Set configUSE_TASK_FPU_SUPPORT to 0 to omit floating point support even
2981 * if floating point hardware is otherwise supported by the FreeRTOS port in use.
2982 * This constant is not supported by all FreeRTOS ports that include floating
2983 * point support. */
2984#ifndef configUSE_TASK_FPU_SUPPORT
2985 #define configUSE_TASK_FPU_SUPPORT 1
2986#endif
2987
2988/* Set configENABLE_MPU to 1 to enable MPU support and 0 to disable it. This is
2989 * currently used in ARMv8M ports. */
2990#ifndef configENABLE_MPU
2991 #define configENABLE_MPU 0
2992#endif
2993
2994/* Set configENABLE_FPU to 1 to enable FPU support and 0 to disable it. This is
2995 * currently used in ARMv8M ports. */
2996#ifndef configENABLE_FPU
2997 #define configENABLE_FPU 1
2998#endif
2999
3000/* Set configENABLE_MVE to 1 to enable MVE support and 0 to disable it. This is
3001 * currently used in ARMv8M ports. */
3002#ifndef configENABLE_MVE
3003 #define configENABLE_MVE 0
3004#endif
3005
3006/* Set configENABLE_TRUSTZONE to 1 enable TrustZone support and 0 to disable it.
3007 * This is currently used in ARMv8M ports. */
3008#ifndef configENABLE_TRUSTZONE
3009 #define configENABLE_TRUSTZONE 1
3010#endif
3011
3012/* Set configRUN_FREERTOS_SECURE_ONLY to 1 to run the FreeRTOS ARMv8M port on
3013 * the Secure Side only. */
3014#ifndef configRUN_FREERTOS_SECURE_ONLY
3015 #define configRUN_FREERTOS_SECURE_ONLY 0
3016#endif
3017
3018#ifndef configRUN_ADDITIONAL_TESTS
3019 #define configRUN_ADDITIONAL_TESTS 0
3020#endif
3021
3022/* The following config allows infinite loop control. For example, control the
3023 * infinite loop in idle task function when performing unit tests. */
3024#ifndef configCONTROL_INFINITE_LOOP
3025 #define configCONTROL_INFINITE_LOOP()
3026#endif
3027
3028/* Sometimes the FreeRTOSConfig.h settings only allow a task to be created using
3029 * dynamically allocated RAM, in which case when any task is deleted it is known
3030 * that both the task's stack and TCB need to be freed. Sometimes the
3031 * FreeRTOSConfig.h settings only allow a task to be created using statically
3032 * allocated RAM, in which case when any task is deleted it is known that neither
3033 * the task's stack or TCB should be freed. Sometimes the FreeRTOSConfig.h
3034 * settings allow a task to be created using either statically or dynamically
3035 * allocated RAM, in which case a member of the TCB is used to record whether the
3036 * stack and/or TCB were allocated statically or dynamically, so when a task is
3037 * deleted the RAM that was allocated dynamically is freed again and no attempt is
3038 * made to free the RAM that was allocated statically.
3039 * tskSTATIC_AND_DYNAMIC_ALLOCATION_POSSIBLE is only true if it is possible for a
3040 * task to be created using either statically or dynamically allocated RAM. Note
3041 * that if portUSING_MPU_WRAPPERS is 1 then a protected task can be created with
3042 * a statically allocated stack and a dynamically allocated TCB.
3043 *
3044 * The following table lists various combinations of portUSING_MPU_WRAPPERS,
3045 * configSUPPORT_DYNAMIC_ALLOCATION and configSUPPORT_STATIC_ALLOCATION and
3046 * when it is possible to have both static and dynamic allocation:
3047 * +-----+---------+--------+-----------------------------+-----------------------------------+------------------+-----------+
3048 * | MPU | Dynamic | Static | Available Functions | Possible Allocations | Both Dynamic and | Need Free |
3049 * | | | | | | Static Possible | |
3050 * +-----+---------+--------+-----------------------------+-----------------------------------+------------------+-----------+
3051 * | 0 | 0 | 1 | xTaskCreateStatic | TCB - Static, Stack - Static | No | No |
3052 * +-----|---------|--------|-----------------------------|-----------------------------------|------------------|-----------|
3053 * | 0 | 1 | 0 | xTaskCreate | TCB - Dynamic, Stack - Dynamic | No | Yes |
3054 * +-----|---------|--------|-----------------------------|-----------------------------------|------------------|-----------|
3055 * | 0 | 1 | 1 | xTaskCreate, | 1. TCB - Dynamic, Stack - Dynamic | Yes | Yes |
3056 * | | | | xTaskCreateStatic | 2. TCB - Static, Stack - Static | | |
3057 * +-----|---------|--------|-----------------------------|-----------------------------------|------------------|-----------|
3058 * | 1 | 0 | 1 | xTaskCreateStatic, | TCB - Static, Stack - Static | No | No |
3059 * | | | | xTaskCreateRestrictedStatic | | | |
3060 * +-----|---------|--------|-----------------------------|-----------------------------------|------------------|-----------|
3061 * | 1 | 1 | 0 | xTaskCreate, | 1. TCB - Dynamic, Stack - Dynamic | Yes | Yes |
3062 * | | | | xTaskCreateRestricted | 2. TCB - Dynamic, Stack - Static | | |
3063 * +-----|---------|--------|-----------------------------|-----------------------------------|------------------|-----------|
3064 * | 1 | 1 | 1 | xTaskCreate, | 1. TCB - Dynamic, Stack - Dynamic | Yes | Yes |
3065 * | | | | xTaskCreateStatic, | 2. TCB - Dynamic, Stack - Static | | |
3066 * | | | | xTaskCreateRestricted, | 3. TCB - Static, Stack - Static | | |
3067 * | | | | xTaskCreateRestrictedStatic | | | |
3068 * +-----+---------+--------+-----------------------------+-----------------------------------+------------------+-----------+
3069 */
3070#define tskSTATIC_AND_DYNAMIC_ALLOCATION_POSSIBLE \
3071 ( ( ( portUSING_MPU_WRAPPERS == 0 ) && ( configSUPPORT_DYNAMIC_ALLOCATION == 1 ) && ( configSUPPORT_STATIC_ALLOCATION == 1 ) ) || \
3072 ( ( portUSING_MPU_WRAPPERS == 1 ) && ( configSUPPORT_DYNAMIC_ALLOCATION == 1 ) ) )
3073
3074/*
3075 * In line with software engineering best practice, FreeRTOS implements a strict
3076 * data hiding policy, so the real structures used by FreeRTOS to maintain the
3077 * state of tasks, queues, semaphores, etc. are not accessible to the application
3078 * code. However, if the application writer wants to statically allocate such
3079 * an object then the size of the object needs to be known. Dummy structures
3080 * that are guaranteed to have the same size and alignment requirements of the
3081 * real objects are used for this purpose. The dummy list and list item
3082 * structures below are used for inclusion in such a dummy structure.
3083 */
3085{
3086 #if ( configUSE_LIST_DATA_INTEGRITY_CHECK_BYTES == 1 )
3087 TickType_t xDummy1;
3088 #endif
3090 void * pvDummy3[ 4 ];
3091 #if ( configUSE_LIST_DATA_INTEGRITY_CHECK_BYTES == 1 )
3092 TickType_t xDummy4;
3093 #endif
3094};
3096
3097#if ( configUSE_MINI_LIST_ITEM == 1 )
3098 /* See the comments above the struct xSTATIC_LIST_ITEM definition. */
3099 struct xSTATIC_MINI_LIST_ITEM
3100 {
3101 #if ( configUSE_LIST_DATA_INTEGRITY_CHECK_BYTES == 1 )
3102 TickType_t xDummy1;
3103 #endif
3104 TickType_t xDummy2;
3105 void * pvDummy3[ 2 ];
3106 };
3107 typedef struct xSTATIC_MINI_LIST_ITEM StaticMiniListItem_t;
3108#else /* if ( configUSE_MINI_LIST_ITEM == 1 ) */
3110#endif /* if ( configUSE_MINI_LIST_ITEM == 1 ) */
3111
3112/* See the comments above the struct xSTATIC_LIST_ITEM definition. */
3113typedef struct xSTATIC_LIST
3114{
3115 #if ( configUSE_LIST_DATA_INTEGRITY_CHECK_BYTES == 1 )
3116 TickType_t xDummy1;
3117 #endif
3119 void * pvDummy3;
3121 #if ( configUSE_LIST_DATA_INTEGRITY_CHECK_BYTES == 1 )
3122 TickType_t xDummy5;
3123 #endif
3125
3126/*
3127 * In line with software engineering best practice, especially when supplying a
3128 * library that is likely to change in future versions, FreeRTOS implements a
3129 * strict data hiding policy. This means the Task structure used internally by
3130 * FreeRTOS is not accessible to application code. However, if the application
3131 * writer wants to statically allocate the memory required to create a task then
3132 * the size of the task object needs to be known. The StaticTask_t structure
3133 * below is provided for this purpose. Its sizes and alignment requirements are
3134 * guaranteed to match those of the genuine structure, no matter which
3135 * architecture is being used, and no matter how the values in FreeRTOSConfig.h
3136 * are set. Its contents are somewhat obfuscated in the hope users will
3137 * recognise that it would be unwise to make direct use of the structure members.
3138 */
3139typedef struct xSTATIC_TCB
3140{
3141 void * pxDummy1;
3142 #if ( portUSING_MPU_WRAPPERS == 1 )
3143 xMPU_SETTINGS xDummy2;
3144 #endif
3145 #if ( configUSE_CORE_AFFINITY == 1 ) && ( configNUMBER_OF_CORES > 1 )
3146 UBaseType_t uxDummy26;
3147 #endif
3150 void * pxDummy6;
3151 #if ( configNUMBER_OF_CORES > 1 )
3152 BaseType_t xDummy23;
3153 UBaseType_t uxDummy24;
3154 #endif
3156 #if ( configUSE_TASK_PREEMPTION_DISABLE == 1 )
3157 BaseType_t xDummy25;
3158 #endif
3159 #if ( ( portSTACK_GROWTH > 0 ) || ( configRECORD_STACK_HIGH_ADDRESS == 1 ) )
3160 void * pxDummy8;
3161 #endif
3162 #if ( portCRITICAL_NESTING_IN_TCB == 1 )
3163 UBaseType_t uxDummy9;
3164 #endif
3165 #if ( configUSE_TRACE_FACILITY == 1 )
3166 UBaseType_t uxDummy10[ 2 ];
3167 #endif
3168 #if ( configUSE_MUTEXES == 1 )
3169 UBaseType_t uxDummy12[ 2 ];
3170 #endif
3171 #if ( configUSE_APPLICATION_TASK_TAG == 1 )
3172 void * pxDummy14;
3173 #endif
3174 #if ( configNUM_THREAD_LOCAL_STORAGE_POINTERS > 0 )
3175 void * pvDummy15[ configNUM_THREAD_LOCAL_STORAGE_POINTERS ];
3176 #endif
3177 #if ( configGENERATE_RUN_TIME_STATS == 1 )
3179 #endif
3180 #if ( configUSE_C_RUNTIME_TLS_SUPPORT == 1 )
3181 configTLS_BLOCK_TYPE xDummy17;
3182 #endif
3183 #if ( configUSE_TASK_NOTIFICATIONS == 1 )
3184 uint32_t ulDummy18[ configTASK_NOTIFICATION_ARRAY_ENTRIES ];
3185 uint8_t ucDummy19[ configTASK_NOTIFICATION_ARRAY_ENTRIES ];
3186 #endif
3187 #if ( tskSTATIC_AND_DYNAMIC_ALLOCATION_POSSIBLE != 0 )
3188 uint8_t uxDummy20;
3189 #endif
3190
3191 #if ( INCLUDE_xTaskAbortDelay == 1 )
3192 uint8_t ucDummy21;
3193 #endif
3194 #if ( configUSE_POSIX_ERRNO == 1 )
3195 int iDummy22;
3196 #endif
3198
3199/*
3200 * In line with software engineering best practice, especially when supplying a
3201 * library that is likely to change in future versions, FreeRTOS implements a
3202 * strict data hiding policy. This means the Queue structure used internally by
3203 * FreeRTOS is not accessible to application code. However, if the application
3204 * writer wants to statically allocate the memory required to create a queue
3205 * then the size of the queue object needs to be known. The StaticQueue_t
3206 * structure below is provided for this purpose. Its sizes and alignment
3207 * requirements are guaranteed to match those of the genuine structure, no
3208 * matter which architecture is being used, and no matter how the values in
3209 * FreeRTOSConfig.h are set. Its contents are somewhat obfuscated in the hope
3210 * users will recognise that it would be unwise to make direct use of the
3211 * structure members.
3212 */
3213typedef struct xSTATIC_QUEUE
3214{
3215 void * pvDummy1[ 3 ];
3216
3217 union
3218 {
3219 void * pvDummy2;
3221 } u;
3222
3225 uint8_t ucDummy5[ 2 ];
3226
3227 #if ( ( configSUPPORT_STATIC_ALLOCATION == 1 ) && ( configSUPPORT_DYNAMIC_ALLOCATION == 1 ) )
3228 uint8_t ucDummy6;
3229 #endif
3230
3231 #if ( configUSE_QUEUE_SETS == 1 )
3232 void * pvDummy7;
3233 #endif
3234
3235 #if ( configUSE_TRACE_FACILITY == 1 )
3236 UBaseType_t uxDummy8;
3237 uint8_t ucDummy9;
3238 #endif
3241
3242/*
3243 * In line with software engineering best practice, especially when supplying a
3244 * library that is likely to change in future versions, FreeRTOS implements a
3245 * strict data hiding policy. This means the event group structure used
3246 * internally by FreeRTOS is not accessible to application code. However, if
3247 * the application writer wants to statically allocate the memory required to
3248 * create an event group then the size of the event group object needs to be
3249 * know. The StaticEventGroup_t structure below is provided for this purpose.
3250 * Its sizes and alignment requirements are guaranteed to match those of the
3251 * genuine structure, no matter which architecture is being used, and no matter
3252 * how the values in FreeRTOSConfig.h are set. Its contents are somewhat
3253 * obfuscated in the hope users will recognise that it would be unwise to make
3254 * direct use of the structure members.
3255 */
3257{
3260
3261 #if ( configUSE_TRACE_FACILITY == 1 )
3262 UBaseType_t uxDummy3;
3263 #endif
3264
3265 #if ( ( configSUPPORT_STATIC_ALLOCATION == 1 ) && ( configSUPPORT_DYNAMIC_ALLOCATION == 1 ) )
3266 uint8_t ucDummy4;
3267 #endif
3269
3270/*
3271 * In line with software engineering best practice, especially when supplying a
3272 * library that is likely to change in future versions, FreeRTOS implements a
3273 * strict data hiding policy. This means the software timer structure used
3274 * internally by FreeRTOS is not accessible to application code. However, if
3275 * the application writer wants to statically allocate the memory required to
3276 * create a software timer then the size of the queue object needs to be known.
3277 * The StaticTimer_t structure below is provided for this purpose. Its sizes
3278 * and alignment requirements are guaranteed to match those of the genuine
3279 * structure, no matter which architecture is being used, and no matter how the
3280 * values in FreeRTOSConfig.h are set. Its contents are somewhat obfuscated in
3281 * the hope users will recognise that it would be unwise to make direct use of
3282 * the structure members.
3283 */
3284typedef struct xSTATIC_TIMER
3285{
3286 void * pvDummy1;
3289 void * pvDummy5;
3291 #if ( configUSE_TRACE_FACILITY == 1 )
3292 UBaseType_t uxDummy7;
3293 #endif
3294 uint8_t ucDummy8;
3296
3297/*
3298 * In line with software engineering best practice, especially when supplying a
3299 * library that is likely to change in future versions, FreeRTOS implements a
3300 * strict data hiding policy. This means the stream buffer structure used
3301 * internally by FreeRTOS is not accessible to application code. However, if
3302 * the application writer wants to statically allocate the memory required to
3303 * create a stream buffer then the size of the stream buffer object needs to be
3304 * known. The StaticStreamBuffer_t structure below is provided for this
3305 * purpose. Its size and alignment requirements are guaranteed to match those
3306 * of the genuine structure, no matter which architecture is being used, and
3307 * no matter how the values in FreeRTOSConfig.h are set. Its contents are
3308 * somewhat obfuscated in the hope users will recognise that it would be unwise
3309 * to make direct use of the structure members.
3310 */
3312{
3313 size_t uxDummy1[ 4 ];
3314 void * pvDummy2[ 3 ];
3315 uint8_t ucDummy3;
3316 #if ( configUSE_TRACE_FACILITY == 1 )
3317 UBaseType_t uxDummy4;
3318 #endif
3319 #if ( configUSE_SB_COMPLETED_CALLBACK == 1 )
3320 void * pvDummy5[ 2 ];
3321 #endif
3324
3325/* Message buffers are built on stream buffers. */
3327
3328/* *INDENT-OFF* */
3329#ifdef __cplusplus
3330 }
3331#endif
3332/* *INDENT-ON* */
3333
3334#endif /* INC_FREERTOS_H */
struct xSTATIC_LIST_ITEM StaticListItem_t
Definition FreeRTOS.h:3095
struct xSTATIC_QUEUE StaticQueue_t
struct xSTATIC_STREAM_BUFFER StaticStreamBuffer_t
#define configTASK_NOTIFICATION_ARRAY_ENTRIES
Definition FreeRTOS.h:2783
StaticQueue_t StaticSemaphore_t
Definition FreeRTOS.h:3240
struct xSTATIC_TIMER StaticTimer_t
struct xSTATIC_LIST_ITEM StaticMiniListItem_t
Definition FreeRTOS.h:3109
#define configNUM_THREAD_LOCAL_STORAGE_POINTERS
Definition FreeRTOS.h:306
struct xSTATIC_LIST StaticList_t
#define configMAX_TASK_NAME_LEN
Definition FreeRTOS.h:356
#define configRUN_TIME_COUNTER_TYPE
Definition FreeRTOS.h:2844
StaticStreamBuffer_t StaticMessageBuffer_t
Definition FreeRTOS.h:3326
struct xSTATIC_TCB StaticTask_t
struct xSTATIC_EVENT_GROUP StaticEventGroup_t
#define configTLS_BLOCK_TYPE
Definition newlib-freertos.h:47
long BaseType_t
Definition portmacro.h:59
unsigned long UBaseType_t
Definition portmacro.h:60
uint16_t TickType_t
Definition portmacro.h:63
void(* TaskFunction_t)(void *arg)
Definition projdefs.h:36
Definition FreeRTOS.h:3257
StaticList_t xDummy2
Definition FreeRTOS.h:3259
TickType_t xDummy1
Definition FreeRTOS.h:3258
Definition FreeRTOS.h:3085
TickType_t xDummy2
Definition FreeRTOS.h:3089
void * pvDummy3[4]
Definition FreeRTOS.h:3090
Definition FreeRTOS.h:3114
UBaseType_t uxDummy2
Definition FreeRTOS.h:3118
StaticMiniListItem_t xDummy4
Definition FreeRTOS.h:3120
void * pvDummy3
Definition FreeRTOS.h:3119
Definition FreeRTOS.h:3214
UBaseType_t uxDummy4[3]
Definition FreeRTOS.h:3224
uint8_t ucDummy5[2]
Definition FreeRTOS.h:3225
void * pvDummy1[3]
Definition FreeRTOS.h:3215
UBaseType_t uxDummy2
Definition FreeRTOS.h:3220
void * pvDummy2
Definition FreeRTOS.h:3219
StaticList_t xDummy3[2]
Definition FreeRTOS.h:3223
union xSTATIC_QUEUE::@141162302147241310207334174225120200032313157331 u
Definition FreeRTOS.h:3312
UBaseType_t uxDummy6
Definition FreeRTOS.h:3322
void * pvDummy2[3]
Definition FreeRTOS.h:3314
uint8_t ucDummy3
Definition FreeRTOS.h:3315
size_t uxDummy1[4]
Definition FreeRTOS.h:3313
Definition FreeRTOS.h:3140
void * pxDummy1
Definition FreeRTOS.h:3141
uint8_t ucDummy7[configMAX_TASK_NAME_LEN]
Definition FreeRTOS.h:3155
void * pxDummy6
Definition FreeRTOS.h:3150
StaticListItem_t xDummy3[2]
Definition FreeRTOS.h:3148
UBaseType_t uxDummy5
Definition FreeRTOS.h:3149
Definition FreeRTOS.h:3285
void * pvDummy1
Definition FreeRTOS.h:3286
uint8_t ucDummy8
Definition FreeRTOS.h:3294
void * pvDummy5
Definition FreeRTOS.h:3289
TickType_t xDummy3
Definition FreeRTOS.h:3288
StaticListItem_t xDummy2
Definition FreeRTOS.h:3287
TaskFunction_t pvDummy6
Definition FreeRTOS.h:3290