# Kconfig.defconfig.series - ST Microelectronics STM32F4 MCU line
#
# Copyright (c) 2016 Linaro Limited
#
# SPDX-License-Identifier: Apache-2.0
#

if SOC_SERIES_STM32F4X

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

config SOC_SERIES
	default stm32f4

config SERIAL
	def_bool y

if SERIAL

config CONSOLE
	def_bool y

config UART_CONSOLE
	def_bool y

config UART_STM32
	def_bool y

config UART_STM32_PORT_1
	def_bool y

config UART_STM32_PORT_1_NAME
	default UART_1

config UART_STM32_PORT_2
	def_bool y

config UART_STM32_PORT_2_NAME
	default UART_2

endif #SERIAL

if CLOCK_CONTROL

config CLOCK_CONTROL_STM32_CUBE
	def_bool y

endif #CLOCK_CONTROL

if GPIO

config GPIO_STM32
	def_bool y

config GPIO_STM32_PORTA
	def_bool y

config GPIO_STM32_PORTB
	def_bool y

config GPIO_STM32_PORTC
	def_bool y

endif #GPIO

if PINMUX

config PINMUX_STM32
	def_bool y

endif #PINMUX

endif # SOC_SERIES_STM32F4X
