# STM32 Nucleo-64 development board with STM32F030R8 MCU

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

if BOARD_NUCLEO_F030R8

config BOARD
	default "nucleo_f030r8"

if UART_CONSOLE

config UART_2
	default y

endif # UART_CONSOLE

# Disable ports D and F to allow kernel test cases common and
# contex to run on nucleo_f030r8.
# Test cases fail due to 'SRAM' region overflow.
if GPIO

config GPIO_STM32_PORTD
	default n

config GPIO_STM32_PORTF
	default n

endif # GPIO

if I2C

config I2C_1
	default y

config I2C_2
	default y

endif

if SPI

config SPI_1
	default y

config SPI_2
	default y

endif

endif # BOARD_NUCLEO_F030R8
