# EFM32GG12B (Giant Gecko) MCU line
# Copyright (c) 2023 Antmicro <www.antmicro.com>
# SPDX-License-Identifier: Apache-2.0

config SOC_SERIES_EFM32GG12B
	select ARM
	select HAS_SILABS_GECKO
	select HAS_SWO
	select CPU_CORTEX_M4
	select CPU_HAS_FPU
	select CPU_HAS_ARM_MPU
	select SOC_GECKO_HAS_INDIVIDUAL_PIN_LOCATION
	select SOC_GECKO_HAS_HFRCO_FREQRANGE
	select SOC_GECKO_CMU
	select SOC_GECKO_EMU
	select SOC_GECKO_GPIO
	select SOC_GECKO_TRNG

config SOC_GECKO_SDID
	default 106 if SOC_SERIES_EFM32GG12B
