Skip to content

Commit c557aae

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 0a96720 commit c557aae

File tree

8 files changed

+120
-1
lines changed

8 files changed

+120
-1
lines changed
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
# Copyright (c) 2025 Christoph Jans
2+
# SPDX-License-Identifier: Apache-2.0
3+
4+
config SOC_SERIES_EFM32PG23
5+
select ARM
6+
select ARMV8_M_DSP
7+
select ARM_TRUSTZONE_M
8+
select CPU_CORTEX_M33
9+
select CPU_CORTEX_M_HAS_DWT
10+
select CPU_HAS_ARM_MPU
11+
select CPU_HAS_ARM_SAU
12+
select CPU_HAS_FPU
13+
select HAS_PM
14+
select HAS_SILABS_SISDK
15+
select HAS_SWO
16+
select SOC_GECKO_CMU
17+
select SOC_GECKO_CORE
18+
select SOC_GECKO_DEV_INIT
19+
select SOC_GECKO_EMU
20+
select SOC_GECKO_GPIO
21+
22+
config SOC_GECKO_SDID
23+
default 210 if SOC_SERIES_EFM32PG23
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_EFM32PG23
5+
6+
config NUM_IRQS
7+
# must be >= the highest interrupt number used
8+
default 75
9+
10+
endif
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
# Copyright (c) 2025 Christoph Jans
2+
# SPDX-License-Identifier: Apache-2.0
3+
4+
config SOC_SERIES_EFM32PG23
5+
bool
6+
select SOC_FAMILY_SILABS_S2
7+
help
8+
Silicon Labs EFM32PG23 Series MCU
9+
10+
config SOC_PART_NUMBER_EFM32PG23B310F512IM48
11+
bool
12+
select SOC_SERIES_EFM32PG23
13+
help
14+
Silicon Labs PG23 Pro Kit PK2504A EFM32PG23 Series MCU Revision A02
15+
16+
config SOC_SERIES
17+
default "efm32pg23" if SOC_SERIES_EFM32PG23
18+
19+
config SOC
20+
default "efm32pg23b310f512im48" if SOC_PART_NUMBER_EFM32PG23B310F512IM48
21+
22+
config SOC_PART_NUMBER
23+
default "EFM32PG23B310F512IM48" if SOC_PART_NUMBER_EFM32PG23B310F512IM48
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
# Copyright (c) 2025 Christoph Jans
2+
# SPDX-License-Identifier: Apache-2.0
3+
4+
config SOC_SERIES_EFM32PG28
5+
select ARM
6+
select ARMV8_M_DSP
7+
select ARM_TRUSTZONE_M
8+
select CPU_CORTEX_M33
9+
select CPU_CORTEX_M_HAS_DWT
10+
select CPU_HAS_ARM_MPU
11+
select CPU_HAS_ARM_SAU
12+
select CPU_HAS_FPU
13+
select HAS_PM
14+
select HAS_SILABS_SISDK
15+
select HAS_SWO
16+
select SOC_GECKO_CMU
17+
select SOC_GECKO_CORE
18+
select SOC_GECKO_DEV_INIT
19+
select SOC_GECKO_EMU
20+
select SOC_GECKO_GPIO
21+
22+
config SOC_GECKO_SDID
23+
default 210 if SOC_SERIES_EFM32PG28
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 75
9+
10+
endif
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: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,8 @@ manifest:
2323
url-base: https://github.com/zephyrproject-rtos
2424
- name: babblesim
2525
url-base: https://github.com/BabbleSim
26+
- name: hal_silabs_pr
27+
url-base: https://github.com/janchri
2628

2729
group-filter: [-babblesim, -optional]
2830

@@ -235,7 +237,8 @@ manifest:
235237
groups:
236238
- hal
237239
- name: hal_silabs
238-
revision: 190a144a16bed9a938a94543ed5bbc70c0552e0f
240+
remote: hal_silabs_pr
241+
revision: e4e23d94c49b1792bee24a19649054ca4adee35d
239242
path: modules/hal/silabs
240243
groups:
241244
- hal

0 commit comments

Comments
 (0)