# Kconfig - ST Microelectronics STM32L4 MCU line
#
# Copyright (c) 2016 Open-RnD Sp. z o.o.
# Copyright (c) 2016 BayLibre, SAS
#
# SPDX-License-Identifier: Apache-2.0
#

if SOC_SERIES_STM32L4X

source "arch/arm/soc/st_stm32/stm32l4/Kconfig.defconfig.stm32l4*"

config SOC_SERIES
	default stm32l4

if WATCHDOG

config IWDG_STM32
	def_bool y

endif # WATCHDOG

endif # SOC_SERIES_STM32L4X
