]> begriffs open source - cmsis-freertos/blob - ARM.CMSIS-FreeRTOS.pdsc
Update documentation
[cmsis-freertos] / ARM.CMSIS-FreeRTOS.pdsc
1 <?xml version="1.0" encoding="utf-8"?>
2
3 <package schemaVersion="1.7.27" xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="https://raw.githubusercontent.com/Open-CMSIS-Pack/Open-CMSIS-Pack-Spec/v1.7.27/schema/PACK.xsd">
4   <vendor>ARM</vendor>
5   <name>CMSIS-FreeRTOS</name>
6   <description>Bundle of FreeRTOS for Cortex-M and Cortex-A</description>
7   <license>LICENSE</license>
8   <url>https://www.keil.com/pack/</url>
9
10   <releases>
11     <release version="0.0.0">
12       FreeRTOS 11.0.1
13       Active development...
14       - Add support for processor affinity to CMSIS-RTOS2 wrapper
15       - Add symmetric multiprocessing configuration options to FreeRTOSConfig.h
16       - Add memory allocation configuration options to FreeRTOSConfig.h
17       - Corrected task priority mapping, FreeRTOS priority is now osPriority_t-1
18       - CMSIS-RTOS2 requires CMSIS:OS Tick component
19       - Drop support for Arm Compiler 5
20       - Drop support for CMSIS-RTOS1 API
21     </release>
22   </releases>
23
24   <requirements>
25     <packages>
26       <package vendor="ARM" name="CMSIS" version="6.0.0-0"/>
27     </packages>
28   </requirements>
29
30   <conditions>
31     <condition id="ARMCC6">
32       <accept Tcompiler="ARMCC" Toptions="AC6"/>
33       <accept Tcompiler="ARMCC" Toptions="AC6LTO"/>
34     </condition>
35     <condition id="GCC">
36       <accept Tcompiler="GCC"/>
37       <accept Tcompiler="CLANG"/>
38     </condition>
39     <condition id="IAR">
40       <require Tcompiler="IAR"/>
41     </condition>
42
43     <condition id="CM0">
44       <description>Cortex-M0 or Cortex-M0+ or SC000 processor based device</description>
45       <accept Dcore="Cortex-M0"/>
46       <accept Dcore="Cortex-M0+"/>
47       <accept Dcore="SC000"/>
48     </condition>
49
50     <condition id="CM3">
51       <description>Cortex-M3 or SC300 processor based device</description>
52       <accept Dcore="Cortex-M3"/>
53       <accept Dcore="SC300"/>
54     </condition>
55
56     <condition id="CM4">
57       <description>Cortex-M4 processor based device</description>
58       <require Dcore="Cortex-M4" Dfpu="NO_FPU"/>
59     </condition>
60
61     <condition id="CM4_FP">
62       <description>Cortex-M4 processor based device using Floating Point Unit</description>
63       <require Dcore="Cortex-M4" Dfpu="FPU"/>
64     </condition>
65
66     <condition id="CM7">
67       <description>Cortex-M7 processor based device</description>
68       <require Dcore="Cortex-M7" Dfpu="NO_FPU"/>
69     </condition>
70
71     <condition id="CM7_SP">
72       <description>Cortex-M7 processor based device using Floating Point Unit (SP)</description>
73       <require Dcore="Cortex-M7" Dfpu="SP_FPU"/>
74     </condition>
75
76     <condition id="CM7_DP">
77       <description>Cortex-M7 processor based device using Floating Point Unit (DP)</description>
78       <require Dcore="Cortex-M7" Dfpu="DP_FPU"/>
79     </condition>
80
81     <condition id="CM23">
82       <description>Cortex-M23 processor based device</description>
83       <require Dcore="Cortex-M23"/>
84     </condition>
85
86     <condition id="CM23_NoTZ">
87       <description>Cortex-M23 processor based device without TrustZone</description>
88       <require condition="CM23"/>
89       <require Dtz="NO_TZ"/>
90     </condition>
91
92     <condition id="CM23_TZ">
93       <description>Cortex-M23 processor based device with TrustZone</description>
94       <require condition="CM23"/>
95       <require Dtz="TZ"/>
96     </condition>
97
98     <condition id="CM33">
99       <description>Cortex-M33 processor based device</description>
100       <require Dcore="Cortex-M33"/>
101     </condition>
102
103     <condition id="CM33_NoTZ">
104       <description>Cortex-M33 processor based device without TrustZone</description>
105       <require condition="CM33"/>
106       <require Dtz="NO_TZ"/>
107     </condition>
108
109     <condition id="CM33_TZ">
110       <description>Cortex-M33 processor based device with TrustZone</description>
111       <require condition="CM33"/>
112       <require Dtz="TZ"/>
113     </condition>
114
115     <condition id="CM35P">
116       <description>Cortex-M35P processor based device</description>
117       <require Dcore="Cortex-M35P"/>
118     </condition>
119
120     <condition id="CM35P_NoTZ">
121       <description>Cortex-M35P processor based device without TrustZone</description>
122       <require condition="CM35P"/>
123       <require Dtz="NO_TZ"/>
124     </condition>
125
126     <condition id="CM35P_TZ">
127       <description>Cortex-M35P processor based device with TrustZone</description>
128       <require condition="CM35P"/>
129       <require Dtz="TZ"/>
130     </condition>
131
132     <condition id="CM55">
133       <description>Cortex-M55 processor based device</description>
134       <require Dcore="Cortex-M55"/>
135     </condition>
136
137     <condition id="CM55_TZ">
138       <description>Cortex-M55 processor based device with TrustZone</description>
139       <require condition="CM55"/>
140       <require Dtz="TZ"/>
141     </condition>
142
143     <condition id="CM85">
144       <description>Cortex-M85 processor based device</description>
145       <require Dcore="Cortex-M85"/>
146     </condition>
147
148     <condition id="CM85_TZ">
149       <description>Cortex-M85 processor based device with TrustZone</description>
150       <require condition="CM85"/>
151       <require Dtz="TZ"/>
152     </condition>
153
154     <condition id="CA9_DP">
155       <description>Cortex-A9 processor based device using Floating Point Unit (DP)</description>
156       <require Dcore="Cortex-A9" Dfpu="DP_FPU"/>
157     </condition>
158
159     <!-- ARMCC6 compiler -->
160     <condition id="CM0_ARMCC6">
161       <description>Cortex-M0 or Cortex-M0+ or SC000 processor based device for the ARM Compiler 6</description>
162       <require condition="CM0"/>
163       <require condition="ARMCC6"/>
164     </condition>
165
166     <condition id="CM3_ARMCC6">
167       <description>Cortex-M3 or SC300 processor based device for the ARM Compiler 6</description>
168       <require condition="CM3"/>
169       <require condition="ARMCC6"/>
170     </condition>
171
172     <condition id="CM4_ARMCC6">
173       <description>Cortex-M4 processor based device for the ARM Compiler 6</description>
174       <require condition="CM4"/>
175       <require condition="ARMCC6"/>
176     </condition>
177     <condition id="CM4_FP_ARMCC6">
178       <description>Cortex-M4 processor based device using Floating Point Unit for the ARM Compiler 6</description>
179       <require condition="CM4_FP"/>
180       <require condition="ARMCC6"/>
181     </condition>
182
183     <condition id="CM7_ARMCC6">
184       <description>Cortex-M7 processor based device for the ARM Compiler 6</description>
185       <require condition="CM7"/>
186       <require condition="ARMCC6"/>
187     </condition>
188     <condition id="CM7_SP_ARMCC6">
189       <description>Cortex-M7 processor based device using Floating Point Unit (SP) for the ARM Compiler 6</description>
190       <require condition="CM7_SP"/>
191       <require condition="ARMCC6"/>
192     </condition>
193     <condition id="CM7_DP_ARMCC6">
194       <description>Cortex-M7 processor based device using Floating Point Unit (DP) for the ARM Compiler 6</description>
195       <require condition="CM7_DP"/>
196       <require condition="ARMCC6"/>
197     </condition>
198
199     <condition id="CM23_ARMCC6">
200       <description>Cortex-M23 processor based device for the ARM Compiler 6</description>
201       <require condition="CM23"/>
202       <require condition="ARMCC6"/>
203     </condition>
204     <condition id="CM23_NoTZ_ARMCC6">
205       <description>Cortex-M23 processor based device without TrustZone for the ARM Compiler 6</description>
206       <require condition="CM23_NoTZ"/>
207       <require condition="ARMCC6"/>
208     </condition>
209     <condition id="CM23_TZ_ARMCC6">
210       <description>Cortex-M23 processor based device with TrustZone for the ARM Compiler 6</description>
211       <require condition="CM23_TZ"/>
212       <require condition="ARMCC6"/>
213     </condition>
214
215     <condition id="CM33_ARMCC6">
216       <description>Cortex-M33 processor based device for the ARM Compiler 6</description>
217       <require condition="CM33"/>
218       <require condition="ARMCC6"/>
219     </condition>
220     <condition id="CM33_NoTZ_ARMCC6">
221       <description>Cortex-M33 processor based device without TrustZone for the ARM Compiler 6</description>
222       <require condition="CM33_NoTZ"/>
223       <require condition="ARMCC6"/>
224     </condition>
225     <condition id="CM33_TZ_ARMCC6">
226       <description>Cortex-M33 processor based device with TrustZone for the ARM Compiler 6</description>
227       <require condition="CM33_TZ"/>
228       <require condition="ARMCC6"/>
229     </condition>
230
231     <condition id="CM35P_ARMCC6">
232       <description>Cortex-M35P processor based device for the ARM Compiler 6</description>
233       <require condition="CM35P"/>
234       <require condition="ARMCC6"/>
235     </condition>
236     <condition id="CM35P_NoTZ_ARMCC6">
237       <description>Cortex-M35P processor based device without TrustZone for the ARM Compiler 6</description>
238       <require condition="CM35P_NoTZ"/>
239       <require condition="ARMCC6"/>
240     </condition>
241     <condition id="CM35P_TZ_ARMCC6">
242       <description>Cortex-M35P processor based device with TrustZone for the ARM Compiler 6</description>
243       <require condition="CM35P_TZ"/>
244       <require condition="ARMCC6"/>
245     </condition>
246
247     <condition id="CM55_ARMCC6">
248       <description>Cortex-M55 processor based device for the ARM Compiler 6</description>
249       <require condition="CM55"/>
250       <require condition="ARMCC6"/>
251     </condition>
252     <condition id="CM55_TZ_ARMCC6">
253       <description>Cortex-M55 processor based device with TrustZone for the ARM Compiler 6</description>
254       <require condition="CM55_TZ"/>
255       <require condition="ARMCC6"/>
256     </condition>
257
258     <condition id="CM85_ARMCC6">
259       <description>Cortex-M85 processor based device for the ARM Compiler 6</description>
260       <require condition="CM85"/>
261       <require condition="ARMCC6"/>
262     </condition>
263     <condition id="CM85_TZ_ARMCC6">
264       <description>Cortex-M85 processor based device with TrustZone for the ARM Compiler 6</description>
265       <require condition="CM85_TZ"/>
266       <require condition="ARMCC6"/>
267     </condition>
268
269     <condition id="CA9_DP_ARMCC6">
270       <description>Cortex-A9 processor based device using Floating Point Unit (DP) for the ARM Compiler 6</description>
271       <require condition="CA9_DP"/>
272       <require condition="ARMCC6"/>
273     </condition>
274
275     <!-- GCC compiler -->
276     <condition id="CM0_GCC">
277       <description>Cortex-M0 or Cortex-M0+ or SC000 processor based device for the GCC Compiler</description>
278       <require condition="CM0"/>
279       <require condition="GCC"/>
280     </condition>
281
282     <condition id="CM3_GCC">
283       <description>Cortex-M3 or SC300 processor based device for the GCC Compiler</description>
284       <require condition="CM3"/>
285       <require condition="GCC"/>
286     </condition>
287
288     <condition id="CM4_GCC">
289       <description>Cortex-M4 processor based device for the GCC Compiler</description>
290       <require condition="CM4"/>
291       <require condition="GCC"/>
292     </condition>
293     <condition id="CM4_FP_GCC">
294       <description>Cortex-M4 processor based device using Floating Point Unit for the GCC Compiler</description>
295       <require condition="CM4_FP"/>
296       <require condition="GCC"/>
297     </condition>
298
299     <condition id="CM7_GCC">
300       <description>Cortex-M7 processor based device for the GCC Compiler</description>
301       <require condition="CM7"/>
302       <require condition="GCC"/>
303     </condition>
304     <condition id="CM7_SP_GCC">
305       <description>Cortex-M7 processor based device using Floating Point Unit (SP) for the GCC Compiler</description>
306       <require condition="CM7_SP"/>
307       <require condition="GCC"/>
308     </condition>
309     <condition id="CM7_DP_GCC">
310       <description>Cortex-M7 processor based device using Floating Point Unit (DP) for the GCC Compiler</description>
311       <require condition="CM7_DP"/>
312       <require condition="GCC"/>
313     </condition>
314
315     <condition id="CM23_GCC">
316       <description>Cortex-M23 processor based device for the GCC Compiler</description>
317       <require condition="CM23"/>
318       <require condition="GCC"/>
319     </condition>
320     <condition id="CM23_NoTZ_GCC">
321       <description>Cortex-M23 processor based device without TrustZone for the GCC Compiler</description>
322       <require condition="CM23_NoTZ"/>
323       <require condition="GCC"/>
324     </condition>
325     <condition id="CM23_TZ_GCC">
326       <description>Cortex-M23 processor based device with TrustZone for the GCC Compiler</description>
327       <require condition="CM23_TZ"/>
328       <require condition="GCC"/>
329     </condition>
330
331     <condition id="CM33_GCC">
332       <description>Cortex-M33 processor based device for the GCC Compiler</description>
333       <require condition="CM33"/>
334       <require condition="GCC"/>
335     </condition>
336     <condition id="CM33_NoTZ_GCC">
337       <description>Cortex-M33 processor based device without TrustZone for the GCC Compiler</description>
338       <require condition="CM33_NoTZ"/>
339       <require condition="GCC"/>
340     </condition>
341     <condition id="CM33_TZ_GCC">
342       <description>Cortex-M33 processor based device with TrustZone for the GCC Compiler</description>
343       <require condition="CM33_TZ"/>
344       <require condition="GCC"/>
345     </condition>
346
347     <condition id="CM35P_GCC">
348       <description>Cortex-M35P processor based device for the GCC Compiler</description>
349       <require condition="CM35P"/>
350       <require condition="GCC"/>
351     </condition>
352     <condition id="CM35P_NoTZ_GCC">
353       <description>Cortex-M35P processor based device without TrustZone for the GCC Compiler</description>
354       <require condition="CM35P_NoTZ"/>
355       <require condition="GCC"/>
356     </condition>
357     <condition id="CM35P_TZ_GCC">
358       <description>Cortex-M35P processor based device with TrustZone for the GCC Compiler</description>
359       <require condition="CM35P_TZ"/>
360       <require condition="GCC"/>
361     </condition>
362
363     <condition id="CM55_GCC">
364       <description>Cortex-M55 processor based device for the GCC Compiler</description>
365       <require condition="CM55"/>
366       <require condition="GCC"/>
367     </condition>
368     <condition id="CM55_TZ_GCC">
369       <description>Cortex-M55 processor based device with TrustZone for the GCC Compiler</description>
370       <require condition="CM55_TZ"/>
371       <require condition="GCC"/>
372     </condition>
373
374     <condition id="CM85_GCC">
375       <description>Cortex-M85 processor based device for the GCC Compiler</description>
376       <require condition="CM85"/>
377       <require condition="GCC"/>
378     </condition>
379     <condition id="CM85_TZ_GCC">
380       <description>Cortex-M85 processor based device with TrustZone for the GCC Compiler</description>
381       <require condition="CM85_TZ"/>
382       <require condition="GCC"/>
383     </condition>
384
385     <condition id="CA9_DP_GCC">
386       <description>Cortex-A9 processor based device using Floating Point Unit (DP) for the GCC Compiler</description>
387       <require condition="CA9_DP"/>
388       <require condition="GCC"/>
389     </condition>
390
391     <!-- IAR compiler -->
392     <condition id="CM0_IAR">
393       <description>Cortex-M0 or Cortex-M0+ or SC000 processor based device for the IAR Compiler</description>
394       <require condition="CM0"/>
395       <require condition="IAR"/>
396     </condition>
397
398     <condition id="CM3_IAR">
399       <description>Cortex-M3 or SC300 processor based device for the IAR Compiler</description>
400       <require condition="CM3"/>
401       <require condition="IAR"/>
402     </condition>
403
404     <condition id="CM4_IAR">
405       <description>Cortex-M4 processor based device for the IAR Compiler</description>
406       <require condition="CM4"/>
407       <require condition="IAR"/>
408     </condition>
409     <condition id="CM4_FP_IAR">
410       <description>Cortex-M4 processor based device using Floating Point Unit for the IAR Compiler</description>
411       <require condition="CM4_FP"/>
412       <require condition="IAR"/>
413     </condition>
414
415     <condition id="CM7_IAR">
416       <description>Cortex-M7 processor based device for the IAR Compiler</description>
417       <require condition="CM7"/>
418       <require condition="IAR"/>
419     </condition>
420     <condition id="CM7_SP_IAR">
421       <description>Cortex-M7 processor based device using Floating Point Unit (SP) for the IAR Compiler</description>
422       <require condition="CM7_SP"/>
423       <require condition="IAR"/>
424     </condition>
425     <condition id="CM7_DP_IAR">
426       <description>Cortex-M7 processor based device using Floating Point Unit (DP) for the IAR Compiler</description>
427       <require condition="CM7_DP"/>
428       <require condition="IAR"/>
429     </condition>
430
431     <condition id="CM23_IAR">
432       <description>Cortex-M23 processor based device for the IAR Compiler</description>
433       <require condition="CM23"/>
434       <require condition="IAR"/>
435     </condition>
436     <condition id="CM23_NoTZ_IAR">
437       <description>Cortex-M23 processor based device without TrustZone for the IAR Compiler</description>
438       <require condition="CM23_NoTZ"/>
439       <require condition="IAR"/>
440     </condition>
441     <condition id="CM23_TZ_IAR">
442       <description>Cortex-M23 processor based device with TrustZone for the IAR Compiler</description>
443       <require condition="CM23_TZ"/>
444       <require condition="IAR"/>
445     </condition>
446
447     <condition id="CM33_IAR">
448       <description>Cortex-M33 processor based device for the IAR Compiler</description>
449       <require condition="CM33"/>
450       <require condition="IAR"/>
451     </condition>
452     <condition id="CM33_NoTZ_IAR">
453       <description>Cortex-M33 processor based device without TrustZone for the IAR Compiler</description>
454       <require condition="CM33_NoTZ"/>
455       <require condition="IAR"/>
456     </condition>
457     <condition id="CM33_TZ_IAR">
458       <description>Cortex-M33 processor based device with TrustZone for the IAR Compiler</description>
459       <require condition="CM33_TZ"/>
460       <require condition="IAR"/>
461     </condition>
462
463     <condition id="CM35P_IAR">
464       <description>Cortex-M35P processor based device for the IAR Compiler</description>
465       <require condition="CM35P"/>
466       <require condition="IAR"/>
467     </condition>
468     <condition id="CM35P_NoTZ_IAR">
469       <description>Cortex-M35P processor based device without TrustZone for the IAR Compiler</description>
470       <require condition="CM35P_NoTZ"/>
471       <require condition="IAR"/>
472     </condition>
473     <condition id="CM35P_TZ_IAR">
474       <description>Cortex-M35P processor based device with TrustZone for the IAR Compiler</description>
475       <require condition="CM33_TZ"/>
476       <require condition="IAR"/>
477     </condition>
478
479     <condition id="CM55_IAR">
480       <description>Cortex-M55 processor based device for the IAR Compiler</description>
481       <require condition="CM55"/>
482       <require condition="IAR"/>
483     </condition>
484     <condition id="CM55_TZ_IAR">
485       <description>Cortex-M55 processor based device with TrustZone for the IAR Compiler</description>
486       <require condition="CM55_TZ"/>
487       <require condition="IAR"/>
488     </condition>
489
490     <condition id="CM85_IAR">
491       <description>Cortex-M85 processor based device for the IAR Compiler</description>
492       <require condition="CM85"/>
493       <require condition="IAR"/>
494     </condition>
495     <condition id="CM85_TZ_IAR">
496       <description>Cortex-M85 processor based device with TrustZone for the IAR Compiler</description>
497       <require condition="CM85_TZ"/>
498       <require condition="IAR"/>
499     </condition>
500
501     <condition id="CA9_DP_IAR">
502       <description>Cortex-A9 processor based device using Floating Point Unit (DP) for the IAR Compiler</description>
503       <require condition="CA9_DP"/>
504       <require condition="IAR"/>
505     </condition>
506
507     <!-- FreeRTOS ports for the Arm Cortex core -->
508     <condition id="FreeRTOS Port Cortex-M0">
509       <description>Requirements for FreeRTOS port for Cortex-M0 and Cortex-M0+</description>
510       <accept condition="CM0_ARMCC6"/>
511       <accept condition="CM0_GCC"/>
512       <accept condition="CM0_IAR"/>
513     </condition>
514     <condition id="FreeRTOS Port Cortex-M3">
515       <description>Requirements for FreeRTOS port for Cortex-M3</description>
516       <accept condition="CM3_ARMCC6"/>
517       <accept condition="CM3_GCC"/>
518       <accept condition="CM3_IAR"/>
519     </condition>
520     <condition id="FreeRTOS Port Cortex-M3 MPU">
521       <description>Requirements for FreeRTOS port for Cortex-M3 using MPU</description>
522       <accept condition="CM3_ARMCC6"/>
523       <accept condition="CM3_GCC"/>
524     </condition>
525     <condition id="FreeRTOS Port Cortex-M4">
526       <description>Requirements for FreeRTOS port for Cortex-M4</description>
527       <accept condition="CM4_ARMCC6"/>
528       <accept condition="CM4_GCC"/>
529       <accept condition="CM4_IAR"/>
530     </condition>
531     <condition id="FreeRTOS Port Cortex-M4 MPU">
532       <description>Requirements for FreeRTOS port for Cortex-M4 using MPU</description>
533       <accept condition="CM4_ARMCC6"/>
534       <accept condition="CM4_GCC"/>
535     </condition>
536     <condition id="FreeRTOS Port Cortex-M4 FPU">
537       <description>Requirements for FreeRTOS port for Cortex-M4 using FPU</description>
538       <accept condition="CM4_FP_ARMCC6"/>
539       <accept condition="CM4_FP_GCC"/>
540       <accept condition="CM4_FP_IAR"/>
541     </condition>
542     <condition id="FreeRTOS Port Cortex-M4 FPU MPU">
543       <description>Requirements for FreeRTOS port for Cortex-M4 using FPU and MPU</description>
544       <accept condition="CM4_FP_ARMCC6"/>
545       <accept condition="CM4_FP_GCC"/>
546       <accept condition="CM4_FP_IAR"/>
547     </condition>
548     <condition id="FreeRTOS Port Cortex-M7">
549       <description>Requirements for FreeRTOS port for Cortex-M7</description>
550       <accept condition="CM7_ARMCC6"/>
551       <accept condition="CM7_GCC"/>
552       <accept condition="CM7_IAR"/>
553     </condition>
554     <condition id="FreeRTOS Port Cortex-M7 FPU SP">
555       <description>Requirements for FreeRTOS port for Cortex-M7 using FPU (SP)</description>
556       <accept condition="CM7_SP_ARMCC6"/>
557       <accept condition="CM7_SP_GCC"/>
558       <accept condition="CM7_SP_IAR"/>
559     </condition>
560     <condition id="FreeRTOS Port Cortex-M7 FPU DP">
561       <description>Requirements for FreeRTOS port for Cortex-M7 using FPU (DP)</description>
562       <accept condition="CM7_DP_ARMCC6"/>
563       <accept condition="CM7_DP_GCC"/>
564       <accept condition="CM7_DP_IAR"/>
565     </condition>
566     <condition id="FreeRTOS Port Cortex-M23">
567       <description>Requirements for FreeRTOS port for Cortex-M23</description>
568       <accept condition="CM23_ARMCC6"/>
569       <accept condition="CM23_GCC"/>
570       <accept condition="CM23_IAR"/>
571     </condition>
572     <condition id="FreeRTOS Port Cortex-M23 NoTZ">
573       <description>Requirements for FreeRTOS port for Cortex-M23 without TrustZone</description>
574       <accept condition="CM23_NoTZ_ARMCC6"/>
575       <accept condition="CM23_NoTZ_GCC"/>
576       <accept condition="CM23_NoTZ_IAR"/>
577     </condition>
578     <condition id="FreeRTOS Port Cortex-M23 TZ">
579       <description>Requirements for FreeRTOS port for Cortex-M23 with TrustZone</description>
580       <accept condition="CM23_TZ_ARMCC6"/>
581       <accept condition="CM23_TZ_GCC"/>
582       <accept condition="CM23_TZ_IAR"/>
583     </condition>
584     <condition id="FreeRTOS Port Cortex-M33">
585       <description>Requirements for FreeRTOS port for Cortex-M33</description>
586       <accept condition="CM33_ARMCC6"/>
587       <accept condition="CM33_GCC"/>
588       <accept condition="CM33_IAR"/>
589     </condition>
590     <condition id="FreeRTOS Port Cortex-M33 NoTZ">
591       <description>Requirements for FreeRTOS port for Cortex-M33 without TrustZone</description>
592       <accept condition="CM33_NoTZ_ARMCC6"/>
593       <accept condition="CM33_NoTZ_GCC"/>
594       <accept condition="CM33_NoTZ_IAR"/>
595     </condition>
596     <condition id="FreeRTOS Port Cortex-M33 TZ">
597       <description>Requirements for FreeRTOS port for Cortex-M33 with TrustZone</description>
598       <accept condition="CM33_TZ_ARMCC6"/>
599       <accept condition="CM33_TZ_GCC"/>
600       <accept condition="CM33_TZ_IAR"/>
601     </condition>
602     <condition id="FreeRTOS Port Cortex-M35P">
603       <description>Requirements for FreeRTOS port for Cortex-M35P</description>
604       <accept condition="CM35P_ARMCC6"/>
605       <accept condition="CM35P_GCC"/>
606       <accept condition="CM35P_IAR"/>
607     </condition>
608     <condition id="FreeRTOS Port Cortex-M35P NoTZ">
609       <description>Requirements for FreeRTOS port for Cortex-M35P without TrustZone</description>
610       <accept condition="CM35P_NoTZ_ARMCC6"/>
611       <accept condition="CM35P_NoTZ_GCC"/>
612       <accept condition="CM35P_NoTZ_IAR"/>
613     </condition>
614     <condition id="FreeRTOS Port Cortex-M35P TZ">
615       <description>Requirements for FreeRTOS port for Cortex-M35P with TrustZone</description>
616       <accept condition="CM35P_TZ_ARMCC6"/>
617       <accept condition="CM35P_TZ_GCC"/>
618       <accept condition="CM35P_TZ_IAR"/>
619     </condition>
620     <condition id="FreeRTOS Port Cortex-M55 TZ">
621       <description>Requirements for FreeRTOS port for Cortex-M55 with TrustZone</description>
622       <accept condition="CM55_TZ_ARMCC6"/>
623       <accept condition="CM55_TZ_GCC"/>
624       <accept condition="CM55_TZ_IAR"/>
625     </condition>
626     <condition id="FreeRTOS Port Cortex-M85 TZ">
627       <description>Requirements for FreeRTOS port for Cortex-M85 with TrustZone</description>
628       <accept condition="CM85_TZ_ARMCC6"/>
629       <accept condition="CM85_TZ_GCC"/>
630       <accept condition="CM85_TZ_IAR"/>
631     </condition>
632     <condition id="FreeRTOS Port Cortex-A9 FPU DP">
633       <description>Requirements for FreeRTOS port for Cortex-A9 using FPU (DP)</description>
634       <accept condition="CA9_DP_ARMCC6"/>
635       <accept condition="CA9_DP_GCC"/>
636       <accept condition="CA9_DP_IAR"/>
637     </condition>
638
639     <condition id="FreeRTOS Port Cortex-M v6_v7">
640       <description>Requirements for FreeRTOS port for Cortex-M v6 and v7</description>
641       <accept condition="FreeRTOS Port Cortex-M0"/>
642       <accept condition="FreeRTOS Port Cortex-M3"/>
643       <accept condition="FreeRTOS Port Cortex-M4"/>
644       <accept condition="FreeRTOS Port Cortex-M4 FPU"/>
645       <accept condition="FreeRTOS Port Cortex-M7"/>
646       <accept condition="FreeRTOS Port Cortex-M7 FPU SP"/>
647       <accept condition="FreeRTOS Port Cortex-M7 FPU DP"/>
648     </condition>
649     <condition id="FreeRTOS Port Cortex-M v6_v7 MPU">
650       <description>Requirements for FreeRTOS port for Cortex-M v6 and v7 using MPU</description>
651       <accept condition="FreeRTOS Port Cortex-M3 MPU"/>
652       <accept condition="FreeRTOS Port Cortex-M4 MPU"/>
653       <accept condition="FreeRTOS Port Cortex-M4 FPU MPU"/>
654     </condition>
655     <condition id="FreeRTOS Port Cortex-M v8">
656       <description>Requirements for FreeRTOS port for Cortex-M v8</description>
657       <accept condition="FreeRTOS Port Cortex-M23"/>
658       <accept condition="FreeRTOS Port Cortex-M23 NoTZ"/>
659       <accept condition="FreeRTOS Port Cortex-M23 TZ"/>
660       <accept condition="FreeRTOS Port Cortex-M33"/>
661       <accept condition="FreeRTOS Port Cortex-M33 NoTZ"/>
662       <accept condition="FreeRTOS Port Cortex-M33 TZ"/>
663       <accept condition="FreeRTOS Port Cortex-M35P"/>
664       <accept condition="FreeRTOS Port Cortex-M35P NoTZ"/>
665       <accept condition="FreeRTOS Port Cortex-M35P TZ"/>
666       <accept condition="FreeRTOS Port Cortex-M55 TZ"/>
667       <accept condition="FreeRTOS Port Cortex-M85 TZ"/>
668     </condition>
669     <condition id="FreeRTOS Port Cortex-M v8 TZ">
670       <description>Requirements for FreeRTOS port for Cortex-M v8 with TrustZone</description>
671       <accept condition="FreeRTOS Port Cortex-M23 TZ"/>
672       <accept condition="FreeRTOS Port Cortex-M33 TZ"/>
673       <accept condition="FreeRTOS Port Cortex-M35P TZ"/>
674       <accept condition="FreeRTOS Port Cortex-M55 TZ"/>
675       <accept condition="FreeRTOS Port Cortex-M85 TZ"/>
676     </condition>
677     <condition id="FreeRTOS Port Cortex-A">
678       <description>Requirements for FreeRTOS port for Cortex-A</description>
679       <accept condition="FreeRTOS Port Cortex-A9 FPU DP"/>
680     </condition>
681     <condition id="FreeRTOS Port Cortex-M">
682       <description>Requirements for FreeRTOS port for Cortex-M</description>
683       <accept condition="FreeRTOS Port Cortex-M v6_v7"/>
684       <accept condition="FreeRTOS Port Cortex-M v8"/>
685     </condition>
686     <condition id="FreeRTOS Port">
687       <description>FreeRTOS ports for Arm Cortex combined</description>
688       <accept condition="FreeRTOS Port Cortex-A"/>
689       <accept condition="FreeRTOS Port Cortex-M"/>
690     </condition>
691
692     <!-- Conditions for RTOS::FreeRTOS components -->
693     <condition id="FreeRTOS Message or Stream Buffer API">
694       <description>FreeRTOS Message or Stream Buffer component</description>
695       <accept Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Message Buffer"/>
696       <accept Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Stream Buffer"/>
697     </condition>
698
699     <condition id="FreeRTOS Core CA">
700       <description>Requirements for FreeRTOS Core for Cortex-A</description>
701       <require condition="FreeRTOS Port Cortex-A"/>
702
703       <require Cclass="Device" Cgroup="Startup"/>
704       <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Config"/>
705       <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Heap"/>
706     </condition>
707
708     <condition id="FreeRTOS Core CM">
709       <description>Requirements for FreeRTOS Core for Cortex-M</description>
710       <require condition="FreeRTOS Port Cortex-M"/>
711
712       <require Cclass="Device" Cgroup="Startup"/>
713       <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Config"/>
714       <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Heap"/>
715     </condition>
716
717     <condition id="FreeRTOS Core CM v6_v7 MPU">
718     <description>Requirements for FreeRTOS Core with MPU support for Cortex-M v6 and v7</description>
719       <require condition="FreeRTOS Port Cortex-M v6_v7 MPU"/>
720
721       <require Cclass="Device" Cgroup="Startup"/>
722       <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Config"/>
723       <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Heap"/>
724       <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Event Groups"/>
725       <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Timers"/>
726       <require condition="FreeRTOS Message or Stream Buffer API"/>
727     </condition>
728
729     <condition id="FreeRTOS Core TZ">
730       <description>Requirements for FreeRTOS Core with TrustZone support</description>
731       <require condition="FreeRTOS Port Cortex-M v8 TZ"/>
732
733       <require Cclass="Device" Cgroup="Startup"/>
734       <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Config"/>
735       <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Heap"/>
736     </condition>
737
738     <condition id="FreeRTOS Core TZ MPU">
739       <description>Requirements for FreeRTOS Core with TrustZone and MPU support</description>
740       <require condition="FreeRTOS Port Cortex-M v8 TZ"/>
741
742       <require Cclass="Device" Cgroup="Startup"/>
743       <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Config"/>
744       <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Heap"/>
745       <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Event Groups"/>
746       <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Timers"/>
747       <require condition="FreeRTOS Message or Stream Buffer API"/>
748     </condition>
749
750     <condition id="FreeRTOS Config Native">
751       <description>Components required for FreeRTOS Config Native variant</description>
752       <require condition="FreeRTOS Port"/>
753
754       <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Core"/>
755     </condition>
756
757     <condition id="FreeRTOS Config CMSIS RTOS2">
758       <description>Components required for FreeRTOS Config CMSIS RTOS2 variant</description>
759       <require condition="FreeRTOS Port"/>
760
761       <require Cclass="CMSIS" Cgroup="RTOS2" Csub="FreeRTOS"/>
762     </condition>
763
764     <condition id="FreeRTOS Coroutines">
765       <description>Components required for FreeRTOS Coroutines</description>
766       <require condition="FreeRTOS Port"/>
767
768       <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Core"/>
769     </condition>
770
771     <condition id="FreeRTOS Event Groups">
772       <description>Components required for FreeRTOS Event Groups</description>
773       <require condition="FreeRTOS Port"/>
774
775       <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Core"/>
776     </condition>
777
778     <condition id="FreeRTOS Heap">
779       <description>Components required for FreeRTOS Heap</description>
780       <require condition="FreeRTOS Port"/>
781
782       <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Core"/>
783     </condition>
784
785     <condition id="FreeRTOS Message Buffer">
786       <description>Components required for FreeRTOS Message Buffer</description>
787       <require condition="FreeRTOS Port"/>
788
789       <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Core"/>
790     </condition>
791
792     <condition id="FreeRTOS Stream Buffer">
793       <description>Components required for FreeRTOS Stream Buffer</description>
794       <require condition="FreeRTOS Port"/>
795
796       <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Core"/>
797     </condition>
798
799     <condition id="FreeRTOS Timers">
800       <description>Components required for FreeRTOS Timers</description>
801       <require condition="FreeRTOS Port"/>
802
803       <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Core"/>
804     </condition>
805
806     <condition id="FreeRTOS TrustZone">
807       <description>Components required for FreeRTOS TrustZone</description>
808       <require condition="FreeRTOS Port Cortex-M v8 TZ"/>
809
810       <!-- TrustZone Secure Context is a standalone component -->
811       <deny Cclass="CMSIS" Cgroup="RTOS"  Csub="FreeRTOS"/>
812       <deny Cclass="CMSIS" Cgroup="RTOS2" Csub="FreeRTOS"/>
813
814       <deny Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Config"/>
815       <deny Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Core"/>
816       <deny Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Coroutines"/>
817       <deny Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Heap"/>
818       <deny Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Event Groups"/>
819       <deny Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Message Buffer"/>
820       <deny Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Stream Buffer"/>
821       <deny Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Timers"/>
822     </condition>
823
824     <condition id="CMSIS RTOS2 FreeRTOS CortexM">
825       <description>Components required for CMSIS RTOS2 API on top of FreeRTOS for Cortex-M</description>
826       <require condition="FreeRTOS Port Cortex-M"/>
827
828       <require Cclass="CMSIS" Cgroup="OS Tick"/>
829       <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Config" Cvariant="CMSIS RTOS2"/>
830       <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Core"/>
831       <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Event Groups"/>
832       <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Timers"/>
833     </condition>
834
835     <condition id="CMSIS RTOS2 FreeRTOS CortexA">
836       <description>Components required for CMSIS RTOS2 API on top of FreeRTOS for Cortex-A</description>
837       <require condition="FreeRTOS Port Cortex-A"/>
838
839       <require Cclass="CMSIS" Cgroup="OS Tick"/>
840       <require Cclass="Device" Cgroup="IRQ Controller"/>
841       <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Config" Cvariant="CMSIS RTOS2"/>
842       <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Core"/>
843       <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Event Groups"/>
844       <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Timers"/>
845     </condition>
846
847   </conditions>
848
849   <components>
850     <!-- CMSIS-RTOS2 FreeRTOS component -->
851     <component Cclass="CMSIS" Cgroup="RTOS2" Csub="FreeRTOS" Cvariant="Cortex-M" Cversion="11.0.1" Capiversion="2.3.0" condition="CMSIS RTOS2 FreeRTOS CortexM">
852       <description>CMSIS-RTOS2 implementation for Cortex-M based on FreeRTOS</description>
853       <RTE_Components_h>
854         #define RTE_CMSIS_RTOS2                 /* CMSIS-RTOS2 */
855         #define RTE_CMSIS_RTOS2_FreeRTOS        /* CMSIS-RTOS2 FreeRTOS */
856       </RTE_Components_h>
857       <files>
858         <file category="doc"    name="Documentation/html/index.html"/>
859         <file category="header" name="CMSIS/RTOS2/FreeRTOS/Include/freertos_mpool.h"/>
860         <file category="source" name="CMSIS/RTOS2/FreeRTOS/Source/cmsis_os2.c"/>
861         <file category="source" name="CMSIS/RTOS2/FreeRTOS/Source/clib_os.c"/>
862       </files>
863     </component>
864
865     <component Cclass="CMSIS" Cgroup="RTOS2" Csub="FreeRTOS" Cvariant="Cortex-A" Cversion="11.0.1" Capiversion="2.3.0" condition="CMSIS RTOS2 FreeRTOS CortexA">
866       <description>CMSIS-RTOS2 implementation for Cortex-A based on FreeRTOS</description>
867       <RTE_Components_h>
868         #define RTE_CMSIS_RTOS2                 /* CMSIS-RTOS2 */
869         #define RTE_CMSIS_RTOS2_FreeRTOS        /* CMSIS-RTOS2 FreeRTOS */
870       </RTE_Components_h>
871       <files>
872         <file category="doc"    name="Documentation/html/index.html"/>
873         <file category="header" name="CMSIS/RTOS2/FreeRTOS/Include/freertos_mpool.h"/>
874         <file category="source" name="CMSIS/RTOS2/FreeRTOS/Source/cmsis_os2.c"/>
875         <file category="source" name="CMSIS/RTOS2/FreeRTOS/Source/clib_os.c"/>
876
877         <file category="source" attr="config" name="CMSIS/RTOS2/FreeRTOS/Source/handlers.c" version="9.1.0"/>
878       </files>
879     </component>
880
881     <bundle Cbundle="FreeRTOS" Cclass="RTOS" Cversion="11.0.1">
882       <description>FreeRTOS Real Time Kernel</description>
883       <doc>https://www.freertos.org/RTOS.html</doc>
884
885       <component Cgroup="Core" Cvariant="Cortex-M" isDefaultVariant="true" condition="FreeRTOS Core CM">
886         <description>Core API (Kernel, Tasks, Semaphores, Mutexes, Queues) for Cortex-M</description>
887         <RTE_Components_h>
888           #define RTE_RTOS_FreeRTOS_CORE          /* RTOS FreeRTOS Core */
889         </RTE_Components_h>
890         <files>
891           <file category="include" name="Source/include/"/>
892
893           <file category="header"  name="Source/include/FreeRTOS.h"/>
894           <file category="header"  name="Source/include/queue.h"/>
895           <file category="header"  name="Source/include/semphr.h"/>
896           <file category="header"  name="Source/include/task.h"/>
897
898           <file category="source"  name="Source/list.c"/>
899           <file category="source"  name="Source/queue.c"/>
900           <file category="source"  name="Source/tasks.c"/>
901
902           <file category="include"   condition="CM0_ARMCC6"    name="Source/portable/GCC/ARM_CM0/"/>
903           <file category="source"    condition="CM0_ARMCC6"    name="Source/portable/GCC/ARM_CM0/port.c"/>
904           <file category="include"   condition="CM3_ARMCC6"    name="Source/portable/GCC/ARM_CM3/"/>
905           <file category="source"    condition="CM3_ARMCC6"    name="Source/portable/GCC/ARM_CM3/port.c"/>
906           <file category="include"   condition="CM4_ARMCC6"    name="Source/portable/GCC/ARM_CM3/"/>
907           <file category="source"    condition="CM4_ARMCC6"    name="Source/portable/GCC/ARM_CM3/port.c"/>
908           <file category="include"   condition="CM4_FP_ARMCC6" name="Source/portable/GCC/ARM_CM4F/"/>
909           <file category="source"    condition="CM4_FP_ARMCC6" name="Source/portable/GCC/ARM_CM4F/port.c"/>
910           <file category="include"   condition="CM7_ARMCC6"    name="Source/portable/GCC/ARM_CM3/"/>
911           <file category="source"    condition="CM7_ARMCC6"    name="Source/portable/GCC/ARM_CM3/port.c"/>
912           <file category="include"   condition="CM7_DP_ARMCC6" name="Source/portable/GCC/ARM_CM7/r0p1/"/>
913           <file category="source"    condition="CM7_DP_ARMCC6" name="Source/portable/GCC/ARM_CM7/r0p1/port.c"/>
914           <file category="include"   condition="CM7_SP_ARMCC6" name="Source/portable/GCC/ARM_CM7/r0p1/"/>
915           <file category="source"    condition="CM7_SP_ARMCC6" name="Source/portable/GCC/ARM_CM7/r0p1/port.c"/>
916           <file category="include"   condition="CM23_ARMCC6"   name="Source/portable/GCC/ARM_CM23_NTZ/non_secure/"/>
917           <file category="source"    condition="CM23_ARMCC6"   name="Source/portable/GCC/ARM_CM23_NTZ/non_secure/port.c"/>
918           <file category="source"    condition="CM23_ARMCC6"   name="Source/portable/GCC/ARM_CM23_NTZ/non_secure/portasm.c"/>
919           <file category="include"   condition="CM33_ARMCC6"   name="Source/portable/GCC/ARM_CM33_NTZ/non_secure/"/>
920           <file category="source"    condition="CM33_ARMCC6"   name="Source/portable/GCC/ARM_CM33_NTZ/non_secure/port.c"/>
921           <file category="source"    condition="CM33_ARMCC6"   name="Source/portable/GCC/ARM_CM33_NTZ/non_secure/portasm.c"/>
922           <file category="include"   condition="CM35P_ARMCC6"  name="Source/portable/GCC/ARM_CM35P_NTZ/non_secure/"/>
923           <file category="source"    condition="CM35P_ARMCC6"  name="Source/portable/GCC/ARM_CM35P_NTZ/non_secure/port.c"/>
924           <file category="source"    condition="CM35P_ARMCC6"  name="Source/portable/GCC/ARM_CM35P_NTZ/non_secure/portasm.c"/>
925           <file category="include"   condition="CM55_ARMCC6"   name="Source/portable/GCC/ARM_CM55_NTZ/non_secure/"/>
926           <file category="source"    condition="CM55_ARMCC6"   name="Source/portable/GCC/ARM_CM55_NTZ/non_secure/port.c"/>
927           <file category="source"    condition="CM55_ARMCC6"   name="Source/portable/GCC/ARM_CM55_NTZ/non_secure/portasm.c"/>
928           <file category="include"   condition="CM85_ARMCC6"   name="Source/portable/GCC/ARM_CM85_NTZ/non_secure/"/>
929           <file category="source"    condition="CM85_ARMCC6"   name="Source/portable/GCC/ARM_CM85_NTZ/non_secure/port.c"/>
930           <file category="source"    condition="CM85_ARMCC6"   name="Source/portable/GCC/ARM_CM85_NTZ/non_secure/portasm.c"/>
931
932           <file category="include"   condition="CM0_GCC"    name="Source/portable/GCC/ARM_CM0/"/>
933           <file category="source"    condition="CM0_GCC"    name="Source/portable/GCC/ARM_CM0/port.c"/>
934           <file category="include"   condition="CM3_GCC"    name="Source/portable/GCC/ARM_CM3/"/>
935           <file category="source"    condition="CM3_GCC"    name="Source/portable/GCC/ARM_CM3/port.c"/>
936           <file category="include"   condition="CM4_GCC"    name="Source/portable/GCC/ARM_CM3/"/>
937           <file category="source"    condition="CM4_GCC"    name="Source/portable/GCC/ARM_CM3/port.c"/>
938           <file category="include"   condition="CM4_FP_GCC" name="Source/portable/GCC/ARM_CM4F/"/>
939           <file category="source"    condition="CM4_FP_GCC" name="Source/portable/GCC/ARM_CM4F/port.c"/>
940           <file category="include"   condition="CM7_GCC"    name="Source/portable/GCC/ARM_CM3/"/>
941           <file category="source"    condition="CM7_GCC"    name="Source/portable/GCC/ARM_CM3/port.c"/>
942           <file category="include"   condition="CM7_DP_GCC" name="Source/portable/GCC/ARM_CM7/r0p1/"/>
943           <file category="source"    condition="CM7_DP_GCC" name="Source/portable/GCC/ARM_CM7/r0p1/port.c"/>
944           <file category="include"   condition="CM7_SP_GCC" name="Source/portable/GCC/ARM_CM7/r0p1/"/>
945           <file category="source"    condition="CM7_SP_GCC" name="Source/portable/GCC/ARM_CM7/r0p1/port.c"/>
946           <file category="include"   condition="CM23_GCC"   name="Source/portable/GCC/ARM_CM23_NTZ/non_secure/"/>
947           <file category="source"    condition="CM23_GCC"   name="Source/portable/GCC/ARM_CM23_NTZ/non_secure/port.c"/>
948           <file category="source"    condition="CM23_GCC"   name="Source/portable/GCC/ARM_CM23_NTZ/non_secure/portasm.c"/>
949           <file category="include"   condition="CM33_GCC"   name="Source/portable/GCC/ARM_CM33_NTZ/non_secure/"/>
950           <file category="source"    condition="CM33_GCC"   name="Source/portable/GCC/ARM_CM33_NTZ/non_secure/port.c"/>
951           <file category="source"    condition="CM33_GCC"   name="Source/portable/GCC/ARM_CM33_NTZ/non_secure/portasm.c"/>
952           <file category="include"   condition="CM35P_GCC"  name="Source/portable/GCC/ARM_CM35P_NTZ/non_secure/"/>
953           <file category="source"    condition="CM35P_GCC"  name="Source/portable/GCC/ARM_CM35P_NTZ/non_secure/port.c"/>
954           <file category="source"    condition="CM35P_GCC"  name="Source/portable/GCC/ARM_CM35P_NTZ/non_secure/portasm.c"/>
955           <file category="include"   condition="CM55_GCC"   name="Source/portable/GCC/ARM_CM55_NTZ/non_secure/"/>
956           <file category="source"    condition="CM55_GCC"   name="Source/portable/GCC/ARM_CM55_NTZ/non_secure/port.c"/>
957           <file category="source"    condition="CM55_GCC"   name="Source/portable/GCC/ARM_CM55_NTZ/non_secure/portasm.c"/>
958           <file category="include"   condition="CM85_GCC"   name="Source/portable/GCC/ARM_CM85_NTZ/non_secure/"/>
959           <file category="source"    condition="CM85_GCC"   name="Source/portable/GCC/ARM_CM85_NTZ/non_secure/port.c"/>
960           <file category="source"    condition="CM85_GCC"   name="Source/portable/GCC/ARM_CM85_NTZ/non_secure/portasm.c"/>
961
962           <file category="include"   condition="CM0_IAR"    name="Source/portable/IAR/ARM_CM0/"/>
963           <file category="source"    condition="CM0_IAR"    name="Source/portable/IAR/ARM_CM0/port.c"/>
964           <file category="sourceAsm" condition="CM0_IAR"    name="Source/portable/IAR/ARM_CM0/portasm.s"/>
965           <file category="include"   condition="CM3_IAR"    name="Source/portable/IAR/ARM_CM3/"/>
966           <file category="source"    condition="CM3_IAR"    name="Source/portable/IAR/ARM_CM3/port.c"/>
967           <file category="sourceAsm" condition="CM3_IAR"    name="Source/portable/IAR/ARM_CM3/portasm.s"/>
968           <file category="include"   condition="CM4_IAR"    name="Source/portable/IAR/ARM_CM3/"/>
969           <file category="source"    condition="CM4_IAR"    name="Source/portable/IAR/ARM_CM3/port.c"/>
970           <file category="sourceAsm" condition="CM4_IAR"    name="Source/portable/IAR/ARM_CM3/portasm.s"/>
971           <file category="include"   condition="CM4_FP_IAR" name="Source/portable/IAR/ARM_CM4F/"/>
972           <file category="source"    condition="CM4_FP_IAR" name="Source/portable/IAR/ARM_CM4F/port.c"/>
973           <file category="sourceAsm" condition="CM4_FP_IAR" name="Source/portable/IAR/ARM_CM4F/portasm.s"/>
974           <file category="include"   condition="CM7_IAR"    name="Source/portable/IAR/ARM_CM3/"/>
975           <file category="source"    condition="CM7_IAR"    name="Source/portable/IAR/ARM_CM3/port.c"/>
976           <file category="sourceAsm" condition="CM7_IAR"    name="Source/portable/IAR/ARM_CM3/portasm.s"/>
977           <file category="include"   condition="CM7_DP_IAR" name="Source/portable/IAR/ARM_CM7/r0p1/"/>
978           <file category="source"    condition="CM7_DP_IAR" name="Source/portable/IAR/ARM_CM7/r0p1/port.c"/>
979           <file category="sourceAsm" condition="CM7_DP_IAR" name="Source/portable/IAR/ARM_CM7/r0p1/portasm.s"/>
980           <file category="include"   condition="CM7_SP_IAR" name="Source/portable/IAR/ARM_CM7/r0p1/"/>
981           <file category="source"    condition="CM7_SP_IAR" name="Source/portable/IAR/ARM_CM7/r0p1/port.c"/>
982           <file category="sourceAsm" condition="CM7_SP_IAR" name="Source/portable/IAR/ARM_CM7/r0p1/portasm.s"/>
983           <file category="include"   condition="CM23_IAR"   name="Source/portable/IAR/ARM_CM23_NTZ/non_secure/"/>
984           <file category="source"    condition="CM23_IAR"   name="Source/portable/IAR/ARM_CM23_NTZ/non_secure/port.c"/>
985           <file category="source"    condition="CM23_IAR"   name="Source/portable/IAR/ARM_CM23_NTZ/non_secure/portasm.s"/>
986           <file category="include"   condition="CM33_IAR"   name="Source/portable/IAR/ARM_CM33_NTZ/non_secure/"/>
987           <file category="source"    condition="CM33_IAR"   name="Source/portable/IAR/ARM_CM33_NTZ/non_secure/port.c"/>
988           <file category="source"    condition="CM33_IAR"   name="Source/portable/IAR/ARM_CM33_NTZ/non_secure/portasm.s"/>
989           <file category="include"   condition="CM35P_IAR"  name="Source/portable/IAR/ARM_CM35P_NTZ/non_secure/"/>
990           <file category="source"    condition="CM35P_IAR"  name="Source/portable/IAR/ARM_CM35P_NTZ/non_secure/port.c"/>
991           <file category="source"    condition="CM35P_IAR"  name="Source/portable/IAR/ARM_CM35P_NTZ/non_secure/portasm.s"/>
992           <file category="include"   condition="CM55_IAR"   name="Source/portable/IAR/ARM_CM55_NTZ/non_secure/"/>
993           <file category="source"    condition="CM55_IAR"   name="Source/portable/IAR/ARM_CM55_NTZ/non_secure/port.c"/>
994           <file category="source"    condition="CM55_IAR"   name="Source/portable/IAR/ARM_CM55_NTZ/non_secure/portasm.s"/>
995           <file category="include"   condition="CM85_IAR"   name="Source/portable/IAR/ARM_CM85_NTZ/non_secure/"/>
996           <file category="source"    condition="CM85_IAR"   name="Source/portable/IAR/ARM_CM85_NTZ/non_secure/port.c"/>
997           <file category="source"    condition="CM85_IAR"   name="Source/portable/IAR/ARM_CM85_NTZ/non_secure/portasm.s"/>
998
999           <file category="include" name="CMSIS/RTOS2/FreeRTOS/Include/"/>
1000           <file category="source"  name="CMSIS/RTOS2/FreeRTOS/Source/freertos_evr.c"/>
1001           <file category="other"   name="CMSIS/RTOS2/FreeRTOS/FreeRTOS.scvd"/>
1002         </files>
1003       </component>
1004
1005       <component Cgroup="Core" Cvariant="Cortex-M MPU" condition="FreeRTOS Core CM v6_v7 MPU">
1006         <description>Core API (Kernel, Tasks, Semaphores, Mutexes, Queues) for Cortex-M using MPU</description>
1007         <RTE_Components_h>
1008           #define RTE_RTOS_FreeRTOS_CORE          /* RTOS FreeRTOS Core */
1009           #define RTE_RTOS_FreeRTOS_CORE_MPU      /* RTOS FreeRTOS Core with MPU support */
1010         </RTE_Components_h>
1011         <files>
1012           <file category="include" name="Source/include/"/>
1013
1014           <file category="header"  name="Source/include/FreeRTOS.h"/>
1015           <file category="header"  name="Source/include/queue.h"/>
1016           <file category="header"  name="Source/include/semphr.h"/>
1017           <file category="header"  name="Source/include/task.h"/>
1018
1019           <file category="source"  name="Source/list.c"/>
1020           <file category="source"  name="Source/queue.c"/>
1021           <file category="source"  name="Source/tasks.c"/>
1022           <file category="source"  name="Source/portable/Common/mpu_wrappers.c"/>
1023           <file category="source"  name="Source/portable/Common/mpu_wrappers_v2.c"/>
1024
1025           <file category="include"   condition="CM3_ARMCC6"    name="Source/portable/GCC/ARM_CM3_MPU/"/>
1026           <file category="source"    condition="CM3_ARMCC6"    name="Source/portable/GCC/ARM_CM3_MPU/port.c"/>
1027           <file category="source"    condition="CM3_ARMCC6"    name="Source/portable/GCC/ARM_CM3_MPU/mpu_wrappers_v2_asm.c"/>
1028           <file category="include"   condition="CM4_ARMCC6"    name="Source/portable/GCC/ARM_CM3_MPU/"/>
1029           <file category="source"    condition="CM4_ARMCC6"    name="Source/portable/GCC/ARM_CM3_MPU/port.c"/>
1030           <file category="source"    condition="CM4_ARMCC6"    name="Source/portable/GCC/ARM_CM3_MPU/mpu_wrappers_v2_asm.c"/>
1031           <file category="include"   condition="CM4_FP_ARMCC6" name="Source/portable/GCC/ARM_CM4_MPU/"/>
1032           <file category="source"    condition="CM4_FP_ARMCC6" name="Source/portable/GCC/ARM_CM4_MPU/port.c"/>
1033           <file category="source"    condition="CM4_FP_ARMCC6" name="Source/portable/GCC/ARM_CM4_MPU/mpu_wrappers_v2_asm.c"/>
1034
1035           <file category="include"   condition="CM3_GCC"    name="Source/portable/GCC/ARM_CM3_MPU/"/>
1036           <file category="source"    condition="CM3_GCC"    name="Source/portable/GCC/ARM_CM3_MPU/port.c"/>
1037           <file category="source"    condition="CM3_GCC"    name="Source/portable/GCC/ARM_CM3_MPU/mpu_wrappers_v2_asm.c"/>
1038           <file category="include"   condition="CM4_GCC"    name="Source/portable/GCC/ARM_CM3_MPU/"/>
1039           <file category="source"    condition="CM4_GCC"    name="Source/portable/GCC/ARM_CM3_MPU/port.c"/>
1040           <file category="source"    condition="CM4_GCC"    name="Source/portable/GCC/ARM_CM3_MPU/mpu_wrappers_v2_asm.c"/>
1041           <file category="include"   condition="CM4_FP_GCC" name="Source/portable/GCC/ARM_CM4_MPU/"/>
1042           <file category="source"    condition="CM4_FP_GCC" name="Source/portable/GCC/ARM_CM4_MPU/port.c"/>
1043           <file category="source"    condition="CM4_FP_GCC" name="Source/portable/GCC/ARM_CM4_MPU/mpu_wrappers_v2_asm.c"/>
1044
1045           <file category="include"   condition="CM4_FP_IAR" name="Source/portable/IAR/ARM_CM4F_MPU/"/>
1046           <file category="source"    condition="CM4_FP_IAR" name="Source/portable/IAR/ARM_CM4F_MPU/port.c"/>
1047           <file category="sourceAsm" condition="CM4_FP_IAR" name="Source/portable/IAR/ARM_CM4F_MPU/portasm.s"/>
1048           <file category="sourceAsm" condition="CM4_FP_IAR" name="Source/portable/IAR/ARM_CM4F_MPU/mpu_wrappers_v2_asm.S"/>
1049
1050           <file category="include" name="CMSIS/RTOS2/FreeRTOS/Include/"/>
1051           <file category="source"  name="CMSIS/RTOS2/FreeRTOS/Source/freertos_evr.c"/>
1052           <file category="other"   name="CMSIS/RTOS2/FreeRTOS/FreeRTOS.scvd"/>
1053         </files>
1054       </component>
1055
1056       <component Cgroup="Core" Cvariant="Cortex-M Non-Secure" condition="FreeRTOS Core TZ">
1057         <description>Core API (Kernel, Tasks, Semaphores, Mutexes, Queues) for Cortex-M using Non-Secure Domain (TrustZone)</description>
1058         <RTE_Components_h>
1059           #define RTE_RTOS_FreeRTOS_CORE          /* RTOS FreeRTOS Core */
1060           #define RTE_RTOS_FreeRTOS_CORE_TZ_NS    /* RTOS FreeRTOS Core with TrustZone Non-Secure Domain */
1061         </RTE_Components_h>
1062         <files>
1063           <file category="include" name="Source/include/"/>
1064
1065           <file category="header"  name="Source/include/FreeRTOS.h"/>
1066           <file category="header"  name="Source/include/queue.h"/>
1067           <file category="header"  name="Source/include/semphr.h"/>
1068           <file category="header"  name="Source/include/task.h"/>
1069
1070           <file category="source"  name="Source/list.c"/>
1071           <file category="source"  name="Source/queue.c"/>
1072           <file category="source"  name="Source/tasks.c"/>
1073
1074           <file category="include"   condition="CM23_ARMCC6"  name="Source/portable/GCC/ARM_CM23/secure/"/>
1075           <file category="include"   condition="CM23_ARMCC6"  name="Source/portable/GCC/ARM_CM23/non_secure/"/>
1076           <file category="source"    condition="CM23_ARMCC6"  name="Source/portable/GCC/ARM_CM23/non_secure/port.c"/>
1077           <file category="source"    condition="CM23_ARMCC6"  name="Source/portable/GCC/ARM_CM23/non_secure/portasm.c"/>
1078           <file category="include"   condition="CM33_ARMCC6"  name="Source/portable/GCC/ARM_CM33/secure/"/>
1079           <file category="include"   condition="CM33_ARMCC6"  name="Source/portable/GCC/ARM_CM33/non_secure/"/>
1080           <file category="source"    condition="CM33_ARMCC6"  name="Source/portable/GCC/ARM_CM33/non_secure/port.c"/>
1081           <file category="source"    condition="CM33_ARMCC6"  name="Source/portable/GCC/ARM_CM33/non_secure/portasm.c"/>
1082           <file category="include"   condition="CM35P_ARMCC6" name="Source/portable/GCC/ARM_CM35P/secure/"/>
1083           <file category="include"   condition="CM35P_ARMCC6" name="Source/portable/GCC/ARM_CM35P/non_secure/"/>
1084           <file category="source"    condition="CM35P_ARMCC6" name="Source/portable/GCC/ARM_CM35P/non_secure/port.c"/>
1085           <file category="source"    condition="CM35P_ARMCC6" name="Source/portable/GCC/ARM_CM35P/non_secure/portasm.c"/>
1086           <file category="include"   condition="CM55_ARMCC6"  name="Source/portable/GCC/ARM_CM55/secure/"/>
1087           <file category="include"   condition="CM55_ARMCC6"  name="Source/portable/GCC/ARM_CM55/non_secure/"/>
1088           <file category="source"    condition="CM55_ARMCC6"  name="Source/portable/GCC/ARM_CM55/non_secure/port.c"/>
1089           <file category="source"    condition="CM55_ARMCC6"  name="Source/portable/GCC/ARM_CM55/non_secure/portasm.c"/>
1090           <file category="include"   condition="CM85_ARMCC6"  name="Source/portable/GCC/ARM_CM85/secure/"/>
1091           <file category="include"   condition="CM85_ARMCC6"  name="Source/portable/GCC/ARM_CM85/non_secure/"/>
1092           <file category="source"    condition="CM85_ARMCC6"  name="Source/portable/GCC/ARM_CM85/non_secure/port.c"/>
1093           <file category="source"    condition="CM85_ARMCC6"  name="Source/portable/GCC/ARM_CM85/non_secure/portasm.c"/>
1094
1095           <file category="include"   condition="CM23_GCC"    name="Source/portable/GCC/ARM_CM23/secure/"/>
1096           <file category="include"   condition="CM23_GCC"    name="Source/portable/GCC/ARM_CM23/non_secure/"/>
1097           <file category="source"    condition="CM23_GCC"    name="Source/portable/GCC/ARM_CM23/non_secure/port.c"/>
1098           <file category="source"    condition="CM23_GCC"    name="Source/portable/GCC/ARM_CM23/non_secure/portasm.c"/>
1099           <file category="include"   condition="CM33_GCC"    name="Source/portable/GCC/ARM_CM33/secure/"/>
1100           <file category="include"   condition="CM33_GCC"    name="Source/portable/GCC/ARM_CM33/non_secure/"/>
1101           <file category="source"    condition="CM33_GCC"    name="Source/portable/GCC/ARM_CM33/non_secure/port.c"/>
1102           <file category="source"    condition="CM33_GCC"    name="Source/portable/GCC/ARM_CM33/non_secure/portasm.c"/>
1103           <file category="include"   condition="CM35P_GCC"   name="Source/portable/GCC/ARM_CM35P/secure/"/>
1104           <file category="include"   condition="CM35P_GCC"   name="Source/portable/GCC/ARM_CM35P/non_secure/"/>
1105           <file category="source"    condition="CM35P_GCC"   name="Source/portable/GCC/ARM_CM35P/non_secure/port.c"/>
1106           <file category="source"    condition="CM35P_GCC"   name="Source/portable/GCC/ARM_CM35P/non_secure/portasm.c"/>
1107           <file category="include"   condition="CM55_GCC"    name="Source/portable/GCC/ARM_CM55/secure/"/>
1108           <file category="include"   condition="CM55_GCC"    name="Source/portable/GCC/ARM_CM55/non_secure/"/>
1109           <file category="source"    condition="CM55_GCC"    name="Source/portable/GCC/ARM_CM55/non_secure/port.c"/>
1110           <file category="source"    condition="CM55_GCC"    name="Source/portable/GCC/ARM_CM55/non_secure/portasm.c"/>
1111           <file category="include"   condition="CM85_GCC"    name="Source/portable/GCC/ARM_CM85/secure/"/>
1112           <file category="include"   condition="CM85_GCC"    name="Source/portable/GCC/ARM_CM85/non_secure/"/>
1113           <file category="source"    condition="CM85_GCC"    name="Source/portable/GCC/ARM_CM85/non_secure/port.c"/>
1114           <file category="source"    condition="CM85_GCC"    name="Source/portable/GCC/ARM_CM85/non_secure/portasm.c"/>
1115
1116           <file category="include"   condition="CM23_IAR"    name="Source/portable/IAR/ARM_CM23/secure/"/>
1117           <file category="include"   condition="CM23_IAR"    name="Source/portable/IAR/ARM_CM23/non_secure/"/>
1118           <file category="source"    condition="CM23_IAR"    name="Source/portable/IAR/ARM_CM23/non_secure/port.c"/>
1119           <file category="sourceAsm" condition="CM23_IAR"    name="Source/portable/IAR/ARM_CM23/non_secure/portasm.s"/>
1120           <file category="include"   condition="CM33_IAR"    name="Source/portable/IAR/ARM_CM33/secure/"/>
1121           <file category="include"   condition="CM33_IAR"    name="Source/portable/IAR/ARM_CM33/non_secure/"/>
1122           <file category="source"    condition="CM33_IAR"    name="Source/portable/IAR/ARM_CM33/non_secure/port.c"/>
1123           <file category="sourceAsm" condition="CM33_IAR"    name="Source/portable/IAR/ARM_CM33/non_secure/portasm.s"/>
1124           <file category="include"   condition="CM35P_IAR"   name="Source/portable/IAR/ARM_CM35P/secure/"/>
1125           <file category="include"   condition="CM35P_IAR"   name="Source/portable/IAR/ARM_CM35P/non_secure/"/>
1126           <file category="source"    condition="CM35P_IAR"   name="Source/portable/IAR/ARM_CM35P/non_secure/port.c"/>
1127           <file category="sourceAsm" condition="CM35P_IAR"   name="Source/portable/IAR/ARM_CM35P/non_secure/portasm.s"/>
1128           <file category="include"   condition="CM55_IAR"    name="Source/portable/IAR/ARM_CM55/secure/"/>
1129           <file category="include"   condition="CM55_IAR"    name="Source/portable/IAR/ARM_CM55/non_secure/"/>
1130           <file category="source"    condition="CM55_IAR"    name="Source/portable/IAR/ARM_CM55/non_secure/port.c"/>
1131           <file category="sourceAsm" condition="CM55_IAR"    name="Source/portable/IAR/ARM_CM55/non_secure/portasm.s"/>
1132           <file category="include"   condition="CM85_IAR"    name="Source/portable/IAR/ARM_CM85/secure/"/>
1133           <file category="include"   condition="CM85_IAR"    name="Source/portable/IAR/ARM_CM85/non_secure/"/>
1134           <file category="source"    condition="CM85_IAR"    name="Source/portable/IAR/ARM_CM85/non_secure/port.c"/>
1135           <file category="sourceAsm" condition="CM85_IAR"    name="Source/portable/IAR/ARM_CM85/non_secure/portasm.s"/>
1136
1137           <file category="include" name="CMSIS/RTOS2/FreeRTOS/Include/"/>
1138           <file category="source"  name="CMSIS/RTOS2/FreeRTOS/Source/freertos_evr.c"/>
1139           <file category="other"   name="CMSIS/RTOS2/FreeRTOS/FreeRTOS.scvd"/>
1140         </files>
1141       </component>
1142
1143       <component Cgroup="Core" Cvariant="Cortex-M Non-Secure MPU" condition="FreeRTOS Core TZ MPU">
1144         <description>Core API (Kernel, Tasks, Semaphores, Mutexes, Queues) for Cortex-M using Non-Secure Domain (TrustZone) and MPU</description>
1145         <RTE_Components_h>
1146           #define RTE_RTOS_FreeRTOS_CORE          /* RTOS FreeRTOS Core */
1147           #define RTE_RTOS_FreeRTOS_CORE_MPU      /* RTOS FreeRTOS Core with MPU support */
1148           #define RTE_RTOS_FreeRTOS_CORE_TZ_NS    /* RTOS FreeRTOS Core with TrustZone Non-Secure Domain */
1149         </RTE_Components_h>
1150         <files>
1151           <file category="include" name="Source/include/"/>
1152
1153           <file category="header"  name="Source/include/FreeRTOS.h"/>
1154           <file category="header"  name="Source/include/queue.h"/>
1155           <file category="header"  name="Source/include/semphr.h"/>
1156           <file category="header"  name="Source/include/task.h"/>
1157
1158           <file category="source"  name="Source/list.c"/>
1159           <file category="source"  name="Source/queue.c"/>
1160           <file category="source"  name="Source/tasks.c"/>
1161           <file category="source"  name="Source/portable/Common/mpu_wrappers.c"/>
1162           <file category="source"  name="Source/portable/Common/mpu_wrappers_v2.c"/>
1163
1164           <file category="include"   condition="CM23_ARMCC6"  name="Source/portable/GCC/ARM_CM23/secure/"/>
1165           <file category="include"   condition="CM23_ARMCC6"  name="Source/portable/GCC/ARM_CM23/non_secure/"/>
1166           <file category="source"    condition="CM23_ARMCC6"  name="Source/portable/GCC/ARM_CM23/non_secure/port.c"/>
1167           <file category="source"    condition="CM23_ARMCC6"  name="Source/portable/GCC/ARM_CM23/non_secure/portasm.c"/>
1168           <file category="source"    condition="CM23_ARMCC6"  name="Source/portable/GCC/ARM_CM23/non_secure/mpu_wrappers_v2_asm.c"/>
1169           <file category="include"   condition="CM33_ARMCC6"  name="Source/portable/GCC/ARM_CM33/secure/"/>
1170           <file category="include"   condition="CM33_ARMCC6"  name="Source/portable/GCC/ARM_CM33/non_secure/"/>
1171           <file category="source"    condition="CM33_ARMCC6"  name="Source/portable/GCC/ARM_CM33/non_secure/port.c"/>
1172           <file category="source"    condition="CM33_ARMCC6"  name="Source/portable/GCC/ARM_CM33/non_secure/portasm.c"/>
1173           <file category="source"    condition="CM33_ARMCC6"  name="Source/portable/GCC/ARM_CM33/non_secure/mpu_wrappers_v2_asm.c"/>
1174           <file category="include"   condition="CM35P_ARMCC6" name="Source/portable/GCC/ARM_CM35P/secure/"/>
1175           <file category="include"   condition="CM35P_ARMCC6" name="Source/portable/GCC/ARM_CM35P/non_secure/"/>
1176           <file category="source"    condition="CM35P_ARMCC6" name="Source/portable/GCC/ARM_CM35P/non_secure/port.c"/>
1177           <file category="source"    condition="CM35P_ARMCC6" name="Source/portable/GCC/ARM_CM35P/non_secure/portasm.c"/>
1178           <file category="source"    condition="CM35P_ARMCC6" name="Source/portable/GCC/ARM_CM35P/non_secure/mpu_wrappers_v2_asm.c"/>
1179           <file category="include"   condition="CM55_ARMCC6"  name="Source/portable/GCC/ARM_CM55/secure/"/>
1180           <file category="include"   condition="CM55_ARMCC6"  name="Source/portable/GCC/ARM_CM55/non_secure/"/>
1181           <file category="source"    condition="CM55_ARMCC6"  name="Source/portable/GCC/ARM_CM55/non_secure/port.c"/>
1182           <file category="source"    condition="CM55_ARMCC6"  name="Source/portable/GCC/ARM_CM55/non_secure/portasm.c"/>
1183           <file category="source"    condition="CM55_ARMCC6"  name="Source/portable/GCC/ARM_CM55/non_secure/mpu_wrappers_v2_asm.c"/>
1184           <file category="include"   condition="CM85_ARMCC6"  name="Source/portable/GCC/ARM_CM85/secure/"/>
1185           <file category="include"   condition="CM85_ARMCC6"  name="Source/portable/GCC/ARM_CM85/non_secure/"/>
1186           <file category="source"    condition="CM85_ARMCC6"  name="Source/portable/GCC/ARM_CM85/non_secure/port.c"/>
1187           <file category="source"    condition="CM85_ARMCC6"  name="Source/portable/GCC/ARM_CM85/non_secure/portasm.c"/>
1188           <file category="source"    condition="CM85_ARMCC6"  name="Source/portable/GCC/ARM_CM85/non_secure/mpu_wrappers_v2_asm.c"/>
1189
1190           <file category="include"   condition="CM23_GCC"    name="Source/portable/GCC/ARM_CM23/secure/"/>
1191           <file category="include"   condition="CM23_GCC"    name="Source/portable/GCC/ARM_CM23/non_secure/"/>
1192           <file category="source"    condition="CM23_GCC"    name="Source/portable/GCC/ARM_CM23/non_secure/port.c"/>
1193           <file category="source"    condition="CM23_GCC"    name="Source/portable/GCC/ARM_CM23/non_secure/portasm.c"/>
1194           <file category="source"    condition="CM23_GCC"    name="Source/portable/GCC/ARM_CM23/non_secure/mpu_wrappers_v2_asm.c"/>
1195           <file category="include"   condition="CM33_GCC"    name="Source/portable/GCC/ARM_CM33/secure/"/>
1196           <file category="include"   condition="CM33_GCC"    name="Source/portable/GCC/ARM_CM33/non_secure/"/>
1197           <file category="source"    condition="CM33_GCC"    name="Source/portable/GCC/ARM_CM33/non_secure/port.c"/>
1198           <file category="source"    condition="CM33_GCC"    name="Source/portable/GCC/ARM_CM33/non_secure/portasm.c"/>
1199           <file category="source"    condition="CM33_GCC"    name="Source/portable/GCC/ARM_CM33/non_secure/mpu_wrappers_v2_asm.c"/>
1200           <file category="include"   condition="CM35P_GCC"   name="Source/portable/GCC/ARM_CM35P/secure/"/>
1201           <file category="include"   condition="CM35P_GCC"   name="Source/portable/GCC/ARM_CM35P/non_secure/"/>
1202           <file category="source"    condition="CM35P_GCC"   name="Source/portable/GCC/ARM_CM35P/non_secure/port.c"/>
1203           <file category="source"    condition="CM35P_GCC"   name="Source/portable/GCC/ARM_CM35P/non_secure/portasm.c"/>
1204           <file category="source"    condition="CM35P_GCC"   name="Source/portable/GCC/ARM_CM35P/non_secure/mpu_wrappers_v2_asm.c"/>
1205           <file category="include"   condition="CM55_GCC"    name="Source/portable/GCC/ARM_CM55/secure/"/>
1206           <file category="include"   condition="CM55_GCC"    name="Source/portable/GCC/ARM_CM55/non_secure/"/>
1207           <file category="source"    condition="CM55_GCC"    name="Source/portable/GCC/ARM_CM55/non_secure/port.c"/>
1208           <file category="source"    condition="CM55_GCC"    name="Source/portable/GCC/ARM_CM55/non_secure/portasm.c"/>
1209           <file category="source"    condition="CM55_GCC"    name="Source/portable/GCC/ARM_CM55/non_secure/mpu_wrappers_v2_asm.c"/>
1210           <file category="include"   condition="CM85_GCC"    name="Source/portable/GCC/ARM_CM85/secure/"/>
1211           <file category="include"   condition="CM85_GCC"    name="Source/portable/GCC/ARM_CM85/non_secure/"/>
1212           <file category="source"    condition="CM85_GCC"    name="Source/portable/GCC/ARM_CM85/non_secure/port.c"/>
1213           <file category="source"    condition="CM85_GCC"    name="Source/portable/GCC/ARM_CM85/non_secure/portasm.c"/>
1214           <file category="source"    condition="CM85_GCC"    name="Source/portable/GCC/ARM_CM85/non_secure/mpu_wrappers_v2_asm.c"/>
1215
1216           <file category="include"   condition="CM23_IAR"    name="Source/portable/IAR/ARM_CM23/secure/"/>
1217           <file category="include"   condition="CM23_IAR"    name="Source/portable/IAR/ARM_CM23/non_secure/"/>
1218           <file category="source"    condition="CM23_IAR"    name="Source/portable/IAR/ARM_CM23/non_secure/port.c"/>
1219           <file category="sourceAsm" condition="CM23_IAR"    name="Source/portable/IAR/ARM_CM23/non_secure/portasm.s"/>
1220           <file category="sourceAsm" condition="CM23_IAR"    name="Source/portable/IAR/ARM_CM23/non_secure/mpu_wrappers_v2_asm.S"/>
1221           <file category="include"   condition="CM33_IAR"    name="Source/portable/IAR/ARM_CM33/secure/"/>
1222           <file category="include"   condition="CM33_IAR"    name="Source/portable/IAR/ARM_CM33/non_secure/"/>
1223           <file category="source"    condition="CM33_IAR"    name="Source/portable/IAR/ARM_CM33/non_secure/port.c"/>
1224           <file category="sourceAsm" condition="CM33_IAR"    name="Source/portable/IAR/ARM_CM33/non_secure/portasm.s"/>
1225           <file category="sourceAsm" condition="CM33_IAR"    name="Source/portable/IAR/ARM_CM33/non_secure/mpu_wrappers_v2_asm.S"/>
1226           <file category="include"   condition="CM35P_IAR"   name="Source/portable/IAR/ARM_CM35P/secure/"/>
1227           <file category="include"   condition="CM35P_IAR"   name="Source/portable/IAR/ARM_CM35P/non_secure/"/>
1228           <file category="source"    condition="CM35P_IAR"   name="Source/portable/IAR/ARM_CM35P/non_secure/port.c"/>
1229           <file category="sourceAsm" condition="CM35P_IAR"   name="Source/portable/IAR/ARM_CM35P/non_secure/portasm.s"/>
1230           <file category="sourceAsm" condition="CM35P_IAR"   name="Source/portable/IAR/ARM_CM35P/non_secure/mpu_wrappers_v2_asm.S"/>
1231           <file category="include"   condition="CM55_IAR"    name="Source/portable/IAR/ARM_CM55/secure/"/>
1232           <file category="include"   condition="CM55_IAR"    name="Source/portable/IAR/ARM_CM55/non_secure/"/>
1233           <file category="source"    condition="CM55_IAR"    name="Source/portable/IAR/ARM_CM55/non_secure/port.c"/>
1234           <file category="sourceAsm" condition="CM55_IAR"    name="Source/portable/IAR/ARM_CM55/non_secure/portasm.s"/>
1235           <file category="sourceAsm" condition="CM55_IAR"    name="Source/portable/IAR/ARM_CM55/non_secure/mpu_wrappers_v2_asm.S"/>
1236           <file category="include"   condition="CM85_IAR"    name="Source/portable/IAR/ARM_CM85/secure/"/>
1237           <file category="include"   condition="CM85_IAR"    name="Source/portable/IAR/ARM_CM85/non_secure/"/>
1238           <file category="source"    condition="CM85_IAR"    name="Source/portable/IAR/ARM_CM85/non_secure/port.c"/>
1239           <file category="sourceAsm" condition="CM85_IAR"    name="Source/portable/IAR/ARM_CM85/non_secure/portasm.s"/>
1240           <file category="sourceAsm" condition="CM85_IAR"    name="Source/portable/IAR/ARM_CM85/non_secure/mpu_wrappers_v2_asm.S"/>
1241
1242           <file category="include" name="CMSIS/RTOS2/FreeRTOS/Include/"/>
1243           <file category="source"  name="CMSIS/RTOS2/FreeRTOS/Source/freertos_evr.c"/>
1244           <file category="other"   name="CMSIS/RTOS2/FreeRTOS/FreeRTOS.scvd"/>
1245         </files>
1246       </component>
1247
1248       <component Cgroup="Core" Cvariant="Cortex-A" isDefaultVariant="true" condition="FreeRTOS Core CA">
1249         <description>Core API (Kernel, Tasks, Semaphores, Mutexes, Queues) for Cortex-A</description>
1250         <RTE_Components_h>
1251           #define RTE_RTOS_FreeRTOS_CORE          /* RTOS FreeRTOS Core */
1252         </RTE_Components_h>
1253         <files>
1254           <file category="include" name="Source/include/"/>
1255
1256           <file category="header"  name="Source/include/FreeRTOS.h"/>
1257           <file category="header"  name="Source/include/queue.h"/>
1258           <file category="header"  name="Source/include/semphr.h"/>
1259           <file category="header"  name="Source/include/task.h"/>
1260
1261           <file category="source"  name="Source/list.c"/>
1262           <file category="source"  name="Source/queue.c"/>
1263           <file category="source"  name="Source/tasks.c"/>
1264
1265           <file category="include"   condition="ARMCC6" name="Source/portable/GCC/ARM_CA9/"/>
1266           <file category="source"    condition="ARMCC6" name="Source/portable/GCC/ARM_CA9/port.c"/>
1267           <file category="sourceAsm" condition="ARMCC6" name="Source/portable/GCC/ARM_CA9/portASM.S"/>
1268
1269           <file category="include"   condition="GCC"    name="Source/portable/GCC/ARM_CA9/"/>
1270           <file category="source"    condition="GCC"    name="Source/portable/GCC/ARM_CA9/port.c"/>
1271           <file category="sourceAsm" condition="GCC"    name="Source/portable/GCC/ARM_CA9/portASM.S"/>
1272
1273           <file category="include"   condition="IAR"    name="Source/portable/IAR/ARM_CA9/"/>
1274           <file category="source"    condition="IAR"    name="Source/portable/IAR/ARM_CA9/port.c"/>
1275           <file category="sourceAsm" condition="IAR"    name="Source/portable/IAR/ARM_CA9/portASM.s"/>
1276
1277           <file category="include" name="CMSIS/RTOS2/FreeRTOS/Include/"/>
1278           <file category="source"  name="CMSIS/RTOS2/FreeRTOS/Source/freertos_evr.c"/>
1279           <file category="other"   name="CMSIS/RTOS2/FreeRTOS/FreeRTOS.scvd"/>
1280         </files>
1281       </component>
1282
1283       <component Cgroup="Config" Cvariant="CMSIS RTOS2" condition="FreeRTOS Config CMSIS RTOS2">
1284         <description>FreeRTOS CMSIS-RTOS2 API configuration file</description>
1285         <RTE_Components_h>
1286           #define RTE_RTOS_FreeRTOS_CONFIG_RTOS2  /* RTOS FreeRTOS Config for CMSIS RTOS2 API */
1287         </RTE_Components_h>
1288         <files>
1289           <file category="doc"    name="Documentation/html/cre_freertos_proj.html#cmsis_freertos_config"/>
1290           <file category="header" attr="config" name="CMSIS/RTOS2/FreeRTOS/Config/FreeRTOSConfig.h" version="10.6.0"/>
1291         </files>
1292       </component>
1293
1294       <component Cgroup="Config" Cvariant="FreeRTOS" condition="FreeRTOS Config Native">
1295         <description>FreeRTOS API configuration file</description>
1296         <RTE_Components_h>
1297           #define RTE_RTOS_FreeRTOS_CONFIG        /* RTOS FreeRTOS Config for FreeRTOS API */
1298         </RTE_Components_h>
1299         <files>
1300           <file category="doc"    name="Documentation/html/cre_freertos_proj.html#native_freertos_config"/>
1301           <file category="header" attr="config" name="Source/examples/template_configuration/FreeRTOSConfig.h" version="11.0.0"/>
1302         </files>
1303       </component>
1304
1305       <component Cgroup="Coroutines" condition="FreeRTOS Coroutines">
1306         <description>Co-routine API</description>
1307         <RTE_Components_h>
1308           #define RTE_RTOS_FreeRTOS_COROUTINE     /* RTOS FreeRTOS Co-routines */
1309         </RTE_Components_h>
1310         <files>
1311           <file category="header" name="Source/include/croutine.h"/>
1312           <file category="source" name="Source/croutine.c"/>
1313         </files>
1314       </component>
1315
1316       <component Cgroup="Event Groups" condition="FreeRTOS Event Groups">
1317         <description>Event Group API</description>
1318         <RTE_Components_h>
1319           #define RTE_RTOS_FreeRTOS_EVENTGROUPS   /* RTOS FreeRTOS Event Groups */
1320         </RTE_Components_h>
1321         <files>
1322           <file category="header" name="Source/include/event_groups.h"/>
1323           <file category="source" name="Source/event_groups.c"/>
1324         </files>
1325       </component>
1326
1327       <component Cgroup="Heap" Cvariant="Heap_1" condition="FreeRTOS Heap">
1328         <description>Very simple, does not permit memory to be freed.</description>
1329         <RTE_Components_h>
1330           #define RTE_RTOS_FreeRTOS_HEAP_1        /* RTOS FreeRTOS Heap 1 */
1331         </RTE_Components_h>
1332         <files>
1333           <file category="source" name="Source/portable/MemMang/heap_1.c"/>
1334           <file category="doc"    name="http://www.freertos.org/a00111.html"/>
1335         </files>
1336       </component>
1337
1338       <component Cgroup="Heap" Cvariant="Heap_2" condition="FreeRTOS Heap">
1339         <description>Permits memory to be freed, but not does coalescence adjacent free memory blocks.</description>
1340         <RTE_Components_h>
1341           #define RTE_RTOS_FreeRTOS_HEAP_2        /* RTOS FreeRTOS Heap 2 */
1342         </RTE_Components_h>
1343         <files>
1344           <file category="source" name="Source/portable/MemMang/heap_2.c"/>
1345           <file category="doc"    name="http://www.freertos.org/a00111.html"/>
1346         </files>
1347       </component>
1348
1349       <component Cgroup="Heap" Cvariant="Heap_3" condition="FreeRTOS Heap">
1350         <description>Wraps the standard malloc() and free() for thread safety.</description>
1351         <RTE_Components_h>
1352           #define RTE_RTOS_FreeRTOS_HEAP_3        /* RTOS FreeRTOS Heap 3 */
1353         </RTE_Components_h>
1354         <files>
1355           <file category="source" name="Source/portable/MemMang/heap_3.c"/>
1356           <file category="doc"    name="http://www.freertos.org/a00111.html"/>
1357         </files>
1358       </component>
1359
1360       <component Cgroup="Heap" Cvariant="Heap_4" condition="FreeRTOS Heap" isDefaultVariant="true">
1361         <description>Coalescences adjacent free memory blocks to avoid fragmentation. Includes absolute address placement option.</description>
1362         <RTE_Components_h>
1363           #define RTE_RTOS_FreeRTOS_HEAP_4        /* RTOS FreeRTOS Heap 4 */
1364         </RTE_Components_h>
1365         <files>
1366           <file category="source" name="Source/portable/MemMang/heap_4.c"/>
1367           <file category="doc"    name="http://www.freertos.org/a00111.html"/>
1368         </files>
1369       </component>
1370
1371       <component Cgroup="Heap" Cvariant="Heap_5" condition="FreeRTOS Heap">
1372         <description>Same as Heap_4, with the ability to span the heap across multiple non-adjacent memory areas.</description>
1373         <RTE_Components_h>
1374           #define RTE_RTOS_FreeRTOS_HEAP_5        /* RTOS FreeRTOS Heap 5 */
1375         </RTE_Components_h>
1376         <files>
1377           <file category="source" name="Source/portable/MemMang/heap_5.c"/>
1378           <file category="doc"    name="http://www.freertos.org/a00111.html"/>
1379         </files>
1380       </component>
1381
1382       <component Cgroup="Message Buffer" condition="FreeRTOS Message Buffer">
1383         <description>Message Buffer API</description>
1384         <RTE_Components_h>
1385           #define RTE_RTOS_FreeRTOS_MESSAGE_BUFFER /* RTOS FreeRTOS Message Buffers */
1386         </RTE_Components_h>
1387         <files>
1388           <file category="header" name="Source/include/message_buffer.h"/>
1389           <file category="source" name="Source/stream_buffer.c"/>
1390         </files>
1391       </component>
1392
1393       <component Cgroup="Stream Buffer" condition="FreeRTOS Stream Buffer">
1394         <description>Stream Buffer API</description>
1395         <RTE_Components_h>
1396           #define RTE_RTOS_FreeRTOS_STREAM_BUFFER /* RTOS FreeRTOS Stream Buffers */
1397         </RTE_Components_h>
1398         <files>
1399           <file category="header" name="Source/include/stream_buffer.h"/>
1400           <file category="source" name="Source/stream_buffer.c"/>
1401         </files>
1402       </component>
1403
1404       <component Cgroup="Timers" condition="FreeRTOS Timers">
1405         <description>Timer API</description>
1406         <RTE_Components_h>
1407           #define RTE_RTOS_FreeRTOS_TIMERS        /* RTOS FreeRTOS Timers */
1408         </RTE_Components_h>
1409         <files>
1410           <file category="header" name="Source/include/timers.h"/>
1411           <file category="source" name="Source/timers.c"/>
1412         </files>
1413       </component>
1414
1415       <component Cgroup="TrustZone" condition="FreeRTOS TrustZone">
1416         <description>TrustZone Secure Context API</description>
1417         <RTE_Components_h>
1418           #define RTE_RTOS_FreeRTOS_TZ
1419         </RTE_Components_h>
1420         <files>
1421           <file category="header" attr="config" name="CMSIS/RTOS2/FreeRTOS/Config/TrustZone/FreeRTOSConfig.h" version="10.2.0"/>
1422
1423           <file category="header"    condition="CM23_TZ_ARMCC6"  name="Source/portable/GCC/ARM_CM23/secure/secure_port_macros.h"/>
1424           <file category="include"   condition="CM23_TZ_ARMCC6"  name="Source/portable/GCC/ARM_CM23/secure/"/>
1425           <file category="source"    condition="CM23_TZ_ARMCC6"  name="Source/portable/GCC/ARM_CM23/secure/secure_context.c"/>
1426           <file category="source"    condition="CM23_TZ_ARMCC6"  name="Source/portable/GCC/ARM_CM23/secure/secure_context_port.c"/>
1427           <file category="source"    condition="CM23_TZ_ARMCC6"  name="Source/portable/GCC/ARM_CM23/secure/secure_heap.c"/>
1428           <file category="source"    condition="CM23_TZ_ARMCC6"  name="Source/portable/GCC/ARM_CM23/secure/secure_init.c"/>
1429           <file category="header"    condition="CM33_TZ_ARMCC6"  name="Source/portable/GCC/ARM_CM33/secure/secure_port_macros.h"/>
1430           <file category="include"   condition="CM33_TZ_ARMCC6"  name="Source/portable/GCC/ARM_CM33/secure/"/>
1431           <file category="source"    condition="CM33_TZ_ARMCC6"  name="Source/portable/GCC/ARM_CM33/secure/secure_context.c"/>
1432           <file category="source"    condition="CM33_TZ_ARMCC6"  name="Source/portable/GCC/ARM_CM33/secure/secure_context_port.c"/>
1433           <file category="source"    condition="CM33_TZ_ARMCC6"  name="Source/portable/GCC/ARM_CM33/secure/secure_heap.c"/>
1434           <file category="source"    condition="CM33_TZ_ARMCC6"  name="Source/portable/GCC/ARM_CM33/secure/secure_init.c"/>
1435           <file category="header"    condition="CM35P_TZ_ARMCC6" name="Source/portable/GCC/ARM_CM35P/secure/secure_port_macros.h"/>
1436           <file category="include"   condition="CM35P_TZ_ARMCC6" name="Source/portable/GCC/ARM_CM35P/secure/"/>
1437           <file category="source"    condition="CM35P_TZ_ARMCC6" name="Source/portable/GCC/ARM_CM35P/secure/secure_context.c"/>
1438           <file category="source"    condition="CM35P_TZ_ARMCC6" name="Source/portable/GCC/ARM_CM35P/secure/secure_context_port.c"/>
1439           <file category="source"    condition="CM35P_TZ_ARMCC6" name="Source/portable/GCC/ARM_CM35P/secure/secure_heap.c"/>
1440           <file category="source"    condition="CM35P_TZ_ARMCC6" name="Source/portable/GCC/ARM_CM35P/secure/secure_init.c"/>
1441           <file category="header"    condition="CM55_TZ_ARMCC6"  name="Source/portable/GCC/ARM_CM55/secure/secure_port_macros.h"/>
1442           <file category="include"   condition="CM55_TZ_ARMCC6"  name="Source/portable/GCC/ARM_CM55/secure/"/>
1443           <file category="source"    condition="CM55_TZ_ARMCC6"  name="Source/portable/GCC/ARM_CM55/secure/secure_context.c"/>
1444           <file category="source"    condition="CM55_TZ_ARMCC6"  name="Source/portable/GCC/ARM_CM55/secure/secure_context_port.c"/>
1445           <file category="source"    condition="CM55_TZ_ARMCC6"  name="Source/portable/GCC/ARM_CM55/secure/secure_heap.c"/>
1446           <file category="source"    condition="CM55_TZ_ARMCC6"  name="Source/portable/GCC/ARM_CM55/secure/secure_init.c"/>
1447           <file category="header"    condition="CM85_TZ_ARMCC6"  name="Source/portable/GCC/ARM_CM85/secure/secure_port_macros.h"/>
1448           <file category="include"   condition="CM85_TZ_ARMCC6"  name="Source/portable/GCC/ARM_CM85/secure/"/>
1449           <file category="source"    condition="CM85_TZ_ARMCC6"  name="Source/portable/GCC/ARM_CM85/secure/secure_context.c"/>
1450           <file category="source"    condition="CM85_TZ_ARMCC6"  name="Source/portable/GCC/ARM_CM85/secure/secure_context_port.c"/>
1451           <file category="source"    condition="CM85_TZ_ARMCC6"  name="Source/portable/GCC/ARM_CM85/secure/secure_heap.c"/>
1452           <file category="source"    condition="CM85_TZ_ARMCC6"  name="Source/portable/GCC/ARM_CM85/secure/secure_init.c"/>
1453
1454           <file category="header"    condition="CM23_TZ_GCC"    name="Source/portable/GCC/ARM_CM23/secure/secure_port_macros.h"/>
1455           <file category="include"   condition="CM23_TZ_GCC"    name="Source/portable/GCC/ARM_CM23/secure/"/>
1456           <file category="source"    condition="CM23_TZ_GCC"    name="Source/portable/GCC/ARM_CM23/secure/secure_context.c"/>
1457           <file category="source"    condition="CM23_TZ_GCC"    name="Source/portable/GCC/ARM_CM23/secure/secure_context_port.c"/>
1458           <file category="source"    condition="CM23_TZ_GCC"    name="Source/portable/GCC/ARM_CM23/secure/secure_heap.c"/>
1459           <file category="source"    condition="CM23_TZ_GCC"    name="Source/portable/GCC/ARM_CM23/secure/secure_init.c"/>
1460           <file category="header"    condition="CM33_TZ_GCC"    name="Source/portable/GCC/ARM_CM33/secure/secure_port_macros.h"/>
1461           <file category="include"   condition="CM33_TZ_GCC"    name="Source/portable/GCC/ARM_CM33/secure/"/>
1462           <file category="source"    condition="CM33_TZ_GCC"    name="Source/portable/GCC/ARM_CM33/secure/secure_context.c"/>
1463           <file category="source"    condition="CM33_TZ_GCC"    name="Source/portable/GCC/ARM_CM33/secure/secure_context_port.c"/>
1464           <file category="source"    condition="CM33_TZ_GCC"    name="Source/portable/GCC/ARM_CM33/secure/secure_heap.c"/>
1465           <file category="source"    condition="CM33_TZ_GCC"    name="Source/portable/GCC/ARM_CM33/secure/secure_init.c"/>
1466           <file category="header"    condition="CM35P_TZ_GCC"   name="Source/portable/GCC/ARM_CM35P/secure/secure_port_macros.h"/>
1467           <file category="include"   condition="CM35P_TZ_GCC"   name="Source/portable/GCC/ARM_CM35P/secure/"/>
1468           <file category="source"    condition="CM35P_TZ_GCC"   name="Source/portable/GCC/ARM_CM35P/secure/secure_context.c"/>
1469           <file category="source"    condition="CM35P_TZ_GCC"   name="Source/portable/GCC/ARM_CM35P/secure/secure_context_port.c"/>
1470           <file category="source"    condition="CM35P_TZ_GCC"   name="Source/portable/GCC/ARM_CM35P/secure/secure_heap.c"/>
1471           <file category="source"    condition="CM35P_TZ_GCC"   name="Source/portable/GCC/ARM_CM35P/secure/secure_init.c"/>
1472           <file category="header"    condition="CM55_TZ_GCC"    name="Source/portable/GCC/ARM_CM55/secure/secure_port_macros.h"/>
1473           <file category="include"   condition="CM55_TZ_GCC"    name="Source/portable/GCC/ARM_CM55/secure/"/>
1474           <file category="source"    condition="CM55_TZ_GCC"    name="Source/portable/GCC/ARM_CM55/secure/secure_context.c"/>
1475           <file category="source"    condition="CM55_TZ_GCC"    name="Source/portable/GCC/ARM_CM55/secure/secure_context_port.c"/>
1476           <file category="source"    condition="CM55_TZ_GCC"    name="Source/portable/GCC/ARM_CM55/secure/secure_heap.c"/>
1477           <file category="source"    condition="CM55_TZ_GCC"    name="Source/portable/GCC/ARM_CM55/secure/secure_init.c"/>
1478           <file category="header"    condition="CM85_TZ_GCC"    name="Source/portable/GCC/ARM_CM85/secure/secure_port_macros.h"/>
1479           <file category="include"   condition="CM85_TZ_GCC"    name="Source/portable/GCC/ARM_CM85/secure/"/>
1480           <file category="source"    condition="CM85_TZ_GCC"    name="Source/portable/GCC/ARM_CM85/secure/secure_context.c"/>
1481           <file category="source"    condition="CM85_TZ_GCC"    name="Source/portable/GCC/ARM_CM85/secure/secure_context_port.c"/>
1482           <file category="source"    condition="CM85_TZ_GCC"    name="Source/portable/GCC/ARM_CM85/secure/secure_heap.c"/>
1483           <file category="source"    condition="CM85_TZ_GCC"    name="Source/portable/GCC/ARM_CM85/secure/secure_init.c"/>
1484
1485           <file category="header"    condition="CM23_TZ_IAR"    name="Source/portable/IAR/ARM_CM23/secure/secure_port_macros.h"/>
1486           <file category="include"   condition="CM23_TZ_IAR"    name="Source/portable/IAR/ARM_CM23/secure/"/>
1487           <file category="source"    condition="CM23_TZ_IAR"    name="Source/portable/IAR/ARM_CM23/secure/secure_context.c"/>
1488           <file category="sourceAsm" condition="CM23_TZ_IAR"    name="Source/portable/IAR/ARM_CM23/secure/secure_context_port_asm.s"/>
1489           <file category="source"    condition="CM23_TZ_IAR"    name="Source/portable/IAR/ARM_CM23/secure/secure_heap.c"/>
1490           <file category="source"    condition="CM23_TZ_IAR"    name="Source/portable/IAR/ARM_CM23/secure/secure_init.c"/>
1491           <file category="header"    condition="CM33_TZ_IAR"    name="Source/portable/IAR/ARM_CM33/secure/secure_port_macros.h"/>
1492           <file category="include"   condition="CM33_TZ_IAR"    name="Source/portable/IAR/ARM_CM33/secure/"/>
1493           <file category="source"    condition="CM33_TZ_IAR"    name="Source/portable/IAR/ARM_CM33/secure/secure_context.c"/>
1494           <file category="sourceAsm" condition="CM33_TZ_IAR"    name="Source/portable/IAR/ARM_CM33/secure/secure_context_port_asm.s"/>
1495           <file category="source"    condition="CM33_TZ_IAR"    name="Source/portable/IAR/ARM_CM33/secure/secure_heap.c"/>
1496           <file category="source"    condition="CM33_TZ_IAR"    name="Source/portable/IAR/ARM_CM33/secure/secure_init.c"/>
1497           <file category="header"    condition="CM35P_TZ_IAR"   name="Source/portable/IAR/ARM_CM35P/secure/secure_port_macros.h"/>
1498           <file category="include"   condition="CM35P_TZ_IAR"   name="Source/portable/IAR/ARM_CM35P/secure/"/>
1499           <file category="source"    condition="CM35P_TZ_IAR"   name="Source/portable/IAR/ARM_CM35P/secure/secure_context.c"/>
1500           <file category="sourceAsm" condition="CM35P_TZ_IAR"   name="Source/portable/IAR/ARM_CM35P/secure/secure_context_port_asm.s"/>
1501           <file category="source"    condition="CM35P_TZ_IAR"   name="Source/portable/IAR/ARM_CM35P/secure/secure_heap.c"/>
1502           <file category="source"    condition="CM35P_TZ_IAR"   name="Source/portable/IAR/ARM_CM35P/secure/secure_init.c"/>
1503           <file category="header"    condition="CM55_TZ_IAR"    name="Source/portable/IAR/ARM_CM55/secure/secure_port_macros.h"/>
1504           <file category="include"   condition="CM55_TZ_IAR"    name="Source/portable/IAR/ARM_CM55/secure/"/>
1505           <file category="source"    condition="CM55_TZ_IAR"    name="Source/portable/IAR/ARM_CM55/secure/secure_context.c"/>
1506           <file category="sourceAsm" condition="CM55_TZ_IAR"    name="Source/portable/IAR/ARM_CM55/secure/secure_context_port_asm.s"/>
1507           <file category="source"    condition="CM55_TZ_IAR"    name="Source/portable/IAR/ARM_CM55/secure/secure_heap.c"/>
1508           <file category="source"    condition="CM55_TZ_IAR"    name="Source/portable/IAR/ARM_CM55/secure/secure_init.c"/>
1509           <file category="header"    condition="CM85_TZ_IAR"    name="Source/portable/IAR/ARM_CM85/secure/secure_port_macros.h"/>
1510           <file category="include"   condition="CM85_TZ_IAR"    name="Source/portable/IAR/ARM_CM85/secure/"/>
1511           <file category="source"    condition="CM85_TZ_IAR"    name="Source/portable/IAR/ARM_CM85/secure/secure_context.c"/>
1512           <file category="sourceAsm" condition="CM85_TZ_IAR"    name="Source/portable/IAR/ARM_CM85/secure/secure_context_port_asm.s"/>
1513           <file category="source"    condition="CM85_TZ_IAR"    name="Source/portable/IAR/ARM_CM85/secure/secure_heap.c"/>
1514           <file category="source"    condition="CM85_TZ_IAR"    name="Source/portable/IAR/ARM_CM85/secure/secure_init.c"/>
1515         </files>
1516       </component>
1517     </bundle>
1518   </components>
1519
1520   <examples>
1521     <example name="Hello World" folder="CMSIS/RTOS2/FreeRTOS/Examples" doc="./App/Hello/README.md">
1522       <description>Hello World example using FreeRTOS and CMSIS-RTOS2 for Arm Virtual Hardware</description>
1523       <board name="uVision Simulator" vendor="Keil"/>
1524       <project>
1525         <environment name="csolution" load="Examples.csolution.yml"/>
1526       </project>
1527       <attributes>
1528         <component Cclass="CMSIS" Cgroup="CORE"/>
1529         <component Cclass="CMSIS" Cgroup="RTOS2"/>
1530         <component Cclass="Device" Cgroup="Startup"/>
1531         <category>Getting Started</category>
1532       </attributes>
1533     </example>
1534
1535     <example name="TrustZone for ARMv8-M" folder="CMSIS/RTOS2/FreeRTOS/Examples" doc="./App/TrustZone/README.md">
1536       <description>CMSIS-RTOS2 example with secure/non-secure thread context management using FreeRTOS for Arm Virtual Hardware</description>
1537       <board name="uVision Simulator" vendor="Keil"/>
1538       <project>
1539         <environment name="csolution" load="Examples.csolution.yml"/>
1540       </project>
1541       <attributes>
1542         <component Cclass="CMSIS" Cgroup="CORE"/>
1543         <component Cclass="CMSIS" Cgroup="RTOS2"/>
1544         <component Cclass="Device" Cgroup="Startup"/>
1545         <category>Getting Started</category>
1546       </attributes>
1547     </example>
1548
1549   </examples>
1550 </package>