Skip to content

Commit 13343bc

Browse files
loopjasmellby
authored andcommitted
simplicity_sdk: Add SDK files for EFR32MG22 SoCs
Origin: Simplicity SDK License: Zlib URL: https://github.com/SiliconLabs/simplicity_sdk Commit: f107f75d25c1d92dc3d5ca16b83f1656145f4e6e Version: 2025.6.0 Purpose: Add support for EFR32MGM22 SoCs. Signed-off-by: James Smith <[email protected]>
1 parent 9eb6b2d commit 13343bc

Some content is hidden

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

46 files changed

+31179
-0
lines changed

simplicity_sdk/platform/Device/SiliconLabs/EFR32MG22/Include/efr32mg22_aes.h

Lines changed: 453 additions & 0 deletions
Large diffs are not rendered by default.
Lines changed: 80 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,80 @@
1+
/**************************************************************************//**
2+
* @file
3+
* @brief EFR32MG22 BURAM register and bit field definitions
4+
******************************************************************************
5+
* # License
6+
* <b>Copyright 2025 Silicon Laboratories, Inc. www.silabs.com</b>
7+
******************************************************************************
8+
*
9+
* SPDX-License-Identifier: Zlib
10+
*
11+
* The licensor of this software is Silicon Laboratories Inc.
12+
*
13+
* This software is provided 'as-is', without any express or implied
14+
* warranty. In no event will the authors be held liable for any damages
15+
* arising from the use of this software.
16+
*
17+
* Permission is granted to anyone to use this software for any purpose,
18+
* including commercial applications, and to alter it and redistribute it
19+
* freely, subject to the following restrictions:
20+
*
21+
* 1. The origin of this software must not be misrepresented; you must not
22+
* claim that you wrote the original software. If you use this software
23+
* in a product, an acknowledgment in the product documentation would be
24+
* appreciated but is not required.
25+
* 2. Altered source versions must be plainly marked as such, and must not be
26+
* misrepresented as being the original software.
27+
* 3. This notice may not be removed or altered from any source distribution.
28+
*
29+
*****************************************************************************/
30+
#ifndef EFR32MG22_BURAM_H
31+
#define EFR32MG22_BURAM_H
32+
#define BURAM_HAS_SET_CLEAR
33+
34+
/**************************************************************************//**
35+
* @addtogroup Parts
36+
* @{
37+
******************************************************************************/
38+
/**************************************************************************//**
39+
* @defgroup EFR32MG22_BURAM BURAM
40+
* @{
41+
* @brief EFR32MG22 BURAM Register Declaration.
42+
*****************************************************************************/
43+
44+
/** BURAM RET Register Group Declaration. */
45+
typedef struct buram_ret_typedef{
46+
__IOM uint32_t REG; /**< Retention Register */
47+
} BURAM_RET_TypeDef;
48+
49+
/** BURAM Register Declaration. */
50+
typedef struct buram_typedef{
51+
BURAM_RET_TypeDef RET[32U]; /**< RetentionReg */
52+
uint32_t RESERVED0[992U]; /**< Reserved for future use */
53+
BURAM_RET_TypeDef RET_SET[32U]; /**< RetentionReg */
54+
uint32_t RESERVED1[992U]; /**< Reserved for future use */
55+
BURAM_RET_TypeDef RET_CLR[32U]; /**< RetentionReg */
56+
uint32_t RESERVED2[992U]; /**< Reserved for future use */
57+
BURAM_RET_TypeDef RET_TGL[32U]; /**< RetentionReg */
58+
} BURAM_TypeDef;
59+
/** @} End of group EFR32MG22_BURAM */
60+
61+
/**************************************************************************//**
62+
* @addtogroup EFR32MG22_BURAM
63+
* @{
64+
* @defgroup EFR32MG22_BURAM_BitFields BURAM Bit Fields
65+
* @{
66+
*****************************************************************************/
67+
68+
/* Bit fields for BURAM RET_REG */
69+
#define _BURAM_RET_REG_RESETVALUE 0x00000000UL /**< Default value for BURAM_RET_REG */
70+
#define _BURAM_RET_REG_MASK 0xFFFFFFFFUL /**< Mask for BURAM_RET_REG */
71+
#define _BURAM_RET_REG_RETREG_SHIFT 0 /**< Shift value for BURAM_RETREG */
72+
#define _BURAM_RET_REG_RETREG_MASK 0xFFFFFFFFUL /**< Bit mask for BURAM_RETREG */
73+
#define _BURAM_RET_REG_RETREG_DEFAULT 0x00000000UL /**< Mode DEFAULT for BURAM_RET_REG */
74+
#define BURAM_RET_REG_RETREG_DEFAULT (_BURAM_RET_REG_RETREG_DEFAULT << 0) /**< Shifted mode DEFAULT for BURAM_RET_REG */
75+
76+
/** @} End of group EFR32MG22_BURAM_BitFields */
77+
/** @} End of group EFR32MG22_BURAM */
78+
/** @} End of group Parts */
79+
80+
#endif // EFR32MG22_BURAM_H

simplicity_sdk/platform/Device/SiliconLabs/EFR32MG22/Include/efr32mg22_burtc.h

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

simplicity_sdk/platform/Device/SiliconLabs/EFR32MG22/Include/efr32mg22_cmu.h

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

simplicity_sdk/platform/Device/SiliconLabs/EFR32MG22/Include/efr32mg22_cryptoacc.h

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

simplicity_sdk/platform/Device/SiliconLabs/EFR32MG22/Include/efr32mg22_dcdc.h

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

simplicity_sdk/platform/Device/SiliconLabs/EFR32MG22/Include/efr32mg22_devinfo.h

Lines changed: 903 additions & 0 deletions
Large diffs are not rendered by default.
Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,59 @@
1+
/**************************************************************************//**
2+
* @file
3+
* @brief EFR32MG22 DMA descriptor bit field definitions
4+
******************************************************************************
5+
* # License
6+
* <b>Copyright 2025 Silicon Laboratories, Inc. www.silabs.com</b>
7+
******************************************************************************
8+
*
9+
* SPDX-License-Identifier: Zlib
10+
*
11+
* The licensor of this software is Silicon Laboratories Inc.
12+
*
13+
* This software is provided 'as-is', without any express or implied
14+
* warranty. In no event will the authors be held liable for any damages
15+
* arising from the use of this software.
16+
*
17+
* Permission is granted to anyone to use this software for any purpose,
18+
* including commercial applications, and to alter it and redistribute it
19+
* freely, subject to the following restrictions:
20+
*
21+
* 1. The origin of this software must not be misrepresented; you must not
22+
* claim that you wrote the original software. If you use this software
23+
* in a product, an acknowledgment in the product documentation would be
24+
* appreciated but is not required.
25+
* 2. Altered source versions must be plainly marked as such, and must not be
26+
* misrepresented as being the original software.
27+
* 3. This notice may not be removed or altered from any source distribution.
28+
*
29+
*****************************************************************************/
30+
#ifndef EFR32MG22_DMA_DESCRIPTOR_H
31+
#define EFR32MG22_DMA_DESCRIPTOR_H
32+
33+
#if defined(__ICCARM__)
34+
#pragma system_include /* Treat file as system include file. */
35+
#elif defined(__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050)
36+
#pragma clang system_header /* Treat file as system include file. */
37+
#endif
38+
39+
/**************************************************************************//**
40+
* @addtogroup Parts
41+
* @{
42+
******************************************************************************/
43+
/**************************************************************************//**
44+
* @defgroup DMA_DESCRIPTOR DMA Descriptor
45+
* @{
46+
*****************************************************************************/
47+
/** DMA_DESCRIPTOR Register Declaration */
48+
typedef struct {
49+
/* Note! Use of double __IOM (volatile) qualifier to ensure that both */
50+
/* pointer and referenced memory are declared volatile. */
51+
__IOM uint32_t CTRL; /**< DMA control register */
52+
__IOM void * __IOM SRC; /**< DMA source address */
53+
__IOM void * __IOM DST; /**< DMA destination address */
54+
__IOM void * __IOM LINK; /**< DMA link address */
55+
} DMA_DESCRIPTOR_TypeDef; /**< @} */
56+
57+
/** @} End of group Parts */
58+
59+
#endif // EFR32MG22_DMA_DESCRIPTOR_H

0 commit comments

Comments
 (0)