Skip to content

Commit 68a6e05

Browse files
DavidLesnjakRobertRostohar
authored andcommitted
Examples: Update examples
Use recent packs: - ARM::SDS - ARM::CMSIS@>=6.0.0 - ARM::CMSIS-RTX@>=5.8.0 - ARM::CMSIS-Compiler@>=2.0.0 - Keil::[email protected]
1 parent c266e53 commit 68a6e05

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

60 files changed

+3353
-2360
lines changed

examples/sds_buffer/RTE/CMSIS/RTX_Config.c

+5-2
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (c) 2013-2021 Arm Limited. All rights reserved.
2+
* Copyright (c) 2013-2023 Arm Limited. All rights reserved.
33
*
44
* SPDX-License-Identifier: Apache-2.0
55
*
@@ -17,7 +17,7 @@
1717
*
1818
* -----------------------------------------------------------------------------
1919
*
20-
* $Revision: V5.1.1
20+
* $Revision: V5.2.0
2121
*
2222
* Project: CMSIS-RTOS RTX
2323
* Title: RTX Configuration
@@ -55,6 +55,9 @@ __WEAK uint32_t osRtxErrorNotify (uint32_t code, void *object_id) {
5555
case osRtxErrorClibMutex:
5656
// Standard C/C++ library mutex initialization failed
5757
break;
58+
case osRtxErrorSVC:
59+
// Invalid SVC function called (function=object_id)
60+
break;
5861
default:
5962
// Reserved
6063
break;
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (c) 2013-2021 Arm Limited. All rights reserved.
2+
* Copyright (c) 2013-2023 Arm Limited. All rights reserved.
33
*
44
* SPDX-License-Identifier: Apache-2.0
55
*
@@ -17,7 +17,7 @@
1717
*
1818
* -----------------------------------------------------------------------------
1919
*
20-
* $Revision: V5.1.1
20+
* $Revision: V5.2.0
2121
*
2222
* Project: CMSIS-RTOS RTX
2323
* Title: RTX Configuration
@@ -55,6 +55,9 @@ __WEAK uint32_t osRtxErrorNotify (uint32_t code, void *object_id) {
5555
case osRtxErrorClibMutex:
5656
// Standard C/C++ library mutex initialization failed
5757
break;
58+
case osRtxErrorSVC:
59+
// Invalid SVC function called (function=object_id)
60+
break;
5861
default:
5962
// Reserved
6063
break;

examples/sds_buffer/RTE/CMSIS/RTX_Config.h

+87-4
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (c) 2013-2021 Arm Limited. All rights reserved.
2+
* Copyright (c) 2013-2023 Arm Limited. All rights reserved.
33
*
44
* SPDX-License-Identifier: Apache-2.0
55
*
@@ -17,7 +17,7 @@
1717
*
1818
* -----------------------------------------------------------------------------
1919
*
20-
* $Revision: V5.5.2
20+
* $Revision: V5.6.0
2121
*
2222
* Project: CMSIS-RTOS RTX
2323
* Title: RTX Configuration definitions
@@ -69,6 +69,61 @@
6969

7070
// </e>
7171

72+
// <e>Safety features (Source variant only)
73+
// <i> Enables FuSa related features.
74+
// <i> Requires RTX Source variant.
75+
// <i> Enables:
76+
// <i> - selected features from this group
77+
// <i> - Thread functions: osThreadProtectPrivileged
78+
#ifndef OS_SAFETY_FEATURES
79+
#define OS_SAFETY_FEATURES 0
80+
#endif
81+
82+
// <q>Safety Class
83+
// <i> Threads assigned to lower classes cannot modify higher class threads.
84+
// <i> Enables:
85+
// <i> - Object attributes: osSafetyClass
86+
// <i> - Kernel functions: osKernelProtect, osKernelDestroyClass
87+
// <i> - Thread functions: osThreadGetClass, osThreadSuspendClass, osThreadResumeClass
88+
#ifndef OS_SAFETY_CLASS
89+
#define OS_SAFETY_CLASS 1
90+
#endif
91+
92+
// <q>MPU Protected Zone
93+
// <i> Access protection via MPU (Spatial isolation).
94+
// <i> Enables:
95+
// <i> - Thread attributes: osThreadZone
96+
// <i> - Thread functions: osThreadGetZone, osThreadTerminateZone
97+
// <i> - Zone Management: osZoneSetup_Callback
98+
#ifndef OS_EXECUTION_ZONE
99+
#define OS_EXECUTION_ZONE 1
100+
#endif
101+
102+
// <q>Thread Watchdog
103+
// <i> Watchdog alerts ensure timing for critical threads (Temporal isolation).
104+
// <i> Enables:
105+
// <i> - Thread functions: osThreadFeedWatchdog
106+
// <i> - Handler functions: osWatchdogAlarm_Handler
107+
#ifndef OS_THREAD_WATCHDOG
108+
#define OS_THREAD_WATCHDOG 1
109+
#endif
110+
111+
// <q>Object Pointer checking
112+
// <i> Check object pointer alignment and memory region.
113+
#ifndef OS_OBJ_PTR_CHECK
114+
#define OS_OBJ_PTR_CHECK 0
115+
#endif
116+
117+
// <q>SVC Function Pointer checking
118+
// <i> Check SVC function pointer alignment and memory region.
119+
// <i> User needs to define a linker execution region RTX_SVC_VENEERS
120+
// <i> containing input sections: rtx_*.o (.text.os.svc.veneer.*)
121+
#ifndef OS_SVC_PTR_CHECK
122+
#define OS_SVC_PTR_CHECK 0
123+
#endif
124+
125+
// </e>
126+
72127
// <o>ISR FIFO Queue
73128
// <4=> 4 entries <8=> 8 entries <12=> 12 entries <16=> 16 entries
74129
// <24=> 24 entries <32=> 32 entries <48=> 48 entries <64=> 64 entries
@@ -142,6 +197,20 @@
142197
#define OS_IDLE_THREAD_TZ_MOD_ID 0
143198
#endif
144199

200+
// <o>Idle Thread Safety Class <0-15>
201+
// <i> Defines the Safety Class number.
202+
// <i> Default: 0
203+
#ifndef OS_IDLE_THREAD_CLASS
204+
#define OS_IDLE_THREAD_CLASS 0
205+
#endif
206+
207+
// <o>Idle Thread Zone <0-127>
208+
// <i> Defines Thread Zone.
209+
// <i> Default: 0
210+
#ifndef OS_IDLE_THREAD_ZONE
211+
#define OS_IDLE_THREAD_ZONE 0
212+
#endif
213+
145214
// <q>Stack overrun checking
146215
// <i> Enables stack overrun check at thread switch (requires RTX source variant).
147216
// <i> Enabling this option increases slightly the execution time of a thread switch.
@@ -156,10 +225,10 @@
156225
#define OS_STACK_WATERMARK 0
157226
#endif
158227

159-
// <o>Processor mode for Thread execution
228+
// <o>Default Processor mode for Thread execution
160229
// <0=> Unprivileged mode
161230
// <1=> Privileged mode
162-
// <i> Default: Privileged mode
231+
// <i> Default: Unprivileged mode
163232
#ifndef OS_PRIVILEGE_MODE
164233
#define OS_PRIVILEGE_MODE 1
165234
#endif
@@ -211,6 +280,20 @@
211280
#define OS_TIMER_THREAD_TZ_MOD_ID 0
212281
#endif
213282

283+
// <o>Timer Thread Safety Class <0-15>
284+
// <i> Defines the Safety Class number.
285+
// <i> Default: 0
286+
#ifndef OS_TIMER_THREAD_CLASS
287+
#define OS_TIMER_THREAD_CLASS 0
288+
#endif
289+
290+
// <o>Timer Thread Zone <0-127>
291+
// <i> Defines Thread Zone.
292+
// <i> Default: 0
293+
#ifndef OS_TIMER_THREAD_ZONE
294+
#define OS_TIMER_THREAD_ZONE 0
295+
#endif
296+
214297
// <o>Timer Callback Queue entries <0-256>
215298
// <i> Number of concurrent active timer callback functions.
216299
// <i> May be set to 0 when timers are not used.
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (c) 2013-2021 Arm Limited. All rights reserved.
2+
* Copyright (c) 2013-2023 Arm Limited. All rights reserved.
33
*
44
* SPDX-License-Identifier: Apache-2.0
55
*
@@ -17,7 +17,7 @@
1717
*
1818
* -----------------------------------------------------------------------------
1919
*
20-
* $Revision: V5.5.2
20+
* $Revision: V5.6.0
2121
*
2222
* Project: CMSIS-RTOS RTX
2323
* Title: RTX Configuration definitions
@@ -69,6 +69,61 @@
6969

7070
// </e>
7171

72+
// <e>Safety features (Source variant only)
73+
// <i> Enables FuSa related features.
74+
// <i> Requires RTX Source variant.
75+
// <i> Enables:
76+
// <i> - selected features from this group
77+
// <i> - Thread functions: osThreadProtectPrivileged
78+
#ifndef OS_SAFETY_FEATURES
79+
#define OS_SAFETY_FEATURES 0
80+
#endif
81+
82+
// <q>Safety Class
83+
// <i> Threads assigned to lower classes cannot modify higher class threads.
84+
// <i> Enables:
85+
// <i> - Object attributes: osSafetyClass
86+
// <i> - Kernel functions: osKernelProtect, osKernelDestroyClass
87+
// <i> - Thread functions: osThreadGetClass, osThreadSuspendClass, osThreadResumeClass
88+
#ifndef OS_SAFETY_CLASS
89+
#define OS_SAFETY_CLASS 1
90+
#endif
91+
92+
// <q>MPU Protected Zone
93+
// <i> Access protection via MPU (Spatial isolation).
94+
// <i> Enables:
95+
// <i> - Thread attributes: osThreadZone
96+
// <i> - Thread functions: osThreadGetZone, osThreadTerminateZone
97+
// <i> - Zone Management: osZoneSetup_Callback
98+
#ifndef OS_EXECUTION_ZONE
99+
#define OS_EXECUTION_ZONE 1
100+
#endif
101+
102+
// <q>Thread Watchdog
103+
// <i> Watchdog alerts ensure timing for critical threads (Temporal isolation).
104+
// <i> Enables:
105+
// <i> - Thread functions: osThreadFeedWatchdog
106+
// <i> - Handler functions: osWatchdogAlarm_Handler
107+
#ifndef OS_THREAD_WATCHDOG
108+
#define OS_THREAD_WATCHDOG 1
109+
#endif
110+
111+
// <q>Object Pointer checking
112+
// <i> Check object pointer alignment and memory region.
113+
#ifndef OS_OBJ_PTR_CHECK
114+
#define OS_OBJ_PTR_CHECK 0
115+
#endif
116+
117+
// <q>SVC Function Pointer checking
118+
// <i> Check SVC function pointer alignment and memory region.
119+
// <i> User needs to define a linker execution region RTX_SVC_VENEERS
120+
// <i> containing input sections: rtx_*.o (.text.os.svc.veneer.*)
121+
#ifndef OS_SVC_PTR_CHECK
122+
#define OS_SVC_PTR_CHECK 0
123+
#endif
124+
125+
// </e>
126+
72127
// <o>ISR FIFO Queue
73128
// <4=> 4 entries <8=> 8 entries <12=> 12 entries <16=> 16 entries
74129
// <24=> 24 entries <32=> 32 entries <48=> 48 entries <64=> 64 entries
@@ -142,11 +197,25 @@
142197
#define OS_IDLE_THREAD_TZ_MOD_ID 0
143198
#endif
144199

200+
// <o>Idle Thread Safety Class <0-15>
201+
// <i> Defines the Safety Class number.
202+
// <i> Default: 0
203+
#ifndef OS_IDLE_THREAD_CLASS
204+
#define OS_IDLE_THREAD_CLASS 0
205+
#endif
206+
207+
// <o>Idle Thread Zone <0-127>
208+
// <i> Defines Thread Zone.
209+
// <i> Default: 0
210+
#ifndef OS_IDLE_THREAD_ZONE
211+
#define OS_IDLE_THREAD_ZONE 0
212+
#endif
213+
145214
// <q>Stack overrun checking
146215
// <i> Enables stack overrun check at thread switch (requires RTX source variant).
147216
// <i> Enabling this option increases slightly the execution time of a thread switch.
148217
#ifndef OS_STACK_CHECK
149-
#define OS_STACK_CHECK 0
218+
#define OS_STACK_CHECK 1
150219
#endif
151220

152221
// <q>Stack usage watermark
@@ -156,12 +225,12 @@
156225
#define OS_STACK_WATERMARK 0
157226
#endif
158227

159-
// <o>Processor mode for Thread execution
228+
// <o>Default Processor mode for Thread execution
160229
// <0=> Unprivileged mode
161230
// <1=> Privileged mode
162-
// <i> Default: Privileged mode
231+
// <i> Default: Unprivileged mode
163232
#ifndef OS_PRIVILEGE_MODE
164-
#define OS_PRIVILEGE_MODE 1
233+
#define OS_PRIVILEGE_MODE 0
165234
#endif
166235

167236
// </h>
@@ -211,6 +280,20 @@
211280
#define OS_TIMER_THREAD_TZ_MOD_ID 0
212281
#endif
213282

283+
// <o>Timer Thread Safety Class <0-15>
284+
// <i> Defines the Safety Class number.
285+
// <i> Default: 0
286+
#ifndef OS_TIMER_THREAD_CLASS
287+
#define OS_TIMER_THREAD_CLASS 0
288+
#endif
289+
290+
// <o>Timer Thread Zone <0-127>
291+
// <i> Defines Thread Zone.
292+
// <i> Default: 0
293+
#ifndef OS_TIMER_THREAD_ZONE
294+
#define OS_TIMER_THREAD_ZONE 0
295+
#endif
296+
214297
// <o>Timer Callback Queue entries <0-256>
215298
// <i> Number of concurrent active timer callback functions.
216299
// <i> May be set to 0 when timers are not used.

examples/sds_buffer/SDS_Buffer.cproject.yml

+3
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
project:
22
packs:
33
- pack: ARM::SDS
4+
- pack: ARM::CMSIS@>=6.0.0
5+
- pack: ARM::CMSIS-RTX@>=5.8.0
46

57
connections:
68
- connect: Demo Application
@@ -14,6 +16,7 @@ project:
1416

1517
components:
1618
- component: ARM::CMSIS:RTOS2:Keil RTX5&Source
19+
- component: ARM::CMSIS:OS Tick
1720
- component: ARM::SDS:Buffer
1821

1922
groups:

examples/sds_player/RTE/CMSIS/RTX_Config.c

+5-2
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (c) 2013-2021 Arm Limited. All rights reserved.
2+
* Copyright (c) 2013-2023 Arm Limited. All rights reserved.
33
*
44
* SPDX-License-Identifier: Apache-2.0
55
*
@@ -17,7 +17,7 @@
1717
*
1818
* -----------------------------------------------------------------------------
1919
*
20-
* $Revision: V5.1.1
20+
* $Revision: V5.2.0
2121
*
2222
* Project: CMSIS-RTOS RTX
2323
* Title: RTX Configuration
@@ -55,6 +55,9 @@ __WEAK uint32_t osRtxErrorNotify (uint32_t code, void *object_id) {
5555
case osRtxErrorClibMutex:
5656
// Standard C/C++ library mutex initialization failed
5757
break;
58+
case osRtxErrorSVC:
59+
// Invalid SVC function called (function=object_id)
60+
break;
5861
default:
5962
// Reserved
6063
break;
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (c) 2013-2021 Arm Limited. All rights reserved.
2+
* Copyright (c) 2013-2023 Arm Limited. All rights reserved.
33
*
44
* SPDX-License-Identifier: Apache-2.0
55
*
@@ -17,7 +17,7 @@
1717
*
1818
* -----------------------------------------------------------------------------
1919
*
20-
* $Revision: V5.1.1
20+
* $Revision: V5.2.0
2121
*
2222
* Project: CMSIS-RTOS RTX
2323
* Title: RTX Configuration
@@ -55,6 +55,9 @@ __WEAK uint32_t osRtxErrorNotify (uint32_t code, void *object_id) {
5555
case osRtxErrorClibMutex:
5656
// Standard C/C++ library mutex initialization failed
5757
break;
58+
case osRtxErrorSVC:
59+
// Invalid SVC function called (function=object_id)
60+
break;
5861
default:
5962
// Reserved
6063
break;

0 commit comments

Comments
 (0)