Skip to content

Commit 5df96fb

Browse files
committed
Merge pull request #1815 from stevew817/feature/rtos_support_efm32
[Silicon Labs] Provide RTOS support for EFM32 targets
2 parents 02b0267 + b1accd3 commit 5df96fb

File tree

12 files changed

+92
-22
lines changed

12 files changed

+92
-22
lines changed

libraries/tests/rtos/mbed/basic/main.cpp

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,13 +8,19 @@
88
* and for ARM_MICRO 512. Because of reduce RAM size some targets need a reduced stacksize.
99
*/
1010
#if (defined(TARGET_STM32L053R8) || defined(TARGET_STM32L053C8)) && defined(TOOLCHAIN_GCC)
11-
#define STACK_SIZE DEFAULT_STACK_SIZE/2
11+
#define STACK_SIZE DEFAULT_STACK_SIZE/2
1212
#elif (defined(TARGET_STM32F030R8) || defined(TARGET_STM32F070RB)) && defined(TOOLCHAIN_GCC)
13-
#define STACK_SIZE DEFAULT_STACK_SIZE/2
13+
#define STACK_SIZE DEFAULT_STACK_SIZE/2
1414
#elif (defined(TARGET_STM32F030R8)) && defined(TOOLCHAIN_IAR)
15-
#define STACK_SIZE DEFAULT_STACK_SIZE/2
15+
#define STACK_SIZE DEFAULT_STACK_SIZE/2
16+
#elif (defined(TARGET_EFM32ZG_STK3200) || defined(TARGET_EFM32HG_STK3400)) && !defined(TOOLCHAIN_ARM_MICRO)
17+
#define STACK_SIZE 512
18+
#elif (defined(TARGET_EFM32LG_STK3600) || defined(TARGET_EFM32WG_STK3800) || defined(TARGET_EFM32PG_STK3401)) && !defined(TOOLCHAIN_ARM_MICRO)
19+
#define STACK_SIZE 768
20+
#elif (defined(TARGET_EFM32GG_STK3700)) && !defined(TOOLCHAIN_ARM_MICRO)
21+
#define STACK_SIZE 1536
1622
#else
17-
#define STACK_SIZE DEFAULT_STACK_SIZE
23+
#define STACK_SIZE DEFAULT_STACK_SIZE
1824
#endif
1925

2026
void print_char(char c = '*') {

libraries/tests/rtos/mbed/isr/main.cpp

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,12 @@
1616
#define STACK_SIZE DEFAULT_STACK_SIZE/4
1717
#elif (defined(TARGET_STM32F030R8)) && defined(TOOLCHAIN_IAR)
1818
#define STACK_SIZE DEFAULT_STACK_SIZE/2
19+
#elif (defined(TARGET_EFM32ZG_STK3200) || defined(TARGET_EFM32HG_STK3400)) && !defined(TOOLCHAIN_ARM_MICRO)
20+
#define STACK_SIZE 512
21+
#elif (defined(TARGET_EFM32LG_STK3600) || defined(TARGET_EFM32WG_STK3800) || defined(TARGET_EFM32PG_STK3401)) && !defined(TOOLCHAIN_ARM_MICRO)
22+
#define STACK_SIZE 768
23+
#elif (defined(TARGET_EFM32GG_STK3700)) && !defined(TOOLCHAIN_ARM_MICRO)
24+
#define STACK_SIZE 1536
1925
#else
2026
#define STACK_SIZE DEFAULT_STACK_SIZE
2127
#endif

libraries/tests/rtos/mbed/mail/main.cpp

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,12 @@ typedef struct {
2424
#define STACK_SIZE DEFAULT_STACK_SIZE/2
2525
#elif (defined(TARGET_STM32F030R8)) && defined(TOOLCHAIN_IAR)
2626
#define STACK_SIZE DEFAULT_STACK_SIZE/2
27+
#elif (defined(TARGET_EFM32ZG_STK3200) || defined(TARGET_EFM32HG_STK3400)) && !defined(TOOLCHAIN_ARM_MICRO)
28+
#define STACK_SIZE 512
29+
#elif (defined(TARGET_EFM32LG_STK3600) || defined(TARGET_EFM32WG_STK3800) || defined(TARGET_EFM32PG_STK3401)) && !defined(TOOLCHAIN_ARM_MICRO)
30+
#define STACK_SIZE 768
31+
#elif (defined(TARGET_EFM32GG_STK3700)) && !defined(TOOLCHAIN_ARM_MICRO)
32+
#define STACK_SIZE 1536
2733
#else
2834
#define STACK_SIZE DEFAULT_STACK_SIZE
2935
#endif

libraries/tests/rtos/mbed/mutex/main.cpp

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,12 @@
2626
#define STACK_SIZE DEFAULT_STACK_SIZE/2
2727
#elif defined(TARGET_STM32F303K8) && defined(TOOLCHAIN_IAR)
2828
#define STACK_SIZE DEFAULT_STACK_SIZE/2
29+
#elif (defined(TARGET_EFM32ZG_STK3200) || defined(TARGET_EFM32HG_STK3400)) && !defined(TOOLCHAIN_ARM_MICRO)
30+
#define STACK_SIZE 512
31+
#elif (defined(TARGET_EFM32LG_STK3600) || defined(TARGET_EFM32WG_STK3800) || defined(TARGET_EFM32PG_STK3401)) && !defined(TOOLCHAIN_ARM_MICRO)
32+
#define STACK_SIZE 768
33+
#elif (defined(TARGET_EFM32GG_STK3700)) && !defined(TOOLCHAIN_ARM_MICRO)
34+
#define STACK_SIZE 1536
2935
#else
3036
#define STACK_SIZE DEFAULT_STACK_SIZE
3137
#endif

libraries/tests/rtos/mbed/queue/main.cpp

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,12 @@ typedef struct {
2424
#define STACK_SIZE DEFAULT_STACK_SIZE/4
2525
#elif (defined(TARGET_STM32F030R8)) && defined(TOOLCHAIN_IAR)
2626
#define STACK_SIZE DEFAULT_STACK_SIZE/2
27+
#elif (defined(TARGET_EFM32ZG_STK3200) || defined(TARGET_EFM32HG_STK3400)) && !defined(TOOLCHAIN_ARM_MICRO)
28+
#define STACK_SIZE 512
29+
#elif (defined(TARGET_EFM32LG_STK3600) || defined(TARGET_EFM32WG_STK3800) || defined(TARGET_EFM32PG_STK3401)) && !defined(TOOLCHAIN_ARM_MICRO)
30+
#define STACK_SIZE 768
31+
#elif (defined(TARGET_EFM32GG_STK3700)) && !defined(TOOLCHAIN_ARM_MICRO)
32+
#define STACK_SIZE 1536
2733
#else
2834
#define STACK_SIZE DEFAULT_STACK_SIZE
2935
#endif

libraries/tests/rtos/mbed/semaphore/main.cpp

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,12 @@
2929
#define STACK_SIZE DEFAULT_STACK_SIZE/2
3030
#elif defined(TARGET_STM32F303K8) && defined(TOOLCHAIN_IAR)
3131
#define STACK_SIZE DEFAULT_STACK_SIZE/4
32+
#elif (defined(TARGET_EFM32ZG_STK3200) || defined(TARGET_EFM32HG_STK3400)) && !defined(TOOLCHAIN_ARM_MICRO)
33+
#define STACK_SIZE 512
34+
#elif (defined(TARGET_EFM32LG_STK3600) || defined(TARGET_EFM32WG_STK3800) || defined(TARGET_EFM32PG_STK3401)) && !defined(TOOLCHAIN_ARM_MICRO)
35+
#define STACK_SIZE 768
36+
#elif (defined(TARGET_EFM32GG_STK3700)) && !defined(TOOLCHAIN_ARM_MICRO)
37+
#define STACK_SIZE 1536
3238
#else
3339
#define STACK_SIZE DEFAULT_STACK_SIZE
3440
#endif

libraries/tests/rtos/mbed/signals/main.cpp

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,12 @@
1515
#define STACK_SIZE DEFAULT_STACK_SIZE/4
1616
#elif (defined(TARGET_STM32F030R8)) && defined(TOOLCHAIN_IAR)
1717
#define STACK_SIZE DEFAULT_STACK_SIZE/2
18+
#elif (defined(TARGET_EFM32ZG_STK3200) || defined(TARGET_EFM32HG_STK3400)) && !defined(TOOLCHAIN_ARM_MICRO)
19+
#define STACK_SIZE 512
20+
#elif (defined(TARGET_EFM32LG_STK3600) || defined(TARGET_EFM32WG_STK3800) || defined(TARGET_EFM32PG_STK3401)) && !defined(TOOLCHAIN_ARM_MICRO)
21+
#define STACK_SIZE 768
22+
#elif (defined(TARGET_EFM32GG_STK3700)) && !defined(TOOLCHAIN_ARM_MICRO)
23+
#define STACK_SIZE 1536
1824
#else
1925
#define STACK_SIZE DEFAULT_STACK_SIZE
2026
#endif

rtos/rtx/TARGET_CORTEX_M/RTX_CM_lib.h

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -491,7 +491,17 @@ osThreadDef_t os_thread_def_main = {(os_pthread)pre_main, osPriorityNormal, 1U,
491491
#elif defined(TARGET_STM32L152RC)
492492
#define INITIAL_SP (0x20008000UL)
493493

494+
#elif defined(TARGET_EFM32GG_STK3700)
495+
#define INITIAL_SP (0x20020000UL)
496+
497+
#elif defined(TARGET_EFM32HG_STK3400)
498+
#define INITIAL_SP (0x20002000UL)
499+
500+
#elif defined(TARGET_EFM32LG_STK3600) || defined(TARGET_EFM32WG_STK3800) || defined(TARGET_EFM32PG_STK3401)
501+
#define INITIAL_SP (0x20008000UL)
494502

503+
#elif defined(TARGET_EFM32ZG_STK3200)
504+
#define INITIAL_SP (0x20001000UL)
495505
#else
496506
#error "no target defined"
497507

rtos/rtx/TARGET_CORTEX_M/RTX_Conf_CM.c

Lines changed: 15 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -51,13 +51,15 @@
5151
# if defined(TARGET_LPC1768) || defined(TARGET_LPC2368) || defined(TARGET_LPC4088) || defined(TARGET_LPC4088_DM) || defined(TARGET_LPC4330) || defined(TARGET_LPC4337) || defined(TARGET_LPC1347) || defined(TARGET_K64F) || defined(TARGET_STM32F401RE)\
5252
|| defined(TARGET_STM32F410RB) || defined(TARGET_KL46Z) || defined(TARGET_KL43Z) || defined(TARGET_STM32F407) || defined(TARGET_F407VG) || defined(TARGET_STM32F303VC) || defined(TARGET_LPC1549) || defined(TARGET_LPC11U68) \
5353
|| defined(TARGET_STM32F411RE) || defined(TARGET_STM32F405RG) || defined(TARGET_K22F) || defined(TARGET_STM32F429ZI) || defined(TARGET_STM32F401VC) || defined(TARGET_MAX32610) || defined(TARGET_MAX32600) || defined(TARGET_TEENSY3_1) \
54-
|| defined(TARGET_STM32L152RE) || defined(TARGET_STM32F446RE) || defined(TARGET_STM32F446VE) || defined(TARGET_STM32L476VG) || defined(TARGET_STM32L476RG) || defined(TARGET_STM32F469NI) || defined(TARGET_STM32F746NG) || defined(TARGET_STM32F746ZG) || defined(TARGET_STM32L152RC)
54+
|| defined(TARGET_STM32L152RE) || defined(TARGET_STM32F446RE) || defined(TARGET_STM32F446VE) || defined(TARGET_STM32L476VG) || defined(TARGET_STM32L476RG) || defined(TARGET_STM32F469NI) || defined(TARGET_STM32F746NG) || defined(TARGET_STM32F746ZG) || defined(TARGET_STM32L152RC) \
55+
|| defined(TARGET_EFM32GG_STK3700) || defined(TARGET_EFM32WG_STK3800) || defined(TARGET_EFM32LG_STK3600) || defined(TARGET_EFM32PG_STK3401)
5556
# define OS_TASKCNT 14
5657
# elif defined(TARGET_LPC11U24) || defined(TARGET_STM32F303RE) || defined(TARGET_STM32F303K8) || defined(TARGET_LPC11U35_401) || defined(TARGET_LPC11U35_501) || defined(TARGET_LPCCAPPUCCINO) || defined(TARGET_LPC1114) \
5758
|| defined(TARGET_LPC812) || defined(TARGET_KL25Z) || defined(TARGET_KL26Z) || defined(TARGET_KL27Z) || defined(TARGET_KL05Z) || defined(TARGET_STM32F100RB) || defined(TARGET_STM32F051R8) \
5859
|| defined(TARGET_STM32F103RB) || defined(TARGET_LPC824) || defined(TARGET_STM32F302R8) || defined(TARGET_STM32F334R8) || defined(TARGET_STM32F334C8) \
5960
|| defined(TARGET_STM32L031K6) || defined(TARGET_STM32L053R8) || defined(TARGET_STM32L053C8) || defined(TARGET_STM32L073RZ) || defined(TARGET_STM32F072RB) || defined(TARGET_STM32F091RC) || defined(TARGET_NZ32_SC151) \
60-
|| defined(TARGET_SSCI824) || defined(TARGET_STM32F030R8) || defined(TARGET_STM32F070RB)
61+
|| defined(TARGET_SSCI824) || defined(TARGET_STM32F030R8) || defined(TARGET_STM32F070RB) \
62+
|| defined(TARGET_EFM32HG_STK3400) || defined(TARGET_EFM32ZG_STK3200)
6163
# define OS_TASKCNT 6
6264
# else
6365
# error "no target defined"
@@ -84,14 +86,18 @@
8486
# if defined(TARGET_LPC1768) || defined(TARGET_LPC2368) || defined(TARGET_LPC4088) || defined(TARGET_LPC4088_DM) || defined(TARGET_LPC4330) || defined(TARGET_LPC4337) || defined(TARGET_LPC1347) || defined(TARGET_K64F) || defined(TARGET_STM32F401RE)\
8587
|| defined(TARGET_STM32F410RB) || defined(TARGET_KL46Z) || defined(TARGET_KL43Z) || defined(TARGET_STM32F407) || defined(TARGET_F407VG) || defined(TARGET_STM32F303VC) || defined(TARGET_LPC1549) || defined(TARGET_LPC11U68) \
8688
|| defined(TARGET_STM32F411RE) || defined(TARGET_STM32F405RG) || defined(TARGET_K22F) || defined(TARGET_STM32F429ZI) || defined(TARGET_STM32F401VC) || defined(TARGET_MAX32610) || defined(TARGET_MAX32600) || defined(TARGET_TEENSY3_1) \
87-
|| defined(TARGET_STM32L152RE) || defined(TARGET_STM32F446RE) || defined(TARGET_STM32F446VE) || defined(TARGET_STM32L476VG) || defined(TARGET_STM32L476RG) || defined(TARGET_STM32F469NI) || defined(TARGET_STM32F746NG) || defined(TARGET_STM32F746ZG) || defined(TARGET_STM32L152RC)
89+
|| defined(TARGET_STM32L152RE) || defined(TARGET_STM32F446RE) || defined(TARGET_STM32F446VE) || defined(TARGET_STM32L476VG) || defined(TARGET_STM32L476RG) || defined(TARGET_STM32F469NI) || defined(TARGET_STM32F746NG) || defined(TARGET_STM32F746ZG) || defined(TARGET_STM32L152RC) \
90+
||defined(TARGET_EFM32GG_STK3700)
8891
# define OS_MAINSTKSIZE 256
8992
# elif defined(TARGET_LPC11U24) || defined(TARGET_LPC11U35_401) || defined(TARGET_LPC11U35_501) || defined(TARGET_LPCCAPPUCCINO) || defined(TARGET_LPC1114) \
9093
|| defined(TARGET_LPC812) || defined(TARGET_KL25Z) || defined(TARGET_KL26Z) || defined(TARGET_KL27Z) || defined(TARGET_KL05Z) || defined(TARGET_STM32F100RB) || defined(TARGET_STM32F051R8) \
9194
|| defined(TARGET_STM32F103RB) || defined(TARGET_LPC824) || defined(TARGET_STM32F302R8) || defined(TARGET_STM32F072RB) || defined(TARGET_STM32F091RC) || defined(TARGET_NZ32_SC151) \
92-
|| defined(TARGET_SSCI824) || defined(TARGET_STM32F030R8) || defined(TARGET_STM32F070RB)
95+
|| defined(TARGET_SSCI824) || defined(TARGET_STM32F030R8) || defined(TARGET_STM32F070RB) \
96+
|| defined(TARGET_EFM32WG_STK3800) || defined(TARGET_EFM32LG_STK3600) || defined(TARGET_EFM32PG_STK3401)
9397
# define OS_MAINSTKSIZE 128
94-
# elif defined(TARGET_STM32F334R8) || defined(TARGET_STM32F303RE) || defined(TARGET_STM32F303K8) || defined(TARGET_STM32F334C8) || defined(TARGET_STM32L031K6) || defined(TARGET_STM32L053R8) || defined(TARGET_STM32L053C8) || defined(TARGET_STM32L073RZ)
98+
# elif defined(TARGET_STM32F334R8) || defined(TARGET_STM32F303RE) || defined(TARGET_STM32F303K8) || defined(TARGET_STM32F334C8) \
99+
|| defined(TARGET_STM32L031K6) || defined(TARGET_STM32L053R8) || defined(TARGET_STM32L053C8) || defined(TARGET_STM32L073RZ) \
100+
|| defined(TARGET_EFM32HG_STK3400) || defined(TARGET_EFM32ZG_STK3200)
95101
# define OS_MAINSTKSIZE 112
96102
# else
97103
# error "no target defined"
@@ -240,6 +246,10 @@
240246
#elif defined(TARGET_STM32L152RC)
241247
# define OS_CLOCK 24000000
242248

249+
#elif defined(TARGET_EFM32)
250+
# include "clocking.h"
251+
# define OS_CLOCK REFERENCE_FREQUENCY
252+
243253
# else
244254
# error "no target defined"
245255
# endif

workspace_tools/build_travis.py

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -97,12 +97,12 @@
9797
{ "target": "NRF51_DK", "toolchains": "GCC_ARM", "libs": ["dsp", "fat"] },
9898
{ "target": "NRF51_MICROBIT", "toolchains": "GCC_ARM", "libs": ["dsp", "fat"] },
9999

100-
{ "target": "EFM32ZG_STK3200", "toolchains": "GCC_ARM", "libs": ["dsp"] },
101-
{ "target": "EFM32HG_STK3400", "toolchains": "GCC_ARM", "libs": ["dsp", "usb"] },
102-
{ "target": "EFM32LG_STK3600", "toolchains": "GCC_ARM", "libs": ["dsp", "usb"] },
103-
{ "target": "EFM32GG_STK3700", "toolchains": "GCC_ARM", "libs": ["dsp", "usb"] },
104-
{ "target": "EFM32WG_STK3800", "toolchains": "GCC_ARM", "libs": ["dsp", "usb"] },
105-
{ "target": "EFM32PG_STK3401", "toolchains": "GCC_ARM", "libs": ["dsp"] },
100+
{ "target": "EFM32ZG_STK3200", "toolchains": "GCC_ARM", "libs": ["dsp", "rtos"] },
101+
{ "target": "EFM32HG_STK3400", "toolchains": "GCC_ARM", "libs": ["dsp", "rtos", "usb"] },
102+
{ "target": "EFM32LG_STK3600", "toolchains": "GCC_ARM", "libs": ["dsp", "rtos", "usb"] },
103+
{ "target": "EFM32GG_STK3700", "toolchains": "GCC_ARM", "libs": ["dsp", "rtos", "usb"] },
104+
{ "target": "EFM32WG_STK3800", "toolchains": "GCC_ARM", "libs": ["dsp", "rtos", "usb"] },
105+
{ "target": "EFM32PG_STK3401", "toolchains": "GCC_ARM", "libs": ["dsp", "rtos"] },
106106

107107
{ "target": "MAXWSNENV", "toolchains": "GCC_ARM", "libs": ["dsp", "fat"] },
108108
{ "target": "MAX32600MBED", "toolchains": "GCC_ARM", "libs": ["dsp", "fat"] },

workspace_tools/export_test.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -232,6 +232,7 @@ def test_export(toolchain, target, expected_error=None):
232232
('gcc_arm', 'EFM32WG_STK3800'),
233233
('gcc_arm', 'EFM32ZG_STK3200'),
234234
('gcc_arm', 'EFM32HG_STK3400'),
235+
('gcc_arm', 'EFM32PG_STK3401'),
235236

236237
('ds5_5', 'LPC1768'),
237238
('ds5_5', 'LPC11U24'),

workspace_tools/tests.py

Lines changed: 14 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -692,7 +692,8 @@
692692
"RZ_A1H", "VK_RZ_A1H", "DISCO_F407VG", "DISCO_F429ZI", "NUCLEO_F411RE", "DISCO_F469NI", "NUCLEO_F410RB",
693693
"NUCLEO_F401RE", "NUCLEO_F334R8", "DISCO_F334C8", "NUCLEO_F302R8", "NUCLEO_F030R8", "NUCLEO_F070RB",
694694
"NUCLEO_L031K6", "NUCLEO_L053R8", "DISCO_L053C8", "NUCLEO_L073RZ", "NUCLEO_F072RB", "NUCLEO_F091RC", "DISCO_L476VG", "NUCLEO_L476RG",
695-
"DISCO_F401VC", "NUCLEO_F303RE", "NUCLEO_F303K8", "MAXWSNENV", "MAX32600MBED", "NUCLEO_L152RE", "NUCLEO_F446RE", "NUCLEO_F103RB", "DISCO_F746NG", "NUCLEO_F746ZG", "MOTE_L152RC", "B96B_F446VE"],
695+
"DISCO_F401VC", "NUCLEO_F303RE", "NUCLEO_F303K8", "MAXWSNENV", "MAX32600MBED", "NUCLEO_L152RE", "NUCLEO_F446RE", "NUCLEO_F103RB", "DISCO_F746NG", "NUCLEO_F746ZG", "MOTE_L152RC", "B96B_F446VE",
696+
"EFM32ZG_STK3200", "EFM32HG_STK3400", "EFM32PG_STK3401", "EFM32LG_STK3600", "EFM32GG_STK3700", "EFM32WG_STK3800"],
696697
},
697698
{
698699
"id": "RTOS_2", "description": "Mutex resource lock",
@@ -706,7 +707,8 @@
706707
"NUCLEO_F401RE", "NUCLEO_F334R8", "DISCO_F334C8", "NUCLEO_F302R8", "NUCLEO_F030R8", "NUCLEO_F070RB",
707708
"NUCLEO_L031K6", "NUCLEO_L053R8", "DISCO_L053C8", "NUCLEO_L073RZ", "NUCLEO_F072RB", "NUCLEO_F091RC", "DISCO_L476VG", "NUCLEO_L476RG",
708709
"DISCO_F401VC", "NUCLEO_F303RE", "NUCLEO_F303K8", "MAXWSNENV", "MAX32600MBED", "NUCLEO_L152RE", "NUCLEO_F446RE", "NUCLEO_F103RB", "DISCO_F746NG",
709-
"NUCLEO_F746ZG", "MOTE_L152RC", "B96B_F446VE"],
710+
"NUCLEO_F746ZG", "MOTE_L152RC", "B96B_F446VE",
711+
"EFM32ZG_STK3200", "EFM32HG_STK3400", "EFM32PG_STK3401", "EFM32LG_STK3600", "EFM32GG_STK3700", "EFM32WG_STK3800"],
710712
},
711713
{
712714
"id": "RTOS_3", "description": "Semaphore resource lock",
@@ -720,7 +722,8 @@
720722
"NUCLEO_F401RE", "NUCLEO_F334R8", "DISCO_F334C8", "NUCLEO_F302R8", "NUCLEO_F030R8", "NUCLEO_F070RB",
721723
"NUCLEO_L031K6", "NUCLEO_L053R8", "DISCO_L053C8", "NUCLEO_L073RZ", "NUCLEO_F072RB", "NUCLEO_F091RC", "DISCO_L476VG", "NUCLEO_L476RG",
722724
"DISCO_F401VC", "NUCLEO_F303RE", "NUCLEO_F303K8", "MAXWSNENV", "MAX32600MBED", "NUCLEO_L152RE", "NUCLEO_F446RE", "NUCLEO_F103RB", "DISCO_F746NG",
723-
"NUCLEO_F746ZG", "MOTE_L152RC", "B96B_F446VE"],
725+
"NUCLEO_F746ZG", "MOTE_L152RC", "B96B_F446VE",
726+
"EFM32ZG_STK3200", "EFM32HG_STK3400", "EFM32PG_STK3401", "EFM32LG_STK3600", "EFM32GG_STK3700", "EFM32WG_STK3800"],
724727
},
725728
{
726729
"id": "RTOS_4", "description": "Signals messaging",
@@ -733,7 +736,8 @@
733736
"NUCLEO_F401RE", "NUCLEO_F334R8", "DISCO_F334C8", "NUCLEO_F302R8", "NUCLEO_F030R8", "NUCLEO_F070RB",
734737
"NUCLEO_L031K6", "NUCLEO_L053R8", "DISCO_L053C8", "NUCLEO_L073RZ", "NUCLEO_F072RB", "NUCLEO_F091RC", "DISCO_L476VG", "NUCLEO_L476RG",
735738
"DISCO_F401VC", "NUCLEO_F303RE", "NUCLEO_F303K8", "MAXWSNENV", "MAX32600MBED", "NUCLEO_L152RE", "NUCLEO_F446RE", "NUCLEO_F103RB", "DISCO_F746NG",
736-
"NUCLEO_F746ZG", "MOTE_L152RC", "B96B_F446VE"],
739+
"NUCLEO_F746ZG", "MOTE_L152RC", "B96B_F446VE",
740+
"EFM32ZG_STK3200", "EFM32HG_STK3400", "EFM32PG_STK3401", "EFM32LG_STK3600", "EFM32GG_STK3700", "EFM32WG_STK3800"],
737741
},
738742
{
739743
"id": "RTOS_5", "description": "Queue messaging",
@@ -759,7 +763,8 @@
759763
"NUCLEO_F401RE", "NUCLEO_F334R8", "DISCO_F334C8", "NUCLEO_F302R8", "NUCLEO_F030R8", "NUCLEO_F070RB",
760764
"NUCLEO_L031K6", "NUCLEO_L053R8", "DISCO_L053C8", "NUCLEO_L073RZ", "NUCLEO_F072RB", "NUCLEO_F091RC", "DISCO_L476VG", "NUCLEO_L476RG",
761765
"DISCO_F401VC", "NUCLEO_F303RE", "NUCLEO_F303K8", "MAXWSNENV", "MAX32600MBED", "NUCLEO_L152RE",
762-
"NUCLEO_F446RE", "NUCLEO_F103RB", "DISCO_F746NG", "NUCLEO_F746ZG", "MOTE_L152RC", "B96B_F446VE"],
766+
"NUCLEO_F446RE", "NUCLEO_F103RB", "DISCO_F746NG", "NUCLEO_F746ZG", "MOTE_L152RC", "B96B_F446VE",
767+
"EFM32ZG_STK3200", "EFM32HG_STK3400", "EFM32PG_STK3401", "EFM32LG_STK3600", "EFM32GG_STK3700", "EFM32WG_STK3800"],
763768
},
764769
{
765770
"id": "RTOS_7", "description": "Timer",
@@ -774,7 +779,8 @@
774779
"NUCLEO_F401RE", "NUCLEO_F334R8", "DISCO_F334C8", "NUCLEO_F302R8", "NUCLEO_F030R8", "NUCLEO_F070RB",
775780
"NUCLEO_L031K6", "NUCLEO_L053R8", "DISCO_L053C8", "NUCLEO_L073RZ", "NUCLEO_F072RB", "NUCLEO_F091RC", "DISCO_L476VG", "NUCLEO_L476RG",
776781
"DISCO_F401VC", "NUCLEO_F303RE", "NUCLEO_F303K8", "MAXWSNENV", "MAX32600MBED", "NUCLEO_L152RE",
777-
"NUCLEO_F446RE", "NUCLEO_F103RB", "DISCO_F746NG", "NUCLEO_F746ZG", "MOTE_L152RC", "B96B_F446VE"],
782+
"NUCLEO_F446RE", "NUCLEO_F103RB", "DISCO_F746NG", "NUCLEO_F746ZG", "MOTE_L152RC", "B96B_F446VE",
783+
"EFM32ZG_STK3200", "EFM32HG_STK3400", "EFM32PG_STK3401", "EFM32LG_STK3600", "EFM32GG_STK3700", "EFM32WG_STK3800"],
778784
},
779785
{
780786
"id": "RTOS_8", "description": "ISR (Queue)",
@@ -787,7 +793,8 @@
787793
"NUCLEO_F401RE", "NUCLEO_F334R8", "DISCO_F334C8", "NUCLEO_F302R8", "NUCLEO_F030R8", "NUCLEO_F070RB",
788794
"NUCLEO_L031K6", "NUCLEO_L053R8", "DISCO_L053C8", "NUCLEO_L073RZ", "NUCLEO_F072RB", "NUCLEO_F091RC", "DISCO_L476VG", "NUCLEO_L476RG",
789795
"DISCO_F401VC", "NUCLEO_F303RE", "NUCLEO_F303K8", "MAXWSNENV", "MAX32600MBED", "NUCLEO_L152RE",
790-
"NUCLEO_F446RE", "NUCLEO_F103RB", "DISCO_F746NG", "NUCLEO_F746ZG", "MOTE_L152RC", "B96B_F446VE"],
796+
"NUCLEO_F446RE", "NUCLEO_F103RB", "DISCO_F746NG", "NUCLEO_F746ZG", "MOTE_L152RC", "B96B_F446VE",
797+
"EFM32ZG_STK3200", "EFM32HG_STK3400", "EFM32PG_STK3401", "EFM32LG_STK3600", "EFM32GG_STK3700", "EFM32WG_STK3800"],
791798
},
792799
{
793800
"id": "RTOS_9", "description": "SD File write-read",

0 commit comments

Comments
 (0)