# STM32 Nucleo-64 development board with STM32F334R8 MCU

# Copyright (c) 2016 RnDity Sp. z o.o.
# SPDX-License-Identifier: Apache-2.0

if BOARD_NUCLEO_F334R8

config BOARD
	default "nucleo_f334r8"

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_F334R8
