Skip to content

Commit d00bf5d

Browse files
asmellbyjhedberg
authored andcommitted
simplicity_sdk: Import HAL version 2025.6.2
Origin: Simplicity SDK License: Zlib URL: https://github.com/SiliconLabs/simplicity_sdk Commit: 9932cb11b84037b7dea086bb375cb1a039134507 Version: 2025.6.2 Purpose: HAL for Silicon Labs Series 2 devices Signed-off-by: Aksel Skauge Mellbye <[email protected]>
1 parent a690024 commit d00bf5d

File tree

58 files changed

+4460
-1078
lines changed

Some content is hidden

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

58 files changed

+4460
-1078
lines changed

simplicity_sdk/platform/Device/SiliconLabs/EFR32FG23/Include/efr32fg23l010f128gm40.h

Lines changed: 1565 additions & 0 deletions
Large diffs are not rendered by default.

simplicity_sdk/platform/Device/SiliconLabs/EFR32FG23/Include/efr32fg23l020f128gm40.h

Lines changed: 1565 additions & 0 deletions
Large diffs are not rendered by default.

simplicity_sdk/platform/Device/SiliconLabs/EFR32FG23/Include/em_device.h

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -104,6 +104,12 @@
104104
#elif defined(EFR32FG23B021F512IM48)
105105
#include "efr32fg23b021f512im48.h"
106106

107+
#elif defined(EFR32FG23L010F128GM40)
108+
#include "efr32fg23l010f128gm40.h"
109+
110+
#elif defined(EFR32FG23L020F128GM40)
111+
#include "efr32fg23l020f128gm40.h"
112+
107113
#else
108114
#error "em_device.h: PART NUMBER undefined"
109115
#endif

simplicity_sdk/platform/common/inc/sl_platform_version.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@
3232

3333
#define SL_PLATFORM_MAJOR_VERSION 5
3434
#define SL_PLATFORM_MINOR_VERSION 2
35-
#define SL_PLATFORM_PATCH_VERSION 0
35+
#define SL_PLATFORM_PATCH_VERSION 2
3636

3737
#define SL_PLATFORM_VERSION ((SL_PLATFORM_MAJOR_VERSION << 8) \
3838
| (SL_PLATFORM_MINOR_VERSION << 4) \

simplicity_sdk/platform/emlib/src/em_emu.c

Lines changed: 24 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1452,11 +1452,15 @@ SL_WEAK void EMU_EFPEM4PresleepHook(void)
14521452
* @brief
14531453
* Enter energy mode 4 (EM4).
14541454
*
1455+
* @details
1456+
* This function never returns. It waits after the EM4 entry request to make
1457+
* sure the CPU is properly shutdown by calling WFI.
1458+
*
14551459
* @note
14561460
* Only a power on reset or external reset pin can wake the device from EM4.
14571461
* Device which is configured in Boost DC-DC mode can not enter EM4.
14581462
******************************************************************************/
1459-
void EMU_EnterEM4(void)
1463+
__NO_RETURN void EMU_EnterEM4(void)
14601464
{
14611465
/* Device with Boost DC-DC cannot enter EM4 because Boost DC-DC module does not
14621466
* have BYPASS switch so DC-DC converter can not be set to bypass mode. */
@@ -1501,8 +1505,8 @@ void EMU_EnterEM4(void)
15011505
#if defined(_DCDC_IF_EM4ERR_MASK)
15021506
/* Make sure DCDC Mode is not modified, from this point forward,
15031507
* by another code section. */
1504-
CORE_DECLARE_IRQ_STATE;
1505-
CORE_ENTER_CRITICAL();
1508+
// Make sure that we are not interrupted while we are entering em4
1509+
CORE_CRITICAL_IRQ_DISABLE();
15061510

15071511
/* Workaround for bug that may cause a Hard Fault on EM4 entry */
15081512
CMU_CLOCK_SELECT_SET(SYSCLK, FSRCO);
@@ -1590,37 +1594,41 @@ void EMU_EnterEM4(void)
15901594
#if defined(_DCDC_IF_EM4ERR_MASK)
15911595
/* If EM4ERR flag in DCDC->IF is set, mean that device cannot enter EM4, device will be suspended in this assertion */
15921596
EFM_ASSERT((DCDC->IF & _DCDC_IF_EM4ERR_MASK) == 0);
1593-
CORE_EXIT_CRITICAL();
15941597
#endif
1598+
1599+
// Wait for EM4 entry using WFI.
1600+
__WFI();
1601+
1602+
for (;; ) {
1603+
// __NO_RETURN
1604+
}
15951605
}
15961606

15971607
/***************************************************************************//**
15981608
* @brief
15991609
* Enter energy mode 4 (EM4).
16001610
*
16011611
* @details
1602-
* This function waits after the EM4 entry request to make sure the CPU
1603-
* is properly shutdown or the EM4 entry failed.
1612+
* This function never returns. It waits after the EM4 entry request to make
1613+
* sure the CPU is properly shutdown by calling WFI.
16041614
*
16051615
* @note
16061616
* Only a power on reset or external reset pin can wake the device from EM4.
16071617
******************************************************************************/
16081618
void EMU_EnterEM4Wait(void)
16091619
{
16101620
EMU_EnterEM4();
1611-
1612-
// The EM4 entry waiting loop should take 4 cycles by loop minimally (Compiler dependent).
1613-
// We would then wait for (EMU_EM4_ENTRY_WAIT_LOOPS * 4) clock cycles.
1614-
for (uint16_t i = 0; i < EMU_EM4_ENTRY_WAIT_LOOPS; i++) {
1615-
__NOP();
1616-
}
16171621
}
16181622

16191623
#if defined(_EMU_EM4CTRL_MASK)
16201624
/***************************************************************************//**
16211625
* @brief
16221626
* Enter energy mode 4 hibernate (EM4H).
16231627
*
1628+
* @details
1629+
* This function never returns. It waits after the EM4 entry request to make
1630+
* sure the CPU is properly shutdown by calling WFI.
1631+
*
16241632
* @note
16251633
* Retention of clocks and GPIO in EM4 can be configured using
16261634
* @ref EMU_EM4Init before calling this function.
@@ -1637,6 +1645,10 @@ void EMU_EnterEM4H(void)
16371645
* @brief
16381646
* Enter energy mode 4 shutoff (EM4S).
16391647
*
1648+
* @details
1649+
* This function never returns. It waits after the EM4 entry request to make
1650+
* sure the CPU is properly shutdown by calling WFI.
1651+
*
16401652
* @note
16411653
* Retention of clocks and GPIO in EM4 can be configured using
16421654
* @ref EMU_EM4Init before calling this function.

simplicity_sdk/platform/radio/rail_lib/chip/efr32/protocol_config/efr32xg24/ble_efr32xg24_configurator_out.c

Lines changed: 19 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,12 @@
22
* @brief RAIL Configuration
33
* @details
44
* WARNING: Auto-Generated Radio Config - DO NOT EDIT
5-
* Radio Configurator Version: 2404.4.4 (42ce28d3f3)
6-
* RAIL Adapter Version: 2.4.33 (e3d4627956)
5+
* Radio Configurator Version: 2504.1.1 (a165f360ce)
6+
* RAIL Adapter Version: 2.4.33 (14b7437903)
77
* RAIL Compatibility: 2.x
88
*******************************************************************************
99
* # License
10-
* <b>Copyright 2019 Silicon Laboratories Inc. www.silabs.com</b>
10+
* <b>Copyright 2025 Silicon Laboratories Inc. www.silabs.com</b>
1111
*******************************************************************************
1212
*
1313
* SPDX-License-Identifier: Zlib
@@ -67,12 +67,12 @@ static const uint8_t hfxoRetimingConfigEntries[] = {
6767
};
6868

6969
#ifdef RADIO_CONFIG_ENABLE_STACK_INFO
70-
static const uint8_t stackInfo_0[2] = { 0x03, 0x05 };
70+
static const uint8_t stackInfo_0[2] = { 0x03, 0x0a };
7171
static const uint8_t stackInfo_1[2] = { 0x03, 0x02 };
72-
static const uint8_t stackInfo_2[2] = { 0x03, 0x06 };
73-
static const uint8_t stackInfo_3[2] = { 0x03, 0x04 };
74-
static const uint8_t stackInfo_4[2] = { 0x03, 0x03 };
75-
static const uint8_t stackInfo_5[2] = { 0x03, 0x07 };
72+
static const uint8_t stackInfo_2[2] = { 0x03, 0x08 };
73+
static const uint8_t stackInfo_3[2] = { 0x03, 0x03 };
74+
static const uint8_t stackInfo_4[2] = { 0x03, 0x04 };
75+
static const uint8_t stackInfo_5[2] = { 0x03, 0x05 };
7676
#endif // RADIO_CONFIG_ENABLE_STACK_INFO
7777

7878
static RAIL_ChannelConfigEntryAttr_t channelConfigEntryAttr_0 = {
@@ -114,7 +114,7 @@ static RAIL_ChannelConfigEntryAttr_t channelConfigEntryAttr_1 = {
114114
};
115115

116116
static const uint32_t phyInfo_0[] = {
117-
18UL,
117+
20UL,
118118
0x00924924UL, // 146.28571428571428
119119
(uint32_t) NULL,
120120
(uint32_t) irCalConfig_0,
@@ -134,10 +134,11 @@ static const uint32_t phyInfo_0[] = {
134134
(uint32_t) NULL,
135135
(uint32_t) NULL,
136136
(uint32_t) NULL,
137+
(uint32_t) 0UL,
137138
};
138139

139140
static const uint32_t phyInfo_1[] = {
140-
18UL,
141+
20UL,
141142
0x00666666UL, // 102.39999999999999
142143
(uint32_t) NULL,
143144
(uint32_t) irCalConfig_0,
@@ -157,10 +158,11 @@ static const uint32_t phyInfo_1[] = {
157158
(uint32_t) NULL,
158159
(uint32_t) NULL,
159160
(uint32_t) NULL,
161+
(uint32_t) 0UL,
160162
};
161163

162164
static const uint32_t phyInfo_2[] = {
163-
18UL,
165+
20UL,
164166
0x0071C71CUL, // 113.77777777777776
165167
(uint32_t) NULL,
166168
(uint32_t) irCalConfig_1,
@@ -180,10 +182,11 @@ static const uint32_t phyInfo_2[] = {
180182
(uint32_t) NULL,
181183
(uint32_t) NULL,
182184
(uint32_t) NULL,
185+
(uint32_t) 0UL,
183186
};
184187

185188
static const uint32_t phyInfo_3[] = {
186-
18UL,
189+
20UL,
187190
0x0071C71CUL, // 113.77777777777776
188191
(uint32_t) NULL,
189192
(uint32_t) irCalConfig_1,
@@ -203,10 +206,11 @@ static const uint32_t phyInfo_3[] = {
203206
(uint32_t) NULL,
204207
(uint32_t) NULL,
205208
(uint32_t) NULL,
209+
(uint32_t) 0UL,
206210
};
207211

208212
static const uint32_t phyInfo_4[] = {
209-
18UL,
213+
20UL,
210214
0x0071C71CUL, // 113.77777777777776
211215
(uint32_t) NULL,
212216
(uint32_t) irCalConfig_1,
@@ -226,6 +230,7 @@ static const uint32_t phyInfo_4[] = {
226230
(uint32_t) NULL,
227231
(uint32_t) NULL,
228232
(uint32_t) NULL,
233+
(uint32_t) 0UL,
229234
};
230235

231236
const uint32_t ble_viterbi1M_modemConfigBase[] = {
@@ -833,7 +838,7 @@ const uint32_t ble_LR_DSA_500kb_0_37_modemConfig[] = {
833838
const uint32_t ble_LR_DSA_1Mb_0_37_modemConfig[] = {
834839
0x03014FFCUL, (uint32_t) &phyInfo_4, /* Write: SEQ.PHYINFO */
835840
0x00014010UL, 0x00004100UL, /* Write: FRC.MAXLENGTH */
836-
0x0001403CUL, 0x00000010UL, /* Write: FRC.FECCTRL */
841+
0x0001403CUL, 0x00000000UL, /* Write: FRC.FECCTRL */
837842
0x00014048UL, 0x03000720UL, /* Write: FRC.CTRL */
838843
0x00014050UL, 0x00000000UL, /* Write: FRC.TRAILTXDATACTRL */
839844
0x0001405CUL, 0x00000F0DUL, /* Write: FRC.CONVGENERATOR */

simplicity_sdk/platform/radio/rail_lib/chip/efr32/protocol_config/efr32xg24/ble_efr32xg24_configurator_out.h

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,12 @@
22
* @brief RAIL Configuration
33
* @details
44
* WARNING: Auto-Generated Radio Config Header - DO NOT EDIT
5-
* Radio Configurator Version: 2404.4.4 (42ce28d3f3)
6-
* RAIL Adapter Version: 2.4.33 (e3d4627956)
5+
* Radio Configurator Version: 2504.1.1 (a165f360ce)
6+
* RAIL Adapter Version: 2.4.33 (14b7437903)
77
* RAIL Compatibility: 2.x
88
*******************************************************************************
99
* # License
10-
* <b>Copyright 2019 Silicon Laboratories Inc. www.silabs.com</b>
10+
* <b>Copyright 2025 Silicon Laboratories Inc. www.silabs.com</b>
1111
*******************************************************************************
1212
*
1313
* SPDX-License-Identifier: Zlib

simplicity_sdk/platform/radio/rail_lib/chip/efr32/protocol_config/efr32xg26/ble_efr32xg26_configurator_out.c

Lines changed: 19 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,12 @@
22
* @brief RAIL Configuration
33
* @details
44
* WARNING: Auto-Generated Radio Config - DO NOT EDIT
5-
* Radio Configurator Version: 2404.4.4 (42ce28d3f3)
6-
* RAIL Adapter Version: 2.4.33 (e3d4627956)
5+
* Radio Configurator Version: 2504.1.1 (a165f360ce)
6+
* RAIL Adapter Version: 2.4.33 (14b7437903)
77
* RAIL Compatibility: 2.x
88
*******************************************************************************
99
* # License
10-
* <b>Copyright 2019 Silicon Laboratories Inc. www.silabs.com</b>
10+
* <b>Copyright 2025 Silicon Laboratories Inc. www.silabs.com</b>
1111
*******************************************************************************
1212
*
1313
* SPDX-License-Identifier: Zlib
@@ -67,12 +67,12 @@ static const uint8_t hfxoRetimingConfigEntries[] = {
6767
};
6868

6969
#ifdef RADIO_CONFIG_ENABLE_STACK_INFO
70-
static const uint8_t stackInfo_0[2] = { 0x03, 0x05 };
70+
static const uint8_t stackInfo_0[2] = { 0x03, 0x0a };
7171
static const uint8_t stackInfo_1[2] = { 0x03, 0x02 };
72-
static const uint8_t stackInfo_2[2] = { 0x03, 0x06 };
73-
static const uint8_t stackInfo_3[2] = { 0x03, 0x04 };
74-
static const uint8_t stackInfo_4[2] = { 0x03, 0x03 };
75-
static const uint8_t stackInfo_5[2] = { 0x03, 0x07 };
72+
static const uint8_t stackInfo_2[2] = { 0x03, 0x08 };
73+
static const uint8_t stackInfo_3[2] = { 0x03, 0x03 };
74+
static const uint8_t stackInfo_4[2] = { 0x03, 0x04 };
75+
static const uint8_t stackInfo_5[2] = { 0x03, 0x05 };
7676
#endif // RADIO_CONFIG_ENABLE_STACK_INFO
7777

7878
static RAIL_ChannelConfigEntryAttr_t channelConfigEntryAttr_0 = {
@@ -114,7 +114,7 @@ static RAIL_ChannelConfigEntryAttr_t channelConfigEntryAttr_1 = {
114114
};
115115

116116
static const uint32_t phyInfo_0[] = {
117-
18UL,
117+
20UL,
118118
0x00924924UL, // 146.28571428571428
119119
(uint32_t) NULL,
120120
(uint32_t) irCalConfig_0,
@@ -134,10 +134,11 @@ static const uint32_t phyInfo_0[] = {
134134
(uint32_t) NULL,
135135
(uint32_t) NULL,
136136
(uint32_t) NULL,
137+
(uint32_t) 0UL,
137138
};
138139

139140
static const uint32_t phyInfo_1[] = {
140-
18UL,
141+
20UL,
141142
0x00666666UL, // 102.39999999999999
142143
(uint32_t) NULL,
143144
(uint32_t) irCalConfig_0,
@@ -157,10 +158,11 @@ static const uint32_t phyInfo_1[] = {
157158
(uint32_t) NULL,
158159
(uint32_t) NULL,
159160
(uint32_t) NULL,
161+
(uint32_t) 0UL,
160162
};
161163

162164
static const uint32_t phyInfo_2[] = {
163-
18UL,
165+
20UL,
164166
0x0071C71CUL, // 113.77777777777776
165167
(uint32_t) NULL,
166168
(uint32_t) irCalConfig_1,
@@ -180,10 +182,11 @@ static const uint32_t phyInfo_2[] = {
180182
(uint32_t) NULL,
181183
(uint32_t) NULL,
182184
(uint32_t) NULL,
185+
(uint32_t) 0UL,
183186
};
184187

185188
static const uint32_t phyInfo_3[] = {
186-
18UL,
189+
20UL,
187190
0x0071C71CUL, // 113.77777777777776
188191
(uint32_t) NULL,
189192
(uint32_t) irCalConfig_1,
@@ -203,10 +206,11 @@ static const uint32_t phyInfo_3[] = {
203206
(uint32_t) NULL,
204207
(uint32_t) NULL,
205208
(uint32_t) NULL,
209+
(uint32_t) 0UL,
206210
};
207211

208212
static const uint32_t phyInfo_4[] = {
209-
18UL,
213+
20UL,
210214
0x0071C71CUL, // 113.77777777777776
211215
(uint32_t) NULL,
212216
(uint32_t) irCalConfig_1,
@@ -226,6 +230,7 @@ static const uint32_t phyInfo_4[] = {
226230
(uint32_t) NULL,
227231
(uint32_t) NULL,
228232
(uint32_t) NULL,
233+
(uint32_t) 0UL,
229234
};
230235

231236
const uint32_t ble_viterbi1M_modemConfigBase[] = {
@@ -833,7 +838,7 @@ const uint32_t ble_LR_DSA_500kb_0_37_modemConfig[] = {
833838
const uint32_t ble_LR_DSA_1Mb_0_37_modemConfig[] = {
834839
0x03014FFCUL, (uint32_t) &phyInfo_4, /* Write: SEQ.PHYINFO */
835840
0x00014010UL, 0x00004100UL, /* Write: FRC.MAXLENGTH */
836-
0x0001403CUL, 0x00000010UL, /* Write: FRC.FECCTRL */
841+
0x0001403CUL, 0x00000000UL, /* Write: FRC.FECCTRL */
837842
0x00014048UL, 0x03000720UL, /* Write: FRC.CTRL */
838843
0x00014050UL, 0x00000000UL, /* Write: FRC.TRAILTXDATACTRL */
839844
0x0001405CUL, 0x00000F0DUL, /* Write: FRC.CONVGENERATOR */

simplicity_sdk/platform/radio/rail_lib/chip/efr32/protocol_config/efr32xg26/ble_efr32xg26_configurator_out.h

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,12 @@
22
* @brief RAIL Configuration
33
* @details
44
* WARNING: Auto-Generated Radio Config Header - DO NOT EDIT
5-
* Radio Configurator Version: 2404.4.4 (42ce28d3f3)
6-
* RAIL Adapter Version: 2.4.33 (e3d4627956)
5+
* Radio Configurator Version: 2504.1.1 (a165f360ce)
6+
* RAIL Adapter Version: 2.4.33 (14b7437903)
77
* RAIL Compatibility: 2.x
88
*******************************************************************************
99
* # License
10-
* <b>Copyright 2019 Silicon Laboratories Inc. www.silabs.com</b>
10+
* <b>Copyright 2025 Silicon Laboratories Inc. www.silabs.com</b>
1111
*******************************************************************************
1212
*
1313
* SPDX-License-Identifier: Zlib

0 commit comments

Comments
 (0)