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.1-dev0">
12 Active development ...
14 <release version="10.2.0" date="2019-04-12">
16 Maintenance for CMSIS 5.4.0:
17 - Updated to CMSIS RTOS2 API 2.1.3
18 - Updated Arm standard C library interface
19 - Added configuration for the Event Recorder
20 - Added TrustZone example for Armv8M using RTOS2 API
21 - Enhanced FreeRTOS component viewer
22 - Corrected osDelayUntil execution duration
23 - Corrected SysTick_Handler execution when kernel is not started
24 - Corrected critical section for osKernelGetSysTimerCount
26 <release version="10.0.1" date="2018-02-20">
28 Maintenance for CMSIS 5.3.0:
29 - Added queue registry support to CMSIS:RTOS2:FreeRTOS component.
30 - Updated CMSIS-FreeRTOS component view to display queue, mutex and semaphore objects.
31 - Updated to CMSIS RTOS2 API 2.1.2 and OS Tick API 1.0.1.
32 - Fixed context switch response latency for API calls from ISR.
34 <release version="9.1.0" date="2017-08-11">
36 Maintenance release for CMSIS 5.1.0:
37 - Added support for ARM Compiler 6
38 - Updated Cortex-A example to use IRQ Controller component
39 - Corrected stack size allocation in RTOS2 osThreadNew function
40 - Added support for OS Tick component
41 - Added documentation for configuration options (native/CMSIS-RTOS2)
42 - Debug event TaskIncrementTick level set to Detail
44 <release version="9.0.0" date="2017-03-13">
45 Initial release version:
46 - native FreeRTOS component (RTOS: Variant=FreeRTOS)
47 - CMSIS-RTOS FreeRTOS for Cortex-M and Cortex-A9 (CMSIS:RTOS:FreeRTOS, CMSIS:RTOS2:FreeRTOS)
53 <package vendor="ARM" name="CMSIS" version="5.4.0-0"/>
58 <condition id="ARMCC6">
59 <accept Tcompiler="ARMCC" Toptions="AC6"/>
60 <accept Tcompiler="ARMCC" Toptions="AC6LTO"/>
62 <condition id="ARMCC">
63 <require Tcompiler="ARMCC" Toptions="AC5"/>
66 <require Tcompiler="GCC"/>
69 <require Tcompiler="IAR"/>
72 <condition id="ARMCC GCC">
73 <accept condition="ARMCC"/>
74 <accept condition="GCC"/>
76 <condition id="ARMCC6 GCC">
77 <accept condition="ARMCC6"/>
78 <accept condition="GCC"/>
80 <condition id="ARMCC GCC IAR">
81 <accept condition="ARMCC"/>
82 <accept condition="GCC"/>
83 <accept condition="IAR"/>
85 <condition id="ARMCC6 GCC IAR">
86 <accept condition="ARMCC6"/>
87 <accept condition="GCC"/>
88 <accept condition="IAR"/>
90 <condition id="ARMCC ARMCC6 GCC IAR">
91 <accept condition="ARMCC"/>
92 <accept condition="ARMCC6"/>
93 <accept condition="GCC"/>
94 <accept condition="IAR"/>
98 <description>Cortex-M0 or Cortex-M0+ or SC000 processor based device</description>
99 <accept Dcore="Cortex-M0"/>
100 <accept Dcore="Cortex-M0+"/>
101 <accept Dcore="SC000"/>
105 <description>Cortex-M3 or SC300 processor based device</description>
106 <accept Dcore="Cortex-M3"/>
107 <accept Dcore="SC300"/>
111 <description>Cortex-M4 processor based device</description>
112 <require Dcore="Cortex-M4" Dfpu="NO_FPU"/>
115 <condition id="CM4_FP">
116 <description>Cortex-M4 processor based device using Floating Point Unit</description>
117 <require Dcore="Cortex-M4" Dfpu="FPU"/>
121 <description>Cortex-M7 processor based device</description>
122 <require Dcore="Cortex-M7" Dfpu="NO_FPU"/>
125 <condition id="CM7_FP">
126 <description>Cortex-M7 processor based device using Floating Point Unit</description>
127 <accept Dcore="Cortex-M7" Dfpu="SP_FPU"/>
128 <accept Dcore="Cortex-M7" Dfpu="DP_FPU"/>
131 <condition id="CM7_SP">
132 <description>Cortex-M7 processor based device using Floating Point Unit (SP)</description>
133 <require Dcore="Cortex-M7" Dfpu="SP_FPU"/>
136 <condition id="CM7_DP">
137 <description>Cortex-M7 processor based device using Floating Point Unit (DP)</description>
138 <require Dcore="Cortex-M7" Dfpu="DP_FPU"/>
141 <condition id="CM33">
142 <description>Cortex-M33 processor based device</description>
143 <accept Dcore="Cortex-M33"/>
146 <condition id="CM33_NoTZ">
147 <description>Cortex-M33 processor based device without TrustZone</description>
148 <require condition="CM33"/>
149 <require Dtz="NO_TZ"/>
152 <condition id="CM33_TZ">
153 <description>Cortex-M33 processor based device with TrustZone</description>
154 <require condition="CM33"/>
158 <condition id="CA9_DP">
159 <description>Cortex-A9 processor based device using Floating Point Unit (DP)</description>
160 <require Dcore="Cortex-A9" Dfpu="DP_FPU"/>
163 <condition id="CoreM">
164 <description>Cortex-M processor based device</description>
165 <accept condition="CM0"/>
166 <accept condition="CM3"/>
167 <accept condition="CM4"/>
168 <accept condition="CM4_FP"/>
169 <accept condition="CM7"/>
170 <accept condition="CM7_FP"/>
171 <accept condition="CM33"/>
174 <condition id="CoreM_v6_v7">
175 <description>Cortex-M v6 and v7 processor based device</description>
176 <accept condition="CM0"/>
177 <accept condition="CM3"/>
178 <accept condition="CM4"/>
179 <accept condition="CM4_FP"/>
180 <accept condition="CM7"/>
181 <accept condition="CM7_FP"/>
184 <condition id="CoreM_v8">
185 <description>Cortex-M v8 processor based device</description>
186 <accept condition="CM33"/>
187 <accept condition="CM33_NoTZ"/>
188 <accept condition="CM33_TZ"/>
191 <condition id="CoreA">
192 <description>Cortex-A processor based device</description>
193 <accept condition="CA9_DP"/>
196 <!-- ARMCC compiler -->
197 <condition id="CM0_ARMCC">
198 <description>Cortex-M0 or Cortex-M0+ or SC000 processor based device for the ARM Compiler 5</description>
199 <require condition="CM0"/>
200 <require condition="ARMCC"/>
203 <condition id="CM3_ARMCC">
204 <description>Cortex-M3 or SC300 processor based device for the ARM Compiler 5</description>
205 <require condition="CM3"/>
206 <require condition="ARMCC"/>
209 <condition id="CM4_ARMCC">
210 <description>Cortex-M4 processor based device for the ARM Compiler 5</description>
211 <require condition="CM4"/>
212 <require condition="ARMCC"/>
214 <condition id="CM4_FP_ARMCC">
215 <description>Cortex-M4 processor based device using Floating Point Unit for the ARM Compiler 5</description>
216 <require condition="CM4_FP"/>
217 <require condition="ARMCC"/>
220 <condition id="CM7_ARMCC">
221 <description>Cortex-M7 processor based device for the ARM Compiler 5</description>
222 <require condition="CM7"/>
223 <require condition="ARMCC"/>
225 <condition id="CM7_SP_ARMCC">
226 <description>Cortex-M7 processor based device using Floating Point Unit (SP) for the ARM Compiler 5</description>
227 <require condition="CM7_SP"/>
228 <require condition="ARMCC"/>
230 <condition id="CM7_DP_ARMCC">
231 <description>Cortex-M7 processor based device using Floating Point Unit (DP) for the ARM Compiler 5</description>
232 <require condition="CM7_DP"/>
233 <require condition="ARMCC"/>
236 <condition id="CA9_DP_ARMCC">
237 <description>Cortex-A9 processor based device for the ARM Compiler 5</description>
238 <require condition="CA9_DP"/>
239 <require condition="ARMCC"/>
242 <!-- ARMCC6 compiler -->
243 <condition id="CM0_ARMCC6">
244 <description>Cortex-M0 or Cortex-M0+ or SC000 processor based device for the ARM Compiler 6</description>
245 <require condition="CM0"/>
246 <require condition="ARMCC6"/>
249 <condition id="CM3_ARMCC6">
250 <description>Cortex-M3 or SC300 processor based device for the ARM Compiler 6</description>
251 <require condition="CM3"/>
252 <require condition="ARMCC6"/>
255 <condition id="CM4_ARMCC6">
256 <description>Cortex-M4 processor based device for the ARM Compiler 6</description>
257 <require condition="CM4"/>
258 <require condition="ARMCC6"/>
260 <condition id="CM4_FP_ARMCC6">
261 <description>Cortex-M4 processor based device using Floating Point Unit for the ARM Compiler 6</description>
262 <require condition="CM4_FP"/>
263 <require condition="ARMCC6"/>
266 <condition id="CM7_ARMCC6">
267 <description>Cortex-M7 processor based device for the ARM Compiler 6</description>
268 <require condition="CM7"/>
269 <require condition="ARMCC6"/>
271 <condition id="CM7_SP_ARMCC6">
272 <description>Cortex-M7 processor based device using Floating Point Unit (SP) for the ARM Compiler 6</description>
273 <require condition="CM7_SP"/>
274 <require condition="ARMCC6"/>
276 <condition id="CM7_DP_ARMCC6">
277 <description>Cortex-M7 processor based device using Floating Point Unit (DP) for the ARM Compiler 6</description>
278 <require condition="CM7_DP"/>
279 <require condition="ARMCC6"/>
282 <condition id="CM33_ARMCC6">
283 <description>Cortex-M33 processor based device for the ARM Compiler 6</description>
284 <require condition="CM33"/>
285 <require condition="ARMCC6"/>
287 <condition id="CM33_NoTZ_ARMCC6">
288 <description>Cortex-M33 processor based device without TrustZone for the ARM Compiler 6</description>
289 <require condition="CM33_NoTZ"/>
290 <require condition="ARMCC6"/>
292 <condition id="CM33_TZ_ARMCC6">
293 <description>Cortex-M33 processor based device with TrustZone for the ARM Compiler 6</description>
294 <require condition="CM33_TZ"/>
295 <require condition="ARMCC6"/>
298 <condition id="CA9_DP_ARMCC6">
299 <description>Cortex-A9 processor based device for the ARM Compiler 6</description>
300 <require condition="CA9_DP"/>
301 <require condition="ARMCC6"/>
304 <!-- GCC compiler -->
305 <condition id="CM0_GCC">
306 <description>Cortex-M0 or Cortex-M0+ or SC000 processor based device for the GCC Compiler</description>
307 <require condition="CM0"/>
308 <require condition="GCC"/>
311 <condition id="CM3_GCC">
312 <description>Cortex-M3 or SC300 processor based device for the GCC Compiler</description>
313 <require condition="CM3"/>
314 <require condition="GCC"/>
317 <condition id="CM4_GCC">
318 <description>Cortex-M4 processor based device for the GCC Compiler</description>
319 <require condition="CM4"/>
320 <require condition="GCC"/>
322 <condition id="CM4_FP_GCC">
323 <description>Cortex-M4 processor based device using Floating Point Unit for the GCC Compiler</description>
324 <require condition="CM4_FP"/>
325 <require condition="GCC"/>
328 <condition id="CM7_GCC">
329 <description>Cortex-M7 processor based device for the GCC Compiler</description>
330 <require condition="CM7"/>
331 <require condition="GCC"/>
333 <condition id="CM7_SP_GCC">
334 <description>Cortex-M7 processor based device using Floating Point Unit (SP) for the GCC Compiler</description>
335 <require condition="CM7_SP"/>
336 <require condition="GCC"/>
338 <condition id="CM7_DP_GCC">
339 <description>Cortex-M7 processor based device using Floating Point Unit (DP) for the GCC Compiler</description>
340 <require condition="CM7_DP"/>
341 <require condition="GCC"/>
344 <condition id="CM33_GCC">
345 <description>Cortex-M33 processor based device for the GCC Compiler</description>
346 <require condition="CM33"/>
347 <require condition="GCC"/>
349 <condition id="CM33_NoTZ_GCC">
350 <description>Cortex-M33 processor based device without TrustZone for the GCC Compiler</description>
351 <require condition="CM33_NoTZ"/>
352 <require condition="GCC"/>
354 <condition id="CM33_TZ_GCC">
355 <description>Cortex-M33 processor based device with TrustZone for the GCC Compiler</description>
356 <require condition="CM33_TZ"/>
357 <require condition="GCC"/>
360 <condition id="CA9_DP_GCC">
361 <description>Cortex-A9 processor based device for the GCC Compiler</description>
362 <require condition="CA9_DP"/>
363 <require condition="GCC"/>
366 <!-- IAR compiler -->
367 <condition id="CM0_IAR">
368 <description>Cortex-M0 or Cortex-M0+ or SC000 processor based device for the IAR Compiler</description>
369 <require condition="CM0"/>
370 <require condition="IAR"/>
373 <condition id="CM3_IAR">
374 <description>Cortex-M3 or SC300 processor based device for the IAR Compiler</description>
375 <require condition="CM3"/>
376 <require condition="IAR"/>
379 <condition id="CM4_IAR">
380 <description>Cortex-M4 processor based device for the IAR Compiler</description>
381 <require condition="CM4"/>
382 <require condition="IAR"/>
384 <condition id="CM4_FP_IAR">
385 <description>Cortex-M4 processor based device using Floating Point Unit for the IAR Compiler</description>
386 <require condition="CM4_FP"/>
387 <require condition="IAR"/>
390 <condition id="CM7_IAR">
391 <description>Cortex-M7 processor based device for the IAR Compiler</description>
392 <require condition="CM7"/>
393 <require condition="IAR"/>
395 <condition id="CM7_SP_IAR">
396 <description>Cortex-M7 processor based device using Floating Point Unit (SP) for the IAR Compiler</description>
397 <require condition="CM7_SP"/>
398 <require condition="IAR"/>
400 <condition id="CM7_DP_IAR">
401 <description>Cortex-M7 processor based device using Floating Point Unit (DP) for the IAR Compiler</description>
402 <require condition="CM7_DP"/>
403 <require condition="IAR"/>
406 <condition id="CM33_IAR">
407 <description>Cortex-M33 processor based device for the IAR Compiler</description>
408 <require condition="CM33"/>
409 <require condition="IAR"/>
411 <condition id="CM33_NoTZ_IAR">
412 <description>Cortex-M33 processor based device without TrustZone for the IAR Compiler</description>
413 <require condition="CM33_NoTZ"/>
414 <require condition="IAR"/>
416 <condition id="CM33_TZ_IAR">
417 <description>Cortex-M33 processor based device with TrustZone for the IAR Compiler</description>
418 <require condition="CM33_TZ"/>
419 <require condition="IAR"/>
422 <condition id="CA9_DP_IAR">
423 <description>Cortex-A9 processor based device for the IAR Compiler</description>
424 <require condition="CA9_DP"/>
425 <require condition="IAR"/>
428 <condition id="CMSIS RTOS2 FreeRTOS">
429 <require Cclass="CMSIS" Cgroup="RTOS2" Csub="FreeRTOS"/>
432 <condition id="FreeRTOS Port Cortex-A">
433 <require condition="ARMCC ARMCC6 GCC IAR"/>
434 <require condition="CoreA"/>
436 <condition id="FreeRTOS Port Cortex-M">
437 <require condition="ARMCC ARMCC6 GCC IAR"/>
438 <require condition="CoreM_v6_v7"/>
440 <condition id="FreeRTOS Port Cortex-M v8">
441 <require condition="ARMCC6 GCC IAR"/>
442 <require condition="CoreM_v8"/>
446 <condition id="FreeRTOS">
447 <!-- All existing FreeRTOS ports for Cortex combined -->
448 <accept condition="FreeRTOS Port Cortex-A"/>
449 <accept condition="FreeRTOS Port Cortex-M"/>
450 <accept condition="FreeRTOS Port Cortex-M v8"/>
453 <condition id="FreeRTOS CM">
454 <accept condition="FreeRTOS Port Cortex-M"/>
455 <accept condition="FreeRTOS Port Cortex-M v8"/>
457 <require Cclass="Device" Cgroup="Startup"/>
458 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Config"/>
459 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Heap"/>
462 <condition id="FreeRTOS MPU CM3 CM4">
463 <require condition="ARMCC6 GCC"/>
464 <accept condition="CM3"/>
465 <accept condition="CM4"/>
467 <require Cclass="Device" Cgroup="Startup"/>
468 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Config"/>
469 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Heap"/>
470 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Event Groups"/>
471 <accept Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Message Buffer"/>
472 <accept Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Stream Buffer"/>
473 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Timers"/>
476 <condition id="FreeRTOS MPU CM4_FP">
477 <require condition="ARMCC ARMCC6 GCC IAR"/>
478 <require condition="CM4_FP"/>
480 <require Cclass="Device" Cgroup="Startup"/>
481 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Config"/>
482 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Heap"/>
483 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Event Groups"/>
484 <accept Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Message Buffer"/>
485 <accept Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Stream Buffer"/>
486 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Timers"/>
489 <condition id="FreeRTOS TZ">
490 <require condition="ARMCC6 GCC IAR"/>
491 <require condition="CM33_TZ"/>
493 <require Cclass="Device" Cgroup="Startup"/>
494 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Config"/>
495 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Heap"/>
498 <condition id="FreeRTOS TZ MPU">
499 <require condition="ARMCC6 GCC IAR"/>
500 <require condition="CM33_TZ"/>
502 <require Cclass="Device" Cgroup="Startup"/>
503 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Config"/>
504 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Heap"/>
505 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Event Groups"/>
506 <accept Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Message Buffer"/>
507 <accept Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Stream Buffer"/>
508 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Timers"/>
511 <condition id="FreeRTOS CA">
512 <require condition="ARMCC ARMCC6 GCC IAR"/>
513 <require condition="CoreA"/>
515 <require Cclass="Device" Cgroup="Startup"/>
516 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Config"/>
517 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Heap"/>
520 <condition id="FreeRTOS Core">
521 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Core"/>
524 <condition id="FreeRTOS TrustZone">
525 <require condition="CM33_TZ"/>
526 <!-- TrustZone Secure Context is a standalone component -->
527 <deny Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Config"/>
528 <deny Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Core"/>
529 <deny Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Coroutines"/>
530 <deny Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Heap"/>
531 <deny Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Event Groups"/>
532 <deny Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Message Buffer"/>
533 <deny Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Stream Buffer"/>
534 <deny Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Timers"/>
537 <condition id="FreeRTOS RTOS2 Core">
538 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Event Groups"/>
539 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Timers"/>
540 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Core"/>
541 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Config" Cvariant="CMSIS RTOS2"/>
544 <condition id="FreeRTOS RTOS2 CortexM">
545 <require condition="CoreM"/>
546 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Event Groups"/>
547 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Timers"/>
548 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Core"/>
549 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Config" Cvariant="CMSIS RTOS2"/>
552 <condition id="FreeRTOS RTOS2 CortexA">
553 <require condition="CoreA"/>
554 <require Cclass="Device" Cgroup="IRQ Controller"/>
555 <require Cclass="Device" Cgroup="OS Tick"/>
556 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Event Groups"/>
557 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Timers"/>
558 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Core"/>
559 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Config" Cvariant="CMSIS RTOS2"/>
565 <!-- CMSIS-RTOS FreeRTOS component -->
566 <component Cclass="CMSIS" Cgroup="RTOS" Csub="FreeRTOS" Cversion="10.2.0" Capiversion="1.0.0" condition="FreeRTOS RTOS2 Core">
567 <description>CMSIS-RTOS implementation for Cortex-M based on FreeRTOS</description>
569 #define RTE_CMSIS_RTOS /* CMSIS-RTOS */
570 #define RTE_CMSIS_RTOS_FreeRTOS /* CMSIS-RTOS FreeRTOS */
573 <file category="header" name="CMSIS/RTOS2/FreeRTOS/Include1/cmsis_os.h"/>
574 <file category="source" name="CMSIS/RTOS2/FreeRTOS/Source/cmsis_os1.c"/>
578 <!-- CMSIS-RTOS2 FreeRTOS component -->
579 <component Cclass="CMSIS" Cgroup="RTOS2" Csub="FreeRTOS" Cversion="10.2.0" Capiversion="2.1.3" condition="FreeRTOS RTOS2 CortexM">
580 <description>CMSIS-RTOS2 implementation for Cortex-M based on FreeRTOS</description>
582 #define RTE_CMSIS_RTOS2 /* CMSIS-RTOS2 */
583 #define RTE_CMSIS_RTOS2_FreeRTOS /* CMSIS-RTOS2 FreeRTOS */
586 <file category="doc" name="CMSIS/Documentation/General/html/index.html"/>
587 <file category="source" name="CMSIS/RTOS2/FreeRTOS/Source/cmsis_os2.c"/>
588 <file category="source" name="CMSIS/RTOS2/FreeRTOS/Source/ARM/clib_arm.c" condition="ARMCC"/>
589 <file category="source" name="CMSIS/RTOS2/FreeRTOS/Source/ARM/clib_arm.c" condition="ARMCC6"/>
591 <!-- OS Tick (SysTick) -->
592 <file category="source" name="CMSIS/RTOS2/FreeRTOS/Source/os_systick.c"/>
596 <component Cclass="CMSIS" Cgroup="RTOS2" Csub="FreeRTOS" Cversion="10.2.0" Capiversion="2.1.3" condition="FreeRTOS RTOS2 CortexA">
597 <description>CMSIS-RTOS2 implementation for Cortex-A based on FreeRTOS</description>
599 #define RTE_CMSIS_RTOS2 /* CMSIS-RTOS2 */
600 #define RTE_CMSIS_RTOS2_FreeRTOS /* CMSIS-RTOS2 FreeRTOS */
603 <file category="doc" name="CMSIS/Documentation/General/html/index.html"/>
604 <file category="source" name="CMSIS/RTOS2/FreeRTOS/Source/cmsis_os2.c"/>
605 <file category="source" name="CMSIS/RTOS2/FreeRTOS/Source/ARM/clib_arm.c" condition="ARMCC"/>
606 <file category="source" name="CMSIS/RTOS2/FreeRTOS/Source/ARM/clib_arm.c" condition="ARMCC6"/>
608 <file category="source" attr="config" name="CMSIS/RTOS2/FreeRTOS/Source/handlers.c" version="9.1.0"/>
612 <bundle Cbundle="FreeRTOS" Cclass="RTOS" Cversion="10.2.0" condition="FreeRTOS">
613 <description>FreeRTOS Real Time Kernel</description>
614 <doc>https://www.freertos.org/Documentation/FreeRTOS_Reference_Manual_V10.0.0.pdf</doc>
616 <component Cgroup="Core" Cvariant="Cortex-M" isDefaultVariant="true" condition="FreeRTOS CM">
617 <description>Core API (Kernel, Tasks, Semaphores, Mutexes, Queues) for Cortex-M</description>
619 #define RTE_RTOS_FreeRTOS_CORE /* RTOS FreeRTOS Core */
622 <file category="include" name="Source/include/"/>
624 <file category="header" name="Source/include/FreeRTOS.h"/>
625 <file category="header" name="Source/include/queue.h"/>
626 <file category="header" name="Source/include/semphr.h"/>
627 <file category="header" name="Source/include/task.h"/>
629 <file category="source" name="Source/list.c"/>
630 <file category="source" name="Source/queue.c"/>
631 <file category="source" name="Source/tasks.c"/>
633 <file category="include" condition="CM0_ARMCC" name="Source/portable/RVDS/ARM_CM0/"/>
634 <file category="source" condition="CM0_ARMCC" name="Source/portable/RVDS/ARM_CM0/port.c"/>
635 <file category="include" condition="CM3_ARMCC" name="Source/portable/RVDS/ARM_CM3/"/>
636 <file category="source" condition="CM3_ARMCC" name="Source/portable/RVDS/ARM_CM3/port.c"/>
637 <file category="include" condition="CM4_ARMCC" name="Source/portable/RVDS/ARM_CM3/"/>
638 <file category="source" condition="CM4_ARMCC" name="Source/portable/RVDS/ARM_CM3/port.c"/>
639 <file category="include" condition="CM4_FP_ARMCC" name="Source/portable/RVDS/ARM_CM4F/"/>
640 <file category="source" condition="CM4_FP_ARMCC" name="Source/portable/RVDS/ARM_CM4F/port.c"/>
641 <file category="include" condition="CM7_ARMCC" name="Source/portable/RVDS/ARM_CM3/"/>
642 <file category="source" condition="CM7_ARMCC" name="Source/portable/RVDS/ARM_CM3/port.c"/>
643 <file category="include" condition="CM7_DP_ARMCC" name="Source/portable/RVDS/ARM_CM7/r0p1/"/>
644 <file category="source" condition="CM7_DP_ARMCC" name="Source/portable/RVDS/ARM_CM7/r0p1/port.c"/>
645 <file category="include" condition="CM7_SP_ARMCC" name="Source/portable/RVDS/ARM_CM7/r0p1/"/>
646 <file category="source" condition="CM7_SP_ARMCC" name="Source/portable/RVDS/ARM_CM7/r0p1/port.c"/>
648 <file category="include" condition="CM0_ARMCC6" name="Source/portable/GCC/ARM_CM0/"/>
649 <file category="source" condition="CM0_ARMCC6" name="Source/portable/GCC/ARM_CM0/port.c"/>
650 <file category="include" condition="CM3_ARMCC6" name="Source/portable/GCC/ARM_CM3/"/>
651 <file category="source" condition="CM3_ARMCC6" name="Source/portable/GCC/ARM_CM3/port.c"/>
652 <file category="include" condition="CM4_ARMCC6" name="Source/portable/GCC/ARM_CM3/"/>
653 <file category="source" condition="CM4_ARMCC6" name="Source/portable/GCC/ARM_CM3/port.c"/>
654 <file category="include" condition="CM4_FP_ARMCC6" name="Source/portable/GCC/ARM_CM4F/"/>
655 <file category="source" condition="CM4_FP_ARMCC6" name="Source/portable/GCC/ARM_CM4F/port.c"/>
656 <file category="include" condition="CM7_ARMCC6" name="Source/portable/GCC/ARM_CM3/"/>
657 <file category="source" condition="CM7_ARMCC6" name="Source/portable/GCC/ARM_CM3/port.c"/>
658 <file category="include" condition="CM7_DP_ARMCC6" name="Source/portable/GCC/ARM_CM7/r0p1/"/>
659 <file category="source" condition="CM7_DP_ARMCC6" name="Source/portable/GCC/ARM_CM7/r0p1/port.c"/>
660 <file category="include" condition="CM7_SP_ARMCC6" name="Source/portable/GCC/ARM_CM7/r0p1/"/>
661 <file category="source" condition="CM7_SP_ARMCC6" name="Source/portable/GCC/ARM_CM7/r0p1/port.c"/>
662 <file category="include" condition="CM33_ARMCC6" name="Source/portable/GCC/ARM_CM33_NTZ/non_secure/"/>
663 <file category="source" condition="CM33_ARMCC6" name="Source/portable/GCC/ARM_CM33_NTZ/non_secure/port.c"/>
664 <file category="source" condition="CM33_ARMCC6" name="Source/portable/GCC/ARM_CM33_NTZ/non_secure/portasm.c"/>
666 <file category="include" condition="CM0_GCC" name="Source/portable/GCC/ARM_CM0/"/>
667 <file category="source" condition="CM0_GCC" name="Source/portable/GCC/ARM_CM0/port.c"/>
668 <file category="include" condition="CM3_GCC" name="Source/portable/GCC/ARM_CM3/"/>
669 <file category="source" condition="CM3_GCC" name="Source/portable/GCC/ARM_CM3/port.c"/>
670 <file category="include" condition="CM4_GCC" name="Source/portable/GCC/ARM_CM3/"/>
671 <file category="source" condition="CM4_GCC" name="Source/portable/GCC/ARM_CM3/port.c"/>
672 <file category="include" condition="CM4_FP_GCC" name="Source/portable/GCC/ARM_CM4F/"/>
673 <file category="source" condition="CM4_FP_GCC" name="Source/portable/GCC/ARM_CM4F/port.c"/>
674 <file category="include" condition="CM7_GCC" name="Source/portable/GCC/ARM_CM3/"/>
675 <file category="source" condition="CM7_GCC" name="Source/portable/GCC/ARM_CM3/port.c"/>
676 <file category="include" condition="CM7_DP_GCC" name="Source/portable/GCC/ARM_CM7/r0p1/"/>
677 <file category="source" condition="CM7_DP_GCC" name="Source/portable/GCC/ARM_CM7/r0p1/port.c"/>
678 <file category="include" condition="CM7_SP_GCC" name="Source/portable/GCC/ARM_CM7/r0p1/"/>
679 <file category="source" condition="CM7_SP_GCC" name="Source/portable/GCC/ARM_CM7/r0p1/port.c"/>
680 <file category="include" condition="CM33_GCC" name="Source/portable/GCC/ARM_CM33_NTZ/non_secure/"/>
681 <file category="source" condition="CM33_GCC" name="Source/portable/GCC/ARM_CM33_NTZ/non_secure/port.c"/>
682 <file category="source" condition="CM33_GCC" name="Source/portable/GCC/ARM_CM33_NTZ/non_secure/portasm.c"/>
684 <file category="include" condition="CM0_IAR" name="Source/portable/IAR/ARM_CM0/"/>
685 <file category="source" condition="CM0_IAR" name="Source/portable/IAR/ARM_CM0/port.c"/>
686 <file category="sourceAsm" condition="CM0_IAR" name="Source/portable/IAR/ARM_CM0/portasm.s"/>
687 <file category="include" condition="CM3_IAR" name="Source/portable/IAR/ARM_CM3/"/>
688 <file category="source" condition="CM3_IAR" name="Source/portable/IAR/ARM_CM3/port.c"/>
689 <file category="sourceAsm" condition="CM3_IAR" name="Source/portable/IAR/ARM_CM3/portasm.s"/>
690 <file category="include" condition="CM4_IAR" name="Source/portable/IAR/ARM_CM3/"/>
691 <file category="source" condition="CM4_IAR" name="Source/portable/IAR/ARM_CM3/port.c"/>
692 <file category="sourceAsm" condition="CM4_IAR" name="Source/portable/IAR/ARM_CM3/portasm.s"/>
693 <file category="include" condition="CM4_FP_IAR" name="Source/portable/IAR/ARM_CM4F/"/>
694 <file category="source" condition="CM4_FP_IAR" name="Source/portable/IAR/ARM_CM4F/port.c"/>
695 <file category="sourceAsm" condition="CM4_FP_IAR" name="Source/portable/IAR/ARM_CM4F/portasm.s"/>
696 <file category="include" condition="CM7_IAR" name="Source/portable/IAR/ARM_CM3/"/>
697 <file category="source" condition="CM7_IAR" name="Source/portable/IAR/ARM_CM3/port.c"/>
698 <file category="sourceAsm" condition="CM7_IAR" name="Source/portable/IAR/ARM_CM3/portasm.s"/>
699 <file category="include" condition="CM7_DP_IAR" name="Source/portable/IAR/ARM_CM7/r0p1/"/>
700 <file category="source" condition="CM7_DP_IAR" name="Source/portable/IAR/ARM_CM7/r0p1/port.c"/>
701 <file category="sourceAsm" condition="CM7_DP_IAR" name="Source/portable/IAR/ARM_CM7/r0p1/portasm.s"/>
702 <file category="include" condition="CM7_SP_IAR" name="Source/portable/IAR/ARM_CM7/r0p1/"/>
703 <file category="source" condition="CM7_SP_IAR" name="Source/portable/IAR/ARM_CM7/r0p1/port.c"/>
704 <file category="sourceAsm" condition="CM7_SP_IAR" name="Source/portable/IAR/ARM_CM7/r0p1/portasm.s"/>
705 <file category="include" condition="CM33_IAR" name="Source/portable/IAR/ARM_CM33_NTZ/non_secure/"/>
706 <file category="source" condition="CM33_IAR" name="Source/portable/IAR/ARM_CM33_NTZ/non_secure/port.c"/>
707 <file category="source" condition="CM33_IAR" name="Source/portable/IAR/ARM_CM33_NTZ/non_secure/portasm.s"/>
709 <file category="include" name="CMSIS/RTOS2/FreeRTOS/Include/"/>
710 <file category="source" name="CMSIS/RTOS2/FreeRTOS/Source/freertos_evr.c"/>
711 <file category="other" name="CMSIS/RTOS2/FreeRTOS/FreeRTOS.scvd"/>
715 <component Cgroup="Core" Cvariant="Cortex-M MPU" condition="FreeRTOS MPU CM3 CM4">
716 <description>Core API (Kernel, Tasks, Semaphores, Mutexes, Queues) for Cortex-M using MPU</description>
718 #define RTE_RTOS_FreeRTOS_CORE /* RTOS FreeRTOS Core */
719 #define RTE_RTOS_FreeRTOS_CORE_MPU /* RTOS FreeRTOS Core with MPU support */
722 <file category="include" name="Source/include/"/>
724 <file category="header" name="Source/include/FreeRTOS.h"/>
725 <file category="header" name="Source/include/queue.h"/>
726 <file category="header" name="Source/include/semphr.h"/>
727 <file category="header" name="Source/include/task.h"/>
729 <file category="source" name="Source/list.c"/>
730 <file category="source" name="Source/queue.c"/>
731 <file category="source" name="Source/tasks.c"/>
732 <file category="source" name="Source/portable/Common/mpu_wrappers.c"/>
734 <file category="include" condition="ARMCC6 GCC" name="Source/portable/GCC/ARM_CM3_MPU/"/>
735 <file category="source" condition="ARMCC6 GCC" name="Source/portable/GCC/ARM_CM3_MPU/port.c"/>
737 <file category="include" name="CMSIS/RTOS2/FreeRTOS/Include/"/>
738 <file category="source" name="CMSIS/RTOS2/FreeRTOS/Source/freertos_evr.c"/>
739 <file category="other" name="CMSIS/RTOS2/FreeRTOS/FreeRTOS.scvd"/>
744 <component Cgroup="Core" Cvariant="Cortex-M MPU" condition="FreeRTOS MPU CM4_FP">
745 <description>Core API (Kernel, Tasks, Semaphores, Mutexes, Queues) for Cortex-M using MPU</description>
747 #define RTE_RTOS_FreeRTOS_CORE /* RTOS FreeRTOS Core */
748 #define RTE_RTOS_FreeRTOS_CORE_MPU /* RTOS FreeRTOS Core with MPU support */
751 <file category="include" name="Source/include/"/>
753 <file category="header" name="Source/include/FreeRTOS.h"/>
754 <file category="header" name="Source/include/queue.h"/>
755 <file category="header" name="Source/include/semphr.h"/>
756 <file category="header" name="Source/include/task.h"/>
758 <file category="source" name="Source/list.c"/>
759 <file category="source" name="Source/queue.c"/>
760 <file category="source" name="Source/tasks.c"/>
761 <file category="source" name="Source/portable/Common/mpu_wrappers.c"/>
763 <file category="include" condition="ARMCC" name="Source/portable/RVDS/ARM_CM4_MPU/"/>
764 <file category="source" condition="ARMCC" name="Source/portable/RVDS/ARM_CM4_MPU/port.c"/>
766 <file category="include" condition="ARMCC6" name="Source/portable/GCC/ARM_CM4_MPU/"/>
767 <file category="source" condition="ARMCC6" name="Source/portable/GCC/ARM_CM4_MPU/port.c"/>
769 <file category="include" condition="GCC" name="Source/portable/GCC/ARM_CM4_MPU/"/>
770 <file category="source" condition="GCC" name="Source/portable/GCC/ARM_CM4_MPU/port.c"/>
772 <file category="include" condition="IAR" name="Source/portable/IAR/ARM_CM4F_MPU/"/>
773 <file category="source" condition="IAR" name="Source/portable/IAR/ARM_CM4F_MPU/port.c"/>
774 <file category="sourceAsm" condition="IAR" name="Source/portable/IAR/ARM_CM4F_MPU/portasm.s"/>
776 <file category="include" name="CMSIS/RTOS2/FreeRTOS/Include/"/>
777 <file category="source" name="CMSIS/RTOS2/FreeRTOS/Source/freertos_evr.c"/>
778 <file category="other" name="CMSIS/RTOS2/FreeRTOS/FreeRTOS.scvd"/>
783 <component Cgroup="Core" Cvariant="Cortex-M Non-Secure" condition="FreeRTOS TZ">
784 <description>Core API (Kernel, Tasks, Semaphores, Mutexes, Queues) for Cortex-M using Non-Secure Domain (TrustZone)</description>
786 #define RTE_RTOS_FreeRTOS_CORE /* RTOS FreeRTOS Core */
787 #define RTE_RTOS_FreeRTOS_CORE_TZ_NS /* RTOS FreeRTOS Core with TrustZone Non-Secure Domain */
790 <file category="include" name="Source/include/"/>
792 <file category="header" name="Source/include/FreeRTOS.h"/>
793 <file category="header" name="Source/include/queue.h"/>
794 <file category="header" name="Source/include/semphr.h"/>
795 <file category="header" name="Source/include/task.h"/>
797 <file category="source" name="Source/list.c"/>
798 <file category="source" name="Source/queue.c"/>
799 <file category="source" name="Source/tasks.c"/>
801 <file category="include" condition="ARMCC6" name="Source/portable/GCC/ARM_CM33/secure/"/>
802 <file category="include" condition="ARMCC6" name="Source/portable/GCC/ARM_CM33/non_secure/"/>
803 <file category="source" condition="ARMCC6" name="Source/portable/GCC/ARM_CM33/non_secure/port.c"/>
804 <file category="source" condition="ARMCC6" name="Source/portable/GCC/ARM_CM33/non_secure/portasm.c"/>
806 <file category="include" condition="GCC" name="Source/portable/GCC/ARM_CM33/secure/"/>
807 <file category="include" condition="GCC" name="Source/portable/GCC/ARM_CM33/non_secure/"/>
808 <file category="source" condition="GCC" name="Source/portable/GCC/ARM_CM33/non_secure/port.c"/>
809 <file category="source" condition="GCC" name="Source/portable/GCC/ARM_CM33/non_secure/portasm.c"/>
811 <file category="include" condition="IAR" name="Source/portable/IAR/ARM_CM33/secure/"/>
812 <file category="include" condition="IAR" name="Source/portable/IAR/ARM_CM33/non_secure/"/>
813 <file category="source" condition="IAR" name="Source/portable/IAR/ARM_CM33/non_secure/port.c"/>
814 <file category="sourceAsm" condition="IAR" name="Source/portable/IAR/ARM_CM33/non_secure/portasm.s"/>
816 <file category="include" name="CMSIS/RTOS2/FreeRTOS/Include/"/>
817 <file category="source" name="CMSIS/RTOS2/FreeRTOS/Source/freertos_evr.c"/>
818 <file category="other" name="CMSIS/RTOS2/FreeRTOS/FreeRTOS.scvd"/>
823 <component Cgroup="Core" Cvariant="Cortex-M Non-Secure MPU" condition="FreeRTOS TZ MPU">
824 <description>Core API (Kernel, Tasks, Semaphores, Mutexes, Queues) for Cortex-M using Non-Secure Domain (TrustZone) and MPU</description>
826 #define RTE_RTOS_FreeRTOS_CORE /* RTOS FreeRTOS Core */
827 #define RTE_RTOS_FreeRTOS_CORE_MPU /* RTOS FreeRTOS Core with MPU support */
828 #define RTE_RTOS_FreeRTOS_CORE_TZ_NS /* RTOS FreeRTOS Core with TrustZone Non-Secure Domain */
831 <file category="include" name="Source/include/"/>
833 <file category="header" name="Source/include/FreeRTOS.h"/>
834 <file category="header" name="Source/include/queue.h"/>
835 <file category="header" name="Source/include/semphr.h"/>
836 <file category="header" name="Source/include/task.h"/>
838 <file category="source" name="Source/list.c"/>
839 <file category="source" name="Source/queue.c"/>
840 <file category="source" name="Source/tasks.c"/>
841 <file category="source" name="Source/portable/Common/mpu_wrappers.c"/>
843 <file category="include" condition="ARMCC6" name="Source/portable/GCC/ARM_CM33/secure/"/>
844 <file category="include" condition="ARMCC6" name="Source/portable/GCC/ARM_CM33/non_secure/"/>
845 <file category="source" condition="ARMCC6" name="Source/portable/GCC/ARM_CM33/non_secure/port.c"/>
846 <file category="source" condition="ARMCC6" name="Source/portable/GCC/ARM_CM33/non_secure/portasm.c"/>
848 <file category="include" condition="GCC" name="Source/portable/GCC/ARM_CM33/secure/"/>
849 <file category="include" condition="GCC" name="Source/portable/GCC/ARM_CM33/non_secure/"/>
850 <file category="source" condition="GCC" name="Source/portable/GCC/ARM_CM33/non_secure/port.c"/>
851 <file category="source" condition="GCC" name="Source/portable/GCC/ARM_CM33/non_secure/portasm.c"/>
853 <file category="include" condition="IAR" name="Source/portable/IAR/ARM_CM33/secure/"/>
854 <file category="include" condition="IAR" name="Source/portable/IAR/ARM_CM33/non_secure/"/>
855 <file category="source" condition="IAR" name="Source/portable/IAR/ARM_CM33/non_secure/port.c"/>
856 <file category="sourceAsm" condition="IAR" name="Source/portable/IAR/ARM_CM33/non_secure/portasm.s"/>
858 <file category="include" name="CMSIS/RTOS2/FreeRTOS/Include/"/>
859 <file category="source" name="CMSIS/RTOS2/FreeRTOS/Source/freertos_evr.c"/>
860 <file category="other" name="CMSIS/RTOS2/FreeRTOS/FreeRTOS.scvd"/>
864 <component Cgroup="Core" Cvariant="Cortex-A" isDefaultVariant="true" condition="FreeRTOS CA">
865 <description>Core API (Kernel, Tasks, Semaphores, Mutexes, Queues) for Cortex-A</description>
867 #define RTE_RTOS_FreeRTOS_CORE /* RTOS FreeRTOS Core */
870 <file category="include" name="Source/include/"/>
872 <file category="header" name="Source/include/FreeRTOS.h"/>
873 <file category="header" name="Source/include/queue.h"/>
874 <file category="header" name="Source/include/semphr.h"/>
875 <file category="header" name="Source/include/task.h"/>
877 <file category="source" name="Source/list.c"/>
878 <file category="source" name="Source/queue.c"/>
879 <file category="source" name="Source/tasks.c"/>
881 <file category="include" condition="ARMCC" name="Source/portable/RVDS/ARM_CA9/"/>
882 <file category="source" condition="ARMCC" name="Source/portable/RVDS/ARM_CA9/port.c"/>
883 <file category="sourceAsm" condition="ARMCC" name="Source/portable/RVDS/ARM_CA9/portASM.s"/>
885 <file category="include" condition="ARMCC6" name="Source/portable/GCC/ARM_CA9/"/>
886 <file category="source" condition="ARMCC6" name="Source/portable/GCC/ARM_CA9/port.c"/>
887 <file category="sourceAsm" condition="ARMCC6" name="Source/portable/GCC/ARM_CA9/portASM.S"/>
889 <file category="include" condition="GCC" name="Source/portable/GCC/ARM_CA9/"/>
890 <file category="source" condition="GCC" name="Source/portable/GCC/ARM_CA9/port.c"/>
891 <file category="sourceAsm" condition="GCC" name="Source/portable/GCC/ARM_CA9/portASM.S"/>
893 <file category="include" condition="IAR" name="Source/portable/IAR/ARM_CA9/"/>
894 <file category="source" condition="IAR" name="Source/portable/IAR/ARM_CA9/port.c"/>
895 <file category="sourceAsm" condition="IAR" name="Source/portable/IAR/ARM_CA9/portASM.s"/>
897 <file category="include" name="CMSIS/RTOS2/FreeRTOS/Include/"/>
898 <file category="source" name="CMSIS/RTOS2/FreeRTOS/Source/freertos_evr.c"/>
899 <file category="other" name="CMSIS/RTOS2/FreeRTOS/FreeRTOS.scvd"/>
903 <component Cgroup="Config" Cvariant="CMSIS RTOS2" condition="CMSIS RTOS2 FreeRTOS">
904 <description>FreeRTOS CMSIS-RTOS2 API configuration file</description>
906 #define RTE_RTOS_FreeRTOS_CONFIG_RTOS2 /* RTOS FreeRTOS Config for CMSIS RTOS2 API */
909 <file category="doc" name="CMSIS/Documentation/General/html/cre_freertos_proj.html#cmsis_freertos_config"/>
910 <file category="header" attr="config" name="CMSIS/RTOS2/FreeRTOS/Config/ARMCM/FreeRTOSConfig.h" version="10.2.0" condition="CoreM"/>
911 <file category="header" attr="config" name="CMSIS/RTOS2/FreeRTOS/Config/ARMCA/FreeRTOSConfig.h" version="10.2.0" condition="CoreA"/>
915 <component Cgroup="Config" Cvariant="FreeRTOS" condition="FreeRTOS Core">
916 <description>FreeRTOS API configuration file</description>
918 #define RTE_RTOS_FreeRTOS_CONFIG /* RTOS FreeRTOS Config for FreeRTOS API */
921 <file category="doc" name="CMSIS/Documentation/General/html/cre_freertos_proj.html#native_freertos_config"/>
922 <file category="header" attr="config" name="Config/ARMCM/FreeRTOSConfig.h" version="10.2.0" condition="CoreM"/>
923 <file category="header" attr="config" name="Config/ARMCA/FreeRTOSConfig.h" version="10.2.0" condition="CoreA"/>
927 <component Cgroup="Coroutines" condition="FreeRTOS Core">
928 <description>Co-routine API</description>
930 #define RTE_RTOS_FreeRTOS_COROUTINE /* RTOS FreeRTOS Co-routines */
933 <file category="header" name="Source/include/croutine.h"/>
934 <file category="source" name="Source/croutine.c"/>
938 <component Cgroup="Event Groups" condition="FreeRTOS Core">
939 <description>Event Group API</description>
941 #define RTE_RTOS_FreeRTOS_EVENTGROUPS /* RTOS FreeRTOS Event Groups */
944 <file category="header" name="Source/include/event_groups.h"/>
945 <file category="source" name="Source/event_groups.c"/>
949 <component Cgroup="Heap" Cvariant="Heap_1" condition="FreeRTOS Core">
950 <description>Very simple, does not permit memory to be freed.</description>
952 #define RTE_RTOS_FreeRTOS_HEAP_1 /* RTOS FreeRTOS Heap 1 */
955 <file category="source" name="Source/portable/MemMang/heap_1.c"/>
956 <file category="doc" name="http://www.freertos.org/a00111.html"/>
960 <component Cgroup="Heap" Cvariant="Heap_2" condition="FreeRTOS Core">
961 <description>Permits memory to be freed, but not does coalescence adjacent free memory blocks.</description>
963 #define RTE_RTOS_FreeRTOS_HEAP_2 /* RTOS FreeRTOS Heap 2 */
966 <file category="source" name="Source/portable/MemMang/heap_2.c"/>
967 <file category="doc" name="http://www.freertos.org/a00111.html"/>
971 <component Cgroup="Heap" Cvariant="Heap_3" condition="FreeRTOS Core">
972 <description>Wraps the standard malloc() and free() for thread safety.</description>
974 #define RTE_RTOS_FreeRTOS_HEAP_3 /* RTOS FreeRTOS Heap 3 */
977 <file category="source" name="Source/portable/MemMang/heap_3.c"/>
978 <file category="doc" name="http://www.freertos.org/a00111.html"/>
982 <component Cgroup="Heap" Cvariant="Heap_4" condition="FreeRTOS Core" isDefaultVariant="true">
983 <description>Coalescences adjacent free memory blocks to avoid fragmentation. Includes absolute address placement option.</description>
985 #define RTE_RTOS_FreeRTOS_HEAP_4 /* RTOS FreeRTOS Heap 4 */
988 <file category="source" name="Source/portable/MemMang/heap_4.c"/>
989 <file category="doc" name="http://www.freertos.org/a00111.html"/>
993 <component Cgroup="Heap" Cvariant="Heap_5" condition="FreeRTOS Core">
994 <description>Same as Heap_4, with the ability to span the heap across multiple non-adjacent memory areas.</description>
996 #define RTE_RTOS_FreeRTOS_HEAP_5 /* RTOS FreeRTOS Heap 5 */
999 <file category="source" name="Source/portable/MemMang/heap_5.c"/>
1000 <file category="doc" name="http://www.freertos.org/a00111.html"/>
1004 <component Cgroup="Message Buffer" condition="FreeRTOS Core">
1005 <description>Message Buffer API</description>
1007 #define RTE_RTOS_FreeRTOS_MESSAGE_BUFFER /* RTOS FreeRTOS Message Buffers */
1010 <file category="header" name="Source/include/message_buffer.h"/>
1011 <file category="source" name="Source/stream_buffer.c"/>
1015 <component Cgroup="Stream Buffer" condition="FreeRTOS Core">
1016 <description>Stream Buffer API</description>
1018 #define RTE_RTOS_FreeRTOS_STREAM_BUFFER /* RTOS FreeRTOS Stream Buffers */
1021 <file category="header" name="Source/include/stream_buffer.h"/>
1022 <file category="source" name="Source/stream_buffer.c"/>
1026 <component Cgroup="Timers" condition="FreeRTOS Core">
1027 <description>Timer API</description>
1029 #define RTE_RTOS_FreeRTOS_TIMERS /* RTOS FreeRTOS Timers */
1032 <file category="header" name="Source/include/timers.h"/>
1033 <file category="source" name="Source/timers.c"/>
1037 <component Cgroup="TrustZone" condition="FreeRTOS TrustZone">
1038 <description>TrustZone Secure Context API</description>
1040 #define RTE_RTOS_FreeRTOS_TZ
1043 <file category="header" attr="config" name="CMSIS/RTOS2/FreeRTOS/Config/ARMCM_TZ/FreeRTOSConfig.h" version="10.2.0"/>
1045 <file category="header" condition="CM33_TZ_ARMCC6" name="Source/portable/GCC/ARM_CM33/secure/secure_port_macros.h"/>
1046 <file category="include" condition="CM33_TZ_ARMCC6" name="Source/portable/GCC/ARM_CM33/secure/"/>
1047 <file category="source" condition="CM33_TZ_ARMCC6" name="Source/portable/GCC/ARM_CM33/secure/secure_context.c"/>
1048 <file category="source" condition="CM33_TZ_ARMCC6" name="Source/portable/GCC/ARM_CM33/secure/secure_context_port.c"/>
1049 <file category="source" condition="CM33_TZ_ARMCC6" name="Source/portable/GCC/ARM_CM33/secure/secure_heap.c"/>
1050 <file category="source" condition="CM33_TZ_ARMCC6" name="Source/portable/GCC/ARM_CM33/secure/secure_init.c"/>
1052 <file category="header" condition="CM33_TZ_GCC" name="Source/portable/GCC/ARM_CM33/secure/secure_port_macros.h"/>
1053 <file category="include" condition="CM33_TZ_GCC" name="Source/portable/GCC/ARM_CM33/secure/"/>
1054 <file category="source" condition="CM33_TZ_GCC" name="Source/portable/GCC/ARM_CM33/secure/secure_context.c"/>
1055 <file category="source" condition="CM33_TZ_GCC" name="Source/portable/GCC/ARM_CM33/secure/secure_context_port.c"/>
1056 <file category="source" condition="CM33_TZ_GCC" name="Source/portable/GCC/ARM_CM33/secure/secure_heap.c"/>
1057 <file category="source" condition="CM33_TZ_GCC" name="Source/portable/GCC/ARM_CM33/secure/secure_init.c"/>
1059 <file category="header" condition="CM33_TZ_IAR" name="Source/portable/IAR/ARM_CM33/secure/secure_port_macros.h"/>
1060 <file category="include" condition="CM33_TZ_IAR" name="Source/portable/IAR/ARM_CM33/secure/"/>
1061 <file category="source" condition="CM33_TZ_IAR" name="Source/portable/IAR/ARM_CM33/secure/secure_context.c"/>
1062 <file category="source" condition="CM33_TZ_IAR" name="Source/portable/IAR/ARM_CM33/secure/secure_context_port.c"/>
1063 <file category="sourceAsm" condition="CM33_TZ_IAR" name="Source/portable/IAR/ARM_CM33/secure/secure_context_port_asm.s"/>
1064 <file category="source" condition="CM33_TZ_IAR" name="Source/portable/IAR/ARM_CM33/secure/secure_heap.c"/>
1065 <file category="source" condition="CM33_TZ_IAR" name="Source/portable/IAR/ARM_CM33/secure/secure_init.c"/>
1072 <example name="CMSIS-RTOS2 FreeRTOS Blinky" doc="Abstract.txt" folder="CMSIS/RTOS2/FreeRTOS/Examples/Blinky">
1073 <description>CMSIS-RTOS2 Blinky example using FreeRTOS</description>
1074 <board name="uVision Simulator" vendor="Keil"/>
1076 <environment name="uv" load="Blinky.uvprojx"/>
1079 <component Cclass="CMSIS" Cgroup="CORE"/>
1080 <component Cclass="CMSIS" Cgroup="RTOS2"/>
1081 <component Cclass="Device" Cgroup="Startup"/>
1082 <category>Getting Started</category>
1086 <example name="CMSIS-RTOS2 FreeRTOS Blinky CA9 (AC5)" doc="Abstract.txt" folder="CMSIS/RTOS2/FreeRTOS/Examples/Blinky_CA9">
1087 <description>CMSIS-RTOS2 Blinky example using FreeRTOS for Cortex-A9 (ARM Compiler 5)</description>
1088 <board name="Fixed Virtual Platform" vendor="ARM"/>
1090 <environment name="ds5" load=".project"/>
1093 <component Cclass="CMSIS" Cgroup="CORE"/>
1094 <component Cclass="CMSIS" Cgroup="RTOS2"/>
1095 <component Cclass="Device" Cgroup="Startup"/>
1096 <category>Getting Started</category>
1100 <example name="CMSIS-RTOS2 FreeRTOS Blinky CA9 (AC6)" doc="Abstract.txt" folder="CMSIS/RTOS2/FreeRTOS/Examples/Blinky_CA9_AC6">
1101 <description>CMSIS-RTOS2 Blinky example using FreeRTOS for Cortex-A9 (ARM Compiler 6)</description>
1102 <board name="Fixed Virtual Platform" vendor="ARM"/>
1104 <environment name="ds5" load=".project"/>
1107 <component Cclass="CMSIS" Cgroup="CORE"/>
1108 <component Cclass="CMSIS" Cgroup="RTOS2"/>
1109 <component Cclass="Device" Cgroup="Startup"/>
1110 <category>Getting Started</category>
1114 <example name="Native FreeRTOS Blinky" doc="Abstract.txt" folder="CMSIS/RTOS2/FreeRTOS/Examples/Native_Blinky">
1115 <description>Blinky example using FreeRTOS natively</description>
1116 <board name="uVision Simulator" vendor="Keil"/>
1118 <environment name="uv" load="Blinky.uvprojx"/>
1121 <component Cclass="CMSIS" Cgroup="CORE"/>
1122 <component Cclass="CMSIS" Cgroup="RTOS2"/>
1123 <component Cclass="Device" Cgroup="Startup"/>
1124 <category>Getting Started</category>
1128 <example name="TrustZone for ARMv8-M" doc="NonSecure/Abstract.txt" folder="CMSIS/RTOS2/FreeRTOS/Examples/TrustZone">
1129 <description>CMSIS-RTOS2 example with secure/non-secure thread context management using FreeRTOS</description>
1130 <board name="uVision Simulator" vendor="Keil"/>
1132 <environment name="uv" load="TrustZone.uvmpw"/>
1135 <component Cclass="CMSIS" Cgroup="CORE"/>
1136 <component Cclass="CMSIS" Cgroup="RTOS2"/>
1137 <component Cclass="Device" Cgroup="Startup"/>
1138 <category>Getting Started</category>