@@ -60,6 +60,7 @@ add_library(freertos_kernel_port STATIC
60
60
$<$<STREQUAL :${FREERTOS_PORT} ,GCC_ARM_CM0>:
61
61
GCC/ARM_CM0/port.c>
62
62
63
+ # ARMv6-M / Cortex-M0 Raspberry PI RP2040 port for GCC
63
64
$<$<STREQUAL :${FREERTOS_PORT} ,GCC_RP2040>:
64
65
ThirdParty/GCC/RP2040/idle_task_static_memory.c
65
66
ThirdParty/GCC/RP2040/port.c>
@@ -110,9 +111,49 @@ add_library(freertos_kernel_port STATIC
110
111
GCC/ARM_CM33_NTZ/non_secure/port.c
111
112
GCC/ARM_CM33_NTZ/non_secure/portasm.c>
112
113
113
- # ARM Cortex-M33 TFM helper functions
114
- $<$<STREQUAL :${FREERTOS_PORT} ,GCC_ARM_CM33_TFM>:
115
- ThirdParty/GCC/ARM_CM33_TFM/os_wrapper_freertos.c>
114
+ $<$<STREQUAL :${FREERTOS_PORT} ,GCC_ARM_TFM>:
115
+ GCC/ARM_CM33_NTZ/non_secure/port.c
116
+ GCC/ARM_CM33_NTZ/non_secure/portasm.c
117
+ ThirdParty/GCC/ARM_TFM/os_wrapper_freertos.c>
118
+
119
+ # ARMv8.1-M ports for GCC
120
+ $<$<STREQUAL :${FREERTOS_PORT} ,GCC_ARM_CM55_NONSECURE>:
121
+ GCC/ARM_CM55/non_secure/port.c
122
+ GCC/ARM_CM55/non_secure/portasm.c>
123
+
124
+ $<$<STREQUAL :${FREERTOS_PORT} ,GCC_ARM_CM55_SECURE>:
125
+ GCC/ARM_CM55/secure/secure_context_port.c
126
+ GCC/ARM_CM55/secure/secure_context.c
127
+ GCC/ARM_CM55/secure/secure_heap.c
128
+ GCC/ARM_CM55/secure/secure_init.c>
129
+
130
+ $<$<STREQUAL :${FREERTOS_PORT} ,GCC_ARM_CM55_NTZ_NONSECURE>:
131
+ GCC/ARM_CM55_NTZ/non_secure/port.c
132
+ GCC/ARM_CM55_NTZ/non_secure/portasm.c>
133
+
134
+ $<$<STREQUAL :${FREERTOS_PORT} ,GCC_ARM_CM55_TFM>:
135
+ GCC/ARM_CM55_NTZ/non_secure/port.c
136
+ GCC/ARM_CM55_NTZ/non_secure/portasm.c
137
+ ThirdParty/GCC/ARM_TFM/os_wrapper_freertos.c>
138
+
139
+ $<$<STREQUAL :${FREERTOS_PORT} ,GCC_ARM_CM85_NONSECURE>:
140
+ GCC/ARM_CM85/non_secure/port.c
141
+ GCC/ARM_CM85/non_secure/portasm.c>
142
+
143
+ $<$<STREQUAL :${FREERTOS_PORT} ,GCC_ARM_CM85_SECURE>:
144
+ GCC/ARM_CM85/secure/secure_context_port.c
145
+ GCC/ARM_CM85/secure/secure_context.c
146
+ GCC/ARM_CM85/secure/secure_heap.c
147
+ GCC/ARM_CM85/secure/secure_init.c>
148
+
149
+ $<$<STREQUAL :${FREERTOS_PORT} ,GCC_ARM_CM85_NTZ_NONSECURE>:
150
+ GCC/ARM_CM85_NTZ/non_secure/port.c
151
+ GCC/ARM_CM85_NTZ/non_secure/portasm.c>
152
+
153
+ $<$<STREQUAL :${FREERTOS_PORT} ,GCC_ARM_CM85_TFM>:
154
+ GCC/ARM_CM85_NTZ/non_secure/port.c
155
+ GCC/ARM_CM85_NTZ/non_secure/portasm.c
156
+ ThirdParty/GCC/ARM_TFM/os_wrapper_freertos.c>
116
157
117
158
# ARMv7-R ports for GCC
118
159
$<$<STREQUAL :${FREERTOS_PORT} ,GCC_ARM_CR5>:
@@ -349,6 +390,35 @@ add_library(freertos_kernel_port STATIC
349
390
IAR/ARM_CM33_NTZ/non_secure/port.c
350
391
IAR/ARM_CM33_NTZ/non_secure/portasm.s>
351
392
393
+ # ARMv8.1-M ports for IAR EWARM
394
+ $<$<STREQUAL :${FREERTOS_PORT} ,IAR_ARM_CM55_NONSECURE>:
395
+ IAR/ARM_CM55/non_secure/port.c
396
+ IAR/ARM_CM55/non_secure/portasm.s>
397
+
398
+ $<$<STREQUAL :${FREERTOS_PORT} ,IAR_ARM_CM55_SECURE>:
399
+ IAR/ARM_CM55/secure/secure_context_port_asm.s
400
+ IAR/ARM_CM55/secure/secure_context.c
401
+ IAR/ARM_CM55/secure/secure_heap.c
402
+ IAR/ARM_CM55/secure/secure_init.c>
403
+
404
+ $<$<STREQUAL :${FREERTOS_PORT} ,IAR_ARM_CM55_NTZ_NONSECURE>:
405
+ IAR/ARM_CM55_NTZ/non_secure/port.c
406
+ IAR/ARM_CM55_NTZ/non_secure/portasm.s>
407
+
408
+ $<$<STREQUAL :${FREERTOS_PORT} ,IAR_ARM_CM85_NONSECURE>:
409
+ IAR/ARM_CM85/non_secure/port.c
410
+ IAR/ARM_CM85/non_secure/portasm.s>
411
+
412
+ $<$<STREQUAL :${FREERTOS_PORT} ,IAR_ARM_CM85_SECURE>:
413
+ IAR/ARM_CM85/secure/secure_context_port_asm.s
414
+ IAR/ARM_CM85/secure/secure_context.c
415
+ IAR/ARM_CM85/secure/secure_heap.c
416
+ IAR/ARM_CM85/secure/secure_init.c>
417
+
418
+ $<$<STREQUAL :${FREERTOS_PORT} ,IAR_ARM_CM85_NTZ_NONSECURE>:
419
+ IAR/ARM_CM85_NTZ/non_secure/port.c
420
+ IAR/ARM_CM85_NTZ/non_secure/portasm.s>
421
+
352
422
# ARMv7-R Ports for IAR EWARM
353
423
$<$<STREQUAL :${FREERTOS_PORT} ,IAR_ARM_CRX_NOGIC>:
354
424
IAR/ARM_CRx_No_GIC/port.c
@@ -483,7 +553,6 @@ add_library(freertos_kernel_port STATIC
483
553
oWatcom/16BitDOS/common/portcomn.c
484
554
oWatcom/16BitDOS/PC/port.c>
485
555
486
-
487
556
$<$<STREQUAL :${FREERTOS_PORT} ,PARADIGM_TERN_EE_LARGE>:
488
557
Paradigm/Tern_EE/large_untested/port.c>
489
558
@@ -597,13 +666,24 @@ if(
597
666
FREERTOS_PORT STREQUAL "GCC_ARM_CM23_NTZ_NONSECURE" OR
598
667
FREERTOS_PORT STREQUAL "GCC_ARM_CM23_NONSECURE" OR
599
668
FREERTOS_PORT STREQUAL "GCC_ARM_CM33_NTZ_NONSECURE" OR
669
+ FREERTOS_PORT STREQUAL "GCC_ARM_TFM" OR
600
670
FREERTOS_PORT STREQUAL "GCC_ARM_CM33_NONSECURE" OR
671
+ FREERTOS_PORT STREQUAL "GCC_ARM_CM55_NTZ_NONSECURE" OR
672
+ FREERTOS_PORT STREQUAL "GCC_ARM_CM55_TFM" OR
673
+ FREERTOS_PORT STREQUAL "GCC_ARM_CM55_NONSECURE" OR
674
+ FREERTOS_PORT STREQUAL "GCC_ARM_CM85_NTZ_NONSECURE" OR
675
+ FREERTOS_PORT STREQUAL "GCC_ARM_CM85_TFM" OR
676
+ FREERTOS_PORT STREQUAL "GCC_ARM_CM85_NONSECURE" OR
601
677
FREERTOS_PORT STREQUAL "IAR_ARM_CM4F_MPU" OR
602
678
FREERTOS_PORT STREQUAL "RVDS_ARM_CM4_MPU" OR
603
679
FREERTOS_PORT STREQUAL "IAR_ARM_CM23_NTZ_NONSECURE" OR
604
680
FREERTOS_PORT STREQUAL "IAR_ARM_CM23_NONSECURE" OR
605
681
FREERTOS_PORT STREQUAL "IAR_ARM_CM33_NTZ_NONSECURE" OR
606
682
FREERTOS_PORT STREQUAL "IAR_ARM_CM33_NONSECURE"
683
+ FREERTOS_PORT STREQUAL "IAR_ARM_CM55_NTZ_NONSECURE" OR
684
+ FREERTOS_PORT STREQUAL "IAR_ARM_CM55_NONSECURE" OR
685
+ FREERTOS_PORT STREQUAL "IAR_ARM_CM85_NTZ_NONSECURE" OR
686
+ FREERTOS_PORT STREQUAL "IAR_ARM_CM85_NONSECURE"
607
687
)
608
688
target_sources (freertos_kernel_port PRIVATE Common/mpu_wrappers.c)
609
689
endif ()
@@ -665,6 +745,18 @@ target_include_directories(freertos_kernel_port PUBLIC
665
745
$<$<STREQUAL :${FREERTOS_PORT} ,GCC_ARM_CM33_NONSECURE>:${CMAKE_CURRENT_LIST_DIR} /GCC/ARM_CM33/non_secure>
666
746
$<$<STREQUAL :${FREERTOS_PORT} ,GCC_ARM_CM33_SECURE>:${CMAKE_CURRENT_LIST_DIR} /GCC/ARM_CM33/secure>
667
747
$<$<STREQUAL :${FREERTOS_PORT} ,GCC_ARM_CM33_NTZ_NONSECURE>:${CMAKE_CURRENT_LIST_DIR} /GCC/ARM_CM33_NTZ/non_secure>
748
+ $<$<STREQUAL :${FREERTOS_PORT} ,GCC_ARM_TFM>:${CMAKE_CURRENT_LIST_DIR} /GCC/ARM_CM33_NTZ/non_secure>
749
+
750
+ # ARMv8.1-M ports for GCC
751
+ $<$<STREQUAL :${FREERTOS_PORT} ,GCC_ARM_CM55_NONSECURE>:${CMAKE_CURRENT_LIST_DIR} /GCC/ARM_CM55/non_secure>
752
+ $<$<STREQUAL :${FREERTOS_PORT} ,GCC_ARM_CM55_SECURE>:${CMAKE_CURRENT_LIST_DIR} /GCC/ARM_CM55/secure>
753
+ $<$<STREQUAL :${FREERTOS_PORT} ,GCC_ARM_CM55_NTZ_NONSECURE>:${CMAKE_CURRENT_LIST_DIR} /GCC/ARM_CM55_NTZ/non_secure>
754
+ $<$<STREQUAL :${FREERTOS_PORT} ,GCC_ARM_CM55_TFM>:${CMAKE_CURRENT_LIST_DIR} /GCC/ARM_CM85_NTZ/non_secure>
755
+
756
+ $<$<STREQUAL :${FREERTOS_PORT} ,GCC_ARM_CM85_NONSECURE>:${CMAKE_CURRENT_LIST_DIR} /GCC/ARM_CM85/non_secure>
757
+ $<$<STREQUAL :${FREERTOS_PORT} ,GCC_ARM_CM85_SECURE>:${CMAKE_CURRENT_LIST_DIR} /GCC/ARM_CM85/secure>
758
+ $<$<STREQUAL :${FREERTOS_PORT} ,GCC_ARM_CM85_NTZ_NONSECURE>:${CMAKE_CURRENT_LIST_DIR} /GCC/ARM_CM85_NTZ/non_secure>
759
+ $<$<STREQUAL :${FREERTOS_PORT} ,GCC_ARM_CM85_TFM>:${CMAKE_CURRENT_LIST_DIR} /GCC/ARM_CM85_NTZ/non_secure>
668
760
669
761
# ARMv7-R ports for GCC
670
762
$<$<STREQUAL :${FREERTOS_PORT} ,GCC_ARM_CR5>:${CMAKE_CURRENT_LIST_DIR} /GCC/ARM_CR5>
@@ -777,6 +869,15 @@ target_include_directories(freertos_kernel_port PUBLIC
777
869
$<$<STREQUAL :${FREERTOS_PORT} ,IAR_ARM_CM33_SECURE>:${CMAKE_CURRENT_LIST_DIR} /IAR/ARM_CM33/secure>
778
870
$<$<STREQUAL :${FREERTOS_PORT} ,IAR_ARM_CM33_NTZ_NONSECURE>:${CMAKE_CURRENT_LIST_DIR} /IAR/ARM_CM33_NTZ/non_secure>
779
871
872
+ # ARMv8.1-M ports for IAR EWARM
873
+ $<$<STREQUAL :${FREERTOS_PORT} ,IAR_ARM_CM55_NONSECURE>:${CMAKE_CURRENT_LIST_DIR} /IAR/ARM_CM55/non_secure>
874
+ $<$<STREQUAL :${FREERTOS_PORT} ,IAR_ARM_CM55_SECURE>:${CMAKE_CURRENT_LIST_DIR} /IAR/ARM_CM55/secure>
875
+ $<$<STREQUAL :${FREERTOS_PORT} ,IAR_ARM_CM55_NTZ_NONSECURE>:${CMAKE_CURRENT_LIST_DIR} /IAR/ARM_CM55_NTZ/non_secure>
876
+
877
+ $<$<STREQUAL :${FREERTOS_PORT} ,IAR_ARM_CM85_NONSECURE>:${CMAKE_CURRENT_LIST_DIR} /IAR/ARM_CM85/non_secure>
878
+ $<$<STREQUAL :${FREERTOS_PORT} ,IAR_ARM_CM85_SECURE>:${CMAKE_CURRENT_LIST_DIR} /IAR/ARM_CM85/secure>
879
+ $<$<STREQUAL :${FREERTOS_PORT} ,IAR_ARM_CM85_NTZ_NONSECURE>:${CMAKE_CURRENT_LIST_DIR} /IAR/ARM_CM85_NTZ/non_secure>
880
+
780
881
# ARMv7-R Ports for IAR EWARM
781
882
$<$<STREQUAL :${FREERTOS_PORT} ,IAR_ARM_CRX_NOGIC>:${CMAKE_CURRENT_LIST_DIR} /IAR/ARM_CRx_No_GIC>
782
883
0 commit comments