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