Skip to content

Commit f99618b

Browse files
committed
Pack update for FreeRTOS V10.2.0
- Introduced Core component variants - Configuration updated - Added TrustZone component and secure/non-secure example
1 parent 1fb159f commit f99618b

58 files changed

Lines changed: 12321 additions & 594 deletions

Some content is hidden

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

ARM.CMSIS-FreeRTOS.pdsc

Lines changed: 531 additions & 128 deletions
Large diffs are not rendered by default.

CMSIS/RTOS2/FreeRTOS/Config/ARMCA/FreeRTOSConfig.h

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/* --------------------------------------------------------------------------
2-
* Copyright (c) 2013-2018 Arm Limited. All rights reserved.
2+
* Copyright (c) 2013-2019 Arm Limited. All rights reserved.
33
*
44
* SPDX-License-Identifier: Apache-2.0
55
*
@@ -17,14 +17,13 @@
1717
*
1818
* --------------------------------------------------------------------------
1919
*
20-
* $Revision: V10.0.1
20+
* $Revision: V10.2.0
2121
*
2222
* Project: CMSIS-FreeRTOS
2323
* Title: FreeRTOS configuration definitions
2424
*
2525
* --------------------------------------------------------------------------*/
2626

27-
2827
#ifndef FREERTOS_CONFIG_H
2928
#define FREERTOS_CONFIG_H
3029

@@ -37,7 +36,7 @@
3736
* THESE PARAMETERS ARE DESCRIBED WITHIN THE 'CONFIGURATION' SECTION OF THE
3837
* FreeRTOS API DOCUMENTATION AVAILABLE ON THE FreeRTOS.org WEB SITE.
3938
*
40-
* See http://www.freertos.org/a00110.html.
39+
* See http://www.freertos.org/a00110.html
4140
*----------------------------------------------------------*/
4241

4342
#include <stdint.h>

CMSIS/RTOS2/FreeRTOS/Config/ARMCM/FreeRTOSConfig.h

Lines changed: 35 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/* --------------------------------------------------------------------------
2-
* Copyright (c) 2013-2018 Arm Limited. All rights reserved.
2+
* Copyright (c) 2013-2019 Arm Limited. All rights reserved.
33
*
44
* SPDX-License-Identifier: Apache-2.0
55
*
@@ -17,14 +17,13 @@
1717
*
1818
* --------------------------------------------------------------------------
1919
*
20-
* $Revision: V10.1.1
20+
* $Revision: V10.2.0
2121
*
2222
* Project: CMSIS-FreeRTOS
2323
* Title: FreeRTOS configuration definitions
2424
*
2525
* --------------------------------------------------------------------------*/
2626

27-
2827
#ifndef FREERTOS_CONFIG_H
2928
#define FREERTOS_CONFIG_H
3029

@@ -37,7 +36,7 @@
3736
* THESE PARAMETERS ARE DESCRIBED WITHIN THE 'CONFIGURATION' SECTION OF THE
3837
* FreeRTOS API DOCUMENTATION AVAILABLE ON THE FreeRTOS.org WEB SITE.
3938
*
40-
* See http://www.freertos.org/a00110.html.
39+
* See http://www.freertos.org/a00110.html
4140
*----------------------------------------------------------*/
4241

4342
#include <stdint.h>
@@ -181,6 +180,35 @@
181180
// </e>
182181
// </h>
183182

183+
// <h> Port Specific Features
184+
// <i> Enable and configure port specific features.
185+
// <i> Check FreeRTOS documentation for definitions that apply for the used port.
186+
187+
// <q>Use Floating Point Unit
188+
// <i> Using Floating Point Unit (FPU) affects context handling.
189+
// <i> Enable FPU when application uses floating point operations.
190+
// <i> Default: 1
191+
#define configENABLE_FPU 1
192+
193+
// <q>Use Memory Protection Unit
194+
// <i> Using Memory Protection Unit (MPU) requires detailed memory map definition.
195+
// <i> This setting is only releavant for MPU enabled ports.
196+
// <i> Default: 0
197+
#define configENABLE_MPU 0
198+
199+
// <q>Use TrustZone Security Extension
200+
// <i> Using TrustZone affects context handling.
201+
// <i> Enable TrustZone when FreeRTOS runs on the Non-Secure side and calls functions from the Secure side.
202+
// <i> Default: 1
203+
#define configENABLE_TRUSTZONE 1
204+
205+
// <o>Minimal secure stack size [words] <0-65535>
206+
// <i> Stack for idle task Secure side context in words.
207+
// <i> This setting is only relevant when TrustZone extension is enabled.
208+
// <i> Default: 128
209+
#define configMINIMAL_SECURE_STACK_SIZE ((uint32_t)128)
210+
// </h>
211+
184212
//------------- <<< end of configuration section >>> ---------------------------
185213

186214
/* Defines needed by FreeRTOS to implement CMSIS RTOS2 API. Do not change! */
@@ -218,6 +246,9 @@
218246
#define xPortPendSVHandler PendSV_Handler
219247
#define vPortSVCHandler SVC_Handler
220248

249+
/* Ensure Cortex-M port compatibility. */
250+
#define SysTick_Handler xPortSysTickHandler
251+
221252
/* Include debug event definitions */
222253
#include "freertos_evr.h"
223254

Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
/* --------------------------------------------------------------------------
2+
* Copyright (c) 2013-2019 Arm Limited. All rights reserved.
3+
*
4+
* SPDX-License-Identifier: Apache-2.0
5+
*
6+
* Licensed under the Apache License, Version 2.0 (the License); you may
7+
* not use this file except in compliance with the License.
8+
* You may obtain a copy of the License at
9+
*
10+
* www.apache.org/licenses/LICENSE-2.0
11+
*
12+
* Unless required by applicable law or agreed to in writing, software
13+
* distributed under the License is distributed on an AS IS BASIS, WITHOUT
14+
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15+
* See the License for the specific language governing permissions and
16+
* limitations under the License.
17+
*
18+
* --------------------------------------------------------------------------
19+
*
20+
* $Revision: V10.2.0
21+
*
22+
* Project: CMSIS-FreeRTOS
23+
* Title: FreeRTOS Secure Contex configuration definitions
24+
*
25+
* --------------------------------------------------------------------------*/
26+
27+
#ifndef FREERTOS_CONFIG_H
28+
#define FREERTOS_CONFIG_H
29+
30+
/*-----------------------------------------------------------
31+
* Application specific definitions.
32+
*
33+
* These definitions should be adjusted for your particular hardware and
34+
* application requirements.
35+
*
36+
* THESE PARAMETERS ARE DESCRIBED WITHIN THE 'CONFIGURATION' SECTION OF THE
37+
* FreeRTOS API DOCUMENTATION AVAILABLE ON THE FreeRTOS.org WEB SITE.
38+
*
39+
* See http://www.freertos.org/a00110.html
40+
*----------------------------------------------------------*/
41+
42+
//-------- <<< Use Configuration Wizard in Context Menu >>> --------------------
43+
44+
// <q>Use Memory Protection Unit
45+
// <i> Using Memory Protection Unit (MPU) affects secure context API.
46+
// <i> Enable MPU only when it is also enabled by the FreeRTOS Non-Secure Domain application.
47+
// <i> Default: 0
48+
#define configENABLE_MPU 0
49+
50+
// <q>Use Floating Point Unit
51+
// <i> Using Floating Point Unit (FPU) affects secure context handling.
52+
// <i> Enable FPU when Secure Domain application uses floating point operations.
53+
// <i> Default: 0
54+
#define configENABLE_FPU 0
55+
56+
#endif /* FREERTOS_CONFIG_H */

CMSIS/RTOS2/FreeRTOS/Examples/Blinky/Blinky.uvoptx

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -161,11 +161,6 @@
161161
<ItemText>g_phases</ItemText>
162162
</Ww>
163163
</WatchWindow1>
164-
<ScvdPack>
165-
<Filename>C:\Keil\ARM\PACK\ARM\CMSIS-FreeRTOS\10.0.2-dev3\CMSIS\RTOS2\FreeRTOS\FreeRTOS.scvd</Filename>
166-
<Type>ARM.CMSIS-FreeRTOS.10.0.2-dev3</Type>
167-
<SubType>1</SubType>
168-
</ScvdPack>
169164
<ScvdPack>
170165
<Filename>C:\Keil\ARM\PACK\Keil\ARM_Compiler\1.6.1\EventRecorder.scvd</Filename>
171166
<Type>Keil.ARM_Compiler.1.6.1</Type>

CMSIS/RTOS2/FreeRTOS/Examples/Blinky/Blinky.uvprojx

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -10,13 +10,13 @@
1010
<TargetName>Simulation</TargetName>
1111
<ToolsetNumber>0x4</ToolsetNumber>
1212
<ToolsetName>ARM-ADS</ToolsetName>
13-
<pCCUsed>5060528::V5.06 update 5 (build 528)::ARMCC</pCCUsed>
13+
<pCCUsed>5060750::V5.06 update 6 (build 750)::ARMCC</pCCUsed>
1414
<uAC6>0</uAC6>
1515
<TargetOption>
1616
<TargetCommonOption>
1717
<Device>ARMCM3</Device>
1818
<Vendor>ARM</Vendor>
19-
<PackID>ARM.CMSIS.5.4.0</PackID>
19+
<PackID>ARM.CMSIS.5.5.1</PackID>
2020
<PackURL>http://www.keil.com/pack/</PackURL>
2121
<Cpu>IRAM(0x20000000,0x00020000) IROM(0x00000000,0x00040000) CPUTYPE("Cortex-M3") CLOCK(12000000) ESEL ELITTLE</Cpu>
2222
<FlashUtilSpec></FlashUtilSpec>
@@ -425,8 +425,8 @@
425425
</api>
426426
</apis>
427427
<components>
428-
<component Cbundle="FreeRTOS" Cclass="RTOS" Cgroup="Config" Cvariant="CMSIS RTOS2" Cvendor="ARM" Cversion="10.1.1" condition="CMSIS RTOS2 FreeRTOS">
429-
<package license="License/license.txt" name="CMSIS-FreeRTOS" schemaVersion="1.4" url="http://www.keil.com/pack/" vendor="ARM" version="10.0.2-dev3"/>
428+
<component Cbundle="FreeRTOS" Cclass="RTOS" Cgroup="Config" Cvariant="CMSIS RTOS2" Cvendor="ARM" Cversion="10.2.0" condition="CMSIS RTOS2 FreeRTOS">
429+
<package license="License/license.txt" name="CMSIS-FreeRTOS" schemaVersion="1.4" url="http://www.keil.com/pack/" vendor="ARM" version="10.0.2-dev6"/>
430430
<targetInfos>
431431
<targetInfo name="Simulation"/>
432432
</targetInfos>
@@ -495,24 +495,24 @@
495495
</file>
496496
<file attr="config" category="sourceAsm" condition="ARMCC" name="Device\ARM\ARMCM3\Source\ARM\startup_ARMCM3.s" version="1.0.0">
497497
<instance index="0">RTE\Device\ARMCM3\startup_ARMCM3.s</instance>
498-
<component Cclass="Device" Cgroup="Startup" Cvendor="ARM" Cversion="1.0.1" condition="ARMCM3 CMSIS"/>
499-
<package name="CMSIS" schemaVersion="1.3" url="http://www.keil.com/pack/" vendor="ARM" version="5.4.0"/>
498+
<component Cclass="Device" Cgroup="Startup" Cvendor="ARM" Cversion="1.1.0" condition="ARMCM3 CMSIS"/>
499+
<package name="CMSIS" schemaVersion="1.3" url="http://www.keil.com/pack/" vendor="ARM" version="5.5.1"/>
500500
<targetInfos>
501501
<targetInfo name="Simulation"/>
502502
</targetInfos>
503503
</file>
504504
<file attr="config" category="sourceC" name="Device\ARM\ARMCM3\Source\system_ARMCM3.c" version="1.0.0">
505505
<instance index="0">RTE\Device\ARMCM3\system_ARMCM3.c</instance>
506-
<component Cclass="Device" Cgroup="Startup" Cvendor="ARM" Cversion="1.0.1" condition="ARMCM3 CMSIS"/>
507-
<package name="CMSIS" schemaVersion="1.3" url="http://www.keil.com/pack/" vendor="ARM" version="5.4.0"/>
506+
<component Cclass="Device" Cgroup="Startup" Cvendor="ARM" Cversion="1.1.0" condition="ARMCM3 CMSIS"/>
507+
<package name="CMSIS" schemaVersion="1.3" url="http://www.keil.com/pack/" vendor="ARM" version="5.5.1"/>
508508
<targetInfos>
509509
<targetInfo name="Simulation"/>
510510
</targetInfos>
511511
</file>
512-
<file attr="config" category="header" condition="CoreM" name="CMSIS\RTOS2\FreeRTOS\Config\ARMCM\FreeRTOSConfig.h" version="10.1.1">
512+
<file attr="config" category="header" condition="CoreM" name="CMSIS\RTOS2\FreeRTOS\Config\ARMCM\FreeRTOSConfig.h" version="10.2.0">
513513
<instance index="0">RTE\RTOS\FreeRTOSConfig.h</instance>
514-
<component Cbundle="FreeRTOS" Cclass="RTOS" Cgroup="Config" Cvariant="CMSIS RTOS2" Cvendor="ARM" Cversion="10.1.1" condition="CMSIS RTOS2 FreeRTOS"/>
515-
<package license="License/license.txt" name="CMSIS-FreeRTOS" schemaVersion="1.4" url="http://www.keil.com/pack/" vendor="ARM" version="10.0.2-dev3"/>
514+
<component Cbundle="FreeRTOS" Cclass="RTOS" Cgroup="Config" Cvariant="CMSIS RTOS2" Cvendor="ARM" Cversion="10.2.0" condition="CMSIS RTOS2 FreeRTOS"/>
515+
<package license="License/license.txt" name="CMSIS-FreeRTOS" schemaVersion="1.4" url="http://www.keil.com/pack/" vendor="ARM" version="10.2.0"/>
516516
<targetInfos>
517517
<targetInfo name="Simulation"/>
518518
</targetInfos>

CMSIS/RTOS2/FreeRTOS/Examples/Blinky/RTE/RTOS/FreeRTOSConfig.h

Lines changed: 32 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/* --------------------------------------------------------------------------
2-
* Copyright (c) 2013-2018 Arm Limited. All rights reserved.
2+
* Copyright (c) 2013-2019 Arm Limited. All rights reserved.
33
*
44
* SPDX-License-Identifier: Apache-2.0
55
*
@@ -17,14 +17,13 @@
1717
*
1818
* --------------------------------------------------------------------------
1919
*
20-
* $Revision: V10.1.1
20+
* $Revision: V10.2.0
2121
*
2222
* Project: CMSIS-FreeRTOS
2323
* Title: FreeRTOS configuration definitions
2424
*
2525
* --------------------------------------------------------------------------*/
2626

27-
2827
#ifndef FREERTOS_CONFIG_H
2928
#define FREERTOS_CONFIG_H
3029

@@ -37,7 +36,7 @@
3736
* THESE PARAMETERS ARE DESCRIBED WITHIN THE 'CONFIGURATION' SECTION OF THE
3837
* FreeRTOS API DOCUMENTATION AVAILABLE ON THE FreeRTOS.org WEB SITE.
3938
*
40-
* See http://www.freertos.org/a00110.html.
39+
* See http://www.freertos.org/a00110.html
4140
*----------------------------------------------------------*/
4241

4342
#include <stdint.h>
@@ -181,6 +180,35 @@
181180
// </e>
182181
// </h>
183182

183+
// <h> Port Specific Features
184+
// <i> Enable and configure port specific features.
185+
// <i> Check FreeRTOS documentation for definitions that apply for the used port.
186+
187+
// <q>Use Floating Point Unit
188+
// <i> Using Floating Point Unit (FPU) affects context handling.
189+
// <i> Enable FPU when application uses floating point operations.
190+
// <i> Default: 1
191+
#define configENABLE_FPU 1
192+
193+
// <q>Use Memory Protection Unit
194+
// <i> Using Memory Protection Unit (MPU) requires detailed memory map definition.
195+
// <i> This setting is only releavant for MPU enabled ports.
196+
// <i> Default: 0
197+
#define configENABLE_MPU 0
198+
199+
// <q>Use TrustZone Security Extension
200+
// <i> Using TrustZone affects context handling.
201+
// <i> Enable TrustZone when FreeRTOS runs on the Non-Secure side and calls functions from the Secure side.
202+
// <i> Default: 1
203+
#define configENABLE_TRUSTZONE 1
204+
205+
// <o>Minimal secure stack size [words] <0-65535>
206+
// <i> Stack for idle task Secure side context in words.
207+
// <i> This setting is only relevant when TrustZone extension is enabled.
208+
// <i> Default: 128
209+
#define configMINIMAL_SECURE_STACK_SIZE ((uint32_t)128)
210+
// </h>
211+
184212
//------------- <<< end of configuration section >>> ---------------------------
185213

186214
/* Defines needed by FreeRTOS to implement CMSIS RTOS2 API. Do not change! */

CMSIS/RTOS2/FreeRTOS/Examples/Blinky/RTE/_Simulation/RTE_Components.h

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11

22
/*
3-
* Auto generated Run-Time-Environment Component Configuration File
3+
* Auto generated Run-Time-Environment Configuration File
44
* *** Do not modify ! ***
55
*
66
* Project: 'Blinky'
@@ -16,14 +16,22 @@
1616
*/
1717
#define CMSIS_device_header "ARMCM3.h"
1818

19-
#define RTE_CMSIS_RTOS2 /* CMSIS-RTOS2 */
20-
#define RTE_CMSIS_RTOS2_FreeRTOS /* CMSIS-RTOS2 FreeRTOS */
21-
#define RTE_Compiler_EventRecorder
22-
#define RTE_Compiler_EventRecorder_DAP
19+
/* ARM.FreeRTOS::RTOS:Config:CMSIS RTOS2:10.2.0 */
2320
#define RTE_RTOS_FreeRTOS_CONFIG_RTOS2 /* RTOS FreeRTOS Config for CMSIS RTOS2 API */
21+
/* ARM.FreeRTOS::RTOS:Core:Cortex-M:10.2.0 */
2422
#define RTE_RTOS_FreeRTOS_CORE /* RTOS FreeRTOS Core */
23+
/* ARM.FreeRTOS::RTOS:Event Groups:10.2.0 */
2524
#define RTE_RTOS_FreeRTOS_EVENTGROUPS /* RTOS FreeRTOS Event Groups */
25+
/* ARM.FreeRTOS::RTOS:Heap:Heap_4:10.2.0 */
2626
#define RTE_RTOS_FreeRTOS_HEAP_4 /* RTOS FreeRTOS Heap 4 */
27+
/* ARM.FreeRTOS::RTOS:Timers:10.2.0 */
2728
#define RTE_RTOS_FreeRTOS_TIMERS /* RTOS FreeRTOS Timers */
29+
/* ARM::CMSIS:RTOS2:FreeRTOS:10.2.0 */
30+
#define RTE_CMSIS_RTOS2 /* CMSIS-RTOS2 */
31+
#define RTE_CMSIS_RTOS2_FreeRTOS /* CMSIS-RTOS2 FreeRTOS */
32+
/* Keil.ARM Compiler::Compiler:Event Recorder:DAP:1.4.0 */
33+
#define RTE_Compiler_EventRecorder
34+
#define RTE_Compiler_EventRecorder_DAP
35+
2836

2937
#endif /* RTE_COMPONENTS_H */

0 commit comments

Comments
 (0)