1 <?xml version="1.0" encoding="utf-8"?>
3 <package schemaVersion="1.4" xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="PACK.xsd">
5 <name>CMSIS-FreeRTOS</name>
6 <description>Bundle of FreeRTOS for Cortex-M and Cortex-A</description>
7 <url>http://www.keil.com/pack/</url>
8 <license>License/license.txt</license>
11 <release version="10.2.0" date="2019-04-12">
13 Maintenance for CMSIS 5.4.0:
14 - Updated to CMSIS RTOS2 API 2.1.3
15 - Updated Arm standard C library interface
16 - Added configuration for the Event Recorder
17 - Added TrustZone example for Armv8M using RTOS2 API
18 - Enhanced FreeRTOS component viewer
19 - Corrected osDelayUntil execution duration
20 - Corrected SysTick_Handler execution when kernel is not started
21 - Corrected critical section for osKernelGetSysTimerCount
23 <release version="10.0.1" date="2018-02-20">
25 Maintenance for CMSIS 5.3.0:
26 - Added queue registry support to CMSIS:RTOS2:FreeRTOS component.
27 - Updated CMSIS-FreeRTOS component view to display queue, mutex and semaphore objects.
28 - Updated to CMSIS RTOS2 API 2.1.2 and OS Tick API 1.0.1.
29 - Fixed context switch response latency for API calls from ISR.
31 <release version="9.1.0" date="2017-08-11">
33 Maintenance release for CMSIS 5.1.0:
34 - Added support for ARM Compiler 6
35 - Updated Cortex-A example to use IRQ Controller component
36 - Corrected stack size allocation in RTOS2 osThreadNew function
37 - Added support for OS Tick component
38 - Added documentation for configuration options (native/CMSIS-RTOS2)
39 - Debug event TaskIncrementTick level set to Detail
41 <release version="9.0.0" date="2017-03-13">
42 Initial release version:
43 - native FreeRTOS component (RTOS: Variant=FreeRTOS)
44 - CMSIS-RTOS FreeRTOS for Cortex-M and Cortex-A9 (CMSIS:RTOS:FreeRTOS, CMSIS:RTOS2:FreeRTOS)
50 <package vendor="ARM" name="CMSIS" version="5.4.0-0"/>
55 <condition id="ARMCC6">
56 <accept Tcompiler="ARMCC" Toptions="AC6"/>
57 <accept Tcompiler="ARMCC" Toptions="AC6LTO"/>
59 <condition id="ARMCC">
60 <require Tcompiler="ARMCC" Toptions="AC5"/>
63 <require Tcompiler="GCC"/>
66 <require Tcompiler="IAR"/>
69 <condition id="ARMCC GCC">
70 <accept condition="ARMCC"/>
71 <accept condition="GCC"/>
73 <condition id="ARMCC6 GCC">
74 <accept condition="ARMCC6"/>
75 <accept condition="GCC"/>
77 <condition id="ARMCC GCC IAR">
78 <accept condition="ARMCC"/>
79 <accept condition="GCC"/>
80 <accept condition="IAR"/>
82 <condition id="ARMCC6 GCC IAR">
83 <accept condition="ARMCC6"/>
84 <accept condition="GCC"/>
85 <accept condition="IAR"/>
87 <condition id="ARMCC ARMCC6 GCC IAR">
88 <accept condition="ARMCC"/>
89 <accept condition="ARMCC6"/>
90 <accept condition="GCC"/>
91 <accept condition="IAR"/>
95 <description>Cortex-M0 or Cortex-M0+ or SC000 processor based device</description>
96 <accept Dcore="Cortex-M0"/>
97 <accept Dcore="Cortex-M0+"/>
98 <accept Dcore="SC000"/>
102 <description>Cortex-M3 or SC300 processor based device</description>
103 <accept Dcore="Cortex-M3"/>
104 <accept Dcore="SC300"/>
108 <description>Cortex-M4 processor based device</description>
109 <require Dcore="Cortex-M4" Dfpu="NO_FPU"/>
112 <condition id="CM4_FP">
113 <description>Cortex-M4 processor based device using Floating Point Unit</description>
114 <require Dcore="Cortex-M4" Dfpu="FPU"/>
118 <description>Cortex-M7 processor based device</description>
119 <require Dcore="Cortex-M7" Dfpu="NO_FPU"/>
122 <condition id="CM7_FP">
123 <description>Cortex-M7 processor based device using Floating Point Unit</description>
124 <accept Dcore="Cortex-M7" Dfpu="SP_FPU"/>
125 <accept Dcore="Cortex-M7" Dfpu="DP_FPU"/>
128 <condition id="CM7_SP">
129 <description>Cortex-M7 processor based device using Floating Point Unit (SP)</description>
130 <require Dcore="Cortex-M7" Dfpu="SP_FPU"/>
133 <condition id="CM7_DP">
134 <description>Cortex-M7 processor based device using Floating Point Unit (DP)</description>
135 <require Dcore="Cortex-M7" Dfpu="DP_FPU"/>
138 <condition id="CM33">
139 <description>Cortex-M33 processor based device</description>
140 <accept Dcore="Cortex-M33"/>
143 <condition id="CM33_NoTZ">
144 <description>Cortex-M33 processor based device without TrustZone</description>
145 <require condition="CM33"/>
146 <require Dtz="NO_TZ"/>
149 <condition id="CM33_TZ">
150 <description>Cortex-M33 processor based device with TrustZone</description>
151 <require condition="CM33"/>
155 <condition id="CA9_DP">
156 <description>Cortex-A9 processor based device using Floating Point Unit (DP)</description>
157 <require Dcore="Cortex-A9" Dfpu="DP_FPU"/>
160 <condition id="CoreM">
161 <description>Cortex-M processor based device</description>
162 <accept condition="CM0"/>
163 <accept condition="CM3"/>
164 <accept condition="CM4"/>
165 <accept condition="CM4_FP"/>
166 <accept condition="CM7"/>
167 <accept condition="CM7_FP"/>
168 <accept condition="CM33"/>
171 <condition id="CoreM_v6_v7">
172 <description>Cortex-M v6 and v7 processor based device</description>
173 <accept condition="CM0"/>
174 <accept condition="CM3"/>
175 <accept condition="CM4"/>
176 <accept condition="CM4_FP"/>
177 <accept condition="CM7"/>
178 <accept condition="CM7_FP"/>
181 <condition id="CoreM_v8">
182 <description>Cortex-M v8 processor based device</description>
183 <accept condition="CM33"/>
184 <accept condition="CM33_NoTZ"/>
185 <accept condition="CM33_TZ"/>
188 <condition id="CoreA">
189 <description>Cortex-A processor based device</description>
190 <accept condition="CA9_DP"/>
193 <!-- ARMCC compiler -->
194 <condition id="CM0_ARMCC">
195 <description>Cortex-M0 or Cortex-M0+ or SC000 processor based device for the ARM Compiler 5</description>
196 <require condition="CM0"/>
197 <require condition="ARMCC"/>
200 <condition id="CM3_ARMCC">
201 <description>Cortex-M3 or SC300 processor based device for the ARM Compiler 5</description>
202 <require condition="CM3"/>
203 <require condition="ARMCC"/>
206 <condition id="CM4_ARMCC">
207 <description>Cortex-M4 processor based device for the ARM Compiler 5</description>
208 <require condition="CM4"/>
209 <require condition="ARMCC"/>
211 <condition id="CM4_FP_ARMCC">
212 <description>Cortex-M4 processor based device using Floating Point Unit for the ARM Compiler 5</description>
213 <require condition="CM4_FP"/>
214 <require condition="ARMCC"/>
217 <condition id="CM7_ARMCC">
218 <description>Cortex-M7 processor based device for the ARM Compiler 5</description>
219 <require condition="CM7"/>
220 <require condition="ARMCC"/>
222 <condition id="CM7_SP_ARMCC">
223 <description>Cortex-M7 processor based device using Floating Point Unit (SP) for the ARM Compiler 5</description>
224 <require condition="CM7_SP"/>
225 <require condition="ARMCC"/>
227 <condition id="CM7_DP_ARMCC">
228 <description>Cortex-M7 processor based device using Floating Point Unit (DP) for the ARM Compiler 5</description>
229 <require condition="CM7_DP"/>
230 <require condition="ARMCC"/>
233 <condition id="CA9_DP_ARMCC">
234 <description>Cortex-A9 processor based device for the ARM Compiler 5</description>
235 <require condition="CA9_DP"/>
236 <require condition="ARMCC"/>
239 <!-- ARMCC6 compiler -->
240 <condition id="CM0_ARMCC6">
241 <description>Cortex-M0 or Cortex-M0+ or SC000 processor based device for the ARM Compiler 6</description>
242 <require condition="CM0"/>
243 <require condition="ARMCC6"/>
246 <condition id="CM3_ARMCC6">
247 <description>Cortex-M3 or SC300 processor based device for the ARM Compiler 6</description>
248 <require condition="CM3"/>
249 <require condition="ARMCC6"/>
252 <condition id="CM4_ARMCC6">
253 <description>Cortex-M4 processor based device for the ARM Compiler 6</description>
254 <require condition="CM4"/>
255 <require condition="ARMCC6"/>
257 <condition id="CM4_FP_ARMCC6">
258 <description>Cortex-M4 processor based device using Floating Point Unit for the ARM Compiler 6</description>
259 <require condition="CM4_FP"/>
260 <require condition="ARMCC6"/>
263 <condition id="CM7_ARMCC6">
264 <description>Cortex-M7 processor based device for the ARM Compiler 6</description>
265 <require condition="CM7"/>
266 <require condition="ARMCC6"/>
268 <condition id="CM7_SP_ARMCC6">
269 <description>Cortex-M7 processor based device using Floating Point Unit (SP) for the ARM Compiler 6</description>
270 <require condition="CM7_SP"/>
271 <require condition="ARMCC6"/>
273 <condition id="CM7_DP_ARMCC6">
274 <description>Cortex-M7 processor based device using Floating Point Unit (DP) for the ARM Compiler 6</description>
275 <require condition="CM7_DP"/>
276 <require condition="ARMCC6"/>
279 <condition id="CM33_ARMCC6">
280 <description>Cortex-M33 processor based device for the ARM Compiler 6</description>
281 <require condition="CM33"/>
282 <require condition="ARMCC6"/>
284 <condition id="CM33_NoTZ_ARMCC6">
285 <description>Cortex-M33 processor based device without TrustZone for the ARM Compiler 6</description>
286 <require condition="CM33_NoTZ"/>
287 <require condition="ARMCC6"/>
289 <condition id="CM33_TZ_ARMCC6">
290 <description>Cortex-M33 processor based device with TrustZone for the ARM Compiler 6</description>
291 <require condition="CM33_TZ"/>
292 <require condition="ARMCC6"/>
295 <condition id="CA9_DP_ARMCC6">
296 <description>Cortex-A9 processor based device for the ARM Compiler 6</description>
297 <require condition="CA9_DP"/>
298 <require condition="ARMCC6"/>
301 <!-- GCC compiler -->
302 <condition id="CM0_GCC">
303 <description>Cortex-M0 or Cortex-M0+ or SC000 processor based device for the GCC Compiler</description>
304 <require condition="CM0"/>
305 <require condition="GCC"/>
308 <condition id="CM3_GCC">
309 <description>Cortex-M3 or SC300 processor based device for the GCC Compiler</description>
310 <require condition="CM3"/>
311 <require condition="GCC"/>
314 <condition id="CM4_GCC">
315 <description>Cortex-M4 processor based device for the GCC Compiler</description>
316 <require condition="CM4"/>
317 <require condition="GCC"/>
319 <condition id="CM4_FP_GCC">
320 <description>Cortex-M4 processor based device using Floating Point Unit for the GCC Compiler</description>
321 <require condition="CM4_FP"/>
322 <require condition="GCC"/>
325 <condition id="CM7_GCC">
326 <description>Cortex-M7 processor based device for the GCC Compiler</description>
327 <require condition="CM7"/>
328 <require condition="GCC"/>
330 <condition id="CM7_SP_GCC">
331 <description>Cortex-M7 processor based device using Floating Point Unit (SP) for the GCC Compiler</description>
332 <require condition="CM7_SP"/>
333 <require condition="GCC"/>
335 <condition id="CM7_DP_GCC">
336 <description>Cortex-M7 processor based device using Floating Point Unit (DP) for the GCC Compiler</description>
337 <require condition="CM7_DP"/>
338 <require condition="GCC"/>
341 <condition id="CM33_GCC">
342 <description>Cortex-M33 processor based device for the GCC Compiler</description>
343 <require condition="CM33"/>
344 <require condition="GCC"/>
346 <condition id="CM33_NoTZ_GCC">
347 <description>Cortex-M33 processor based device without TrustZone for the GCC Compiler</description>
348 <require condition="CM33_NoTZ"/>
349 <require condition="GCC"/>
351 <condition id="CM33_TZ_GCC">
352 <description>Cortex-M33 processor based device with TrustZone for the GCC Compiler</description>
353 <require condition="CM33_TZ"/>
354 <require condition="GCC"/>
357 <condition id="CA9_DP_GCC">
358 <description>Cortex-A9 processor based device for the GCC Compiler</description>
359 <require condition="CA9_DP"/>
360 <require condition="GCC"/>
363 <!-- IAR compiler -->
364 <condition id="CM0_IAR">
365 <description>Cortex-M0 or Cortex-M0+ or SC000 processor based device for the IAR Compiler</description>
366 <require condition="CM0"/>
367 <require condition="IAR"/>
370 <condition id="CM3_IAR">
371 <description>Cortex-M3 or SC300 processor based device for the IAR Compiler</description>
372 <require condition="CM3"/>
373 <require condition="IAR"/>
376 <condition id="CM4_IAR">
377 <description>Cortex-M4 processor based device for the IAR Compiler</description>
378 <require condition="CM4"/>
379 <require condition="IAR"/>
381 <condition id="CM4_FP_IAR">
382 <description>Cortex-M4 processor based device using Floating Point Unit for the IAR Compiler</description>
383 <require condition="CM4_FP"/>
384 <require condition="IAR"/>
387 <condition id="CM7_IAR">
388 <description>Cortex-M7 processor based device for the IAR Compiler</description>
389 <require condition="CM7"/>
390 <require condition="IAR"/>
392 <condition id="CM7_SP_IAR">
393 <description>Cortex-M7 processor based device using Floating Point Unit (SP) for the IAR Compiler</description>
394 <require condition="CM7_SP"/>
395 <require condition="IAR"/>
397 <condition id="CM7_DP_IAR">
398 <description>Cortex-M7 processor based device using Floating Point Unit (DP) for the IAR Compiler</description>
399 <require condition="CM7_DP"/>
400 <require condition="IAR"/>
403 <condition id="CM33_IAR">
404 <description>Cortex-M33 processor based device for the IAR Compiler</description>
405 <require condition="CM33"/>
406 <require condition="IAR"/>
408 <condition id="CM33_NoTZ_IAR">
409 <description>Cortex-M33 processor based device without TrustZone for the IAR Compiler</description>
410 <require condition="CM33_NoTZ"/>
411 <require condition="IAR"/>
413 <condition id="CM33_TZ_IAR">
414 <description>Cortex-M33 processor based device with TrustZone for the IAR Compiler</description>
415 <require condition="CM33_TZ"/>
416 <require condition="IAR"/>
419 <condition id="CA9_DP_IAR">
420 <description>Cortex-A9 processor based device for the IAR Compiler</description>
421 <require condition="CA9_DP"/>
422 <require condition="IAR"/>
425 <condition id="CMSIS RTOS2 FreeRTOS">
426 <require Cclass="CMSIS" Cgroup="RTOS2" Csub="FreeRTOS"/>
429 <condition id="FreeRTOS Port Cortex-A">
430 <require condition="ARMCC ARMCC6 GCC IAR"/>
431 <require condition="CoreA"/>
433 <condition id="FreeRTOS Port Cortex-M">
434 <require condition="ARMCC ARMCC6 GCC IAR"/>
435 <require condition="CoreM_v6_v7"/>
437 <condition id="FreeRTOS Port Cortex-M v8">
438 <require condition="ARMCC6 GCC IAR"/>
439 <require condition="CoreM_v8"/>
443 <condition id="FreeRTOS">
444 <!-- All existing FreeRTOS ports for Cortex combined -->
445 <accept condition="FreeRTOS Port Cortex-A"/>
446 <accept condition="FreeRTOS Port Cortex-M"/>
447 <accept condition="FreeRTOS Port Cortex-M v8"/>
450 <condition id="FreeRTOS CM">
451 <accept condition="FreeRTOS Port Cortex-M"/>
452 <accept condition="FreeRTOS Port Cortex-M v8"/>
454 <require Cclass="Device" Cgroup="Startup"/>
455 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Config"/>
456 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Heap"/>
459 <condition id="FreeRTOS MPU CM3 CM4">
460 <require condition="ARMCC6 GCC"/>
461 <accept condition="CM3"/>
462 <accept condition="CM4"/>
464 <require Cclass="Device" Cgroup="Startup"/>
465 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Config"/>
466 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Heap"/>
467 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Event Groups"/>
468 <accept Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Message Buffer"/>
469 <accept Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Stream Buffer"/>
470 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Timers"/>
473 <condition id="FreeRTOS MPU CM4_FP">
474 <require condition="ARMCC ARMCC6 GCC IAR"/>
475 <require condition="CM4_FP"/>
477 <require Cclass="Device" Cgroup="Startup"/>
478 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Config"/>
479 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Heap"/>
480 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Event Groups"/>
481 <accept Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Message Buffer"/>
482 <accept Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Stream Buffer"/>
483 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Timers"/>
486 <condition id="FreeRTOS TZ">
487 <require condition="ARMCC6 GCC IAR"/>
488 <require condition="CM33_TZ"/>
490 <require Cclass="Device" Cgroup="Startup"/>
491 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Config"/>
492 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Heap"/>
495 <condition id="FreeRTOS TZ MPU">
496 <require condition="ARMCC6 GCC IAR"/>
497 <require condition="CM33_TZ"/>
499 <require Cclass="Device" Cgroup="Startup"/>
500 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Config"/>
501 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Heap"/>
502 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Event Groups"/>
503 <accept Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Message Buffer"/>
504 <accept Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Stream Buffer"/>
505 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Timers"/>
508 <condition id="FreeRTOS CA">
509 <require condition="ARMCC ARMCC6 GCC IAR"/>
510 <require condition="CoreA"/>
512 <require Cclass="Device" Cgroup="Startup"/>
513 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Config"/>
514 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Heap"/>
517 <condition id="FreeRTOS Core">
518 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Core"/>
521 <condition id="FreeRTOS TrustZone">
522 <require condition="CM33_TZ"/>
523 <!-- TrustZone Secure Context is a standalone component -->
524 <deny Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Config"/>
525 <deny Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Core"/>
526 <deny Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Coroutines"/>
527 <deny Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Heap"/>
528 <deny Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Event Groups"/>
529 <deny Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Message Buffer"/>
530 <deny Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Stream Buffer"/>
531 <deny Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Timers"/>
534 <condition id="FreeRTOS RTOS2 Core">
535 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Event Groups"/>
536 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Timers"/>
537 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Core"/>
538 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Config" Cvariant="CMSIS RTOS2"/>
541 <condition id="FreeRTOS RTOS2 CortexM">
542 <require condition="CoreM"/>
543 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Event Groups"/>
544 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Timers"/>
545 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Core"/>
546 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Config" Cvariant="CMSIS RTOS2"/>
549 <condition id="FreeRTOS RTOS2 CortexA">
550 <require condition="CoreA"/>
551 <require Cclass="Device" Cgroup="IRQ Controller"/>
552 <require Cclass="Device" Cgroup="OS Tick"/>
553 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Event Groups"/>
554 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Timers"/>
555 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Core"/>
556 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Config" Cvariant="CMSIS RTOS2"/>
562 <!-- CMSIS-RTOS FreeRTOS component -->
563 <component Cclass="CMSIS" Cgroup="RTOS" Csub="FreeRTOS" Cversion="10.2.0" Capiversion="1.0.0" condition="FreeRTOS RTOS2 Core">
564 <description>CMSIS-RTOS implementation for Cortex-M based on FreeRTOS</description>
566 #define RTE_CMSIS_RTOS /* CMSIS-RTOS */
567 #define RTE_CMSIS_RTOS_FreeRTOS /* CMSIS-RTOS FreeRTOS */
570 <file category="header" name="CMSIS/RTOS2/FreeRTOS/Include1/cmsis_os.h"/>
571 <file category="source" name="CMSIS/RTOS2/FreeRTOS/Source/cmsis_os1.c"/>
575 <!-- CMSIS-RTOS2 FreeRTOS component -->
576 <component Cclass="CMSIS" Cgroup="RTOS2" Csub="FreeRTOS" Cversion="10.2.0" Capiversion="2.1.3" condition="FreeRTOS RTOS2 CortexM">
577 <description>CMSIS-RTOS2 implementation for Cortex-M based on FreeRTOS</description>
579 #define RTE_CMSIS_RTOS2 /* CMSIS-RTOS2 */
580 #define RTE_CMSIS_RTOS2_FreeRTOS /* CMSIS-RTOS2 FreeRTOS */
583 <file category="doc" name="CMSIS/Documentation/General/html/index.html"/>
584 <file category="source" name="CMSIS/RTOS2/FreeRTOS/Source/cmsis_os2.c"/>
585 <file category="source" name="CMSIS/RTOS2/FreeRTOS/Source/ARM/clib_arm.c" condition="ARMCC"/>
586 <file category="source" name="CMSIS/RTOS2/FreeRTOS/Source/ARM/clib_arm.c" condition="ARMCC6"/>
588 <!-- OS Tick (SysTick) -->
589 <file category="source" name="CMSIS/RTOS2/FreeRTOS/Source/os_systick.c"/>
593 <component Cclass="CMSIS" Cgroup="RTOS2" Csub="FreeRTOS" Cversion="10.2.0" Capiversion="2.1.3" condition="FreeRTOS RTOS2 CortexA">
594 <description>CMSIS-RTOS2 implementation for Cortex-A based on FreeRTOS</description>
596 #define RTE_CMSIS_RTOS2 /* CMSIS-RTOS2 */
597 #define RTE_CMSIS_RTOS2_FreeRTOS /* CMSIS-RTOS2 FreeRTOS */
600 <file category="doc" name="CMSIS/Documentation/General/html/index.html"/>
601 <file category="source" name="CMSIS/RTOS2/FreeRTOS/Source/cmsis_os2.c"/>
602 <file category="source" name="CMSIS/RTOS2/FreeRTOS/Source/ARM/clib_arm.c" condition="ARMCC"/>
603 <file category="source" name="CMSIS/RTOS2/FreeRTOS/Source/ARM/clib_arm.c" condition="ARMCC6"/>
605 <file category="source" attr="config" name="CMSIS/RTOS2/FreeRTOS/Source/handlers.c" version="9.1.0"/>
609 <bundle Cbundle="FreeRTOS" Cclass="RTOS" Cversion="10.2.0">
610 <description>FreeRTOS Real Time Kernel</description>
611 <doc>https://www.freertos.org/Documentation/FreeRTOS_Reference_Manual_V10.0.0.pdf</doc>
613 <component Cgroup="Core" Cvariant="Cortex-M" isDefaultVariant="true" condition="FreeRTOS CM">
614 <description>Core API (Kernel, Tasks, Semaphores, Mutexes, Queues) for Cortex-M</description>
616 #define RTE_RTOS_FreeRTOS_CORE /* RTOS FreeRTOS Core */
619 <file category="include" name="Source/include/"/>
621 <file category="header" name="Source/include/FreeRTOS.h"/>
622 <file category="header" name="Source/include/queue.h"/>
623 <file category="header" name="Source/include/semphr.h"/>
624 <file category="header" name="Source/include/task.h"/>
626 <file category="source" name="Source/list.c"/>
627 <file category="source" name="Source/queue.c"/>
628 <file category="source" name="Source/tasks.c"/>
630 <file category="include" condition="CM0_ARMCC" name="Source/portable/RVDS/ARM_CM0/"/>
631 <file category="source" condition="CM0_ARMCC" name="Source/portable/RVDS/ARM_CM0/port.c"/>
632 <file category="include" condition="CM3_ARMCC" name="Source/portable/RVDS/ARM_CM3/"/>
633 <file category="source" condition="CM3_ARMCC" name="Source/portable/RVDS/ARM_CM3/port.c"/>
634 <file category="include" condition="CM4_ARMCC" name="Source/portable/RVDS/ARM_CM3/"/>
635 <file category="source" condition="CM4_ARMCC" name="Source/portable/RVDS/ARM_CM3/port.c"/>
636 <file category="include" condition="CM4_FP_ARMCC" name="Source/portable/RVDS/ARM_CM4F/"/>
637 <file category="source" condition="CM4_FP_ARMCC" name="Source/portable/RVDS/ARM_CM4F/port.c"/>
638 <file category="include" condition="CM7_ARMCC" name="Source/portable/RVDS/ARM_CM3/"/>
639 <file category="source" condition="CM7_ARMCC" name="Source/portable/RVDS/ARM_CM3/port.c"/>
640 <file category="include" condition="CM7_DP_ARMCC" name="Source/portable/RVDS/ARM_CM7/r0p1/"/>
641 <file category="source" condition="CM7_DP_ARMCC" name="Source/portable/RVDS/ARM_CM7/r0p1/port.c"/>
642 <file category="include" condition="CM7_SP_ARMCC" name="Source/portable/RVDS/ARM_CM7/r0p1/"/>
643 <file category="source" condition="CM7_SP_ARMCC" name="Source/portable/RVDS/ARM_CM7/r0p1/port.c"/>
645 <file category="include" condition="CM0_ARMCC6" name="Source/portable/GCC/ARM_CM0/"/>
646 <file category="source" condition="CM0_ARMCC6" name="Source/portable/GCC/ARM_CM0/port.c"/>
647 <file category="include" condition="CM3_ARMCC6" name="Source/portable/GCC/ARM_CM3/"/>
648 <file category="source" condition="CM3_ARMCC6" name="Source/portable/GCC/ARM_CM3/port.c"/>
649 <file category="include" condition="CM4_ARMCC6" name="Source/portable/GCC/ARM_CM3/"/>
650 <file category="source" condition="CM4_ARMCC6" name="Source/portable/GCC/ARM_CM3/port.c"/>
651 <file category="include" condition="CM4_FP_ARMCC6" name="Source/portable/GCC/ARM_CM4F/"/>
652 <file category="source" condition="CM4_FP_ARMCC6" name="Source/portable/GCC/ARM_CM4F/port.c"/>
653 <file category="include" condition="CM7_ARMCC6" name="Source/portable/GCC/ARM_CM3/"/>
654 <file category="source" condition="CM7_ARMCC6" name="Source/portable/GCC/ARM_CM3/port.c"/>
655 <file category="include" condition="CM7_DP_ARMCC6" name="Source/portable/GCC/ARM_CM7/r0p1/"/>
656 <file category="source" condition="CM7_DP_ARMCC6" name="Source/portable/GCC/ARM_CM7/r0p1/port.c"/>
657 <file category="include" condition="CM7_SP_ARMCC6" name="Source/portable/GCC/ARM_CM7/r0p1/"/>
658 <file category="source" condition="CM7_SP_ARMCC6" name="Source/portable/GCC/ARM_CM7/r0p1/port.c"/>
659 <file category="include" condition="CM33_ARMCC6" name="Source/portable/GCC/ARM_CM33_NTZ/non_secure/"/>
660 <file category="source" condition="CM33_ARMCC6" name="Source/portable/GCC/ARM_CM33_NTZ/non_secure/port.c"/>
661 <file category="source" condition="CM33_ARMCC6" name="Source/portable/GCC/ARM_CM33_NTZ/non_secure/portasm.c"/>
663 <file category="include" condition="CM0_GCC" name="Source/portable/GCC/ARM_CM0/"/>
664 <file category="source" condition="CM0_GCC" name="Source/portable/GCC/ARM_CM0/port.c"/>
665 <file category="include" condition="CM3_GCC" name="Source/portable/GCC/ARM_CM3/"/>
666 <file category="source" condition="CM3_GCC" name="Source/portable/GCC/ARM_CM3/port.c"/>
667 <file category="include" condition="CM4_GCC" name="Source/portable/GCC/ARM_CM3/"/>
668 <file category="source" condition="CM4_GCC" name="Source/portable/GCC/ARM_CM3/port.c"/>
669 <file category="include" condition="CM4_FP_GCC" name="Source/portable/GCC/ARM_CM4F/"/>
670 <file category="source" condition="CM4_FP_GCC" name="Source/portable/GCC/ARM_CM4F/port.c"/>
671 <file category="include" condition="CM7_GCC" name="Source/portable/GCC/ARM_CM3/"/>
672 <file category="source" condition="CM7_GCC" name="Source/portable/GCC/ARM_CM3/port.c"/>
673 <file category="include" condition="CM7_DP_GCC" name="Source/portable/GCC/ARM_CM7/r0p1/"/>
674 <file category="source" condition="CM7_DP_GCC" name="Source/portable/GCC/ARM_CM7/r0p1/port.c"/>
675 <file category="include" condition="CM7_SP_GCC" name="Source/portable/GCC/ARM_CM7/r0p1/"/>
676 <file category="source" condition="CM7_SP_GCC" name="Source/portable/GCC/ARM_CM7/r0p1/port.c"/>
677 <file category="include" condition="CM33_GCC" name="Source/portable/GCC/ARM_CM33_NTZ/non_secure/"/>
678 <file category="source" condition="CM33_GCC" name="Source/portable/GCC/ARM_CM33_NTZ/non_secure/port.c"/>
679 <file category="source" condition="CM33_GCC" name="Source/portable/GCC/ARM_CM33_NTZ/non_secure/portasm.c"/>
681 <file category="include" condition="CM0_IAR" name="Source/portable/IAR/ARM_CM0/"/>
682 <file category="source" condition="CM0_IAR" name="Source/portable/IAR/ARM_CM0/port.c"/>
683 <file category="sourceAsm" condition="CM0_IAR" name="Source/portable/IAR/ARM_CM0/portasm.s"/>
684 <file category="include" condition="CM3_IAR" name="Source/portable/IAR/ARM_CM3/"/>
685 <file category="source" condition="CM3_IAR" name="Source/portable/IAR/ARM_CM3/port.c"/>
686 <file category="sourceAsm" condition="CM3_IAR" name="Source/portable/IAR/ARM_CM3/portasm.s"/>
687 <file category="include" condition="CM4_IAR" name="Source/portable/IAR/ARM_CM3/"/>
688 <file category="source" condition="CM4_IAR" name="Source/portable/IAR/ARM_CM3/port.c"/>
689 <file category="sourceAsm" condition="CM4_IAR" name="Source/portable/IAR/ARM_CM3/portasm.s"/>
690 <file category="include" condition="CM4_FP_IAR" name="Source/portable/IAR/ARM_CM4F/"/>
691 <file category="source" condition="CM4_FP_IAR" name="Source/portable/IAR/ARM_CM4F/port.c"/>
692 <file category="sourceAsm" condition="CM4_FP_IAR" name="Source/portable/IAR/ARM_CM4F/portasm.s"/>
693 <file category="include" condition="CM7_IAR" name="Source/portable/IAR/ARM_CM3/"/>
694 <file category="source" condition="CM7_IAR" name="Source/portable/IAR/ARM_CM3/port.c"/>
695 <file category="sourceAsm" condition="CM7_IAR" name="Source/portable/IAR/ARM_CM3/portasm.s"/>
696 <file category="include" condition="CM7_DP_IAR" name="Source/portable/IAR/ARM_CM7/r0p1/"/>
697 <file category="source" condition="CM7_DP_IAR" name="Source/portable/IAR/ARM_CM7/r0p1/port.c"/>
698 <file category="sourceAsm" condition="CM7_DP_IAR" name="Source/portable/IAR/ARM_CM7/r0p1/portasm.s"/>
699 <file category="include" condition="CM7_SP_IAR" name="Source/portable/IAR/ARM_CM7/r0p1/"/>
700 <file category="source" condition="CM7_SP_IAR" name="Source/portable/IAR/ARM_CM7/r0p1/port.c"/>
701 <file category="sourceAsm" condition="CM7_SP_IAR" name="Source/portable/IAR/ARM_CM7/r0p1/portasm.s"/>
702 <file category="include" condition="CM33_IAR" name="Source/portable/IAR/ARM_CM33_NTZ/non_secure/"/>
703 <file category="source" condition="CM33_IAR" name="Source/portable/IAR/ARM_CM33_NTZ/non_secure/port.c"/>
704 <file category="source" condition="CM33_IAR" name="Source/portable/IAR/ARM_CM33_NTZ/non_secure/portasm.s"/>
706 <file category="include" name="CMSIS/RTOS2/FreeRTOS/Include/"/>
707 <file category="source" name="CMSIS/RTOS2/FreeRTOS/Source/freertos_evr.c"/>
708 <file category="other" name="CMSIS/RTOS2/FreeRTOS/FreeRTOS.scvd"/>
712 <component Cgroup="Core" Cvariant="Cortex-M MPU" condition="FreeRTOS MPU CM3 CM4">
713 <description>Core API (Kernel, Tasks, Semaphores, Mutexes, Queues) for Cortex-M using MPU</description>
715 #define RTE_RTOS_FreeRTOS_CORE /* RTOS FreeRTOS Core */
716 #define RTE_RTOS_FreeRTOS_CORE_MPU /* RTOS FreeRTOS Core with MPU support */
719 <file category="include" name="Source/include/"/>
721 <file category="header" name="Source/include/FreeRTOS.h"/>
722 <file category="header" name="Source/include/queue.h"/>
723 <file category="header" name="Source/include/semphr.h"/>
724 <file category="header" name="Source/include/task.h"/>
726 <file category="source" name="Source/list.c"/>
727 <file category="source" name="Source/queue.c"/>
728 <file category="source" name="Source/tasks.c"/>
729 <file category="source" name="Source/portable/Common/mpu_wrappers.c"/>
731 <file category="include" condition="ARMCC6 GCC" name="Source/portable/GCC/ARM_CM3_MPU/"/>
732 <file category="source" condition="ARMCC6 GCC" name="Source/portable/GCC/ARM_CM3_MPU/port.c"/>
734 <file category="include" name="CMSIS/RTOS2/FreeRTOS/Include/"/>
735 <file category="source" name="CMSIS/RTOS2/FreeRTOS/Source/freertos_evr.c"/>
736 <file category="other" name="CMSIS/RTOS2/FreeRTOS/FreeRTOS.scvd"/>
741 <component Cgroup="Core" Cvariant="Cortex-M MPU" condition="FreeRTOS MPU CM4_FP">
742 <description>Core API (Kernel, Tasks, Semaphores, Mutexes, Queues) for Cortex-M using MPU</description>
744 #define RTE_RTOS_FreeRTOS_CORE /* RTOS FreeRTOS Core */
745 #define RTE_RTOS_FreeRTOS_CORE_MPU /* RTOS FreeRTOS Core with MPU support */
748 <file category="include" name="Source/include/"/>
750 <file category="header" name="Source/include/FreeRTOS.h"/>
751 <file category="header" name="Source/include/queue.h"/>
752 <file category="header" name="Source/include/semphr.h"/>
753 <file category="header" name="Source/include/task.h"/>
755 <file category="source" name="Source/list.c"/>
756 <file category="source" name="Source/queue.c"/>
757 <file category="source" name="Source/tasks.c"/>
758 <file category="source" name="Source/portable/Common/mpu_wrappers.c"/>
760 <file category="include" condition="ARMCC" name="Source/portable/RVDS/ARM_CM4_MPU/"/>
761 <file category="source" condition="ARMCC" name="Source/portable/RVDS/ARM_CM4_MPU/port.c"/>
763 <file category="include" condition="ARMCC6" name="Source/portable/GCC/ARM_CM4_MPU/"/>
764 <file category="source" condition="ARMCC6" name="Source/portable/GCC/ARM_CM4_MPU/port.c"/>
766 <file category="include" condition="GCC" name="Source/portable/GCC/ARM_CM4_MPU/"/>
767 <file category="source" condition="GCC" name="Source/portable/GCC/ARM_CM4_MPU/port.c"/>
769 <file category="include" condition="IAR" name="Source/portable/IAR/ARM_CM4F_MPU/"/>
770 <file category="source" condition="IAR" name="Source/portable/IAR/ARM_CM4F_MPU/port.c"/>
771 <file category="sourceAsm" condition="IAR" name="Source/portable/IAR/ARM_CM4F_MPU/portasm.s"/>
773 <file category="include" name="CMSIS/RTOS2/FreeRTOS/Include/"/>
774 <file category="source" name="CMSIS/RTOS2/FreeRTOS/Source/freertos_evr.c"/>
775 <file category="other" name="CMSIS/RTOS2/FreeRTOS/FreeRTOS.scvd"/>
780 <component Cgroup="Core" Cvariant="Cortex-M Non-Secure" condition="FreeRTOS TZ">
781 <description>Core API (Kernel, Tasks, Semaphores, Mutexes, Queues) for Cortex-M using Non-Secure Domain (TrustZone)</description>
783 #define RTE_RTOS_FreeRTOS_CORE /* RTOS FreeRTOS Core */
784 #define RTE_RTOS_FreeRTOS_CORE_TZ_NS /* RTOS FreeRTOS Core with TrustZone Non-Secure Domain */
787 <file category="include" name="Source/include/"/>
789 <file category="header" name="Source/include/FreeRTOS.h"/>
790 <file category="header" name="Source/include/queue.h"/>
791 <file category="header" name="Source/include/semphr.h"/>
792 <file category="header" name="Source/include/task.h"/>
794 <file category="source" name="Source/list.c"/>
795 <file category="source" name="Source/queue.c"/>
796 <file category="source" name="Source/tasks.c"/>
798 <file category="include" condition="ARMCC6" name="Source/portable/GCC/ARM_CM33/secure/"/>
799 <file category="include" condition="ARMCC6" name="Source/portable/GCC/ARM_CM33/non_secure/"/>
800 <file category="source" condition="ARMCC6" name="Source/portable/GCC/ARM_CM33/non_secure/port.c"/>
801 <file category="source" condition="ARMCC6" name="Source/portable/GCC/ARM_CM33/non_secure/portasm.c"/>
803 <file category="include" condition="GCC" name="Source/portable/GCC/ARM_CM33/secure/"/>
804 <file category="include" condition="GCC" name="Source/portable/GCC/ARM_CM33/non_secure/"/>
805 <file category="source" condition="GCC" name="Source/portable/GCC/ARM_CM33/non_secure/port.c"/>
806 <file category="source" condition="GCC" name="Source/portable/GCC/ARM_CM33/non_secure/portasm.c"/>
808 <file category="include" condition="IAR" name="Source/portable/IAR/ARM_CM33/secure/"/>
809 <file category="include" condition="IAR" name="Source/portable/IAR/ARM_CM33/non_secure/"/>
810 <file category="source" condition="IAR" name="Source/portable/IAR/ARM_CM33/non_secure/port.c"/>
811 <file category="sourceAsm" condition="IAR" name="Source/portable/IAR/ARM_CM33/non_secure/portasm.s"/>
813 <file category="include" name="CMSIS/RTOS2/FreeRTOS/Include/"/>
814 <file category="source" name="CMSIS/RTOS2/FreeRTOS/Source/freertos_evr.c"/>
815 <file category="other" name="CMSIS/RTOS2/FreeRTOS/FreeRTOS.scvd"/>
820 <component Cgroup="Core" Cvariant="Cortex-M Non-Secure MPU" condition="FreeRTOS TZ MPU">
821 <description>Core API (Kernel, Tasks, Semaphores, Mutexes, Queues) for Cortex-M using Non-Secure Domain (TrustZone) and MPU</description>
823 #define RTE_RTOS_FreeRTOS_CORE /* RTOS FreeRTOS Core */
824 #define RTE_RTOS_FreeRTOS_CORE_MPU /* RTOS FreeRTOS Core with MPU support */
825 #define RTE_RTOS_FreeRTOS_CORE_TZ_NS /* RTOS FreeRTOS Core with TrustZone Non-Secure Domain */
828 <file category="include" name="Source/include/"/>
830 <file category="header" name="Source/include/FreeRTOS.h"/>
831 <file category="header" name="Source/include/queue.h"/>
832 <file category="header" name="Source/include/semphr.h"/>
833 <file category="header" name="Source/include/task.h"/>
835 <file category="source" name="Source/list.c"/>
836 <file category="source" name="Source/queue.c"/>
837 <file category="source" name="Source/tasks.c"/>
838 <file category="source" name="Source/portable/Common/mpu_wrappers.c"/>
840 <file category="include" condition="ARMCC6" name="Source/portable/GCC/ARM_CM33/secure/"/>
841 <file category="include" condition="ARMCC6" name="Source/portable/GCC/ARM_CM33/non_secure/"/>
842 <file category="source" condition="ARMCC6" name="Source/portable/GCC/ARM_CM33/non_secure/port.c"/>
843 <file category="source" condition="ARMCC6" name="Source/portable/GCC/ARM_CM33/non_secure/portasm.c"/>
845 <file category="include" condition="GCC" name="Source/portable/GCC/ARM_CM33/secure/"/>
846 <file category="include" condition="GCC" name="Source/portable/GCC/ARM_CM33/non_secure/"/>
847 <file category="source" condition="GCC" name="Source/portable/GCC/ARM_CM33/non_secure/port.c"/>
848 <file category="source" condition="GCC" name="Source/portable/GCC/ARM_CM33/non_secure/portasm.c"/>
850 <file category="include" condition="IAR" name="Source/portable/IAR/ARM_CM33/secure/"/>
851 <file category="include" condition="IAR" name="Source/portable/IAR/ARM_CM33/non_secure/"/>
852 <file category="source" condition="IAR" name="Source/portable/IAR/ARM_CM33/non_secure/port.c"/>
853 <file category="sourceAsm" condition="IAR" name="Source/portable/IAR/ARM_CM33/non_secure/portasm.s"/>
855 <file category="include" name="CMSIS/RTOS2/FreeRTOS/Include/"/>
856 <file category="source" name="CMSIS/RTOS2/FreeRTOS/Source/freertos_evr.c"/>
857 <file category="other" name="CMSIS/RTOS2/FreeRTOS/FreeRTOS.scvd"/>
861 <component Cgroup="Core" Cvariant="Cortex-A" isDefaultVariant="true" condition="FreeRTOS CA">
862 <description>Core API (Kernel, Tasks, Semaphores, Mutexes, Queues) for Cortex-A</description>
864 #define RTE_RTOS_FreeRTOS_CORE /* RTOS FreeRTOS Core */
867 <file category="include" name="Source/include/"/>
869 <file category="header" name="Source/include/FreeRTOS.h"/>
870 <file category="header" name="Source/include/queue.h"/>
871 <file category="header" name="Source/include/semphr.h"/>
872 <file category="header" name="Source/include/task.h"/>
874 <file category="source" name="Source/list.c"/>
875 <file category="source" name="Source/queue.c"/>
876 <file category="source" name="Source/tasks.c"/>
878 <file category="include" condition="ARMCC" name="Source/portable/RVDS/ARM_CA9/"/>
879 <file category="source" condition="ARMCC" name="Source/portable/RVDS/ARM_CA9/port.c"/>
880 <file category="sourceAsm" condition="ARMCC" name="Source/portable/RVDS/ARM_CA9/portASM.s"/>
882 <file category="include" condition="ARMCC6" name="Source/portable/GCC/ARM_CA9/"/>
883 <file category="source" condition="ARMCC6" name="Source/portable/GCC/ARM_CA9/port.c"/>
884 <file category="sourceAsm" condition="ARMCC6" name="Source/portable/GCC/ARM_CA9/portASM.S"/>
886 <file category="include" condition="GCC" name="Source/portable/GCC/ARM_CA9/"/>
887 <file category="source" condition="GCC" name="Source/portable/GCC/ARM_CA9/port.c"/>
888 <file category="sourceAsm" condition="GCC" name="Source/portable/GCC/ARM_CA9/portASM.S"/>
890 <file category="include" condition="IAR" name="Source/portable/IAR/ARM_CA9/"/>
891 <file category="source" condition="IAR" name="Source/portable/IAR/ARM_CA9/port.c"/>
892 <file category="sourceAsm" condition="IAR" name="Source/portable/IAR/ARM_CA9/portASM.s"/>
894 <file category="include" name="CMSIS/RTOS2/FreeRTOS/Include/"/>
895 <file category="source" name="CMSIS/RTOS2/FreeRTOS/Source/freertos_evr.c"/>
896 <file category="other" name="CMSIS/RTOS2/FreeRTOS/FreeRTOS.scvd"/>
900 <component Cgroup="Config" Cvariant="CMSIS RTOS2" condition="CMSIS RTOS2 FreeRTOS">
901 <description>FreeRTOS CMSIS-RTOS2 API configuration file</description>
903 #define RTE_RTOS_FreeRTOS_CONFIG_RTOS2 /* RTOS FreeRTOS Config for CMSIS RTOS2 API */
906 <file category="doc" name="CMSIS/Documentation/General/html/cre_freertos_proj.html#cmsis_freertos_config"/>
907 <file category="header" attr="config" name="CMSIS/RTOS2/FreeRTOS/Config/ARMCM/FreeRTOSConfig.h" version="10.2.0" condition="CoreM"/>
908 <file category="header" attr="config" name="CMSIS/RTOS2/FreeRTOS/Config/ARMCA/FreeRTOSConfig.h" version="10.2.0" condition="CoreA"/>
912 <component Cgroup="Config" Cvariant="FreeRTOS" condition="FreeRTOS Core">
913 <description>FreeRTOS API configuration file</description>
915 #define RTE_RTOS_FreeRTOS_CONFIG /* RTOS FreeRTOS Config for FreeRTOS API */
918 <file category="doc" name="CMSIS/Documentation/General/html/cre_freertos_proj.html#native_freertos_config"/>
919 <file category="header" attr="config" name="Config/ARMCM/FreeRTOSConfig.h" version="10.2.0" condition="CoreM"/>
920 <file category="header" attr="config" name="Config/ARMCA/FreeRTOSConfig.h" version="10.2.0" condition="CoreA"/>
924 <component Cgroup="Coroutines" condition="FreeRTOS Core">
925 <description>Co-routine API</description>
927 #define RTE_RTOS_FreeRTOS_COROUTINE /* RTOS FreeRTOS Co-routines */
930 <file category="header" name="Source/include/croutine.h"/>
931 <file category="source" name="Source/croutine.c"/>
935 <component Cgroup="Event Groups" condition="FreeRTOS Core">
936 <description>Event Group API</description>
938 #define RTE_RTOS_FreeRTOS_EVENTGROUPS /* RTOS FreeRTOS Event Groups */
941 <file category="header" name="Source/include/event_groups.h"/>
942 <file category="source" name="Source/event_groups.c"/>
946 <component Cgroup="Heap" Cvariant="Heap_1" condition="FreeRTOS Core">
947 <description>Very simple, does not permit memory to be freed.</description>
949 #define RTE_RTOS_FreeRTOS_HEAP_1 /* RTOS FreeRTOS Heap 1 */
952 <file category="source" name="Source/portable/MemMang/heap_1.c"/>
953 <file category="doc" name="http://www.freertos.org/a00111.html"/>
957 <component Cgroup="Heap" Cvariant="Heap_2" condition="FreeRTOS Core">
958 <description>Permits memory to be freed, but not does coalescence adjacent free memory blocks.</description>
960 #define RTE_RTOS_FreeRTOS_HEAP_2 /* RTOS FreeRTOS Heap 2 */
963 <file category="source" name="Source/portable/MemMang/heap_2.c"/>
964 <file category="doc" name="http://www.freertos.org/a00111.html"/>
968 <component Cgroup="Heap" Cvariant="Heap_3" condition="FreeRTOS Core">
969 <description>Wraps the standard malloc() and free() for thread safety.</description>
971 #define RTE_RTOS_FreeRTOS_HEAP_3 /* RTOS FreeRTOS Heap 3 */
974 <file category="source" name="Source/portable/MemMang/heap_3.c"/>
975 <file category="doc" name="http://www.freertos.org/a00111.html"/>
979 <component Cgroup="Heap" Cvariant="Heap_4" condition="FreeRTOS Core" isDefaultVariant="true">
980 <description>Coalescences adjacent free memory blocks to avoid fragmentation. Includes absolute address placement option.</description>
982 #define RTE_RTOS_FreeRTOS_HEAP_4 /* RTOS FreeRTOS Heap 4 */
985 <file category="source" name="Source/portable/MemMang/heap_4.c"/>
986 <file category="doc" name="http://www.freertos.org/a00111.html"/>
990 <component Cgroup="Heap" Cvariant="Heap_5" condition="FreeRTOS Core">
991 <description>Same as Heap_4, with the ability to span the heap across multiple non-adjacent memory areas.</description>
993 #define RTE_RTOS_FreeRTOS_HEAP_5 /* RTOS FreeRTOS Heap 5 */
996 <file category="source" name="Source/portable/MemMang/heap_5.c"/>
997 <file category="doc" name="http://www.freertos.org/a00111.html"/>
1001 <component Cgroup="Message Buffer" condition="FreeRTOS Core">
1002 <description>Message Buffer API</description>
1004 #define RTE_RTOS_FreeRTOS_MESSAGE_BUFFER /* RTOS FreeRTOS Message Buffers */
1007 <file category="header" name="Source/include/message_buffer.h"/>
1008 <file category="source" name="Source/stream_buffer.c"/>
1012 <component Cgroup="Stream Buffer" condition="FreeRTOS Core">
1013 <description>Stream Buffer API</description>
1015 #define RTE_RTOS_FreeRTOS_STREAM_BUFFER /* RTOS FreeRTOS Stream Buffers */
1018 <file category="header" name="Source/include/stream_buffer.h"/>
1019 <file category="source" name="Source/stream_buffer.c"/>
1023 <component Cgroup="Timers" condition="FreeRTOS Core">
1024 <description>Timer API</description>
1026 #define RTE_RTOS_FreeRTOS_TIMERS /* RTOS FreeRTOS Timers */
1029 <file category="header" name="Source/include/timers.h"/>
1030 <file category="source" name="Source/timers.c"/>
1034 <component Cgroup="TrustZone" condition="FreeRTOS TrustZone">
1035 <description>TrustZone Secure Context API</description>
1037 #define RTE_RTOS_FreeRTOS_TZ
1040 <file category="header" attr="config" name="CMSIS/RTOS2/FreeRTOS/Config/ARMCM_TZ/FreeRTOSConfig.h" version="10.2.0"/>
1042 <file category="header" condition="CM33_TZ_ARMCC6" name="Source/portable/GCC/ARM_CM33/secure/secure_port_macros.h"/>
1043 <file category="include" condition="CM33_TZ_ARMCC6" name="Source/portable/GCC/ARM_CM33/secure/"/>
1044 <file category="source" condition="CM33_TZ_ARMCC6" name="Source/portable/GCC/ARM_CM33/secure/secure_context.c"/>
1045 <file category="source" condition="CM33_TZ_ARMCC6" name="Source/portable/GCC/ARM_CM33/secure/secure_context_port.c"/>
1046 <file category="source" condition="CM33_TZ_ARMCC6" name="Source/portable/GCC/ARM_CM33/secure/secure_heap.c"/>
1047 <file category="source" condition="CM33_TZ_ARMCC6" name="Source/portable/GCC/ARM_CM33/secure/secure_init.c"/>
1049 <file category="header" condition="CM33_TZ_GCC" name="Source/portable/GCC/ARM_CM33/secure/secure_port_macros.h"/>
1050 <file category="include" condition="CM33_TZ_GCC" name="Source/portable/GCC/ARM_CM33/secure/"/>
1051 <file category="source" condition="CM33_TZ_GCC" name="Source/portable/GCC/ARM_CM33/secure/secure_context.c"/>
1052 <file category="source" condition="CM33_TZ_GCC" name="Source/portable/GCC/ARM_CM33/secure/secure_context_port.c"/>
1053 <file category="source" condition="CM33_TZ_GCC" name="Source/portable/GCC/ARM_CM33/secure/secure_heap.c"/>
1054 <file category="source" condition="CM33_TZ_GCC" name="Source/portable/GCC/ARM_CM33/secure/secure_init.c"/>
1056 <file category="header" condition="CM33_TZ_IAR" name="Source/portable/IAR/ARM_CM33/secure/secure_port_macros.h"/>
1057 <file category="include" condition="CM33_TZ_IAR" name="Source/portable/IAR/ARM_CM33/secure/"/>
1058 <file category="source" condition="CM33_TZ_IAR" name="Source/portable/IAR/ARM_CM33/secure/secure_context.c"/>
1059 <file category="source" condition="CM33_TZ_IAR" name="Source/portable/IAR/ARM_CM33/secure/secure_context_port.c"/>
1060 <file category="sourceAsm" condition="CM33_TZ_IAR" name="Source/portable/IAR/ARM_CM33/secure/secure_context_port_asm.s"/>
1061 <file category="source" condition="CM33_TZ_IAR" name="Source/portable/IAR/ARM_CM33/secure/secure_heap.c"/>
1062 <file category="source" condition="CM33_TZ_IAR" name="Source/portable/IAR/ARM_CM33/secure/secure_init.c"/>
1069 <example name="CMSIS-RTOS2 FreeRTOS Blinky" doc="Abstract.txt" folder="CMSIS/RTOS2/FreeRTOS/Examples/Blinky">
1070 <description>CMSIS-RTOS2 Blinky example using FreeRTOS</description>
1071 <board name="uVision Simulator" vendor="Keil"/>
1073 <environment name="uv" load="Blinky.uvprojx"/>
1076 <component Cclass="CMSIS" Cgroup="CORE"/>
1077 <component Cclass="CMSIS" Cgroup="RTOS2"/>
1078 <component Cclass="Device" Cgroup="Startup"/>
1079 <category>Getting Started</category>
1083 <example name="CMSIS-RTOS2 FreeRTOS Blinky CA9 (AC5)" doc="Abstract.txt" folder="CMSIS/RTOS2/FreeRTOS/Examples/Blinky_CA9">
1084 <description>CMSIS-RTOS2 Blinky example using FreeRTOS for Cortex-A9 (ARM Compiler 5)</description>
1085 <board name="Fixed Virtual Platform" vendor="ARM"/>
1087 <environment name="ds5" load=".project"/>
1090 <component Cclass="CMSIS" Cgroup="CORE"/>
1091 <component Cclass="CMSIS" Cgroup="RTOS2"/>
1092 <component Cclass="Device" Cgroup="Startup"/>
1093 <category>Getting Started</category>
1097 <example name="CMSIS-RTOS2 FreeRTOS Blinky CA9 (AC6)" doc="Abstract.txt" folder="CMSIS/RTOS2/FreeRTOS/Examples/Blinky_CA9_AC6">
1098 <description>CMSIS-RTOS2 Blinky example using FreeRTOS for Cortex-A9 (ARM Compiler 6)</description>
1099 <board name="Fixed Virtual Platform" vendor="ARM"/>
1101 <environment name="ds5" load=".project"/>
1104 <component Cclass="CMSIS" Cgroup="CORE"/>
1105 <component Cclass="CMSIS" Cgroup="RTOS2"/>
1106 <component Cclass="Device" Cgroup="Startup"/>
1107 <category>Getting Started</category>
1111 <example name="Native FreeRTOS Blinky" doc="Abstract.txt" folder="CMSIS/RTOS2/FreeRTOS/Examples/Native_Blinky">
1112 <description>Blinky example using FreeRTOS natively</description>
1113 <board name="uVision Simulator" vendor="Keil"/>
1115 <environment name="uv" load="Blinky.uvprojx"/>
1118 <component Cclass="CMSIS" Cgroup="CORE"/>
1119 <component Cclass="CMSIS" Cgroup="RTOS2"/>
1120 <component Cclass="Device" Cgroup="Startup"/>
1121 <category>Getting Started</category>
1125 <example name="TrustZone for ARMv8-M" doc="NonSecure/Abstract.txt" folder="CMSIS/RTOS2/FreeRTOS/Examples/TrustZone">
1126 <description>CMSIS-RTOS2 example with secure/non-secure thread context management using FreeRTOS</description>
1127 <board name="uVision Simulator" vendor="Keil"/>
1129 <environment name="uv" load="TrustZone.uvmpw"/>
1132 <component Cclass="CMSIS" Cgroup="CORE"/>
1133 <component Cclass="CMSIS" Cgroup="RTOS2"/>
1134 <component Cclass="Device" Cgroup="Startup"/>
1135 <category>Getting Started</category>