soc: silabs: Add support for xG29 device family
Add EFR32MG29 and EFR32BG29 device families. Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
This commit is contained in:
parent
5645adb251
commit
2d3539b19a
16 changed files with 2884 additions and 2 deletions
|
@ -129,7 +129,7 @@ config SOC_GECKO_TRNG
|
|||
config SOC_SILABS_SLEEPTIMER
|
||||
bool
|
||||
select SOC_GECKO_PRS
|
||||
select SOC_GECKO_RTCC if SOC_SERIES_EFR32BG22 || SOC_SERIES_EFR32BG27 || SOC_SERIES_EFR32MG21
|
||||
select SOC_GECKO_RTCC if SOC_FAMILY_SILABS_S2 && $(dt_nodelabel_enabled,rtcc0)
|
||||
help
|
||||
Set if the Sleeptimer HAL module is used.
|
||||
|
||||
|
|
43
soc/silabs/silabs_s2/xg29/Kconfig
Normal file
43
soc/silabs/silabs_s2/xg29/Kconfig
Normal file
|
@ -0,0 +1,43 @@
|
|||
# Copyright (c) 2025 Silicon Laboratories Inc.
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
config SOC_SERIES_EFR32BG29
|
||||
select ARM
|
||||
select CPU_CORTEX_M33
|
||||
select CPU_HAS_FPU
|
||||
select CPU_HAS_ARM_MPU
|
||||
select CPU_HAS_ARM_SAU
|
||||
select CPU_CORTEX_M_HAS_DWT
|
||||
select ARMV8_M_DSP
|
||||
select ARM_TRUSTZONE_M
|
||||
select SOC_GECKO_HAS_RADIO
|
||||
select HAS_SILABS_GECKO
|
||||
select HAS_SWO
|
||||
select SOC_GECKO_CMU
|
||||
select SOC_GECKO_EMU
|
||||
select SOC_GECKO_GPIO
|
||||
select SOC_GECKO_DEV_INIT
|
||||
select SOC_GECKO_SE
|
||||
select HAS_PM
|
||||
|
||||
config SOC_SERIES_EFR32MG29
|
||||
select ARM
|
||||
select CPU_CORTEX_M33
|
||||
select CPU_HAS_FPU
|
||||
select CPU_HAS_ARM_MPU
|
||||
select CPU_HAS_ARM_SAU
|
||||
select CPU_CORTEX_M_HAS_DWT
|
||||
select ARMV8_M_DSP
|
||||
select ARM_TRUSTZONE_M
|
||||
select SOC_GECKO_HAS_RADIO
|
||||
select HAS_SILABS_GECKO
|
||||
select HAS_SWO
|
||||
select SOC_GECKO_CMU
|
||||
select SOC_GECKO_EMU
|
||||
select SOC_GECKO_GPIO
|
||||
select SOC_GECKO_DEV_INIT
|
||||
select SOC_GECKO_SE
|
||||
select HAS_PM
|
||||
|
||||
config SOC_GECKO_SDID
|
||||
default 240 if SOC_SERIES_EFR32BG29 || SOC_SERIES_EFR32MG29
|
19
soc/silabs/silabs_s2/xg29/Kconfig.defconfig
Normal file
19
soc/silabs/silabs_s2/xg29/Kconfig.defconfig
Normal file
|
@ -0,0 +1,19 @@
|
|||
# Copyright (c) 2025 Silicon Laboratories Inc.
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
if SOC_SERIES_EFR32BG29 || SOC_SERIES_EFR32MG29
|
||||
|
||||
config NUM_IRQS
|
||||
# must be >= the highest interrupt number used
|
||||
default 70
|
||||
|
||||
config PM
|
||||
default n
|
||||
select UART_INTERRUPT_DRIVEN if SERIAL_SUPPORT_INTERRUPT
|
||||
|
||||
choice PM_POLICY
|
||||
default PM_POLICY_DEFAULT
|
||||
depends on PM
|
||||
endchoice
|
||||
|
||||
endif
|
58
soc/silabs/silabs_s2/xg29/Kconfig.soc
Normal file
58
soc/silabs/silabs_s2/xg29/Kconfig.soc
Normal file
|
@ -0,0 +1,58 @@
|
|||
# Copyright (c) 2025 Silicon Laboratories Inc.
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
config SOC_SERIES_EFR32BG29
|
||||
bool
|
||||
select SOC_FAMILY_SILABS_S2
|
||||
help
|
||||
Silicon Labs EFR32BG29 (Blue Gecko) Series MCU
|
||||
|
||||
config SOC_SERIES_EFR32MG29
|
||||
bool
|
||||
select SOC_FAMILY_SILABS_S2
|
||||
help
|
||||
Silicon Labs EFR32MG29 (Mighty Gecko) Series MCU
|
||||
|
||||
config SOC_PART_NUMBER_EFR32BG29B140F1024IM40
|
||||
bool
|
||||
select SOC_SERIES_EFR32BG29
|
||||
|
||||
config SOC_PART_NUMBER_EFR32BG29B220F1024CJ45
|
||||
bool
|
||||
select SOC_SERIES_EFR32BG29
|
||||
|
||||
config SOC_PART_NUMBER_EFR32BG29B221F1024CJ45
|
||||
bool
|
||||
select SOC_SERIES_EFR32BG29
|
||||
|
||||
config SOC_PART_NUMBER_EFR32BG29B230F1024CM40
|
||||
bool
|
||||
select SOC_SERIES_EFR32BG29
|
||||
|
||||
config SOC_PART_NUMBER_EFR32MG29B140F1024IM40
|
||||
bool
|
||||
select SOC_SERIES_EFR32MG29
|
||||
|
||||
config SOC_PART_NUMBER_EFR32MG29B230F1024CM40
|
||||
bool
|
||||
select SOC_SERIES_EFR32MG29
|
||||
|
||||
config SOC_SERIES
|
||||
default "efr32bg29" if SOC_SERIES_EFR32BG29
|
||||
default "efr32mg29" if SOC_SERIES_EFR32MG29
|
||||
|
||||
config SOC
|
||||
default "efr32bg29b140f1024im40" if SOC_PART_NUMBER_EFR32BG29B140F1024IM40
|
||||
default "efr32bg29b220f1024cj45" if SOC_PART_NUMBER_EFR32BG29B220F1024CJ45
|
||||
default "efr32bg29b221f1024cj45" if SOC_PART_NUMBER_EFR32BG29B221F1024CJ45
|
||||
default "efr32bg29b230f1024cm40" if SOC_PART_NUMBER_EFR32BG29B230F1024CM40
|
||||
default "efr32mg29b140f1024im40" if SOC_PART_NUMBER_EFR32MG29B140F1024IM40
|
||||
default "efr32mg29b230f1024cm40" if SOC_PART_NUMBER_EFR32MG29B230F1024CM40
|
||||
|
||||
config SOC_PART_NUMBER
|
||||
default "EFR32BG29B140F1024IM40" if SOC_PART_NUMBER_EFR32BG29B140F1024IM40
|
||||
default "EFR32BG29B220F1024CJ45" if SOC_PART_NUMBER_EFR32BG29B220F1024CJ45
|
||||
default "EFR32BG29B221F1024CJ45" if SOC_PART_NUMBER_EFR32BG29B221F1024CJ45
|
||||
default "EFR32BG29B230F1024CM40" if SOC_PART_NUMBER_EFR32BG29B230F1024CM40
|
||||
default "EFR32MG29B140F1024IM40" if SOC_PART_NUMBER_EFR32MG29B140F1024IM40
|
||||
default "EFR32MG29B230F1024CM40" if SOC_PART_NUMBER_EFR32MG29B230F1024CM40
|
|
@ -59,6 +59,16 @@ family:
|
|||
- name: efr32zg23
|
||||
socs:
|
||||
- name: efr32zg23b020f512im48
|
||||
- name: efr32bg29
|
||||
socs:
|
||||
- name: efr32bg29b140f1024im40
|
||||
- name: efr32bg29b220f1024cj45
|
||||
- name: efr32bg29b221f1024cj45
|
||||
- name: efr32bg29b230f1024cm40
|
||||
- name: efr32mg29
|
||||
socs:
|
||||
- name: efr32mg29b140f1024im40
|
||||
- name: efr32mg29b230f1024cm40
|
||||
- name: silabs_sim3
|
||||
series:
|
||||
- name: sim3u
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue