]> begriffs open source - cmsis-freertos/blob - ARM.CMSIS-FreeRTOS.pdsc
Set error state if no delay or already expired
[cmsis-freertos] / ARM.CMSIS-FreeRTOS.pdsc
1 <?xml version="1.0" encoding="utf-8"?>
2
3 <package schemaVersion="1.4" xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="PACK.xsd">
4   <vendor>ARM</vendor>
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>
9     
10   <releases>
11     <release version="10.0.2-dev4">
12       CMSIS:RTOS2:FreeRTOS update:
13         - Updated ARM standard C library interface
14     </release>
15     <release version="10.0.2-dev3">
16       CMSIS:RTOS2:FreeRTOS update:
17         - Added Event Recorder configuration
18         - Corrected CMSIS-FreeRTOS component viewer linked list processing
19     </release>
20     <release version="10.0.2-dev2">
21       CMSIS:RTOS2:FreeRTOS update:
22       - Updated to FreeRTOS 10.1.1
23       - Corrected SysTick_Handler when kernel not started
24       - Corrected critical section for osKernelGetSysTimerCount
25     </release>
26     <release version="10.0.2-dev1">
27       CMSIS:RTOS2:FreeRTOS update:
28       - Updated to CMSIS API 2.1.3
29     </release>
30     <release version="10.0.2-dev0">
31       CMSIS:RTOS2:FreeRTOS update:
32       - Corrected osDelayUntil execution duration
33     </release>
34     <release version="10.0.1" date="2018-02-20">
35       FreeRTOS 10.0.0
36       Maintenance for CMSIS 5.3.0: 
37        - Added queue registry support to CMSIS:RTOS2:FreeRTOS component.
38        - Updated CMSIS-FreeRTOS component view to display queue, mutex and semaphore objects.
39        - Updated to CMSIS RTOS2 API 2.1.2 and OS Tick API 1.0.1.
40        - Fixed context switch response latency for API calls from ISR.
41     </release>
42     <release version="9.1.0" date="2017-08-11">
43       FreeRTOS 9.0.0
44       Maintenance release for CMSIS 5.1.0:
45       - Added support for ARM Compiler 6
46       - Updated Cortex-A example to use IRQ Controller component
47       - Corrected stack size allocation in RTOS2 osThreadNew function
48       - Added support for OS Tick component
49       - Added documentation for configuration options (native/CMSIS-RTOS2)
50       - Debug event TaskIncrementTick level set to Detail
51     </release>
52     <release version="9.0.0" date="2017-03-13">
53       Initial release version:
54       - native FreeRTOS component (RTOS: Variant=FreeRTOS)
55       - CMSIS-RTOS FreeRTOS for Cortex-M and Cortex-A9 (CMSIS:RTOS:FreeRTOS, CMSIS:RTOS2:FreeRTOS)
56     </release>
57   </releases>
58
59   <requirements>
60     <packages>
61       <package vendor="ARM" name="CMSIS" version="5.3.0-0"/>
62     </packages>
63   </requirements>
64   
65   <conditions>
66     <condition id="ARMCC6">
67       <accept Tcompiler="ARMCC" Toptions="AC6"/>
68       <accept Tcompiler="ARMCC" Toptions="AC6LTO"/>
69     </condition>
70     <condition id="ARMCC">
71       <require Tcompiler="ARMCC" Toptions="AC5"/>
72     </condition>
73     <condition id="GCC">
74       <require Tcompiler="GCC"/>
75     </condition>
76     <condition id="IAR">
77       <require Tcompiler="IAR"/>
78     </condition>
79     <condition id="ARMCC GCC">
80       <accept Tcompiler="ARMCC"/>
81       <accept Tcompiler="GCC"/>
82     </condition>
83     <condition id="ARMCC GCC IAR">
84       <accept Tcompiler="ARMCC"/>
85       <accept Tcompiler="GCC"/>
86       <accept Tcompiler="IAR"/>
87     </condition>
88     
89     <condition id="CM0">
90       <description>Cortex-M0 or Cortex-M0+ or SC000 processor based device</description>
91       <accept Dcore="Cortex-M0"/>
92       <accept Dcore="Cortex-M0+"/>
93       <accept Dcore="SC000"/>
94     </condition>
95     
96     <condition id="CM3">
97       <description>Cortex-M3 or SC300 processor based device</description>
98       <accept Dcore="Cortex-M3"/>
99       <accept Dcore="SC300"/>
100     </condition>
101     
102     <condition id="CM4">
103       <description>Cortex-M4 processor based device</description>
104       <require Dcore="Cortex-M4" Dfpu="NO_FPU"/>
105     </condition>
106     
107     <condition id="CM4_FP">
108       <description>Cortex-M4 processor based device using Floating Point Unit</description>
109       <require Dcore="Cortex-M4" Dfpu="FPU"/>
110     </condition>
111     
112     <condition id="CM7">
113       <description>Cortex-M7 processor based device</description>
114       <require Dcore="Cortex-M7" Dfpu="NO_FPU"/>
115     </condition>
116     
117     <condition id="CM7_FP">
118       <description>Cortex-M7 processor based device using Floating Point Unit</description>
119       <accept Dcore="Cortex-M7" Dfpu="SP_FPU"/>
120       <accept Dcore="Cortex-M7" Dfpu="DP_FPU"/>
121     </condition>
122     
123     <condition id="CM7_SP">
124       <description>Cortex-M7 processor based device using Floating Point Unit (SP)</description>
125       <require Dcore="Cortex-M7" Dfpu="SP_FPU"/>
126     </condition>
127     
128     <condition id="CM7_DP">
129       <description>Cortex-M7 processor based device using Floating Point Unit (DP)</description>
130       <require Dcore="Cortex-M7" Dfpu="DP_FPU"/>
131     </condition>
132
133     <condition id="CA9_DP">
134       <description>Cortex-A9 processor based device using Floating Point Unit (DP)</description>
135       <require Dcore="Cortex-A9" Dfpu="DP_FPU"/>
136     </condition>
137
138     <condition id="CoreM">
139       <description>Cortex-M processor based device</description>
140       <accept condition="CM0"/>
141       <accept condition="CM3"/>
142       <accept condition="CM4"/>
143       <accept condition="CM4_FP"/>
144       <accept condition="CM7"/>
145       <accept condition="CM7_FP"/>
146     </condition>
147
148     <condition id="CoreA">
149       <description>Cortex-A processor based device</description>
150       <accept condition="CA9_DP"/>
151     </condition>
152
153     <!-- ARMCC compiler -->
154     <condition id="CM0_ARMCC">
155       <description>Cortex-M0 or Cortex-M0+ or SC000 processor based device for the ARM Compiler 5</description>
156       <require condition="CM0"/>
157       <require condition="ARMCC"/>
158     </condition>
159
160     <condition id="CM3_ARMCC">
161       <description>Cortex-M3 or SC300 processor based device for the ARM Compiler 5</description>
162       <require condition="CM3"/>
163       <require condition="ARMCC"/>
164     </condition>
165
166     <condition id="CM4_ARMCC">
167       <description>Cortex-M4 processor based device for the ARM Compiler 5</description>
168       <require condition="CM4"/>
169       <require condition="ARMCC"/>
170     </condition>
171     <condition id="CM4_FP_ARMCC">
172       <description>Cortex-M4 processor based device using Floating Point Unit for the ARM Compiler 5</description>
173       <require condition="CM4_FP"/>
174       <require condition="ARMCC"/>
175     </condition>
176
177     <condition id="CM7_ARMCC">
178       <description>Cortex-M7 processor based device for the ARM Compiler 5</description>
179       <require condition="CM7"/>
180       <require condition="ARMCC"/>
181     </condition>
182     <condition id="CM7_SP_ARMCC">
183       <description>Cortex-M7 processor based device using Floating Point Unit (SP) for the ARM Compiler 5</description>
184       <require condition="CM7_SP"/>
185       <require condition="ARMCC"/>
186     </condition>
187     <condition id="CM7_DP_ARMCC">
188       <description>Cortex-M7 processor based device using Floating Point Unit (DP) for the ARM Compiler 5</description>
189       <require condition="CM7_DP"/>
190       <require condition="ARMCC"/>
191     </condition>
192
193     <condition id="CA9_DP_ARMCC">
194       <description>Cortex-A9 processor based device for the ARM Compiler 5</description>
195       <require condition="CA9_DP"/>
196       <require condition="ARMCC"/>
197     </condition>
198
199     <!-- ARMCC6 compiler -->
200     <condition id="CM0_ARMCC6">
201       <description>Cortex-M0 or Cortex-M0+ or SC000 processor based device for the ARM Compiler 6</description>
202       <require condition="CM0"/>
203       <require condition="ARMCC6"/>
204     </condition>
205
206     <condition id="CM3_ARMCC6">
207       <description>Cortex-M3 or SC300 processor based device for the ARM Compiler 6</description>
208       <require condition="CM3"/>
209       <require condition="ARMCC6"/>
210     </condition>
211
212     <condition id="CM4_ARMCC6">
213       <description>Cortex-M4 processor based device for the ARM Compiler 6</description>
214       <require condition="CM4"/>
215       <require condition="ARMCC6"/>
216     </condition>
217     <condition id="CM4_FP_ARMCC6">
218       <description>Cortex-M4 processor based device using Floating Point Unit for the ARM Compiler 6</description>
219       <require condition="CM4_FP"/>
220       <require condition="ARMCC6"/>
221     </condition>
222
223     <condition id="CM7_ARMCC6">
224       <description>Cortex-M7 processor based device for the ARM Compiler 6</description>
225       <require condition="CM7"/>
226       <require condition="ARMCC6"/>
227     </condition>
228     <condition id="CM7_SP_ARMCC6">
229       <description>Cortex-M7 processor based device using Floating Point Unit (SP) for the ARM Compiler 6</description>
230       <require condition="CM7_SP"/>
231       <require condition="ARMCC6"/>
232     </condition>
233     <condition id="CM7_DP_ARMCC6">
234       <description>Cortex-M7 processor based device using Floating Point Unit (DP) for the ARM Compiler 6</description>
235       <require condition="CM7_DP"/>
236       <require condition="ARMCC6"/>
237     </condition>
238
239     <condition id="CA9_DP_ARMCC6">
240       <description>Cortex-A9 processor based device for the ARM Compiler 6</description>
241       <require condition="CA9_DP"/>
242       <require condition="ARMCC6"/>
243     </condition>
244
245     <!-- GCC compiler -->
246     <condition id="CM0_GCC">
247       <description>Cortex-M0 or Cortex-M0+ or SC000 processor based device for the GCC Compiler</description>
248       <require condition="CM0"/>
249       <require condition="GCC"/>
250     </condition>
251
252     <condition id="CM3_GCC">
253       <description>Cortex-M3 or SC300 processor based device for the GCC Compiler</description>
254       <require condition="CM3"/>
255       <require condition="GCC"/>
256     </condition>
257
258     <condition id="CM4_GCC">
259       <description>Cortex-M4 processor based device for the GCC Compiler</description>
260       <require condition="CM4"/>
261       <require condition="GCC"/>
262     </condition>
263
264     <condition id="CM4_FP_GCC">
265       <description>Cortex-M4 processor based device using Floating Point Unit for the GCC Compiler</description>
266       <require condition="CM4_FP"/>
267       <require condition="GCC"/>
268     </condition>
269
270     <condition id="CM7_GCC">
271       <description>Cortex-M7 processor based device for the GCC Compiler</description>
272       <require condition="CM7"/>
273       <require condition="GCC"/>
274     </condition>
275
276     <condition id="CM7_SP_GCC">
277       <description>Cortex-M7 processor based device using Floating Point Unit (SP) for the GCC Compiler</description>
278       <require condition="CM7_SP"/>
279       <require condition="GCC"/>
280     </condition>
281
282     <condition id="CM7_DP_GCC">
283       <description>Cortex-M7 processor based device using Floating Point Unit (DP) for the GCC Compiler</description>
284       <require condition="CM7_DP"/>
285       <require condition="GCC"/>
286     </condition>
287
288     <condition id="CA9_DP_GCC">
289       <description>Cortex-A9 processor based device for the GCC Compiler</description>
290       <require condition="CA9_DP"/>
291       <require condition="GCC"/>
292     </condition>
293
294     <!-- IAR compiler -->
295     <condition id="CM0_IAR">
296       <description>Cortex-M0 or Cortex-M0+ or SC000 processor based device for the IAR Compiler</description>
297       <require condition="CM0"/>
298       <require condition="IAR"/>
299     </condition>
300
301     <condition id="CM3_IAR">
302       <description>Cortex-M3 or SC300 processor based device for the IAR Compiler</description>
303       <require condition="CM3"/>
304       <require condition="IAR"/>
305     </condition>
306
307     <condition id="CM4_IAR">
308       <description>Cortex-M4 processor based device for the IAR Compiler</description>
309       <require condition="CM4"/>
310       <require condition="IAR"/>
311     </condition>
312
313     <condition id="CM4_FP_IAR">
314       <description>Cortex-M4 processor based device using Floating Point Unit for the IAR Compiler</description>
315       <require condition="CM4_FP"/>
316       <require condition="IAR"/>
317     </condition>
318
319     <condition id="CM7_IAR">
320       <description>Cortex-M7 processor based device for the IAR Compiler</description>
321       <require condition="CM7"/>
322       <require condition="IAR"/>
323     </condition>
324
325     <condition id="CM7_SP_IAR">
326       <description>Cortex-M7 processor based device using Floating Point Unit (SP) for the IAR Compiler</description>
327       <require condition="CM7_SP"/>
328       <require condition="IAR"/>
329     </condition>
330
331     <condition id="CM7_DP_IAR">
332       <description>Cortex-M7 processor based device using Floating Point Unit (DP) for the IAR Compiler</description>
333       <require condition="CM7_DP"/>
334       <require condition="IAR"/>
335     </condition>
336
337     <condition id="CA9_DP_IAR">
338       <description>Cortex-A9 processor based device for the IAR Compiler</description>
339       <require condition="CA9_DP"/>
340       <require condition="IAR"/>
341     </condition>
342
343     <condition id="CMSIS RTOS2 FreeRTOS">
344       <require Cclass="CMSIS" Cgroup="RTOS2" Csub="FreeRTOS"/>  
345     </condition>
346
347     <condition id="FreeRTOS">
348       <require condition="ARMCC GCC IAR"/>
349       <require Cclass="Device" Cgroup="Startup"/>
350       <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Config"/>
351       <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Heap"/>
352     </condition>
353
354     <condition id="FreeRTOS Core">
355       <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Core"/>
356     </condition>
357
358     <condition id="FreeRTOS RTOS2 Core">
359       <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Event Groups"/>
360       <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Timers"/>
361       <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Core"/>
362       <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Config" Cvariant="CMSIS RTOS2"/>
363     </condition>
364
365     <condition id="FreeRTOS RTOS2 CortexM">
366       <require condition="CoreM"/>
367       <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Event Groups"/>
368       <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Timers"/>
369       <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Core"/>
370       <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Config" Cvariant="CMSIS RTOS2"/>
371     </condition>
372
373     <condition id="FreeRTOS RTOS2 CortexA">
374       <require condition="CoreA"/>
375       <require Cclass="Device" Cgroup="IRQ Controller"/>
376       <require Cclass="Device" Cgroup="OS Tick"/>
377       <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Event Groups"/>
378       <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Timers"/>
379       <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Core"/>
380       <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Config" Cvariant="CMSIS RTOS2"/>
381     </condition>
382
383   </conditions>
384
385   <components>
386     <!-- CMSIS-RTOS FreeRTOS component -->
387     <component Cclass="CMSIS" Cgroup="RTOS" Csub="FreeRTOS" Cversion="10.1.1" Capiversion="1.0.0" condition="FreeRTOS RTOS2 Core">
388       <description>CMSIS-RTOS implementation for Cortex-M based on FreeRTOS</description>
389       <RTE_Components_h>
390         #define RTE_CMSIS_RTOS                  /* CMSIS-RTOS */
391         #define RTE_CMSIS_RTOS_FreeRTOS         /* CMSIS-RTOS FreeRTOS */
392       </RTE_Components_h>
393       <files>
394         <file category="header" name="CMSIS/RTOS2/FreeRTOS/Include1/cmsis_os.h"/>
395         <file category="source" name="CMSIS/RTOS2/FreeRTOS/Source/cmsis_os1.c"/>
396       </files>
397     </component>
398
399     <!-- CMSIS-RTOS2 FreeRTOS component -->
400     <component Cclass="CMSIS" Cgroup="RTOS2" Csub="FreeRTOS" Cversion="10.1.1" Capiversion="2.1.3" condition="FreeRTOS RTOS2 CortexM">
401       <description>CMSIS-RTOS2 implementation for Cortex-M based on FreeRTOS</description>
402       <RTE_Components_h>
403         #define RTE_CMSIS_RTOS2                 /* CMSIS-RTOS2 */
404         #define RTE_CMSIS_RTOS2_FreeRTOS        /* CMSIS-RTOS2 FreeRTOS */
405       </RTE_Components_h>
406       <files>
407         <file category="doc"    name="CMSIS/Documentation/General/html/index.html"/>
408         <file category="source" name="CMSIS/RTOS2/FreeRTOS/Source/cmsis_os2.c"/>
409         <file category="source" name="CMSIS/RTOS2/FreeRTOS/Source/ARM/clib_arm.c" condition="ARMCC"/>
410         <file category="source" name="CMSIS/RTOS2/FreeRTOS/Source/ARM/clib_arm.c" condition="ARMCC6"/>
411
412         <!-- OS Tick (SysTick) -->
413         <file category="source" name="CMSIS/RTOS2/FreeRTOS/Source/os_systick.c"/>
414       </files>
415     </component>
416
417     <component Cclass="CMSIS" Cgroup="RTOS2" Csub="FreeRTOS" Cversion="10.1.1" Capiversion="2.1.3" condition="FreeRTOS RTOS2 CortexA">
418       <description>CMSIS-RTOS2 implementation for Cortex-A based on FreeRTOS</description>
419       <RTE_Components_h>
420         #define RTE_CMSIS_RTOS2                 /* CMSIS-RTOS2 */
421         #define RTE_CMSIS_RTOS2_FreeRTOS        /* CMSIS-RTOS2 FreeRTOS */
422       </RTE_Components_h>
423       <files>
424         <file category="doc"    name="CMSIS/Documentation/General/html/index.html"/>
425         <file category="source" name="CMSIS/RTOS2/FreeRTOS/Source/cmsis_os2.c"/>
426         <file category="source" name="CMSIS/RTOS2/FreeRTOS/Source/ARM/clib_arm.c" condition="ARMCC"/>
427         <file category="source" name="CMSIS/RTOS2/FreeRTOS/Source/ARM/clib_arm.c" condition="ARMCC6"/>
428         
429         <file category="source" attr="config" name="CMSIS/RTOS2/FreeRTOS/Source/handlers.c" version="9.1.0"/>
430       </files>
431     </component>
432
433     <bundle Cbundle="FreeRTOS" Cclass="RTOS" Cversion="10.1.1">
434       <description>FreeRTOS Real Time Kernel</description>
435       <doc>https://www.freertos.org/Documentation/FreeRTOS_Reference_Manual_V10.0.0.pdf</doc>
436       <component Cgroup="Core" Cversion="10.1.1" condition="FreeRTOS">
437         <description>Core components API (Kernel, Tasks, Semaphores, Mutexes, Queues)</description>
438         <RTE_Components_h>
439           #define RTE_RTOS_FreeRTOS_CORE          /* RTOS FreeRTOS Core */
440         </RTE_Components_h>
441         <files>
442           <file category="include" name="Source/include/"/>
443   
444           <file category="header"  name="Source/include/FreeRTOS.h"/>
445           <file category="header"  name="Source/include/queue.h"/>
446           <file category="header"  name="Source/include/semphr.h"/>
447           <file category="header"  name="Source/include/task.h"/>
448   
449           <file category="source"  name="Source/list.c"/>
450           <file category="source"  name="Source/queue.c"/>
451           <file category="source"  name="Source/tasks.c"/>
452   
453           <file category="include"   condition="CM0_ARMCC"    name="Source/portable/RVDS/ARM_CM0/"/>
454           <file category="source"    condition="CM0_ARMCC"    name="Source/portable/RVDS/ARM_CM0/port.c"/>
455           <file category="include"   condition="CM3_ARMCC"    name="Source/portable/RVDS/ARM_CM3/"/>
456           <file category="source"    condition="CM3_ARMCC"    name="Source/portable/RVDS/ARM_CM3/port.c"/>
457           <file category="include"   condition="CM4_ARMCC"    name="Source/portable/RVDS/ARM_CM3/"/>
458           <file category="source"    condition="CM4_ARMCC"    name="Source/portable/RVDS/ARM_CM3/port.c"/>
459           <file category="include"   condition="CM4_FP_ARMCC" name="Source/portable/RVDS/ARM_CM4F/"/>
460           <file category="source"    condition="CM4_FP_ARMCC" name="Source/portable/RVDS/ARM_CM4F/port.c"/>
461           <file category="include"   condition="CM7_ARMCC"    name="Source/portable/RVDS/ARM_CM3/"/>
462           <file category="source"    condition="CM7_ARMCC"    name="Source/portable/RVDS/ARM_CM3/port.c"/>
463           <file category="include"   condition="CM7_DP_ARMCC" name="Source/portable/RVDS/ARM_CM7/r0p1/"/>
464           <file category="source"    condition="CM7_DP_ARMCC" name="Source/portable/RVDS/ARM_CM7/r0p1/port.c"/>
465           <file category="include"   condition="CM7_SP_ARMCC" name="Source/portable/RVDS/ARM_CM7/r0p1/"/>
466           <file category="source"    condition="CM7_SP_ARMCC" name="Source/portable/RVDS/ARM_CM7/r0p1/port.c"/>
467           <file category="include"   condition="CA9_DP_ARMCC" name="Source/portable/RVDS/ARM_CA9/"/>
468           <file category="source"    condition="CA9_DP_ARMCC" name="Source/portable/RVDS/ARM_CA9/port.c"/>
469           <file category="sourceAsm" condition="CA9_DP_ARMCC" name="Source/portable/RVDS/ARM_CA9/portASM.s"/>
470   
471           <file category="include"   condition="CM0_ARMCC6"    name="Source/portable/GCC/ARM_CM0/"/>
472           <file category="source"    condition="CM0_ARMCC6"    name="Source/portable/GCC/ARM_CM0/port.c"/>
473           <file category="include"   condition="CM3_ARMCC6"    name="Source/portable/GCC/ARM_CM3/"/>
474           <file category="source"    condition="CM3_ARMCC6"    name="Source/portable/GCC/ARM_CM3/port.c"/>
475           <file category="include"   condition="CM4_ARMCC6"    name="Source/portable/GCC/ARM_CM3/"/>
476           <file category="source"    condition="CM4_ARMCC6"    name="Source/portable/GCC/ARM_CM3/port.c"/>
477           <file category="include"   condition="CM4_FP_ARMCC6" name="Source/portable/GCC/ARM_CM4F/"/>
478           <file category="source"    condition="CM4_FP_ARMCC6" name="Source/portable/GCC/ARM_CM4F/port.c"/>
479           <file category="include"   condition="CM7_ARMCC6"    name="Source/portable/GCC/ARM_CM3/"/>
480           <file category="source"    condition="CM7_ARMCC6"    name="Source/portable/GCC/ARM_CM3/port.c"/>
481           <file category="include"   condition="CM7_DP_ARMCC6" name="Source/portable/GCC/ARM_CM7/r0p1/"/>
482           <file category="source"    condition="CM7_DP_ARMCC6" name="Source/portable/GCC/ARM_CM7/r0p1/port.c"/>
483           <file category="include"   condition="CM7_SP_ARMCC6" name="Source/portable/GCC/ARM_CM7/r0p1/"/>
484           <file category="source"    condition="CM7_SP_ARMCC6" name="Source/portable/GCC/ARM_CM7/r0p1/port.c"/>
485           <file category="include"   condition="CA9_DP_ARMCC6" name="Source/portable/GCC/ARM_CA9/"/>
486           <file category="source"    condition="CA9_DP_ARMCC6" name="Source/portable/GCC/ARM_CA9/port.c"/>
487           <file category="sourceAsm" condition="CA9_DP_ARMCC6" name="Source/portable/GCC/ARM_CA9/portASM.S"/>
488   
489           <file category="include"   condition="CM0_GCC"    name="Source/portable/GCC/ARM_CM0/"/>
490           <file category="source"    condition="CM0_GCC"    name="Source/portable/GCC/ARM_CM0/port.c"/>
491           <file category="include"   condition="CM3_GCC"    name="Source/portable/GCC/ARM_CM3/"/>
492           <file category="source"    condition="CM3_GCC"    name="Source/portable/GCC/ARM_CM3/port.c"/>
493           <file category="include"   condition="CM4_GCC"    name="Source/portable/GCC/ARM_CM3/"/>
494           <file category="source"    condition="CM4_GCC"    name="Source/portable/GCC/ARM_CM3/port.c"/>
495           <file category="include"   condition="CM4_FP_GCC" name="Source/portable/GCC/ARM_CM4F/"/>
496           <file category="source"    condition="CM4_FP_GCC" name="Source/portable/GCC/ARM_CM4F/port.c"/>
497           <file category="include"   condition="CM7_GCC"    name="Source/portable/GCC/ARM_CM3/"/>
498           <file category="source"    condition="CM7_GCC"    name="Source/portable/GCC/ARM_CM3/port.c"/>
499           <file category="include"   condition="CM7_DP_GCC" name="Source/portable/GCC/ARM_CM7/r0p1/"/>
500           <file category="source"    condition="CM7_DP_GCC" name="Source/portable/GCC/ARM_CM7/r0p1/port.c"/>
501           <file category="include"   condition="CM7_SP_GCC" name="Source/portable/GCC/ARM_CM7/r0p1/"/>
502           <file category="source"    condition="CM7_SP_GCC" name="Source/portable/GCC/ARM_CM7/r0p1/port.c"/>
503           <file category="include"   condition="CA9_DP_GCC" name="Source/portable/GCC/ARM_CA9/"/>
504           <file category="source"    condition="CA9_DP_GCC" name="Source/portable/GCC/ARM_CA9/port.c"/>
505           <file category="sourceAsm" condition="CA9_DP_GCC" name="Source/portable/GCC/ARM_CA9/portASM.S"/>
506
507           <file category="include"   condition="CM0_IAR"    name="Source/portable/IAR/ARM_CM0/"/>
508           <file category="source"    condition="CM0_IAR"    name="Source/portable/IAR/ARM_CM0/port.c"/>
509           <file category="include"   condition="CM3_IAR"    name="Source/portable/IAR/ARM_CM3/"/>
510           <file category="source"    condition="CM3_IAR"    name="Source/portable/IAR/ARM_CM3/port.c"/>
511           <file category="include"   condition="CM4_IAR"    name="Source/portable/IAR/ARM_CM3/"/>
512           <file category="source"    condition="CM4_IAR"    name="Source/portable/IAR/ARM_CM3/port.c"/>
513           <file category="include"   condition="CM4_FP_IAR" name="Source/portable/IAR/ARM_CM4F/"/>
514           <file category="source"    condition="CM4_FP_IAR" name="Source/portable/IAR/ARM_CM4F/port.c"/>
515           <file category="include"   condition="CM7_IAR"    name="Source/portable/IAR/ARM_CM3/"/>
516           <file category="source"    condition="CM7_IAR"    name="Source/portable/IAR/ARM_CM3/port.c"/>
517           <file category="include"   condition="CM7_DP_IAR" name="Source/portable/IAR/ARM_CM7/r0p1/"/>
518           <file category="source"    condition="CM7_DP_IAR" name="Source/portable/IAR/ARM_CM7/r0p1/port.c"/>
519           <file category="include"   condition="CM7_SP_IAR" name="Source/portable/IAR/ARM_CM7/r0p1/"/>
520           <file category="source"    condition="CM7_SP_IAR" name="Source/portable/IAR/ARM_CM7/r0p1/port.c"/>
521           <file category="include"   condition="CA9_DP_IAR" name="Source/portable/IAR/ARM_CA9/"/>
522           <file category="source"    condition="CA9_DP_IAR" name="Source/portable/IAR/ARM_CA9/port.c"/>
523           <file category="sourceAsm" condition="CA9_DP_IAR" name="Source/portable/IAR/ARM_CA9/portASM.s"/>
524
525           <file category="header" name="CMSIS/RTOS2/FreeRTOS/Include/freertos_evr.h"/>
526           <file category="source" name="CMSIS/RTOS2/FreeRTOS/Source/freertos_evr.c"/>
527           <file category="other"  name="CMSIS/RTOS2/FreeRTOS/FreeRTOS.scvd"/>
528         </files>
529       </component>
530   
531       <component Cgroup="Config" Cvariant="CMSIS RTOS2" Cversion="10.1.1" condition="CMSIS RTOS2 FreeRTOS">
532         <description>FreeRTOS CMSIS-RTOS2 API configuration file</description>
533         <RTE_Components_h>
534           #define RTE_RTOS_FreeRTOS_CONFIG_RTOS2  /* RTOS FreeRTOS Config for CMSIS RTOS2 API */
535         </RTE_Components_h>
536         <files>
537           <file category="doc"    name="CMSIS/Documentation/General/html/cre_freertos_proj.html#cmsis_freertos_config"/>
538           <file category="header" attr="config" name="CMSIS/RTOS2/FreeRTOS/Config/ARMCM/FreeRTOSConfig.h" version="10.1.1" condition="CoreM"/>
539           <file category="header" attr="config" name="CMSIS/RTOS2/FreeRTOS/Config/ARMCA/FreeRTOSConfig.h" version="10.0.1" condition="CoreA"/>
540         </files>
541       </component>
542      
543       <component Cgroup="Config" Cvariant="FreeRTOS" Cversion="10.1.1" condition="FreeRTOS Core">
544         <description>FreeRTOS API configuration file</description>
545         <RTE_Components_h>
546           #define RTE_RTOS_FreeRTOS_CONFIG        /* RTOS FreeRTOS Config for FreeRTOS API */
547         </RTE_Components_h>
548         <files>
549           <file category="doc"    name="CMSIS/Documentation/General/html/cre_freertos_proj.html#native_freertos_config"/>
550           <file category="header" attr="config" name="Config/ARMCM/FreeRTOSConfig.h" version="10.1.1" condition="CoreM"/>
551           <file category="header" attr="config" name="Config/ARMCA/FreeRTOSConfig.h" version="10.1.1" condition="CoreA"/>
552         </files>
553       </component>
554      
555       <component Cgroup="Coroutines" Cversion="10.1.1" condition="FreeRTOS Core">
556         <description>Co-routine API</description>
557         <RTE_Components_h>
558           #define RTE_RTOS_FreeRTOS_COROUTINE     /* RTOS FreeRTOS Co-routines */
559         </RTE_Components_h>
560         <files>
561           <file category="header" name="Source/include/croutine.h"/>
562           <file category="source" name="Source/croutine.c"/>
563         </files>
564       </component>
565      
566       <component Cgroup="Event Groups" Cversion="10.1.1" condition="FreeRTOS Core">
567         <description>Event Group API</description>
568         <RTE_Components_h>
569           #define RTE_RTOS_FreeRTOS_EVENTGROUPS   /* RTOS FreeRTOS Event Groups */
570         </RTE_Components_h>
571         <files>
572           <file category="header" name="Source/include/event_groups.h"/>
573           <file category="source" name="Source/event_groups.c"/>
574         </files>
575       </component>
576
577       <component Cgroup="Stream Buffer" Cversion="10.1.1" condition="FreeRTOS Core">
578         <description>Stream Buffer API</description>
579         <RTE_Components_h>
580           #define RTE_RTOS_FreeRTOS_STREAM_BUFFER /* RTOS FreeRTOS Stream Buffers */
581         </RTE_Components_h>
582         <files>
583           <file category="header" name="Source/include/stream_buffer.h"/>
584           <file category="source" name="Source/stream_buffer.c"/>
585         </files>
586       </component>
587
588       <component Cgroup="Message Buffer" Cversion="10.1.1" condition="FreeRTOS Core">
589         <description>Message Buffer API</description>
590         <RTE_Components_h>
591           #define RTE_RTOS_FreeRTOS_MESSAGE_BUFFER /* RTOS FreeRTOS Message Buffers */
592         </RTE_Components_h>
593         <files>
594           <file category="header" name="Source/include/message_buffer.h"/>
595           <file category="source" name="Source/stream_buffer.c"/>
596         </files>
597       </component>
598      
599       <component Cgroup="Timers" Cversion="10.1.1" condition="FreeRTOS Core">
600         <description>Timer API</description>
601         <RTE_Components_h>
602           #define RTE_RTOS_FreeRTOS_TIMERS        /* RTOS FreeRTOS Timers */
603         </RTE_Components_h>
604         <files>
605           <file category="header" name="Source/include/timers.h"/>
606           <file category="source" name="Source/timers.c"/>
607         </files>
608       </component>
609      
610       <component Cgroup="Heap" Cvariant="Heap_1" Cversion="10.1.1" condition="FreeRTOS Core">
611         <description>Very simple, does not permit memory to be freed.</description>
612         <RTE_Components_h>
613           #define RTE_RTOS_FreeRTOS_HEAP_1        /* RTOS FreeRTOS Heap 1 */
614         </RTE_Components_h>
615         <files>
616           <file category="source" name="Source/portable/MemMang/heap_1.c"/>
617           <file category="doc"    name="http://www.freertos.org/a00111.html"/>
618         </files>
619       </component>
620      
621       <component Cgroup="Heap" Cvariant="Heap_2" Cversion="10.1.1" condition="FreeRTOS Core">
622         <description>Permits memory to be freed, but not does coalescence adjacent free memory blocks.</description>
623         <RTE_Components_h>
624           #define RTE_RTOS_FreeRTOS_HEAP_2        /* RTOS FreeRTOS Heap 2 */
625         </RTE_Components_h>
626         <files>
627           <file category="source" name="Source/portable/MemMang/heap_2.c"/>
628           <file category="doc"    name="http://www.freertos.org/a00111.html"/>
629         </files>
630       </component>
631      
632       <component Cgroup="Heap" Cvariant="Heap_3" Cversion="10.1.1" condition="FreeRTOS Core">
633         <description>Wraps the standard malloc() and free() for thread safety.</description>
634         <RTE_Components_h>
635           #define RTE_RTOS_FreeRTOS_HEAP_3        /* RTOS FreeRTOS Heap 3 */
636         </RTE_Components_h>
637         <files>
638           <file category="source" name="Source/portable/MemMang/heap_3.c"/>
639           <file category="doc"    name="http://www.freertos.org/a00111.html"/>
640         </files>
641       </component>
642      
643       <component Cgroup="Heap" Cvariant="Heap_4" Cversion="10.1.1" condition="FreeRTOS Core" isDefaultVariant="true">
644         <description>Coalescences adjacent free memory blocks to avoid fragmentation. Includes absolute address placement option.</description>
645         <RTE_Components_h>
646           #define RTE_RTOS_FreeRTOS_HEAP_4        /* RTOS FreeRTOS Heap 4 */
647         </RTE_Components_h>
648         <files>
649           <file category="source" name="Source/portable/MemMang/heap_4.c"/>
650           <file category="doc"    name="http://www.freertos.org/a00111.html"/>
651         </files>
652       </component>
653      
654       <component Cgroup="Heap" Cvariant="Heap_5" Cversion="10.1.1" condition="FreeRTOS Core">
655         <description>Same as Heap_4, with the ability to span the heap across multiple non-adjacent memory areas.</description>
656         <RTE_Components_h>
657           #define RTE_RTOS_FreeRTOS_HEAP_5        /* RTOS FreeRTOS Heap 5 */
658         </RTE_Components_h>
659         <files>
660           <file category="source" name="Source/portable/MemMang/heap_5.c"/>
661           <file category="doc"    name="http://www.freertos.org/a00111.html"/>
662         </files>
663       </component>
664     </bundle>
665   </components>
666
667   <examples>
668     <example name="CMSIS-RTOS2 FreeRTOS Blinky" doc="Abstract.txt" folder="CMSIS/RTOS2/FreeRTOS/Examples/Blinky">
669       <description>CMSIS-RTOS2 Blinky example using FreeRTOS</description>
670       <board name="uVision Simulator" vendor="Keil"/>
671       <project>
672         <environment name="uv" load="Blinky.uvprojx"/>
673       </project>
674       <attributes>
675         <component Cclass="CMSIS" Cgroup="CORE"/>
676         <component Cclass="CMSIS" Cgroup="RTOS2"/>
677         <component Cclass="Device" Cgroup="Startup"/>
678         <category>Getting Started</category>
679       </attributes>
680     </example>
681
682     <example name="CMSIS-RTOS2 FreeRTOS Blinky CA9 (AC5)" doc="Abstract.txt" folder="CMSIS/RTOS2/FreeRTOS/Examples/Blinky_CA9">
683       <description>CMSIS-RTOS2 Blinky example using FreeRTOS for Cortex-A9 (ARM Compiler 5)</description>
684       <board name="Fixed Virtual Platform" vendor="ARM"/>
685       <project>
686         <environment name="ds5" load=".project"/>
687       </project>
688       <attributes>
689         <component Cclass="CMSIS" Cgroup="CORE"/>
690         <component Cclass="CMSIS" Cgroup="RTOS2"/>
691         <component Cclass="Device" Cgroup="Startup"/>
692         <category>Getting Started</category>
693       </attributes>
694     </example>
695
696     <example name="CMSIS-RTOS2 FreeRTOS Blinky CA9 (AC6)" doc="Abstract.txt" folder="CMSIS/RTOS2/FreeRTOS/Examples/Blinky_CA9_AC6">
697       <description>CMSIS-RTOS2 Blinky example using FreeRTOS for Cortex-A9 (ARM Compiler 6)</description>
698       <board name="Fixed Virtual Platform" vendor="ARM"/>
699       <project>
700         <environment name="ds5" load=".project"/>
701       </project>
702       <attributes>
703         <component Cclass="CMSIS" Cgroup="CORE"/>
704         <component Cclass="CMSIS" Cgroup="RTOS2"/>
705         <component Cclass="Device" Cgroup="Startup"/>
706         <category>Getting Started</category>
707       </attributes>
708     </example>
709
710     <example name="Native FreeRTOS Blinky" doc="Abstract.txt" folder="CMSIS/RTOS2/FreeRTOS/Examples/Native_Blinky">
711       <description>Blinky example using FreeRTOS natively</description>
712       <board name="uVision Simulator" vendor="Keil"/>
713       <project>
714         <environment name="uv" load="Blinky.uvprojx"/>
715       </project>
716       <attributes>
717         <component Cclass="CMSIS" Cgroup="CORE"/>
718         <component Cclass="CMSIS" Cgroup="RTOS2"/>
719         <component Cclass="Device" Cgroup="Startup"/>
720         <category>Getting Started</category>
721       </attributes>
722     </example>
723   </examples>
724 </package>