1 <?xml version="1.0" encoding="utf-8"?>
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">
5 <name>CMSIS-FreeRTOS</name>
6 <description>Bundle of FreeRTOS for Cortex-M and Cortex-A</description>
7 <license>LICENSE</license>
8 <url>https://www.keil.com/pack/</url>
11 <release version="0.0.0">
14 - Add support for processor affinity to CMSIS-RTOS2 wrapper
15 - Add symmetric multiprocessing configuration options to FreeRTOSConfig.h
16 - Add memory allocation configuration options to FreeRTOSConfig.h
17 - Corrected task priority mapping, FreeRTOS priority is now osPriority_t-1
18 - CMSIS-RTOS2 requires CMSIS:OS Tick component
19 - Drop support for Arm Compiler 5
20 - Drop support for CMSIS-RTOS1 API
26 <package vendor="ARM" name="CMSIS" version="6.0.0-0"/>
31 <condition id="ARMCC6">
32 <accept Tcompiler="ARMCC" Toptions="AC6"/>
33 <accept Tcompiler="ARMCC" Toptions="AC6LTO"/>
36 <accept Tcompiler="GCC"/>
37 <accept Tcompiler="CLANG"/>
40 <require Tcompiler="IAR"/>
44 <description>Cortex-M0 or Cortex-M0+ or SC000 processor based device</description>
45 <accept Dcore="Cortex-M0"/>
46 <accept Dcore="Cortex-M0+"/>
47 <accept Dcore="SC000"/>
51 <description>Cortex-M3 or SC300 processor based device</description>
52 <accept Dcore="Cortex-M3"/>
53 <accept Dcore="SC300"/>
57 <description>Cortex-M4 processor based device</description>
58 <require Dcore="Cortex-M4" Dfpu="NO_FPU"/>
61 <condition id="CM4_FP">
62 <description>Cortex-M4 processor based device using Floating Point Unit</description>
63 <require Dcore="Cortex-M4" Dfpu="FPU"/>
67 <description>Cortex-M7 processor based device</description>
68 <require Dcore="Cortex-M7" Dfpu="NO_FPU"/>
71 <condition id="CM7_SP">
72 <description>Cortex-M7 processor based device using Floating Point Unit (SP)</description>
73 <require Dcore="Cortex-M7" Dfpu="SP_FPU"/>
76 <condition id="CM7_DP">
77 <description>Cortex-M7 processor based device using Floating Point Unit (DP)</description>
78 <require Dcore="Cortex-M7" Dfpu="DP_FPU"/>
82 <description>Cortex-M23 processor based device</description>
83 <require Dcore="Cortex-M23"/>
86 <condition id="CM23_NoTZ">
87 <description>Cortex-M23 processor based device without TrustZone</description>
88 <require condition="CM23"/>
89 <require Dtz="NO_TZ"/>
92 <condition id="CM23_TZ">
93 <description>Cortex-M23 processor based device with TrustZone</description>
94 <require condition="CM23"/>
99 <description>Cortex-M33 processor based device</description>
100 <require Dcore="Cortex-M33"/>
103 <condition id="CM33_NoTZ">
104 <description>Cortex-M33 processor based device without TrustZone</description>
105 <require condition="CM33"/>
106 <require Dtz="NO_TZ"/>
109 <condition id="CM33_TZ">
110 <description>Cortex-M33 processor based device with TrustZone</description>
111 <require condition="CM33"/>
115 <condition id="CM35P">
116 <description>Cortex-M35P processor based device</description>
117 <require Dcore="Cortex-M35P"/>
120 <condition id="CM35P_NoTZ">
121 <description>Cortex-M35P processor based device without TrustZone</description>
122 <require condition="CM35P"/>
123 <require Dtz="NO_TZ"/>
126 <condition id="CM35P_TZ">
127 <description>Cortex-M35P processor based device with TrustZone</description>
128 <require condition="CM35P"/>
132 <condition id="CM55">
133 <description>Cortex-M55 processor based device</description>
134 <require Dcore="Cortex-M55"/>
137 <condition id="CM55_TZ">
138 <description>Cortex-M55 processor based device with TrustZone</description>
139 <require condition="CM55"/>
143 <condition id="CM85">
144 <description>Cortex-M85 processor based device</description>
145 <require Dcore="Cortex-M85"/>
148 <condition id="CM85_TZ">
149 <description>Cortex-M85 processor based device with TrustZone</description>
150 <require condition="CM85"/>
154 <condition id="CA9_DP">
155 <description>Cortex-A9 processor based device using Floating Point Unit (DP)</description>
156 <require Dcore="Cortex-A9" Dfpu="DP_FPU"/>
159 <!-- ARMCC6 compiler -->
160 <condition id="CM0_ARMCC6">
161 <description>Cortex-M0 or Cortex-M0+ or SC000 processor based device for the ARM Compiler 6</description>
162 <require condition="CM0"/>
163 <require condition="ARMCC6"/>
166 <condition id="CM3_ARMCC6">
167 <description>Cortex-M3 or SC300 processor based device for the ARM Compiler 6</description>
168 <require condition="CM3"/>
169 <require condition="ARMCC6"/>
172 <condition id="CM4_ARMCC6">
173 <description>Cortex-M4 processor based device for the ARM Compiler 6</description>
174 <require condition="CM4"/>
175 <require condition="ARMCC6"/>
177 <condition id="CM4_FP_ARMCC6">
178 <description>Cortex-M4 processor based device using Floating Point Unit for the ARM Compiler 6</description>
179 <require condition="CM4_FP"/>
180 <require condition="ARMCC6"/>
183 <condition id="CM7_ARMCC6">
184 <description>Cortex-M7 processor based device for the ARM Compiler 6</description>
185 <require condition="CM7"/>
186 <require condition="ARMCC6"/>
188 <condition id="CM7_SP_ARMCC6">
189 <description>Cortex-M7 processor based device using Floating Point Unit (SP) for the ARM Compiler 6</description>
190 <require condition="CM7_SP"/>
191 <require condition="ARMCC6"/>
193 <condition id="CM7_DP_ARMCC6">
194 <description>Cortex-M7 processor based device using Floating Point Unit (DP) for the ARM Compiler 6</description>
195 <require condition="CM7_DP"/>
196 <require condition="ARMCC6"/>
199 <condition id="CM23_ARMCC6">
200 <description>Cortex-M23 processor based device for the ARM Compiler 6</description>
201 <require condition="CM23"/>
202 <require condition="ARMCC6"/>
204 <condition id="CM23_NoTZ_ARMCC6">
205 <description>Cortex-M23 processor based device without TrustZone for the ARM Compiler 6</description>
206 <require condition="CM23_NoTZ"/>
207 <require condition="ARMCC6"/>
209 <condition id="CM23_TZ_ARMCC6">
210 <description>Cortex-M23 processor based device with TrustZone for the ARM Compiler 6</description>
211 <require condition="CM23_TZ"/>
212 <require condition="ARMCC6"/>
215 <condition id="CM33_ARMCC6">
216 <description>Cortex-M33 processor based device for the ARM Compiler 6</description>
217 <require condition="CM33"/>
218 <require condition="ARMCC6"/>
220 <condition id="CM33_NoTZ_ARMCC6">
221 <description>Cortex-M33 processor based device without TrustZone for the ARM Compiler 6</description>
222 <require condition="CM33_NoTZ"/>
223 <require condition="ARMCC6"/>
225 <condition id="CM33_TZ_ARMCC6">
226 <description>Cortex-M33 processor based device with TrustZone for the ARM Compiler 6</description>
227 <require condition="CM33_TZ"/>
228 <require condition="ARMCC6"/>
231 <condition id="CM35P_ARMCC6">
232 <description>Cortex-M35P processor based device for the ARM Compiler 6</description>
233 <require condition="CM35P"/>
234 <require condition="ARMCC6"/>
236 <condition id="CM35P_NoTZ_ARMCC6">
237 <description>Cortex-M35P processor based device without TrustZone for the ARM Compiler 6</description>
238 <require condition="CM35P_NoTZ"/>
239 <require condition="ARMCC6"/>
241 <condition id="CM35P_TZ_ARMCC6">
242 <description>Cortex-M35P processor based device with TrustZone for the ARM Compiler 6</description>
243 <require condition="CM35P_TZ"/>
244 <require condition="ARMCC6"/>
247 <condition id="CM55_ARMCC6">
248 <description>Cortex-M55 processor based device for the ARM Compiler 6</description>
249 <require condition="CM55"/>
250 <require condition="ARMCC6"/>
252 <condition id="CM55_TZ_ARMCC6">
253 <description>Cortex-M55 processor based device with TrustZone for the ARM Compiler 6</description>
254 <require condition="CM55_TZ"/>
255 <require condition="ARMCC6"/>
258 <condition id="CM85_ARMCC6">
259 <description>Cortex-M85 processor based device for the ARM Compiler 6</description>
260 <require condition="CM85"/>
261 <require condition="ARMCC6"/>
263 <condition id="CM85_TZ_ARMCC6">
264 <description>Cortex-M85 processor based device with TrustZone for the ARM Compiler 6</description>
265 <require condition="CM85_TZ"/>
266 <require condition="ARMCC6"/>
269 <condition id="CA9_DP_ARMCC6">
270 <description>Cortex-A9 processor based device using Floating Point Unit (DP) for the ARM Compiler 6</description>
271 <require condition="CA9_DP"/>
272 <require condition="ARMCC6"/>
275 <!-- GCC compiler -->
276 <condition id="CM0_GCC">
277 <description>Cortex-M0 or Cortex-M0+ or SC000 processor based device for the GCC Compiler</description>
278 <require condition="CM0"/>
279 <require condition="GCC"/>
282 <condition id="CM3_GCC">
283 <description>Cortex-M3 or SC300 processor based device for the GCC Compiler</description>
284 <require condition="CM3"/>
285 <require condition="GCC"/>
288 <condition id="CM4_GCC">
289 <description>Cortex-M4 processor based device for the GCC Compiler</description>
290 <require condition="CM4"/>
291 <require condition="GCC"/>
293 <condition id="CM4_FP_GCC">
294 <description>Cortex-M4 processor based device using Floating Point Unit for the GCC Compiler</description>
295 <require condition="CM4_FP"/>
296 <require condition="GCC"/>
299 <condition id="CM7_GCC">
300 <description>Cortex-M7 processor based device for the GCC Compiler</description>
301 <require condition="CM7"/>
302 <require condition="GCC"/>
304 <condition id="CM7_SP_GCC">
305 <description>Cortex-M7 processor based device using Floating Point Unit (SP) for the GCC Compiler</description>
306 <require condition="CM7_SP"/>
307 <require condition="GCC"/>
309 <condition id="CM7_DP_GCC">
310 <description>Cortex-M7 processor based device using Floating Point Unit (DP) for the GCC Compiler</description>
311 <require condition="CM7_DP"/>
312 <require condition="GCC"/>
315 <condition id="CM23_GCC">
316 <description>Cortex-M23 processor based device for the GCC Compiler</description>
317 <require condition="CM23"/>
318 <require condition="GCC"/>
320 <condition id="CM23_NoTZ_GCC">
321 <description>Cortex-M23 processor based device without TrustZone for the GCC Compiler</description>
322 <require condition="CM23_NoTZ"/>
323 <require condition="GCC"/>
325 <condition id="CM23_TZ_GCC">
326 <description>Cortex-M23 processor based device with TrustZone for the GCC Compiler</description>
327 <require condition="CM23_TZ"/>
328 <require condition="GCC"/>
331 <condition id="CM33_GCC">
332 <description>Cortex-M33 processor based device for the GCC Compiler</description>
333 <require condition="CM33"/>
334 <require condition="GCC"/>
336 <condition id="CM33_NoTZ_GCC">
337 <description>Cortex-M33 processor based device without TrustZone for the GCC Compiler</description>
338 <require condition="CM33_NoTZ"/>
339 <require condition="GCC"/>
341 <condition id="CM33_TZ_GCC">
342 <description>Cortex-M33 processor based device with TrustZone for the GCC Compiler</description>
343 <require condition="CM33_TZ"/>
344 <require condition="GCC"/>
347 <condition id="CM35P_GCC">
348 <description>Cortex-M35P processor based device for the GCC Compiler</description>
349 <require condition="CM35P"/>
350 <require condition="GCC"/>
352 <condition id="CM35P_NoTZ_GCC">
353 <description>Cortex-M35P processor based device without TrustZone for the GCC Compiler</description>
354 <require condition="CM35P_NoTZ"/>
355 <require condition="GCC"/>
357 <condition id="CM35P_TZ_GCC">
358 <description>Cortex-M35P processor based device with TrustZone for the GCC Compiler</description>
359 <require condition="CM35P_TZ"/>
360 <require condition="GCC"/>
363 <condition id="CM55_GCC">
364 <description>Cortex-M55 processor based device for the GCC Compiler</description>
365 <require condition="CM55"/>
366 <require condition="GCC"/>
368 <condition id="CM55_TZ_GCC">
369 <description>Cortex-M55 processor based device with TrustZone for the GCC Compiler</description>
370 <require condition="CM55_TZ"/>
371 <require condition="GCC"/>
374 <condition id="CM85_GCC">
375 <description>Cortex-M85 processor based device for the GCC Compiler</description>
376 <require condition="CM85"/>
377 <require condition="GCC"/>
379 <condition id="CM85_TZ_GCC">
380 <description>Cortex-M85 processor based device with TrustZone for the GCC Compiler</description>
381 <require condition="CM85_TZ"/>
382 <require condition="GCC"/>
385 <condition id="CA9_DP_GCC">
386 <description>Cortex-A9 processor based device using Floating Point Unit (DP) for the GCC Compiler</description>
387 <require condition="CA9_DP"/>
388 <require condition="GCC"/>
391 <!-- IAR compiler -->
392 <condition id="CM0_IAR">
393 <description>Cortex-M0 or Cortex-M0+ or SC000 processor based device for the IAR Compiler</description>
394 <require condition="CM0"/>
395 <require condition="IAR"/>
398 <condition id="CM3_IAR">
399 <description>Cortex-M3 or SC300 processor based device for the IAR Compiler</description>
400 <require condition="CM3"/>
401 <require condition="IAR"/>
404 <condition id="CM4_IAR">
405 <description>Cortex-M4 processor based device for the IAR Compiler</description>
406 <require condition="CM4"/>
407 <require condition="IAR"/>
409 <condition id="CM4_FP_IAR">
410 <description>Cortex-M4 processor based device using Floating Point Unit for the IAR Compiler</description>
411 <require condition="CM4_FP"/>
412 <require condition="IAR"/>
415 <condition id="CM7_IAR">
416 <description>Cortex-M7 processor based device for the IAR Compiler</description>
417 <require condition="CM7"/>
418 <require condition="IAR"/>
420 <condition id="CM7_SP_IAR">
421 <description>Cortex-M7 processor based device using Floating Point Unit (SP) for the IAR Compiler</description>
422 <require condition="CM7_SP"/>
423 <require condition="IAR"/>
425 <condition id="CM7_DP_IAR">
426 <description>Cortex-M7 processor based device using Floating Point Unit (DP) for the IAR Compiler</description>
427 <require condition="CM7_DP"/>
428 <require condition="IAR"/>
431 <condition id="CM23_IAR">
432 <description>Cortex-M23 processor based device for the IAR Compiler</description>
433 <require condition="CM23"/>
434 <require condition="IAR"/>
436 <condition id="CM23_NoTZ_IAR">
437 <description>Cortex-M23 processor based device without TrustZone for the IAR Compiler</description>
438 <require condition="CM23_NoTZ"/>
439 <require condition="IAR"/>
441 <condition id="CM23_TZ_IAR">
442 <description>Cortex-M23 processor based device with TrustZone for the IAR Compiler</description>
443 <require condition="CM23_TZ"/>
444 <require condition="IAR"/>
447 <condition id="CM33_IAR">
448 <description>Cortex-M33 processor based device for the IAR Compiler</description>
449 <require condition="CM33"/>
450 <require condition="IAR"/>
452 <condition id="CM33_NoTZ_IAR">
453 <description>Cortex-M33 processor based device without TrustZone for the IAR Compiler</description>
454 <require condition="CM33_NoTZ"/>
455 <require condition="IAR"/>
457 <condition id="CM33_TZ_IAR">
458 <description>Cortex-M33 processor based device with TrustZone for the IAR Compiler</description>
459 <require condition="CM33_TZ"/>
460 <require condition="IAR"/>
463 <condition id="CM35P_IAR">
464 <description>Cortex-M35P processor based device for the IAR Compiler</description>
465 <require condition="CM35P"/>
466 <require condition="IAR"/>
468 <condition id="CM35P_NoTZ_IAR">
469 <description>Cortex-M35P processor based device without TrustZone for the IAR Compiler</description>
470 <require condition="CM35P_NoTZ"/>
471 <require condition="IAR"/>
473 <condition id="CM35P_TZ_IAR">
474 <description>Cortex-M35P processor based device with TrustZone for the IAR Compiler</description>
475 <require condition="CM33_TZ"/>
476 <require condition="IAR"/>
479 <condition id="CM55_IAR">
480 <description>Cortex-M55 processor based device for the IAR Compiler</description>
481 <require condition="CM55"/>
482 <require condition="IAR"/>
484 <condition id="CM55_TZ_IAR">
485 <description>Cortex-M55 processor based device with TrustZone for the IAR Compiler</description>
486 <require condition="CM55_TZ"/>
487 <require condition="IAR"/>
490 <condition id="CM85_IAR">
491 <description>Cortex-M85 processor based device for the IAR Compiler</description>
492 <require condition="CM85"/>
493 <require condition="IAR"/>
495 <condition id="CM85_TZ_IAR">
496 <description>Cortex-M85 processor based device with TrustZone for the IAR Compiler</description>
497 <require condition="CM85_TZ"/>
498 <require condition="IAR"/>
501 <condition id="CA9_DP_IAR">
502 <description>Cortex-A9 processor based device using Floating Point Unit (DP) for the IAR Compiler</description>
503 <require condition="CA9_DP"/>
504 <require condition="IAR"/>
507 <!-- FreeRTOS ports for the Arm Cortex core -->
508 <condition id="FreeRTOS Port Cortex-M0">
509 <description>Requirements for FreeRTOS port for Cortex-M0 and Cortex-M0+</description>
510 <accept condition="CM0_ARMCC6"/>
511 <accept condition="CM0_GCC"/>
512 <accept condition="CM0_IAR"/>
514 <condition id="FreeRTOS Port Cortex-M3">
515 <description>Requirements for FreeRTOS port for Cortex-M3</description>
516 <accept condition="CM3_ARMCC6"/>
517 <accept condition="CM3_GCC"/>
518 <accept condition="CM3_IAR"/>
520 <condition id="FreeRTOS Port Cortex-M3 MPU">
521 <description>Requirements for FreeRTOS port for Cortex-M3 using MPU</description>
522 <accept condition="CM3_ARMCC6"/>
523 <accept condition="CM3_GCC"/>
525 <condition id="FreeRTOS Port Cortex-M4">
526 <description>Requirements for FreeRTOS port for Cortex-M4</description>
527 <accept condition="CM4_ARMCC6"/>
528 <accept condition="CM4_GCC"/>
529 <accept condition="CM4_IAR"/>
531 <condition id="FreeRTOS Port Cortex-M4 MPU">
532 <description>Requirements for FreeRTOS port for Cortex-M4 using MPU</description>
533 <accept condition="CM4_ARMCC6"/>
534 <accept condition="CM4_GCC"/>
536 <condition id="FreeRTOS Port Cortex-M4 FPU">
537 <description>Requirements for FreeRTOS port for Cortex-M4 using FPU</description>
538 <accept condition="CM4_FP_ARMCC6"/>
539 <accept condition="CM4_FP_GCC"/>
540 <accept condition="CM4_FP_IAR"/>
542 <condition id="FreeRTOS Port Cortex-M4 FPU MPU">
543 <description>Requirements for FreeRTOS port for Cortex-M4 using FPU and MPU</description>
544 <accept condition="CM4_FP_ARMCC6"/>
545 <accept condition="CM4_FP_GCC"/>
546 <accept condition="CM4_FP_IAR"/>
548 <condition id="FreeRTOS Port Cortex-M7">
549 <description>Requirements for FreeRTOS port for Cortex-M7</description>
550 <accept condition="CM7_ARMCC6"/>
551 <accept condition="CM7_GCC"/>
552 <accept condition="CM7_IAR"/>
554 <condition id="FreeRTOS Port Cortex-M7 FPU SP">
555 <description>Requirements for FreeRTOS port for Cortex-M7 using FPU (SP)</description>
556 <accept condition="CM7_SP_ARMCC6"/>
557 <accept condition="CM7_SP_GCC"/>
558 <accept condition="CM7_SP_IAR"/>
560 <condition id="FreeRTOS Port Cortex-M7 FPU DP">
561 <description>Requirements for FreeRTOS port for Cortex-M7 using FPU (DP)</description>
562 <accept condition="CM7_DP_ARMCC6"/>
563 <accept condition="CM7_DP_GCC"/>
564 <accept condition="CM7_DP_IAR"/>
566 <condition id="FreeRTOS Port Cortex-M23">
567 <description>Requirements for FreeRTOS port for Cortex-M23</description>
568 <accept condition="CM23_ARMCC6"/>
569 <accept condition="CM23_GCC"/>
570 <accept condition="CM23_IAR"/>
572 <condition id="FreeRTOS Port Cortex-M23 NoTZ">
573 <description>Requirements for FreeRTOS port for Cortex-M23 without TrustZone</description>
574 <accept condition="CM23_NoTZ_ARMCC6"/>
575 <accept condition="CM23_NoTZ_GCC"/>
576 <accept condition="CM23_NoTZ_IAR"/>
578 <condition id="FreeRTOS Port Cortex-M23 TZ">
579 <description>Requirements for FreeRTOS port for Cortex-M23 with TrustZone</description>
580 <accept condition="CM23_TZ_ARMCC6"/>
581 <accept condition="CM23_TZ_GCC"/>
582 <accept condition="CM23_TZ_IAR"/>
584 <condition id="FreeRTOS Port Cortex-M33">
585 <description>Requirements for FreeRTOS port for Cortex-M33</description>
586 <accept condition="CM33_ARMCC6"/>
587 <accept condition="CM33_GCC"/>
588 <accept condition="CM33_IAR"/>
590 <condition id="FreeRTOS Port Cortex-M33 NoTZ">
591 <description>Requirements for FreeRTOS port for Cortex-M33 without TrustZone</description>
592 <accept condition="CM33_NoTZ_ARMCC6"/>
593 <accept condition="CM33_NoTZ_GCC"/>
594 <accept condition="CM33_NoTZ_IAR"/>
596 <condition id="FreeRTOS Port Cortex-M33 TZ">
597 <description>Requirements for FreeRTOS port for Cortex-M33 with TrustZone</description>
598 <accept condition="CM33_TZ_ARMCC6"/>
599 <accept condition="CM33_TZ_GCC"/>
600 <accept condition="CM33_TZ_IAR"/>
602 <condition id="FreeRTOS Port Cortex-M35P">
603 <description>Requirements for FreeRTOS port for Cortex-M35P</description>
604 <accept condition="CM35P_ARMCC6"/>
605 <accept condition="CM35P_GCC"/>
606 <accept condition="CM35P_IAR"/>
608 <condition id="FreeRTOS Port Cortex-M35P NoTZ">
609 <description>Requirements for FreeRTOS port for Cortex-M35P without TrustZone</description>
610 <accept condition="CM35P_NoTZ_ARMCC6"/>
611 <accept condition="CM35P_NoTZ_GCC"/>
612 <accept condition="CM35P_NoTZ_IAR"/>
614 <condition id="FreeRTOS Port Cortex-M35P TZ">
615 <description>Requirements for FreeRTOS port for Cortex-M35P with TrustZone</description>
616 <accept condition="CM35P_TZ_ARMCC6"/>
617 <accept condition="CM35P_TZ_GCC"/>
618 <accept condition="CM35P_TZ_IAR"/>
620 <condition id="FreeRTOS Port Cortex-M55 TZ">
621 <description>Requirements for FreeRTOS port for Cortex-M55 with TrustZone</description>
622 <accept condition="CM55_TZ_ARMCC6"/>
623 <accept condition="CM55_TZ_GCC"/>
624 <accept condition="CM55_TZ_IAR"/>
626 <condition id="FreeRTOS Port Cortex-M85 TZ">
627 <description>Requirements for FreeRTOS port for Cortex-M85 with TrustZone</description>
628 <accept condition="CM85_TZ_ARMCC6"/>
629 <accept condition="CM85_TZ_GCC"/>
630 <accept condition="CM85_TZ_IAR"/>
632 <condition id="FreeRTOS Port Cortex-A9 FPU DP">
633 <description>Requirements for FreeRTOS port for Cortex-A9 using FPU (DP)</description>
634 <accept condition="CA9_DP_ARMCC6"/>
635 <accept condition="CA9_DP_GCC"/>
636 <accept condition="CA9_DP_IAR"/>
639 <condition id="FreeRTOS Port Cortex-M v6_v7">
640 <description>Requirements for FreeRTOS port for Cortex-M v6 and v7</description>
641 <accept condition="FreeRTOS Port Cortex-M0"/>
642 <accept condition="FreeRTOS Port Cortex-M3"/>
643 <accept condition="FreeRTOS Port Cortex-M4"/>
644 <accept condition="FreeRTOS Port Cortex-M4 FPU"/>
645 <accept condition="FreeRTOS Port Cortex-M7"/>
646 <accept condition="FreeRTOS Port Cortex-M7 FPU SP"/>
647 <accept condition="FreeRTOS Port Cortex-M7 FPU DP"/>
649 <condition id="FreeRTOS Port Cortex-M v6_v7 MPU">
650 <description>Requirements for FreeRTOS port for Cortex-M v6 and v7 using MPU</description>
651 <accept condition="FreeRTOS Port Cortex-M3 MPU"/>
652 <accept condition="FreeRTOS Port Cortex-M4 MPU"/>
653 <accept condition="FreeRTOS Port Cortex-M4 FPU MPU"/>
655 <condition id="FreeRTOS Port Cortex-M v8">
656 <description>Requirements for FreeRTOS port for Cortex-M v8</description>
657 <accept condition="FreeRTOS Port Cortex-M23"/>
658 <accept condition="FreeRTOS Port Cortex-M23 NoTZ"/>
659 <accept condition="FreeRTOS Port Cortex-M23 TZ"/>
660 <accept condition="FreeRTOS Port Cortex-M33"/>
661 <accept condition="FreeRTOS Port Cortex-M33 NoTZ"/>
662 <accept condition="FreeRTOS Port Cortex-M33 TZ"/>
663 <accept condition="FreeRTOS Port Cortex-M35P"/>
664 <accept condition="FreeRTOS Port Cortex-M35P NoTZ"/>
665 <accept condition="FreeRTOS Port Cortex-M35P TZ"/>
666 <accept condition="FreeRTOS Port Cortex-M55 TZ"/>
667 <accept condition="FreeRTOS Port Cortex-M85 TZ"/>
669 <condition id="FreeRTOS Port Cortex-M v8 TZ">
670 <description>Requirements for FreeRTOS port for Cortex-M v8 with TrustZone</description>
671 <accept condition="FreeRTOS Port Cortex-M23 TZ"/>
672 <accept condition="FreeRTOS Port Cortex-M33 TZ"/>
673 <accept condition="FreeRTOS Port Cortex-M35P TZ"/>
674 <accept condition="FreeRTOS Port Cortex-M55 TZ"/>
675 <accept condition="FreeRTOS Port Cortex-M85 TZ"/>
677 <condition id="FreeRTOS Port Cortex-A">
678 <description>Requirements for FreeRTOS port for Cortex-A</description>
679 <accept condition="FreeRTOS Port Cortex-A9 FPU DP"/>
681 <condition id="FreeRTOS Port Cortex-M">
682 <description>Requirements for FreeRTOS port for Cortex-M</description>
683 <accept condition="FreeRTOS Port Cortex-M v6_v7"/>
684 <accept condition="FreeRTOS Port Cortex-M v8"/>
686 <condition id="FreeRTOS Port">
687 <description>FreeRTOS ports for Arm Cortex combined</description>
688 <accept condition="FreeRTOS Port Cortex-A"/>
689 <accept condition="FreeRTOS Port Cortex-M"/>
692 <!-- Conditions for RTOS::FreeRTOS components -->
693 <condition id="FreeRTOS Message or Stream Buffer API">
694 <description>FreeRTOS Message or Stream Buffer component</description>
695 <accept Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Message Buffer"/>
696 <accept Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Stream Buffer"/>
699 <condition id="FreeRTOS Core CA">
700 <description>Requirements for FreeRTOS Core for Cortex-A</description>
701 <require condition="FreeRTOS Port Cortex-A"/>
703 <require Cclass="Device" Cgroup="Startup"/>
704 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Config"/>
705 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Heap"/>
708 <condition id="FreeRTOS Core CM">
709 <description>Requirements for FreeRTOS Core for Cortex-M</description>
710 <require condition="FreeRTOS Port Cortex-M"/>
712 <require Cclass="Device" Cgroup="Startup"/>
713 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Config"/>
714 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Heap"/>
717 <condition id="FreeRTOS Core CM v6_v7 MPU">
718 <description>Requirements for FreeRTOS Core with MPU support for Cortex-M v6 and v7</description>
719 <require condition="FreeRTOS Port Cortex-M v6_v7 MPU"/>
721 <require Cclass="Device" Cgroup="Startup"/>
722 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Config"/>
723 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Heap"/>
724 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Event Groups"/>
725 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Timers"/>
726 <require condition="FreeRTOS Message or Stream Buffer API"/>
729 <condition id="FreeRTOS Core TZ">
730 <description>Requirements for FreeRTOS Core with TrustZone support</description>
731 <require condition="FreeRTOS Port Cortex-M v8 TZ"/>
733 <require Cclass="Device" Cgroup="Startup"/>
734 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Config"/>
735 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Heap"/>
738 <condition id="FreeRTOS Core TZ MPU">
739 <description>Requirements for FreeRTOS Core with TrustZone and MPU support</description>
740 <require condition="FreeRTOS Port Cortex-M v8 TZ"/>
742 <require Cclass="Device" Cgroup="Startup"/>
743 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Config"/>
744 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Heap"/>
745 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Event Groups"/>
746 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Timers"/>
747 <require condition="FreeRTOS Message or Stream Buffer API"/>
750 <condition id="FreeRTOS Config Native">
751 <description>Components required for FreeRTOS Config Native variant</description>
752 <require condition="FreeRTOS Port"/>
754 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Core"/>
757 <condition id="FreeRTOS Config CMSIS RTOS2">
758 <description>Components required for FreeRTOS Config CMSIS RTOS2 variant</description>
759 <require condition="FreeRTOS Port"/>
761 <require Cclass="CMSIS" Cgroup="RTOS2" Csub="FreeRTOS"/>
764 <condition id="FreeRTOS Coroutines">
765 <description>Components required for FreeRTOS Coroutines</description>
766 <require condition="FreeRTOS Port"/>
768 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Core"/>
771 <condition id="FreeRTOS Event Groups">
772 <description>Components required for FreeRTOS Event Groups</description>
773 <require condition="FreeRTOS Port"/>
775 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Core"/>
778 <condition id="FreeRTOS Heap">
779 <description>Components required for FreeRTOS Heap</description>
780 <require condition="FreeRTOS Port"/>
782 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Core"/>
785 <condition id="FreeRTOS Message Buffer">
786 <description>Components required for FreeRTOS Message Buffer</description>
787 <require condition="FreeRTOS Port"/>
789 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Core"/>
792 <condition id="FreeRTOS Stream Buffer">
793 <description>Components required for FreeRTOS Stream Buffer</description>
794 <require condition="FreeRTOS Port"/>
796 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Core"/>
799 <condition id="FreeRTOS Timers">
800 <description>Components required for FreeRTOS Timers</description>
801 <require condition="FreeRTOS Port"/>
803 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Core"/>
806 <condition id="FreeRTOS TrustZone">
807 <description>Components required for FreeRTOS TrustZone</description>
808 <require condition="FreeRTOS Port Cortex-M v8 TZ"/>
810 <!-- TrustZone Secure Context is a standalone component -->
811 <deny Cclass="CMSIS" Cgroup="RTOS" Csub="FreeRTOS"/>
812 <deny Cclass="CMSIS" Cgroup="RTOS2" Csub="FreeRTOS"/>
814 <deny Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Config"/>
815 <deny Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Core"/>
816 <deny Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Coroutines"/>
817 <deny Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Heap"/>
818 <deny Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Event Groups"/>
819 <deny Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Message Buffer"/>
820 <deny Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Stream Buffer"/>
821 <deny Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Timers"/>
824 <condition id="CMSIS RTOS2 FreeRTOS CortexM">
825 <description>Components required for CMSIS RTOS2 API on top of FreeRTOS for Cortex-M</description>
826 <require condition="FreeRTOS Port Cortex-M"/>
828 <require Cclass="CMSIS" Cgroup="OS Tick"/>
829 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Config" Cvariant="CMSIS RTOS2"/>
830 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Core"/>
831 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Event Groups"/>
832 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Timers"/>
835 <condition id="CMSIS RTOS2 FreeRTOS CortexA">
836 <description>Components required for CMSIS RTOS2 API on top of FreeRTOS for Cortex-A</description>
837 <require condition="FreeRTOS Port Cortex-A"/>
839 <require Cclass="CMSIS" Cgroup="OS Tick"/>
840 <require Cclass="Device" Cgroup="IRQ Controller"/>
841 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Config" Cvariant="CMSIS RTOS2"/>
842 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Core"/>
843 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Event Groups"/>
844 <require Cclass="RTOS" Cbundle="FreeRTOS" Cgroup="Timers"/>
850 <!-- CMSIS-RTOS2 FreeRTOS component -->
851 <component Cclass="CMSIS" Cgroup="RTOS2" Csub="FreeRTOS" Cvariant="Cortex-M" Cversion="11.0.1" Capiversion="2.3.0" condition="CMSIS RTOS2 FreeRTOS CortexM">
852 <description>CMSIS-RTOS2 implementation for Cortex-M based on FreeRTOS</description>
854 #define RTE_CMSIS_RTOS2 /* CMSIS-RTOS2 */
855 #define RTE_CMSIS_RTOS2_FreeRTOS /* CMSIS-RTOS2 FreeRTOS */
858 <file category="doc" name="Documentation/html/index.html"/>
859 <file category="header" name="CMSIS/RTOS2/FreeRTOS/Include/freertos_mpool.h"/>
860 <file category="source" name="CMSIS/RTOS2/FreeRTOS/Source/cmsis_os2.c"/>
861 <file category="source" name="CMSIS/RTOS2/FreeRTOS/Source/clib_os.c"/>
865 <component Cclass="CMSIS" Cgroup="RTOS2" Csub="FreeRTOS" Cvariant="Cortex-A" Cversion="11.0.1" Capiversion="2.3.0" condition="CMSIS RTOS2 FreeRTOS CortexA">
866 <description>CMSIS-RTOS2 implementation for Cortex-A based on FreeRTOS</description>
868 #define RTE_CMSIS_RTOS2 /* CMSIS-RTOS2 */
869 #define RTE_CMSIS_RTOS2_FreeRTOS /* CMSIS-RTOS2 FreeRTOS */
872 <file category="doc" name="Documentation/html/index.html"/>
873 <file category="header" name="CMSIS/RTOS2/FreeRTOS/Include/freertos_mpool.h"/>
874 <file category="source" name="CMSIS/RTOS2/FreeRTOS/Source/cmsis_os2.c"/>
875 <file category="source" name="CMSIS/RTOS2/FreeRTOS/Source/clib_os.c"/>
877 <file category="source" attr="config" name="CMSIS/RTOS2/FreeRTOS/Source/handlers.c" version="9.1.0"/>
881 <bundle Cbundle="FreeRTOS" Cclass="RTOS" Cversion="11.0.1">
882 <description>FreeRTOS Real Time Kernel</description>
883 <doc>https://www.freertos.org/RTOS.html</doc>
885 <component Cgroup="Core" Cvariant="Cortex-M" isDefaultVariant="true" condition="FreeRTOS Core CM">
886 <description>Core API (Kernel, Tasks, Semaphores, Mutexes, Queues) for Cortex-M</description>
888 #define RTE_RTOS_FreeRTOS_CORE /* RTOS FreeRTOS Core */
891 <file category="include" name="Source/include/"/>
893 <file category="header" name="Source/include/FreeRTOS.h"/>
894 <file category="header" name="Source/include/queue.h"/>
895 <file category="header" name="Source/include/semphr.h"/>
896 <file category="header" name="Source/include/task.h"/>
898 <file category="source" name="Source/list.c"/>
899 <file category="source" name="Source/queue.c"/>
900 <file category="source" name="Source/tasks.c"/>
902 <file category="include" condition="CM0_ARMCC6" name="Source/portable/GCC/ARM_CM0/"/>
903 <file category="source" condition="CM0_ARMCC6" name="Source/portable/GCC/ARM_CM0/port.c"/>
904 <file category="include" condition="CM3_ARMCC6" name="Source/portable/GCC/ARM_CM3/"/>
905 <file category="source" condition="CM3_ARMCC6" name="Source/portable/GCC/ARM_CM3/port.c"/>
906 <file category="include" condition="CM4_ARMCC6" name="Source/portable/GCC/ARM_CM3/"/>
907 <file category="source" condition="CM4_ARMCC6" name="Source/portable/GCC/ARM_CM3/port.c"/>
908 <file category="include" condition="CM4_FP_ARMCC6" name="Source/portable/GCC/ARM_CM4F/"/>
909 <file category="source" condition="CM4_FP_ARMCC6" name="Source/portable/GCC/ARM_CM4F/port.c"/>
910 <file category="include" condition="CM7_ARMCC6" name="Source/portable/GCC/ARM_CM3/"/>
911 <file category="source" condition="CM7_ARMCC6" name="Source/portable/GCC/ARM_CM3/port.c"/>
912 <file category="include" condition="CM7_DP_ARMCC6" name="Source/portable/GCC/ARM_CM7/r0p1/"/>
913 <file category="source" condition="CM7_DP_ARMCC6" name="Source/portable/GCC/ARM_CM7/r0p1/port.c"/>
914 <file category="include" condition="CM7_SP_ARMCC6" name="Source/portable/GCC/ARM_CM7/r0p1/"/>
915 <file category="source" condition="CM7_SP_ARMCC6" name="Source/portable/GCC/ARM_CM7/r0p1/port.c"/>
916 <file category="include" condition="CM23_ARMCC6" name="Source/portable/GCC/ARM_CM23_NTZ/non_secure/"/>
917 <file category="source" condition="CM23_ARMCC6" name="Source/portable/GCC/ARM_CM23_NTZ/non_secure/port.c"/>
918 <file category="source" condition="CM23_ARMCC6" name="Source/portable/GCC/ARM_CM23_NTZ/non_secure/portasm.c"/>
919 <file category="include" condition="CM33_ARMCC6" name="Source/portable/GCC/ARM_CM33_NTZ/non_secure/"/>
920 <file category="source" condition="CM33_ARMCC6" name="Source/portable/GCC/ARM_CM33_NTZ/non_secure/port.c"/>
921 <file category="source" condition="CM33_ARMCC6" name="Source/portable/GCC/ARM_CM33_NTZ/non_secure/portasm.c"/>
922 <file category="include" condition="CM35P_ARMCC6" name="Source/portable/GCC/ARM_CM35P_NTZ/non_secure/"/>
923 <file category="source" condition="CM35P_ARMCC6" name="Source/portable/GCC/ARM_CM35P_NTZ/non_secure/port.c"/>
924 <file category="source" condition="CM35P_ARMCC6" name="Source/portable/GCC/ARM_CM35P_NTZ/non_secure/portasm.c"/>
925 <file category="include" condition="CM55_ARMCC6" name="Source/portable/GCC/ARM_CM55_NTZ/non_secure/"/>
926 <file category="source" condition="CM55_ARMCC6" name="Source/portable/GCC/ARM_CM55_NTZ/non_secure/port.c"/>
927 <file category="source" condition="CM55_ARMCC6" name="Source/portable/GCC/ARM_CM55_NTZ/non_secure/portasm.c"/>
928 <file category="include" condition="CM85_ARMCC6" name="Source/portable/GCC/ARM_CM85_NTZ/non_secure/"/>
929 <file category="source" condition="CM85_ARMCC6" name="Source/portable/GCC/ARM_CM85_NTZ/non_secure/port.c"/>
930 <file category="source" condition="CM85_ARMCC6" name="Source/portable/GCC/ARM_CM85_NTZ/non_secure/portasm.c"/>
932 <file category="include" condition="CM0_GCC" name="Source/portable/GCC/ARM_CM0/"/>
933 <file category="source" condition="CM0_GCC" name="Source/portable/GCC/ARM_CM0/port.c"/>
934 <file category="include" condition="CM3_GCC" name="Source/portable/GCC/ARM_CM3/"/>
935 <file category="source" condition="CM3_GCC" name="Source/portable/GCC/ARM_CM3/port.c"/>
936 <file category="include" condition="CM4_GCC" name="Source/portable/GCC/ARM_CM3/"/>
937 <file category="source" condition="CM4_GCC" name="Source/portable/GCC/ARM_CM3/port.c"/>
938 <file category="include" condition="CM4_FP_GCC" name="Source/portable/GCC/ARM_CM4F/"/>
939 <file category="source" condition="CM4_FP_GCC" name="Source/portable/GCC/ARM_CM4F/port.c"/>
940 <file category="include" condition="CM7_GCC" name="Source/portable/GCC/ARM_CM3/"/>
941 <file category="source" condition="CM7_GCC" name="Source/portable/GCC/ARM_CM3/port.c"/>
942 <file category="include" condition="CM7_DP_GCC" name="Source/portable/GCC/ARM_CM7/r0p1/"/>
943 <file category="source" condition="CM7_DP_GCC" name="Source/portable/GCC/ARM_CM7/r0p1/port.c"/>
944 <file category="include" condition="CM7_SP_GCC" name="Source/portable/GCC/ARM_CM7/r0p1/"/>
945 <file category="source" condition="CM7_SP_GCC" name="Source/portable/GCC/ARM_CM7/r0p1/port.c"/>
946 <file category="include" condition="CM23_GCC" name="Source/portable/GCC/ARM_CM23_NTZ/non_secure/"/>
947 <file category="source" condition="CM23_GCC" name="Source/portable/GCC/ARM_CM23_NTZ/non_secure/port.c"/>
948 <file category="source" condition="CM23_GCC" name="Source/portable/GCC/ARM_CM23_NTZ/non_secure/portasm.c"/>
949 <file category="include" condition="CM33_GCC" name="Source/portable/GCC/ARM_CM33_NTZ/non_secure/"/>
950 <file category="source" condition="CM33_GCC" name="Source/portable/GCC/ARM_CM33_NTZ/non_secure/port.c"/>
951 <file category="source" condition="CM33_GCC" name="Source/portable/GCC/ARM_CM33_NTZ/non_secure/portasm.c"/>
952 <file category="include" condition="CM35P_GCC" name="Source/portable/GCC/ARM_CM35P_NTZ/non_secure/"/>
953 <file category="source" condition="CM35P_GCC" name="Source/portable/GCC/ARM_CM35P_NTZ/non_secure/port.c"/>
954 <file category="source" condition="CM35P_GCC" name="Source/portable/GCC/ARM_CM35P_NTZ/non_secure/portasm.c"/>
955 <file category="include" condition="CM55_GCC" name="Source/portable/GCC/ARM_CM55_NTZ/non_secure/"/>
956 <file category="source" condition="CM55_GCC" name="Source/portable/GCC/ARM_CM55_NTZ/non_secure/port.c"/>
957 <file category="source" condition="CM55_GCC" name="Source/portable/GCC/ARM_CM55_NTZ/non_secure/portasm.c"/>
958 <file category="include" condition="CM85_GCC" name="Source/portable/GCC/ARM_CM85_NTZ/non_secure/"/>
959 <file category="source" condition="CM85_GCC" name="Source/portable/GCC/ARM_CM85_NTZ/non_secure/port.c"/>
960 <file category="source" condition="CM85_GCC" name="Source/portable/GCC/ARM_CM85_NTZ/non_secure/portasm.c"/>
962 <file category="include" condition="CM0_IAR" name="Source/portable/IAR/ARM_CM0/"/>
963 <file category="source" condition="CM0_IAR" name="Source/portable/IAR/ARM_CM0/port.c"/>
964 <file category="sourceAsm" condition="CM0_IAR" name="Source/portable/IAR/ARM_CM0/portasm.s"/>
965 <file category="include" condition="CM3_IAR" name="Source/portable/IAR/ARM_CM3/"/>
966 <file category="source" condition="CM3_IAR" name="Source/portable/IAR/ARM_CM3/port.c"/>
967 <file category="sourceAsm" condition="CM3_IAR" name="Source/portable/IAR/ARM_CM3/portasm.s"/>
968 <file category="include" condition="CM4_IAR" name="Source/portable/IAR/ARM_CM3/"/>
969 <file category="source" condition="CM4_IAR" name="Source/portable/IAR/ARM_CM3/port.c"/>
970 <file category="sourceAsm" condition="CM4_IAR" name="Source/portable/IAR/ARM_CM3/portasm.s"/>
971 <file category="include" condition="CM4_FP_IAR" name="Source/portable/IAR/ARM_CM4F/"/>
972 <file category="source" condition="CM4_FP_IAR" name="Source/portable/IAR/ARM_CM4F/port.c"/>
973 <file category="sourceAsm" condition="CM4_FP_IAR" name="Source/portable/IAR/ARM_CM4F/portasm.s"/>
974 <file category="include" condition="CM7_IAR" name="Source/portable/IAR/ARM_CM3/"/>
975 <file category="source" condition="CM7_IAR" name="Source/portable/IAR/ARM_CM3/port.c"/>
976 <file category="sourceAsm" condition="CM7_IAR" name="Source/portable/IAR/ARM_CM3/portasm.s"/>
977 <file category="include" condition="CM7_DP_IAR" name="Source/portable/IAR/ARM_CM7/r0p1/"/>
978 <file category="source" condition="CM7_DP_IAR" name="Source/portable/IAR/ARM_CM7/r0p1/port.c"/>
979 <file category="sourceAsm" condition="CM7_DP_IAR" name="Source/portable/IAR/ARM_CM7/r0p1/portasm.s"/>
980 <file category="include" condition="CM7_SP_IAR" name="Source/portable/IAR/ARM_CM7/r0p1/"/>
981 <file category="source" condition="CM7_SP_IAR" name="Source/portable/IAR/ARM_CM7/r0p1/port.c"/>
982 <file category="sourceAsm" condition="CM7_SP_IAR" name="Source/portable/IAR/ARM_CM7/r0p1/portasm.s"/>
983 <file category="include" condition="CM23_IAR" name="Source/portable/IAR/ARM_CM23_NTZ/non_secure/"/>
984 <file category="source" condition="CM23_IAR" name="Source/portable/IAR/ARM_CM23_NTZ/non_secure/port.c"/>
985 <file category="source" condition="CM23_IAR" name="Source/portable/IAR/ARM_CM23_NTZ/non_secure/portasm.s"/>
986 <file category="include" condition="CM33_IAR" name="Source/portable/IAR/ARM_CM33_NTZ/non_secure/"/>
987 <file category="source" condition="CM33_IAR" name="Source/portable/IAR/ARM_CM33_NTZ/non_secure/port.c"/>
988 <file category="source" condition="CM33_IAR" name="Source/portable/IAR/ARM_CM33_NTZ/non_secure/portasm.s"/>
989 <file category="include" condition="CM35P_IAR" name="Source/portable/IAR/ARM_CM35P_NTZ/non_secure/"/>
990 <file category="source" condition="CM35P_IAR" name="Source/portable/IAR/ARM_CM35P_NTZ/non_secure/port.c"/>
991 <file category="source" condition="CM35P_IAR" name="Source/portable/IAR/ARM_CM35P_NTZ/non_secure/portasm.s"/>
992 <file category="include" condition="CM55_IAR" name="Source/portable/IAR/ARM_CM55_NTZ/non_secure/"/>
993 <file category="source" condition="CM55_IAR" name="Source/portable/IAR/ARM_CM55_NTZ/non_secure/port.c"/>
994 <file category="source" condition="CM55_IAR" name="Source/portable/IAR/ARM_CM55_NTZ/non_secure/portasm.s"/>
995 <file category="include" condition="CM85_IAR" name="Source/portable/IAR/ARM_CM85_NTZ/non_secure/"/>
996 <file category="source" condition="CM85_IAR" name="Source/portable/IAR/ARM_CM85_NTZ/non_secure/port.c"/>
997 <file category="source" condition="CM85_IAR" name="Source/portable/IAR/ARM_CM85_NTZ/non_secure/portasm.s"/>
999 <file category="include" name="CMSIS/RTOS2/FreeRTOS/Include/"/>
1000 <file category="source" name="CMSIS/RTOS2/FreeRTOS/Source/freertos_evr.c"/>
1001 <file category="other" name="CMSIS/RTOS2/FreeRTOS/FreeRTOS.scvd"/>
1005 <component Cgroup="Core" Cvariant="Cortex-M MPU" condition="FreeRTOS Core CM v6_v7 MPU">
1006 <description>Core API (Kernel, Tasks, Semaphores, Mutexes, Queues) for Cortex-M using MPU</description>
1008 #define RTE_RTOS_FreeRTOS_CORE /* RTOS FreeRTOS Core */
1009 #define RTE_RTOS_FreeRTOS_CORE_MPU /* RTOS FreeRTOS Core with MPU support */
1012 <file category="include" name="Source/include/"/>
1014 <file category="header" name="Source/include/FreeRTOS.h"/>
1015 <file category="header" name="Source/include/queue.h"/>
1016 <file category="header" name="Source/include/semphr.h"/>
1017 <file category="header" name="Source/include/task.h"/>
1019 <file category="source" name="Source/list.c"/>
1020 <file category="source" name="Source/queue.c"/>
1021 <file category="source" name="Source/tasks.c"/>
1022 <file category="source" name="Source/portable/Common/mpu_wrappers.c"/>
1023 <file category="source" name="Source/portable/Common/mpu_wrappers_v2.c"/>
1025 <file category="include" condition="CM3_ARMCC6" name="Source/portable/GCC/ARM_CM3_MPU/"/>
1026 <file category="source" condition="CM3_ARMCC6" name="Source/portable/GCC/ARM_CM3_MPU/port.c"/>
1027 <file category="source" condition="CM3_ARMCC6" name="Source/portable/GCC/ARM_CM3_MPU/mpu_wrappers_v2_asm.c"/>
1028 <file category="include" condition="CM4_ARMCC6" name="Source/portable/GCC/ARM_CM3_MPU/"/>
1029 <file category="source" condition="CM4_ARMCC6" name="Source/portable/GCC/ARM_CM3_MPU/port.c"/>
1030 <file category="source" condition="CM4_ARMCC6" name="Source/portable/GCC/ARM_CM3_MPU/mpu_wrappers_v2_asm.c"/>
1031 <file category="include" condition="CM4_FP_ARMCC6" name="Source/portable/GCC/ARM_CM4_MPU/"/>
1032 <file category="source" condition="CM4_FP_ARMCC6" name="Source/portable/GCC/ARM_CM4_MPU/port.c"/>
1033 <file category="source" condition="CM4_FP_ARMCC6" name="Source/portable/GCC/ARM_CM4_MPU/mpu_wrappers_v2_asm.c"/>
1035 <file category="include" condition="CM3_GCC" name="Source/portable/GCC/ARM_CM3_MPU/"/>
1036 <file category="source" condition="CM3_GCC" name="Source/portable/GCC/ARM_CM3_MPU/port.c"/>
1037 <file category="source" condition="CM3_GCC" name="Source/portable/GCC/ARM_CM3_MPU/mpu_wrappers_v2_asm.c"/>
1038 <file category="include" condition="CM4_GCC" name="Source/portable/GCC/ARM_CM3_MPU/"/>
1039 <file category="source" condition="CM4_GCC" name="Source/portable/GCC/ARM_CM3_MPU/port.c"/>
1040 <file category="source" condition="CM4_GCC" name="Source/portable/GCC/ARM_CM3_MPU/mpu_wrappers_v2_asm.c"/>
1041 <file category="include" condition="CM4_FP_GCC" name="Source/portable/GCC/ARM_CM4_MPU/"/>
1042 <file category="source" condition="CM4_FP_GCC" name="Source/portable/GCC/ARM_CM4_MPU/port.c"/>
1043 <file category="source" condition="CM4_FP_GCC" name="Source/portable/GCC/ARM_CM4_MPU/mpu_wrappers_v2_asm.c"/>
1045 <file category="include" condition="CM4_FP_IAR" name="Source/portable/IAR/ARM_CM4F_MPU/"/>
1046 <file category="source" condition="CM4_FP_IAR" name="Source/portable/IAR/ARM_CM4F_MPU/port.c"/>
1047 <file category="sourceAsm" condition="CM4_FP_IAR" name="Source/portable/IAR/ARM_CM4F_MPU/portasm.s"/>
1048 <file category="sourceAsm" condition="CM4_FP_IAR" name="Source/portable/IAR/ARM_CM4F_MPU/mpu_wrappers_v2_asm.S"/>
1050 <file category="include" name="CMSIS/RTOS2/FreeRTOS/Include/"/>
1051 <file category="source" name="CMSIS/RTOS2/FreeRTOS/Source/freertos_evr.c"/>
1052 <file category="other" name="CMSIS/RTOS2/FreeRTOS/FreeRTOS.scvd"/>
1056 <component Cgroup="Core" Cvariant="Cortex-M Non-Secure" condition="FreeRTOS Core TZ">
1057 <description>Core API (Kernel, Tasks, Semaphores, Mutexes, Queues) for Cortex-M using Non-Secure Domain (TrustZone)</description>
1059 #define RTE_RTOS_FreeRTOS_CORE /* RTOS FreeRTOS Core */
1060 #define RTE_RTOS_FreeRTOS_CORE_TZ_NS /* RTOS FreeRTOS Core with TrustZone Non-Secure Domain */
1063 <file category="include" name="Source/include/"/>
1065 <file category="header" name="Source/include/FreeRTOS.h"/>
1066 <file category="header" name="Source/include/queue.h"/>
1067 <file category="header" name="Source/include/semphr.h"/>
1068 <file category="header" name="Source/include/task.h"/>
1070 <file category="source" name="Source/list.c"/>
1071 <file category="source" name="Source/queue.c"/>
1072 <file category="source" name="Source/tasks.c"/>
1074 <file category="include" condition="CM23_ARMCC6" name="Source/portable/GCC/ARM_CM23/secure/"/>
1075 <file category="include" condition="CM23_ARMCC6" name="Source/portable/GCC/ARM_CM23/non_secure/"/>
1076 <file category="source" condition="CM23_ARMCC6" name="Source/portable/GCC/ARM_CM23/non_secure/port.c"/>
1077 <file category="source" condition="CM23_ARMCC6" name="Source/portable/GCC/ARM_CM23/non_secure/portasm.c"/>
1078 <file category="include" condition="CM33_ARMCC6" name="Source/portable/GCC/ARM_CM33/secure/"/>
1079 <file category="include" condition="CM33_ARMCC6" name="Source/portable/GCC/ARM_CM33/non_secure/"/>
1080 <file category="source" condition="CM33_ARMCC6" name="Source/portable/GCC/ARM_CM33/non_secure/port.c"/>
1081 <file category="source" condition="CM33_ARMCC6" name="Source/portable/GCC/ARM_CM33/non_secure/portasm.c"/>
1082 <file category="include" condition="CM35P_ARMCC6" name="Source/portable/GCC/ARM_CM35P/secure/"/>
1083 <file category="include" condition="CM35P_ARMCC6" name="Source/portable/GCC/ARM_CM35P/non_secure/"/>
1084 <file category="source" condition="CM35P_ARMCC6" name="Source/portable/GCC/ARM_CM35P/non_secure/port.c"/>
1085 <file category="source" condition="CM35P_ARMCC6" name="Source/portable/GCC/ARM_CM35P/non_secure/portasm.c"/>
1086 <file category="include" condition="CM55_ARMCC6" name="Source/portable/GCC/ARM_CM55/secure/"/>
1087 <file category="include" condition="CM55_ARMCC6" name="Source/portable/GCC/ARM_CM55/non_secure/"/>
1088 <file category="source" condition="CM55_ARMCC6" name="Source/portable/GCC/ARM_CM55/non_secure/port.c"/>
1089 <file category="source" condition="CM55_ARMCC6" name="Source/portable/GCC/ARM_CM55/non_secure/portasm.c"/>
1090 <file category="include" condition="CM85_ARMCC6" name="Source/portable/GCC/ARM_CM85/secure/"/>
1091 <file category="include" condition="CM85_ARMCC6" name="Source/portable/GCC/ARM_CM85/non_secure/"/>
1092 <file category="source" condition="CM85_ARMCC6" name="Source/portable/GCC/ARM_CM85/non_secure/port.c"/>
1093 <file category="source" condition="CM85_ARMCC6" name="Source/portable/GCC/ARM_CM85/non_secure/portasm.c"/>
1095 <file category="include" condition="CM23_GCC" name="Source/portable/GCC/ARM_CM23/secure/"/>
1096 <file category="include" condition="CM23_GCC" name="Source/portable/GCC/ARM_CM23/non_secure/"/>
1097 <file category="source" condition="CM23_GCC" name="Source/portable/GCC/ARM_CM23/non_secure/port.c"/>
1098 <file category="source" condition="CM23_GCC" name="Source/portable/GCC/ARM_CM23/non_secure/portasm.c"/>
1099 <file category="include" condition="CM33_GCC" name="Source/portable/GCC/ARM_CM33/secure/"/>
1100 <file category="include" condition="CM33_GCC" name="Source/portable/GCC/ARM_CM33/non_secure/"/>
1101 <file category="source" condition="CM33_GCC" name="Source/portable/GCC/ARM_CM33/non_secure/port.c"/>
1102 <file category="source" condition="CM33_GCC" name="Source/portable/GCC/ARM_CM33/non_secure/portasm.c"/>
1103 <file category="include" condition="CM35P_GCC" name="Source/portable/GCC/ARM_CM35P/secure/"/>
1104 <file category="include" condition="CM35P_GCC" name="Source/portable/GCC/ARM_CM35P/non_secure/"/>
1105 <file category="source" condition="CM35P_GCC" name="Source/portable/GCC/ARM_CM35P/non_secure/port.c"/>
1106 <file category="source" condition="CM35P_GCC" name="Source/portable/GCC/ARM_CM35P/non_secure/portasm.c"/>
1107 <file category="include" condition="CM55_GCC" name="Source/portable/GCC/ARM_CM55/secure/"/>
1108 <file category="include" condition="CM55_GCC" name="Source/portable/GCC/ARM_CM55/non_secure/"/>
1109 <file category="source" condition="CM55_GCC" name="Source/portable/GCC/ARM_CM55/non_secure/port.c"/>
1110 <file category="source" condition="CM55_GCC" name="Source/portable/GCC/ARM_CM55/non_secure/portasm.c"/>
1111 <file category="include" condition="CM85_GCC" name="Source/portable/GCC/ARM_CM85/secure/"/>
1112 <file category="include" condition="CM85_GCC" name="Source/portable/GCC/ARM_CM85/non_secure/"/>
1113 <file category="source" condition="CM85_GCC" name="Source/portable/GCC/ARM_CM85/non_secure/port.c"/>
1114 <file category="source" condition="CM85_GCC" name="Source/portable/GCC/ARM_CM85/non_secure/portasm.c"/>
1116 <file category="include" condition="CM23_IAR" name="Source/portable/IAR/ARM_CM23/secure/"/>
1117 <file category="include" condition="CM23_IAR" name="Source/portable/IAR/ARM_CM23/non_secure/"/>
1118 <file category="source" condition="CM23_IAR" name="Source/portable/IAR/ARM_CM23/non_secure/port.c"/>
1119 <file category="sourceAsm" condition="CM23_IAR" name="Source/portable/IAR/ARM_CM23/non_secure/portasm.s"/>
1120 <file category="include" condition="CM33_IAR" name="Source/portable/IAR/ARM_CM33/secure/"/>
1121 <file category="include" condition="CM33_IAR" name="Source/portable/IAR/ARM_CM33/non_secure/"/>
1122 <file category="source" condition="CM33_IAR" name="Source/portable/IAR/ARM_CM33/non_secure/port.c"/>
1123 <file category="sourceAsm" condition="CM33_IAR" name="Source/portable/IAR/ARM_CM33/non_secure/portasm.s"/>
1124 <file category="include" condition="CM35P_IAR" name="Source/portable/IAR/ARM_CM35P/secure/"/>
1125 <file category="include" condition="CM35P_IAR" name="Source/portable/IAR/ARM_CM35P/non_secure/"/>
1126 <file category="source" condition="CM35P_IAR" name="Source/portable/IAR/ARM_CM35P/non_secure/port.c"/>
1127 <file category="sourceAsm" condition="CM35P_IAR" name="Source/portable/IAR/ARM_CM35P/non_secure/portasm.s"/>
1128 <file category="include" condition="CM55_IAR" name="Source/portable/IAR/ARM_CM55/secure/"/>
1129 <file category="include" condition="CM55_IAR" name="Source/portable/IAR/ARM_CM55/non_secure/"/>
1130 <file category="source" condition="CM55_IAR" name="Source/portable/IAR/ARM_CM55/non_secure/port.c"/>
1131 <file category="sourceAsm" condition="CM55_IAR" name="Source/portable/IAR/ARM_CM55/non_secure/portasm.s"/>
1132 <file category="include" condition="CM85_IAR" name="Source/portable/IAR/ARM_CM85/secure/"/>
1133 <file category="include" condition="CM85_IAR" name="Source/portable/IAR/ARM_CM85/non_secure/"/>
1134 <file category="source" condition="CM85_IAR" name="Source/portable/IAR/ARM_CM85/non_secure/port.c"/>
1135 <file category="sourceAsm" condition="CM85_IAR" name="Source/portable/IAR/ARM_CM85/non_secure/portasm.s"/>
1137 <file category="include" name="CMSIS/RTOS2/FreeRTOS/Include/"/>
1138 <file category="source" name="CMSIS/RTOS2/FreeRTOS/Source/freertos_evr.c"/>
1139 <file category="other" name="CMSIS/RTOS2/FreeRTOS/FreeRTOS.scvd"/>
1143 <component Cgroup="Core" Cvariant="Cortex-M Non-Secure MPU" condition="FreeRTOS Core TZ MPU">
1144 <description>Core API (Kernel, Tasks, Semaphores, Mutexes, Queues) for Cortex-M using Non-Secure Domain (TrustZone) and MPU</description>
1146 #define RTE_RTOS_FreeRTOS_CORE /* RTOS FreeRTOS Core */
1147 #define RTE_RTOS_FreeRTOS_CORE_MPU /* RTOS FreeRTOS Core with MPU support */
1148 #define RTE_RTOS_FreeRTOS_CORE_TZ_NS /* RTOS FreeRTOS Core with TrustZone Non-Secure Domain */
1151 <file category="include" name="Source/include/"/>
1153 <file category="header" name="Source/include/FreeRTOS.h"/>
1154 <file category="header" name="Source/include/queue.h"/>
1155 <file category="header" name="Source/include/semphr.h"/>
1156 <file category="header" name="Source/include/task.h"/>
1158 <file category="source" name="Source/list.c"/>
1159 <file category="source" name="Source/queue.c"/>
1160 <file category="source" name="Source/tasks.c"/>
1161 <file category="source" name="Source/portable/Common/mpu_wrappers.c"/>
1162 <file category="source" name="Source/portable/Common/mpu_wrappers_v2.c"/>
1164 <file category="include" condition="CM23_ARMCC6" name="Source/portable/GCC/ARM_CM23/secure/"/>
1165 <file category="include" condition="CM23_ARMCC6" name="Source/portable/GCC/ARM_CM23/non_secure/"/>
1166 <file category="source" condition="CM23_ARMCC6" name="Source/portable/GCC/ARM_CM23/non_secure/port.c"/>
1167 <file category="source" condition="CM23_ARMCC6" name="Source/portable/GCC/ARM_CM23/non_secure/portasm.c"/>
1168 <file category="source" condition="CM23_ARMCC6" name="Source/portable/GCC/ARM_CM23/non_secure/mpu_wrappers_v2_asm.c"/>
1169 <file category="include" condition="CM33_ARMCC6" name="Source/portable/GCC/ARM_CM33/secure/"/>
1170 <file category="include" condition="CM33_ARMCC6" name="Source/portable/GCC/ARM_CM33/non_secure/"/>
1171 <file category="source" condition="CM33_ARMCC6" name="Source/portable/GCC/ARM_CM33/non_secure/port.c"/>
1172 <file category="source" condition="CM33_ARMCC6" name="Source/portable/GCC/ARM_CM33/non_secure/portasm.c"/>
1173 <file category="source" condition="CM33_ARMCC6" name="Source/portable/GCC/ARM_CM33/non_secure/mpu_wrappers_v2_asm.c"/>
1174 <file category="include" condition="CM35P_ARMCC6" name="Source/portable/GCC/ARM_CM35P/secure/"/>
1175 <file category="include" condition="CM35P_ARMCC6" name="Source/portable/GCC/ARM_CM35P/non_secure/"/>
1176 <file category="source" condition="CM35P_ARMCC6" name="Source/portable/GCC/ARM_CM35P/non_secure/port.c"/>
1177 <file category="source" condition="CM35P_ARMCC6" name="Source/portable/GCC/ARM_CM35P/non_secure/portasm.c"/>
1178 <file category="source" condition="CM35P_ARMCC6" name="Source/portable/GCC/ARM_CM35P/non_secure/mpu_wrappers_v2_asm.c"/>
1179 <file category="include" condition="CM55_ARMCC6" name="Source/portable/GCC/ARM_CM55/secure/"/>
1180 <file category="include" condition="CM55_ARMCC6" name="Source/portable/GCC/ARM_CM55/non_secure/"/>
1181 <file category="source" condition="CM55_ARMCC6" name="Source/portable/GCC/ARM_CM55/non_secure/port.c"/>
1182 <file category="source" condition="CM55_ARMCC6" name="Source/portable/GCC/ARM_CM55/non_secure/portasm.c"/>
1183 <file category="source" condition="CM55_ARMCC6" name="Source/portable/GCC/ARM_CM55/non_secure/mpu_wrappers_v2_asm.c"/>
1184 <file category="include" condition="CM85_ARMCC6" name="Source/portable/GCC/ARM_CM85/secure/"/>
1185 <file category="include" condition="CM85_ARMCC6" name="Source/portable/GCC/ARM_CM85/non_secure/"/>
1186 <file category="source" condition="CM85_ARMCC6" name="Source/portable/GCC/ARM_CM85/non_secure/port.c"/>
1187 <file category="source" condition="CM85_ARMCC6" name="Source/portable/GCC/ARM_CM85/non_secure/portasm.c"/>
1188 <file category="source" condition="CM85_ARMCC6" name="Source/portable/GCC/ARM_CM85/non_secure/mpu_wrappers_v2_asm.c"/>
1190 <file category="include" condition="CM23_GCC" name="Source/portable/GCC/ARM_CM23/secure/"/>
1191 <file category="include" condition="CM23_GCC" name="Source/portable/GCC/ARM_CM23/non_secure/"/>
1192 <file category="source" condition="CM23_GCC" name="Source/portable/GCC/ARM_CM23/non_secure/port.c"/>
1193 <file category="source" condition="CM23_GCC" name="Source/portable/GCC/ARM_CM23/non_secure/portasm.c"/>
1194 <file category="source" condition="CM23_GCC" name="Source/portable/GCC/ARM_CM23/non_secure/mpu_wrappers_v2_asm.c"/>
1195 <file category="include" condition="CM33_GCC" name="Source/portable/GCC/ARM_CM33/secure/"/>
1196 <file category="include" condition="CM33_GCC" name="Source/portable/GCC/ARM_CM33/non_secure/"/>
1197 <file category="source" condition="CM33_GCC" name="Source/portable/GCC/ARM_CM33/non_secure/port.c"/>
1198 <file category="source" condition="CM33_GCC" name="Source/portable/GCC/ARM_CM33/non_secure/portasm.c"/>
1199 <file category="source" condition="CM33_GCC" name="Source/portable/GCC/ARM_CM33/non_secure/mpu_wrappers_v2_asm.c"/>
1200 <file category="include" condition="CM35P_GCC" name="Source/portable/GCC/ARM_CM35P/secure/"/>
1201 <file category="include" condition="CM35P_GCC" name="Source/portable/GCC/ARM_CM35P/non_secure/"/>
1202 <file category="source" condition="CM35P_GCC" name="Source/portable/GCC/ARM_CM35P/non_secure/port.c"/>
1203 <file category="source" condition="CM35P_GCC" name="Source/portable/GCC/ARM_CM35P/non_secure/portasm.c"/>
1204 <file category="source" condition="CM35P_GCC" name="Source/portable/GCC/ARM_CM35P/non_secure/mpu_wrappers_v2_asm.c"/>
1205 <file category="include" condition="CM55_GCC" name="Source/portable/GCC/ARM_CM55/secure/"/>
1206 <file category="include" condition="CM55_GCC" name="Source/portable/GCC/ARM_CM55/non_secure/"/>
1207 <file category="source" condition="CM55_GCC" name="Source/portable/GCC/ARM_CM55/non_secure/port.c"/>
1208 <file category="source" condition="CM55_GCC" name="Source/portable/GCC/ARM_CM55/non_secure/portasm.c"/>
1209 <file category="source" condition="CM55_GCC" name="Source/portable/GCC/ARM_CM55/non_secure/mpu_wrappers_v2_asm.c"/>
1210 <file category="include" condition="CM85_GCC" name="Source/portable/GCC/ARM_CM85/secure/"/>
1211 <file category="include" condition="CM85_GCC" name="Source/portable/GCC/ARM_CM85/non_secure/"/>
1212 <file category="source" condition="CM85_GCC" name="Source/portable/GCC/ARM_CM85/non_secure/port.c"/>
1213 <file category="source" condition="CM85_GCC" name="Source/portable/GCC/ARM_CM85/non_secure/portasm.c"/>
1214 <file category="source" condition="CM85_GCC" name="Source/portable/GCC/ARM_CM85/non_secure/mpu_wrappers_v2_asm.c"/>
1216 <file category="include" condition="CM23_IAR" name="Source/portable/IAR/ARM_CM23/secure/"/>
1217 <file category="include" condition="CM23_IAR" name="Source/portable/IAR/ARM_CM23/non_secure/"/>
1218 <file category="source" condition="CM23_IAR" name="Source/portable/IAR/ARM_CM23/non_secure/port.c"/>
1219 <file category="sourceAsm" condition="CM23_IAR" name="Source/portable/IAR/ARM_CM23/non_secure/portasm.s"/>
1220 <file category="sourceAsm" condition="CM23_IAR" name="Source/portable/IAR/ARM_CM23/non_secure/mpu_wrappers_v2_asm.S"/>
1221 <file category="include" condition="CM33_IAR" name="Source/portable/IAR/ARM_CM33/secure/"/>
1222 <file category="include" condition="CM33_IAR" name="Source/portable/IAR/ARM_CM33/non_secure/"/>
1223 <file category="source" condition="CM33_IAR" name="Source/portable/IAR/ARM_CM33/non_secure/port.c"/>
1224 <file category="sourceAsm" condition="CM33_IAR" name="Source/portable/IAR/ARM_CM33/non_secure/portasm.s"/>
1225 <file category="sourceAsm" condition="CM33_IAR" name="Source/portable/IAR/ARM_CM33/non_secure/mpu_wrappers_v2_asm.S"/>
1226 <file category="include" condition="CM35P_IAR" name="Source/portable/IAR/ARM_CM35P/secure/"/>
1227 <file category="include" condition="CM35P_IAR" name="Source/portable/IAR/ARM_CM35P/non_secure/"/>
1228 <file category="source" condition="CM35P_IAR" name="Source/portable/IAR/ARM_CM35P/non_secure/port.c"/>
1229 <file category="sourceAsm" condition="CM35P_IAR" name="Source/portable/IAR/ARM_CM35P/non_secure/portasm.s"/>
1230 <file category="sourceAsm" condition="CM35P_IAR" name="Source/portable/IAR/ARM_CM35P/non_secure/mpu_wrappers_v2_asm.S"/>
1231 <file category="include" condition="CM55_IAR" name="Source/portable/IAR/ARM_CM55/secure/"/>
1232 <file category="include" condition="CM55_IAR" name="Source/portable/IAR/ARM_CM55/non_secure/"/>
1233 <file category="source" condition="CM55_IAR" name="Source/portable/IAR/ARM_CM55/non_secure/port.c"/>
1234 <file category="sourceAsm" condition="CM55_IAR" name="Source/portable/IAR/ARM_CM55/non_secure/portasm.s"/>
1235 <file category="sourceAsm" condition="CM55_IAR" name="Source/portable/IAR/ARM_CM55/non_secure/mpu_wrappers_v2_asm.S"/>
1236 <file category="include" condition="CM85_IAR" name="Source/portable/IAR/ARM_CM85/secure/"/>
1237 <file category="include" condition="CM85_IAR" name="Source/portable/IAR/ARM_CM85/non_secure/"/>
1238 <file category="source" condition="CM85_IAR" name="Source/portable/IAR/ARM_CM85/non_secure/port.c"/>
1239 <file category="sourceAsm" condition="CM85_IAR" name="Source/portable/IAR/ARM_CM85/non_secure/portasm.s"/>
1240 <file category="sourceAsm" condition="CM85_IAR" name="Source/portable/IAR/ARM_CM85/non_secure/mpu_wrappers_v2_asm.S"/>
1242 <file category="include" name="CMSIS/RTOS2/FreeRTOS/Include/"/>
1243 <file category="source" name="CMSIS/RTOS2/FreeRTOS/Source/freertos_evr.c"/>
1244 <file category="other" name="CMSIS/RTOS2/FreeRTOS/FreeRTOS.scvd"/>
1248 <component Cgroup="Core" Cvariant="Cortex-A" isDefaultVariant="true" condition="FreeRTOS Core CA">
1249 <description>Core API (Kernel, Tasks, Semaphores, Mutexes, Queues) for Cortex-A</description>
1251 #define RTE_RTOS_FreeRTOS_CORE /* RTOS FreeRTOS Core */
1254 <file category="include" name="Source/include/"/>
1256 <file category="header" name="Source/include/FreeRTOS.h"/>
1257 <file category="header" name="Source/include/queue.h"/>
1258 <file category="header" name="Source/include/semphr.h"/>
1259 <file category="header" name="Source/include/task.h"/>
1261 <file category="source" name="Source/list.c"/>
1262 <file category="source" name="Source/queue.c"/>
1263 <file category="source" name="Source/tasks.c"/>
1265 <file category="include" condition="ARMCC6" name="Source/portable/GCC/ARM_CA9/"/>
1266 <file category="source" condition="ARMCC6" name="Source/portable/GCC/ARM_CA9/port.c"/>
1267 <file category="sourceAsm" condition="ARMCC6" name="Source/portable/GCC/ARM_CA9/portASM.S"/>
1269 <file category="include" condition="GCC" name="Source/portable/GCC/ARM_CA9/"/>
1270 <file category="source" condition="GCC" name="Source/portable/GCC/ARM_CA9/port.c"/>
1271 <file category="sourceAsm" condition="GCC" name="Source/portable/GCC/ARM_CA9/portASM.S"/>
1273 <file category="include" condition="IAR" name="Source/portable/IAR/ARM_CA9/"/>
1274 <file category="source" condition="IAR" name="Source/portable/IAR/ARM_CA9/port.c"/>
1275 <file category="sourceAsm" condition="IAR" name="Source/portable/IAR/ARM_CA9/portASM.s"/>
1277 <file category="include" name="CMSIS/RTOS2/FreeRTOS/Include/"/>
1278 <file category="source" name="CMSIS/RTOS2/FreeRTOS/Source/freertos_evr.c"/>
1279 <file category="other" name="CMSIS/RTOS2/FreeRTOS/FreeRTOS.scvd"/>
1283 <component Cgroup="Config" Cvariant="CMSIS RTOS2" condition="FreeRTOS Config CMSIS RTOS2">
1284 <description>FreeRTOS CMSIS-RTOS2 API configuration file</description>
1286 #define RTE_RTOS_FreeRTOS_CONFIG_RTOS2 /* RTOS FreeRTOS Config for CMSIS RTOS2 API */
1289 <file category="doc" name="Documentation/html/cre_freertos_proj.html#cmsis_freertos_config"/>
1290 <file category="header" attr="config" name="CMSIS/RTOS2/FreeRTOS/Config/FreeRTOSConfig.h" version="10.6.0"/>
1294 <component Cgroup="Config" Cvariant="FreeRTOS" condition="FreeRTOS Config Native">
1295 <description>FreeRTOS API configuration file</description>
1297 #define RTE_RTOS_FreeRTOS_CONFIG /* RTOS FreeRTOS Config for FreeRTOS API */
1300 <file category="doc" name="Documentation/html/cre_freertos_proj.html#native_freertos_config"/>
1301 <file category="header" attr="config" name="Source/examples/template_configuration/FreeRTOSConfig.h" version="11.0.0"/>
1305 <component Cgroup="Coroutines" condition="FreeRTOS Coroutines">
1306 <description>Co-routine API</description>
1308 #define RTE_RTOS_FreeRTOS_COROUTINE /* RTOS FreeRTOS Co-routines */
1311 <file category="header" name="Source/include/croutine.h"/>
1312 <file category="source" name="Source/croutine.c"/>
1316 <component Cgroup="Event Groups" condition="FreeRTOS Event Groups">
1317 <description>Event Group API</description>
1319 #define RTE_RTOS_FreeRTOS_EVENTGROUPS /* RTOS FreeRTOS Event Groups */
1322 <file category="header" name="Source/include/event_groups.h"/>
1323 <file category="source" name="Source/event_groups.c"/>
1327 <component Cgroup="Heap" Cvariant="Heap_1" condition="FreeRTOS Heap">
1328 <description>Very simple, does not permit memory to be freed.</description>
1330 #define RTE_RTOS_FreeRTOS_HEAP_1 /* RTOS FreeRTOS Heap 1 */
1333 <file category="source" name="Source/portable/MemMang/heap_1.c"/>
1334 <file category="doc" name="http://www.freertos.org/a00111.html"/>
1338 <component Cgroup="Heap" Cvariant="Heap_2" condition="FreeRTOS Heap">
1339 <description>Permits memory to be freed, but not does coalescence adjacent free memory blocks.</description>
1341 #define RTE_RTOS_FreeRTOS_HEAP_2 /* RTOS FreeRTOS Heap 2 */
1344 <file category="source" name="Source/portable/MemMang/heap_2.c"/>
1345 <file category="doc" name="http://www.freertos.org/a00111.html"/>
1349 <component Cgroup="Heap" Cvariant="Heap_3" condition="FreeRTOS Heap">
1350 <description>Wraps the standard malloc() and free() for thread safety.</description>
1352 #define RTE_RTOS_FreeRTOS_HEAP_3 /* RTOS FreeRTOS Heap 3 */
1355 <file category="source" name="Source/portable/MemMang/heap_3.c"/>
1356 <file category="doc" name="http://www.freertos.org/a00111.html"/>
1360 <component Cgroup="Heap" Cvariant="Heap_4" condition="FreeRTOS Heap" isDefaultVariant="true">
1361 <description>Coalescences adjacent free memory blocks to avoid fragmentation. Includes absolute address placement option.</description>
1363 #define RTE_RTOS_FreeRTOS_HEAP_4 /* RTOS FreeRTOS Heap 4 */
1366 <file category="source" name="Source/portable/MemMang/heap_4.c"/>
1367 <file category="doc" name="http://www.freertos.org/a00111.html"/>
1371 <component Cgroup="Heap" Cvariant="Heap_5" condition="FreeRTOS Heap">
1372 <description>Same as Heap_4, with the ability to span the heap across multiple non-adjacent memory areas.</description>
1374 #define RTE_RTOS_FreeRTOS_HEAP_5 /* RTOS FreeRTOS Heap 5 */
1377 <file category="source" name="Source/portable/MemMang/heap_5.c"/>
1378 <file category="doc" name="http://www.freertos.org/a00111.html"/>
1382 <component Cgroup="Message Buffer" condition="FreeRTOS Message Buffer">
1383 <description>Message Buffer API</description>
1385 #define RTE_RTOS_FreeRTOS_MESSAGE_BUFFER /* RTOS FreeRTOS Message Buffers */
1388 <file category="header" name="Source/include/message_buffer.h"/>
1389 <file category="source" name="Source/stream_buffer.c"/>
1393 <component Cgroup="Stream Buffer" condition="FreeRTOS Stream Buffer">
1394 <description>Stream Buffer API</description>
1396 #define RTE_RTOS_FreeRTOS_STREAM_BUFFER /* RTOS FreeRTOS Stream Buffers */
1399 <file category="header" name="Source/include/stream_buffer.h"/>
1400 <file category="source" name="Source/stream_buffer.c"/>
1404 <component Cgroup="Timers" condition="FreeRTOS Timers">
1405 <description>Timer API</description>
1407 #define RTE_RTOS_FreeRTOS_TIMERS /* RTOS FreeRTOS Timers */
1410 <file category="header" name="Source/include/timers.h"/>
1411 <file category="source" name="Source/timers.c"/>
1415 <component Cgroup="TrustZone" condition="FreeRTOS TrustZone">
1416 <description>TrustZone Secure Context API</description>
1418 #define RTE_RTOS_FreeRTOS_TZ
1421 <file category="header" attr="config" name="CMSIS/RTOS2/FreeRTOS/Config/TrustZone/FreeRTOSConfig.h" version="10.2.0"/>
1423 <file category="header" condition="CM23_TZ_ARMCC6" name="Source/portable/GCC/ARM_CM23/secure/secure_port_macros.h"/>
1424 <file category="include" condition="CM23_TZ_ARMCC6" name="Source/portable/GCC/ARM_CM23/secure/"/>
1425 <file category="source" condition="CM23_TZ_ARMCC6" name="Source/portable/GCC/ARM_CM23/secure/secure_context.c"/>
1426 <file category="source" condition="CM23_TZ_ARMCC6" name="Source/portable/GCC/ARM_CM23/secure/secure_context_port.c"/>
1427 <file category="source" condition="CM23_TZ_ARMCC6" name="Source/portable/GCC/ARM_CM23/secure/secure_heap.c"/>
1428 <file category="source" condition="CM23_TZ_ARMCC6" name="Source/portable/GCC/ARM_CM23/secure/secure_init.c"/>
1429 <file category="header" condition="CM33_TZ_ARMCC6" name="Source/portable/GCC/ARM_CM33/secure/secure_port_macros.h"/>
1430 <file category="include" condition="CM33_TZ_ARMCC6" name="Source/portable/GCC/ARM_CM33/secure/"/>
1431 <file category="source" condition="CM33_TZ_ARMCC6" name="Source/portable/GCC/ARM_CM33/secure/secure_context.c"/>
1432 <file category="source" condition="CM33_TZ_ARMCC6" name="Source/portable/GCC/ARM_CM33/secure/secure_context_port.c"/>
1433 <file category="source" condition="CM33_TZ_ARMCC6" name="Source/portable/GCC/ARM_CM33/secure/secure_heap.c"/>
1434 <file category="source" condition="CM33_TZ_ARMCC6" name="Source/portable/GCC/ARM_CM33/secure/secure_init.c"/>
1435 <file category="header" condition="CM35P_TZ_ARMCC6" name="Source/portable/GCC/ARM_CM35P/secure/secure_port_macros.h"/>
1436 <file category="include" condition="CM35P_TZ_ARMCC6" name="Source/portable/GCC/ARM_CM35P/secure/"/>
1437 <file category="source" condition="CM35P_TZ_ARMCC6" name="Source/portable/GCC/ARM_CM35P/secure/secure_context.c"/>
1438 <file category="source" condition="CM35P_TZ_ARMCC6" name="Source/portable/GCC/ARM_CM35P/secure/secure_context_port.c"/>
1439 <file category="source" condition="CM35P_TZ_ARMCC6" name="Source/portable/GCC/ARM_CM35P/secure/secure_heap.c"/>
1440 <file category="source" condition="CM35P_TZ_ARMCC6" name="Source/portable/GCC/ARM_CM35P/secure/secure_init.c"/>
1441 <file category="header" condition="CM55_TZ_ARMCC6" name="Source/portable/GCC/ARM_CM55/secure/secure_port_macros.h"/>
1442 <file category="include" condition="CM55_TZ_ARMCC6" name="Source/portable/GCC/ARM_CM55/secure/"/>
1443 <file category="source" condition="CM55_TZ_ARMCC6" name="Source/portable/GCC/ARM_CM55/secure/secure_context.c"/>
1444 <file category="source" condition="CM55_TZ_ARMCC6" name="Source/portable/GCC/ARM_CM55/secure/secure_context_port.c"/>
1445 <file category="source" condition="CM55_TZ_ARMCC6" name="Source/portable/GCC/ARM_CM55/secure/secure_heap.c"/>
1446 <file category="source" condition="CM55_TZ_ARMCC6" name="Source/portable/GCC/ARM_CM55/secure/secure_init.c"/>
1447 <file category="header" condition="CM85_TZ_ARMCC6" name="Source/portable/GCC/ARM_CM85/secure/secure_port_macros.h"/>
1448 <file category="include" condition="CM85_TZ_ARMCC6" name="Source/portable/GCC/ARM_CM85/secure/"/>
1449 <file category="source" condition="CM85_TZ_ARMCC6" name="Source/portable/GCC/ARM_CM85/secure/secure_context.c"/>
1450 <file category="source" condition="CM85_TZ_ARMCC6" name="Source/portable/GCC/ARM_CM85/secure/secure_context_port.c"/>
1451 <file category="source" condition="CM85_TZ_ARMCC6" name="Source/portable/GCC/ARM_CM85/secure/secure_heap.c"/>
1452 <file category="source" condition="CM85_TZ_ARMCC6" name="Source/portable/GCC/ARM_CM85/secure/secure_init.c"/>
1454 <file category="header" condition="CM23_TZ_GCC" name="Source/portable/GCC/ARM_CM23/secure/secure_port_macros.h"/>
1455 <file category="include" condition="CM23_TZ_GCC" name="Source/portable/GCC/ARM_CM23/secure/"/>
1456 <file category="source" condition="CM23_TZ_GCC" name="Source/portable/GCC/ARM_CM23/secure/secure_context.c"/>
1457 <file category="source" condition="CM23_TZ_GCC" name="Source/portable/GCC/ARM_CM23/secure/secure_context_port.c"/>
1458 <file category="source" condition="CM23_TZ_GCC" name="Source/portable/GCC/ARM_CM23/secure/secure_heap.c"/>
1459 <file category="source" condition="CM23_TZ_GCC" name="Source/portable/GCC/ARM_CM23/secure/secure_init.c"/>
1460 <file category="header" condition="CM33_TZ_GCC" name="Source/portable/GCC/ARM_CM33/secure/secure_port_macros.h"/>
1461 <file category="include" condition="CM33_TZ_GCC" name="Source/portable/GCC/ARM_CM33/secure/"/>
1462 <file category="source" condition="CM33_TZ_GCC" name="Source/portable/GCC/ARM_CM33/secure/secure_context.c"/>
1463 <file category="source" condition="CM33_TZ_GCC" name="Source/portable/GCC/ARM_CM33/secure/secure_context_port.c"/>
1464 <file category="source" condition="CM33_TZ_GCC" name="Source/portable/GCC/ARM_CM33/secure/secure_heap.c"/>
1465 <file category="source" condition="CM33_TZ_GCC" name="Source/portable/GCC/ARM_CM33/secure/secure_init.c"/>
1466 <file category="header" condition="CM35P_TZ_GCC" name="Source/portable/GCC/ARM_CM35P/secure/secure_port_macros.h"/>
1467 <file category="include" condition="CM35P_TZ_GCC" name="Source/portable/GCC/ARM_CM35P/secure/"/>
1468 <file category="source" condition="CM35P_TZ_GCC" name="Source/portable/GCC/ARM_CM35P/secure/secure_context.c"/>
1469 <file category="source" condition="CM35P_TZ_GCC" name="Source/portable/GCC/ARM_CM35P/secure/secure_context_port.c"/>
1470 <file category="source" condition="CM35P_TZ_GCC" name="Source/portable/GCC/ARM_CM35P/secure/secure_heap.c"/>
1471 <file category="source" condition="CM35P_TZ_GCC" name="Source/portable/GCC/ARM_CM35P/secure/secure_init.c"/>
1472 <file category="header" condition="CM55_TZ_GCC" name="Source/portable/GCC/ARM_CM55/secure/secure_port_macros.h"/>
1473 <file category="include" condition="CM55_TZ_GCC" name="Source/portable/GCC/ARM_CM55/secure/"/>
1474 <file category="source" condition="CM55_TZ_GCC" name="Source/portable/GCC/ARM_CM55/secure/secure_context.c"/>
1475 <file category="source" condition="CM55_TZ_GCC" name="Source/portable/GCC/ARM_CM55/secure/secure_context_port.c"/>
1476 <file category="source" condition="CM55_TZ_GCC" name="Source/portable/GCC/ARM_CM55/secure/secure_heap.c"/>
1477 <file category="source" condition="CM55_TZ_GCC" name="Source/portable/GCC/ARM_CM55/secure/secure_init.c"/>
1478 <file category="header" condition="CM85_TZ_GCC" name="Source/portable/GCC/ARM_CM85/secure/secure_port_macros.h"/>
1479 <file category="include" condition="CM85_TZ_GCC" name="Source/portable/GCC/ARM_CM85/secure/"/>
1480 <file category="source" condition="CM85_TZ_GCC" name="Source/portable/GCC/ARM_CM85/secure/secure_context.c"/>
1481 <file category="source" condition="CM85_TZ_GCC" name="Source/portable/GCC/ARM_CM85/secure/secure_context_port.c"/>
1482 <file category="source" condition="CM85_TZ_GCC" name="Source/portable/GCC/ARM_CM85/secure/secure_heap.c"/>
1483 <file category="source" condition="CM85_TZ_GCC" name="Source/portable/GCC/ARM_CM85/secure/secure_init.c"/>
1485 <file category="header" condition="CM23_TZ_IAR" name="Source/portable/IAR/ARM_CM23/secure/secure_port_macros.h"/>
1486 <file category="include" condition="CM23_TZ_IAR" name="Source/portable/IAR/ARM_CM23/secure/"/>
1487 <file category="source" condition="CM23_TZ_IAR" name="Source/portable/IAR/ARM_CM23/secure/secure_context.c"/>
1488 <file category="sourceAsm" condition="CM23_TZ_IAR" name="Source/portable/IAR/ARM_CM23/secure/secure_context_port_asm.s"/>
1489 <file category="source" condition="CM23_TZ_IAR" name="Source/portable/IAR/ARM_CM23/secure/secure_heap.c"/>
1490 <file category="source" condition="CM23_TZ_IAR" name="Source/portable/IAR/ARM_CM23/secure/secure_init.c"/>
1491 <file category="header" condition="CM33_TZ_IAR" name="Source/portable/IAR/ARM_CM33/secure/secure_port_macros.h"/>
1492 <file category="include" condition="CM33_TZ_IAR" name="Source/portable/IAR/ARM_CM33/secure/"/>
1493 <file category="source" condition="CM33_TZ_IAR" name="Source/portable/IAR/ARM_CM33/secure/secure_context.c"/>
1494 <file category="sourceAsm" condition="CM33_TZ_IAR" name="Source/portable/IAR/ARM_CM33/secure/secure_context_port_asm.s"/>
1495 <file category="source" condition="CM33_TZ_IAR" name="Source/portable/IAR/ARM_CM33/secure/secure_heap.c"/>
1496 <file category="source" condition="CM33_TZ_IAR" name="Source/portable/IAR/ARM_CM33/secure/secure_init.c"/>
1497 <file category="header" condition="CM35P_TZ_IAR" name="Source/portable/IAR/ARM_CM35P/secure/secure_port_macros.h"/>
1498 <file category="include" condition="CM35P_TZ_IAR" name="Source/portable/IAR/ARM_CM35P/secure/"/>
1499 <file category="source" condition="CM35P_TZ_IAR" name="Source/portable/IAR/ARM_CM35P/secure/secure_context.c"/>
1500 <file category="sourceAsm" condition="CM35P_TZ_IAR" name="Source/portable/IAR/ARM_CM35P/secure/secure_context_port_asm.s"/>
1501 <file category="source" condition="CM35P_TZ_IAR" name="Source/portable/IAR/ARM_CM35P/secure/secure_heap.c"/>
1502 <file category="source" condition="CM35P_TZ_IAR" name="Source/portable/IAR/ARM_CM35P/secure/secure_init.c"/>
1503 <file category="header" condition="CM55_TZ_IAR" name="Source/portable/IAR/ARM_CM55/secure/secure_port_macros.h"/>
1504 <file category="include" condition="CM55_TZ_IAR" name="Source/portable/IAR/ARM_CM55/secure/"/>
1505 <file category="source" condition="CM55_TZ_IAR" name="Source/portable/IAR/ARM_CM55/secure/secure_context.c"/>
1506 <file category="sourceAsm" condition="CM55_TZ_IAR" name="Source/portable/IAR/ARM_CM55/secure/secure_context_port_asm.s"/>
1507 <file category="source" condition="CM55_TZ_IAR" name="Source/portable/IAR/ARM_CM55/secure/secure_heap.c"/>
1508 <file category="source" condition="CM55_TZ_IAR" name="Source/portable/IAR/ARM_CM55/secure/secure_init.c"/>
1509 <file category="header" condition="CM85_TZ_IAR" name="Source/portable/IAR/ARM_CM85/secure/secure_port_macros.h"/>
1510 <file category="include" condition="CM85_TZ_IAR" name="Source/portable/IAR/ARM_CM85/secure/"/>
1511 <file category="source" condition="CM85_TZ_IAR" name="Source/portable/IAR/ARM_CM85/secure/secure_context.c"/>
1512 <file category="sourceAsm" condition="CM85_TZ_IAR" name="Source/portable/IAR/ARM_CM85/secure/secure_context_port_asm.s"/>
1513 <file category="source" condition="CM85_TZ_IAR" name="Source/portable/IAR/ARM_CM85/secure/secure_heap.c"/>
1514 <file category="source" condition="CM85_TZ_IAR" name="Source/portable/IAR/ARM_CM85/secure/secure_init.c"/>
1521 <example name="Hello World" folder="CMSIS/RTOS2/FreeRTOS/Examples" doc="./App/Hello/README.md">
1522 <description>Hello World example using FreeRTOS and CMSIS-RTOS2 for Arm Virtual Hardware</description>
1523 <board name="uVision Simulator" vendor="Keil"/>
1525 <environment name="csolution" load="Examples.csolution.yml"/>
1528 <component Cclass="CMSIS" Cgroup="CORE"/>
1529 <component Cclass="CMSIS" Cgroup="RTOS2"/>
1530 <component Cclass="Device" Cgroup="Startup"/>
1531 <category>Getting Started</category>
1535 <example name="TrustZone for ARMv8-M" folder="CMSIS/RTOS2/FreeRTOS/Examples" doc="./App/TrustZone/README.md">
1536 <description>CMSIS-RTOS2 example with secure/non-secure thread context management using FreeRTOS for Arm Virtual Hardware</description>
1537 <board name="uVision Simulator" vendor="Keil"/>
1539 <environment name="csolution" load="Examples.csolution.yml"/>
1542 <component Cclass="CMSIS" Cgroup="CORE"/>
1543 <component Cclass="CMSIS" Cgroup="RTOS2"/>
1544 <component Cclass="Device" Cgroup="Startup"/>
1545 <category>Getting Started</category>