Skip to content

Commit 57294c7

Browse files
committed
soc: silabs: Add support for MG22 SoCs
Signed-off-by: James Smith <james@loopj.com>
1 parent e3ed029 commit 57294c7

File tree

14 files changed

+237
-26
lines changed

14 files changed

+237
-26
lines changed

drivers/entropy/Kconfig.gecko

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ config ENTROPY_GECKO_TRNG
99
default y
1010
depends on DT_HAS_SILABS_GECKO_TRNG_ENABLED
1111
select ENTROPY_HAS_DRIVER
12-
select CRYPTO_ACC_GECKO_TRNG if SOC_SERIES_EFR32BG22
12+
select CRYPTO_ACC_GECKO_TRNG if SOC_SERIES_XG22
1313
select CRYPTO_ACC_GECKO_TRNG if SOC_SERIES_EFR32BG27
1414
help
1515
This option enables the true random number generator

dts/arm/silabs/xg22/efr32mg22.dtsi

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
/*
2+
* Copyright (c) 2025 Silicon Laboratories Inc.
3+
*
4+
* SPDX-License-Identifier: Apache-2.0
5+
*/
6+
7+
#include <silabs/xg22/efr32xg22.dtsi>
8+
9+
&radio {
10+
bt_hci_silabs: bt_hci_silabs {
11+
compatible = "silabs,bt-hci-efr32";
12+
status = "disabled";
13+
};
14+
};
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
/*
2+
* Copyright (c) 2021 Sateesh Kotapati
3+
* Copyright (c) 2025 Silicon Laboratories Inc.
4+
*
5+
* SPDX-License-Identifier: Apache-2.0
6+
*/
7+
8+
#include <silabs/xg22/efr32mg22.dtsi>
9+
#include <mem.h>
10+
11+
/ {
12+
soc {
13+
compatible = "silabs,efr32mg22c224f512gn32", "silabs,efr32mg22", "silabs,xg22",
14+
"silabs,efr32", "simple-bus";
15+
model = "Silicon Labs EFR32MG22C224F512GN32 SoC";
16+
};
17+
};
18+
19+
&flash0 {
20+
reg = <0x0 DT_SIZE_K(512)>;
21+
};
22+
23+
&sram0 {
24+
reg = <0x20000000 DT_SIZE_K(32)>;
25+
};
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
/*
2+
* Copyright (c) 2021 Sateesh Kotapati
3+
* Copyright (c) 2025 Silicon Laboratories Inc.
4+
*
5+
* SPDX-License-Identifier: Apache-2.0
6+
*/
7+
8+
#include <silabs/xg22/efr32mg22.dtsi>
9+
#include <mem.h>
10+
11+
/ {
12+
soc {
13+
compatible = "silabs,efr32mg22c224f512im32", "silabs,efr32mg22", "silabs,xg22",
14+
"silabs,efr32", "simple-bus";
15+
model = "Silicon Labs EFR32MG22C224F512IM32 SoC";
16+
};
17+
};
18+
19+
&flash0 {
20+
reg = <0x0 DT_SIZE_K(512)>;
21+
};
22+
23+
&sram0 {
24+
reg = <0x20000000 DT_SIZE_K(32)>;
25+
};
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
/*
2+
* Copyright (c) 2021 Sateesh Kotapati
3+
* Copyright (c) 2025 Silicon Laboratories Inc.
4+
*
5+
* SPDX-License-Identifier: Apache-2.0
6+
*/
7+
8+
#include <silabs/xg22/efr32mg22.dtsi>
9+
#include <mem.h>
10+
11+
/ {
12+
soc {
13+
compatible = "silabs,efr32mg22c224f512im40", "silabs,efr32mg22", "silabs,xg22",
14+
"silabs,efr32", "simple-bus";
15+
model = "Silicon Labs EFR32MG22C224F512IM40 SoC";
16+
};
17+
};
18+
19+
&flash0 {
20+
reg = <0x0 DT_SIZE_K(512)>;
21+
};
22+
23+
&sram0 {
24+
reg = <0x20000000 DT_SIZE_K(32)>;
25+
};
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
/*
2+
* Copyright (c) 2021 Sateesh Kotapati
3+
* Copyright (c) 2025 Silicon Laboratories Inc.
4+
*
5+
* SPDX-License-Identifier: Apache-2.0
6+
*/
7+
8+
#include <silabs/xg22/efr32mg22.dtsi>
9+
#include <mem.h>
10+
11+
/ {
12+
soc {
13+
compatible = "silabs,efr32mg22e224f512im32", "silabs,efr32mg22", "silabs,xg22",
14+
"silabs,efr32", "simple-bus";
15+
model = "Silicon Labs EFR32MG22E224F512IM32 SoC";
16+
};
17+
};
18+
19+
&flash0 {
20+
reg = <0x0 DT_SIZE_K(512)>;
21+
};
22+
23+
&sram0 {
24+
reg = <0x20000000 DT_SIZE_K(32)>;
25+
};
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
/*
2+
* Copyright (c) 2021 Sateesh Kotapati
3+
* Copyright (c) 2025 Silicon Laboratories Inc.
4+
*
5+
* SPDX-License-Identifier: Apache-2.0
6+
*/
7+
8+
#include <silabs/xg22/efr32mg22.dtsi>
9+
#include <mem.h>
10+
11+
/ {
12+
soc {
13+
compatible = "silabs,efr32mg22e224f512im40", "silabs,efr32mg22", "silabs,xg22",
14+
"silabs,efr32", "simple-bus";
15+
model = "Silicon Labs EFR32MG22E224F512IM40 SoC";
16+
};
17+
};
18+
19+
&flash0 {
20+
reg = <0x0 DT_SIZE_K(512)>;
21+
};
22+
23+
&sram0 {
24+
reg = <0x20000000 DT_SIZE_K(32)>;
25+
};

include/zephyr/drivers/clock_control/clock_control_silabs.h

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

1212
#if defined(CONFIG_SOC_SERIES_EFR32MG21)
1313
#include <zephyr/dt-bindings/clock/silabs/xg21-clock.h>
14-
#elif defined(CONFIG_SOC_SERIES_EFR32BG22)
14+
#elif defined(CONFIG_SOC_SERIES_XG22)
1515
#include <zephyr/dt-bindings/clock/silabs/xg22-clock.h>
1616
#elif defined(CONFIG_SOC_SERIES_EFR32ZG23)
1717
#include <zephyr/dt-bindings/clock/silabs/xg23-clock.h>

soc/silabs/silabs_s2/efr32bg22/Kconfig.soc

Lines changed: 0 additions & 21 deletions
This file was deleted.

soc/silabs/silabs_s2/efr32bg22/Kconfig renamed to soc/silabs/silabs_s2/xg22/Kconfig

Lines changed: 20 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
# Copyright (c) 2021 Sateesh Kotapati
2+
# Copyright (c) 2025 James Smith
23
# SPDX-License-Identifier: Apache-2.0
34

45
config SOC_SERIES_EFR32BG22
@@ -19,5 +20,23 @@ config SOC_SERIES_EFR32BG22
1920
select SOC_GECKO_SE
2021
select HAS_PM
2122

23+
config SOC_SERIES_EFR32MG22
24+
select ARM
25+
select ARMV8_M_DSP
26+
select ARM_TRUSTZONE_M
27+
select CPU_CORTEX_M33
28+
select CPU_HAS_ARM_MPU
29+
select CPU_HAS_ARM_SAU
30+
select CPU_HAS_FPU
31+
select HAS_SILABS_SISDK
32+
select HAS_SWO
33+
select SOC_GECKO_HAS_RADIO
34+
select SOC_GECKO_GPIO
35+
select SOC_GECKO_CMU
36+
select SOC_GECKO_CORE
37+
select SOC_GECKO_DEV_INIT
38+
select SOC_GECKO_SE
39+
select HAS_PM
40+
2241
config SOC_GECKO_SDID
23-
default 205 if SOC_SERIES_EFR32BG22
42+
default 205 if SOC_SERIES_EFR32BG22 || SOC_SERIES_EFR32MG22

0 commit comments

Comments
 (0)