Skip to content

Commit f9c7fc1

Browse files
committed
soc: silabs: Add support for efm32pg23 and efm32pg28
Introducing the efm32pg23 and efm32pg28 Series 2 Silabs chips. Signed-off-by: Christoph Jans <[email protected]>
1 parent 0d2e58c commit f9c7fc1

File tree

9 files changed

+136
-28
lines changed

9 files changed

+136
-28
lines changed

soc/silabs/silabs_s2/efr32zg23/Kconfig.soc

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

soc/silabs/silabs_s2/xg23/Kconfig

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
# Copyright (c) 2024 Yishai Jaffe
2+
# Copyright (c) 2025 Christoph Jans
3+
# SPDX-License-Identifier: Apache-2.0
4+
5+
config SOC_SERIES_EFR32ZG23
6+
select ARM
7+
select ARMV8_M_DSP
8+
select ARM_TRUSTZONE_M
9+
select CPU_CORTEX_M33
10+
select CPU_CORTEX_M_HAS_DWT
11+
select CPU_HAS_ARM_MPU
12+
select CPU_HAS_ARM_SAU
13+
select CPU_HAS_FPU
14+
select HAS_PM
15+
select HAS_SILABS_SISDK
16+
select HAS_SWO
17+
select SOC_GECKO_CMU
18+
select SOC_GECKO_CORE
19+
select SOC_GECKO_DEV_INIT
20+
select SOC_GECKO_EMU
21+
select SOC_GECKO_GPIO
22+
select SOC_GECKO_HAS_RADIO
23+
select SOC_GECKO_SE
24+
25+
config SOC_SERIES_EFM32PG23
26+
select ARM
27+
select ARMV8_M_DSP
28+
select ARM_TRUSTZONE_M
29+
select CPU_CORTEX_M33
30+
select CPU_CORTEX_M_HAS_DWT
31+
select CPU_HAS_ARM_MPU
32+
select CPU_HAS_ARM_SAU
33+
select CPU_HAS_FPU
34+
select HAS_PM
35+
select HAS_SILABS_SISDK
36+
select HAS_SWO
37+
select SOC_GECKO_CMU
38+
select SOC_GECKO_CORE
39+
select SOC_GECKO_DEV_INIT
40+
select SOC_GECKO_EMU
41+
select SOC_GECKO_GPIO
42+
select SOC_GECKO_SE
43+
44+
config SOC_GECKO_SDID
45+
default 210 if SOC_SERIES_EFR32ZG23

soc/silabs/silabs_s2/efr32zg23/Kconfig.defconfig renamed to soc/silabs/silabs_s2/xg23/Kconfig.defconfig

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
# Copyright (c) 2024 Yishai Jaffe
2+
# Copyright (c) 2025 Christoph Jans
23
# SPDX-License-Identifier: Apache-2.0
34

45
if SOC_SERIES_EFR32ZG23
@@ -14,3 +15,11 @@ config GPIO_GECKO
1415
default y
1516

1617
endif
18+
19+
if SOC_SERIES_EFM32PG23
20+
21+
config NUM_IRQS
22+
# must be >= the highest interrupt number used
23+
default 75
24+
25+
endif

soc/silabs/silabs_s2/xg23/Kconfig.soc

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
# Copyright (c) 2024 Yishai Jaffe
2+
# Copyright (c) 2025 Christoph Jans
3+
# SPDX-License-Identifier: Apache-2.0
4+
5+
config SOC_SERIES_XG23
6+
bool
7+
help
8+
Silicon Labs EFR32/EFM32 23 Series SoC
9+
10+
config SOC_SERIES_EFR32ZG23
11+
bool
12+
select SOC_FAMILY_SILABS_S2
13+
select SOC_SERIES_XG23
14+
help
15+
Silicon Labs EFR32ZG23 Series MCU
16+
17+
config SOC_SERIES_EFM32PG23
18+
bool
19+
select SOC_FAMILY_SILABS_S2
20+
select SOC_SERIES_XG23
21+
help
22+
Silicon Labs EFM32PG23 Series MCU
23+
24+
config SOC_PART_NUMBER_EFR32ZG23B020F512IM48
25+
bool
26+
select SOC_SERIES_EFR32ZG23
27+
28+
config SOC_PART_NUMBER_EFM32PG23B310F512IM48
29+
bool
30+
select SOC_SERIES_EFM32PG23
31+
32+
config SOC_SERIES
33+
default "efr32zg23" if SOC_SERIES_EFR32ZG23
34+
default "efm32pg23" if SOC_SERIES_EFM32PG23
35+
36+
config SOC
37+
default "efr32zg23b020f512im48" if SOC_PART_NUMBER_EFR32ZG23B020F512IM48
38+
default "efm32pg23b310f512im48" if SOC_PART_NUMBER_EFM32PG23B310F512IM48
39+
40+
config SOC_PART_NUMBER
41+
default "EFR32ZG23B020F512IM48" if SOC_PART_NUMBER_EFR32ZG23B020F512IM48
42+
default "EFM32PG23B310F512IM48" if SOC_PART_NUMBER_EFM32PG23B310F512IM48

soc/silabs/silabs_s2/efr32zg23/Kconfig renamed to soc/silabs/silabs_s2/xg28/Kconfig

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
1-
# Copyright (c) 2024 Yishai Jaffe
1+
# Copyright (c) 2025 Christoph Jans
22
# SPDX-License-Identifier: Apache-2.0
33

4-
config SOC_SERIES_EFR32ZG23
4+
config SOC_SERIES_EFM32PG28
55
select ARM
66
select ARMV8_M_DSP
77
select ARM_TRUSTZONE_M
@@ -18,8 +18,4 @@ config SOC_SERIES_EFR32ZG23
1818
select SOC_GECKO_DEV_INIT
1919
select SOC_GECKO_EMU
2020
select SOC_GECKO_GPIO
21-
select SOC_GECKO_HAS_RADIO
2221
select SOC_GECKO_SE
23-
24-
config SOC_GECKO_SDID
25-
default 210 if SOC_SERIES_EFR32ZG23
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
# Copyright (c) 2025 Christoph Jans
2+
# SPDX-License-Identifier: Apache-2.0
3+
4+
if SOC_SERIES_EFM32PG28
5+
6+
config NUM_IRQS
7+
# must be >= the highest interrupt number used
8+
default 79
9+
10+
endif

soc/silabs/silabs_s2/xg28/Kconfig.soc

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
# Copyright (c) 2025 Christoph Jans
2+
# SPDX-License-Identifier: Apache-2.0
3+
4+
config SOC_SERIES_EFM32PG28
5+
bool
6+
select SOC_FAMILY_SILABS_S2
7+
help
8+
Silicon Labs EFM32PG28 Series MCU
9+
10+
config SOC_PART_NUMBER_EFM32PG28B310F1024IM68
11+
bool
12+
select SOC_SERIES_EFM32PG28
13+
14+
config SOC_SERIES
15+
default "efm32pg28" if SOC_SERIES_EFM32PG28
16+
17+
config SOC
18+
default "efm32pg28b310f1024im68" if SOC_PART_NUMBER_EFM32PG28B310F1024IM68
19+
20+
config SOC_PART_NUMBER
21+
default "EFM32PG28B310F1024IM68" if SOC_PART_NUMBER_EFM32PG28B310F1024IM68

soc/silabs/soc.yml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,12 @@ family:
7373
socs:
7474
- name: efr32mg29b140f1024im40
7575
- name: efr32mg29b230f1024cm40
76+
- name: efm32pg28
77+
socs:
78+
- name: efm32pg28b310f1024im68
79+
- name: efm32pg23
80+
socs:
81+
- name: efm32pg23b310f512im48
7682
- name: silabs_siwx91x
7783
series:
7884
- name: siwg917

west.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -235,7 +235,7 @@ manifest:
235235
groups:
236236
- hal
237237
- name: hal_silabs
238-
revision: 190a144a16bed9a938a94543ed5bbc70c0552e0f
238+
revision: pull/95/head
239239
path: modules/hal/silabs
240240
groups:
241241
- hal

0 commit comments

Comments
 (0)