# Kconfig - NUCLEO-64 F401RE board configuration
#
# Copyright (c) 2016 Linaro Limited.
#
# SPDX-License-Identifier: Apache-2.0
#

if BOARD_NUCLEO_F401RE

config BOARD
	default "nucleo_f401re"

if UART_CONSOLE

config UART_STM32_PORT_2
	default y

endif # UART_CONSOLE

if I2C

config I2C_1
	default y

endif # I2C

if SPI

config SPI_1
	default y

config SPI_2
	default y

config SPI_STM32_INTERRUPT
	default y

endif # SPI

if PWM

config PWM_STM32_2
	default y

endif # PWM

endif # BOARD_NUCLEO_F401RE
