# STM32F446RE Nucleo board configuration

# Copyright (c) 2018 Philémon Jaermann
# SPDX-License-Identifier: Apache-2.0

if BOARD_NUCLEO_F446RE

config BOARD
	default "nucleo_f446re"

if UART_CONSOLE

config UART_2
	default y

endif # UART_CONSOLE

if I2C

config I2C_1
	default y

endif # I2C

if SPI

config SPI_1
	default y

config SPI_STM32_INTERRUPT
	default y

endif # SPI

endif # BOARD_NUCLEO_F446RE
