|
1 | 1 | /* |
2 | | - * FreeRTOS Kernel V10.4.3 |
3 | | - * Copyright (C) 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved. |
| 2 | + * FreeRTOS Kernel V10.4.4 |
| 3 | + * Copyright (C) 2021 Amazon.com, Inc. or its affiliates. All Rights Reserved. |
| 4 | + * |
| 5 | + * SPDX-License-Identifier: MIT |
4 | 6 | * |
5 | 7 | * Permission is hereby granted, free of charge, to any person obtaining a copy of |
6 | 8 | * this software and associated documentation files (the "Software"), to deal in |
|
106 | 108 | #error Missing definition: configUSE_16_BIT_TICKS must be defined in FreeRTOSConfig.h as either 1 or 0. See the Configuration section of the FreeRTOS API documentation for details. |
107 | 109 | #endif |
108 | 110 |
|
109 | | -#ifndef configUSE_CO_ROUTINES |
110 | | - #define configUSE_CO_ROUTINES 0 |
111 | | -#endif |
112 | | - |
113 | 111 | #ifndef INCLUDE_vTaskPrioritySet |
114 | 112 | #define INCLUDE_vTaskPrioritySet 0 |
115 | 113 | #endif |
|
126 | 124 | #define INCLUDE_vTaskSuspend 0 |
127 | 125 | #endif |
128 | 126 |
|
| 127 | +#ifdef INCLUDE_xTaskDelayUntil |
| 128 | + #ifdef INCLUDE_vTaskDelayUntil |
| 129 | + /* INCLUDE_vTaskDelayUntil was replaced by INCLUDE_xTaskDelayUntil. Backward |
| 130 | + * compatibility is maintained if only one or the other is defined, but |
| 131 | + * there is a conflict if both are defined. */ |
| 132 | + #error INCLUDE_vTaskDelayUntil and INCLUDE_xTaskDelayUntil are both defined. INCLUDE_vTaskDelayUntil is no longer required and should be removed |
| 133 | + #endif |
| 134 | +#endif |
| 135 | + |
| 136 | +#ifndef INCLUDE_xTaskDelayUntil |
| 137 | + #ifdef INCLUDE_vTaskDelayUntil |
| 138 | + /* If INCLUDE_vTaskDelayUntil is set but INCLUDE_xTaskDelayUntil is not then |
| 139 | + * the project's FreeRTOSConfig.h probably pre-dates the introduction of |
| 140 | + * xTaskDelayUntil and setting INCLUDE_xTaskDelayUntil to whatever |
| 141 | + * INCLUDE_vTaskDelayUntil is set to will ensure backward compatibility. |
| 142 | + */ |
| 143 | + #define INCLUDE_xTaskDelayUntil INCLUDE_vTaskDelayUntil |
| 144 | + #endif |
| 145 | +#endif |
| 146 | + |
129 | 147 | #ifndef INCLUDE_xTaskDelayUntil |
130 | 148 | #define INCLUDE_xTaskDelayUntil 0 |
131 | 149 | #endif |
|
178 | 196 | #define INCLUDE_xTaskGetCurrentTaskHandle 0 |
179 | 197 | #endif |
180 | 198 |
|
181 | | -#if configUSE_CO_ROUTINES != 0 |
182 | | - #ifndef configMAX_CO_ROUTINE_PRIORITIES |
183 | | - #error configMAX_CO_ROUTINE_PRIORITIES must be greater than or equal to 1. |
184 | | - #endif |
185 | | -#endif |
186 | | - |
187 | 199 | #ifndef configUSE_DAEMON_TASK_STARTUP_HOOK |
188 | 200 | #define configUSE_DAEMON_TASK_STARTUP_HOOK 0 |
189 | 201 | #endif |
|
955 | 967 |
|
956 | 968 | #ifndef configMIN |
957 | 969 |
|
958 | | -/* The application writer has not provided their own MAX macro, so define |
| 970 | +/* The application writer has not provided their own MIN macro, so define |
959 | 971 | * the following generic implementation. */ |
960 | 972 | #define configMIN( a, b ) ( ( ( a ) < ( b ) ) ? ( a ) : ( b ) ) |
961 | 973 | #endif |
|
973 | 985 | #define xTaskParameters TaskParameters_t |
974 | 986 | #define xTaskStatusType TaskStatus_t |
975 | 987 | #define xTimerHandle TimerHandle_t |
976 | | - #define xCoRoutineHandle CoRoutineHandle_t |
977 | 988 | #define pdTASK_HOOK_CODE TaskHookFunction_t |
978 | 989 | #define portTICK_RATE_MS portTICK_PERIOD_MS |
979 | 990 | #define pcTaskGetTaskName pcTaskGetName |
|
1030 | 1041 | #define configRUN_FREERTOS_SECURE_ONLY 0 |
1031 | 1042 | #endif |
1032 | 1043 |
|
| 1044 | +#ifndef configRUN_ADDITIONAL_TESTS |
| 1045 | + #define configRUN_ADDITIONAL_TESTS 0 |
| 1046 | +#endif |
| 1047 | + |
| 1048 | + |
1033 | 1049 | /* Sometimes the FreeRTOSConfig.h settings only allow a task to be created using |
1034 | 1050 | * dynamically allocated RAM, in which case when any task is deleted it is known |
1035 | 1051 | * that both the task's stack and TCB need to be freed. Sometimes the |
|
1081 | 1097 | * data hiding policy, so the real structures used by FreeRTOS to maintain the |
1082 | 1098 | * state of tasks, queues, semaphores, etc. are not accessible to the application |
1083 | 1099 | * code. However, if the application writer wants to statically allocate such |
1084 | | - * an object then the size of the object needs to be know. Dummy structures |
| 1100 | + * an object then the size of the object needs to be known. Dummy structures |
1085 | 1101 | * that are guaranteed to have the same size and alignment requirements of the |
1086 | 1102 | * real objects are used for this purpose. The dummy list and list item |
1087 | 1103 | * structures below are used for inclusion in such a dummy structure. |
@@ -1130,7 +1146,7 @@ typedef struct xSTATIC_LIST |
1130 | 1146 | * strict data hiding policy. This means the Task structure used internally by |
1131 | 1147 | * FreeRTOS is not accessible to application code. However, if the application |
1132 | 1148 | * writer wants to statically allocate the memory required to create a task then |
1133 | | - * the size of the task object needs to be know. The StaticTask_t structure |
| 1149 | + * the size of the task object needs to be known. The StaticTask_t structure |
1134 | 1150 | * below is provided for this purpose. Its sizes and alignment requirements are |
1135 | 1151 | * guaranteed to match those of the genuine structure, no matter which |
1136 | 1152 | * architecture is being used, and no matter how the values in FreeRTOSConfig.h |
@@ -1193,7 +1209,7 @@ typedef struct xSTATIC_TCB |
1193 | 1209 | * strict data hiding policy. This means the Queue structure used internally by |
1194 | 1210 | * FreeRTOS is not accessible to application code. However, if the application |
1195 | 1211 | * writer wants to statically allocate the memory required to create a queue |
1196 | | - * then the size of the queue object needs to be know. The StaticQueue_t |
| 1212 | + * then the size of the queue object needs to be known. The StaticQueue_t |
1197 | 1213 | * structure below is provided for this purpose. Its sizes and alignment |
1198 | 1214 | * requirements are guaranteed to match those of the genuine structure, no |
1199 | 1215 | * matter which architecture is being used, and no matter how the values in |
@@ -1264,7 +1280,7 @@ typedef struct xSTATIC_EVENT_GROUP |
1264 | 1280 | * strict data hiding policy. This means the software timer structure used |
1265 | 1281 | * internally by FreeRTOS is not accessible to application code. However, if |
1266 | 1282 | * the application writer wants to statically allocate the memory required to |
1267 | | - * create a software timer then the size of the queue object needs to be know. |
| 1283 | + * create a software timer then the size of the queue object needs to be known. |
1268 | 1284 | * The StaticTimer_t structure below is provided for this purpose. Its sizes |
1269 | 1285 | * and alignment requirements are guaranteed to match those of the genuine |
1270 | 1286 | * structure, no matter which architecture is being used, and no matter how the |
@@ -1292,12 +1308,12 @@ typedef struct xSTATIC_TIMER |
1292 | 1308 | * internally by FreeRTOS is not accessible to application code. However, if |
1293 | 1309 | * the application writer wants to statically allocate the memory required to |
1294 | 1310 | * create a stream buffer then the size of the stream buffer object needs to be |
1295 | | - * know. The StaticStreamBuffer_t structure below is provided for this purpose. |
1296 | | - * Its size and alignment requirements are guaranteed to match those of the |
1297 | | - * genuine structure, no matter which architecture is being used, and no matter |
1298 | | - * how the values in FreeRTOSConfig.h are set. Its contents are somewhat |
1299 | | - * obfuscated in the hope users will recognise that it would be unwise to make |
1300 | | - * direct use of the structure members. |
| 1311 | + * known. The StaticStreamBuffer_t structure below is provided for this |
| 1312 | + * purpose. Its size and alignment requirements are guaranteed to match those |
| 1313 | + * of the genuine structure, no matter which architecture is being used, and |
| 1314 | + * no matter how the values in FreeRTOSConfig.h are set. Its contents are |
| 1315 | + * somewhat obfuscated in the hope users will recognise that it would be unwise |
| 1316 | + * to make direct use of the structure members. |
1301 | 1317 | */ |
1302 | 1318 | typedef struct xSTATIC_STREAM_BUFFER |
1303 | 1319 | { |
|
0 commit comments