# NUCLEO-144 F207ZG board configuration

# Copyright (c) 2018 qianfan Zhao
# SPDX-License-Identifier: Apache-2.0

if BOARD_NUCLEO_F207ZG

config BOARD
	default "nucleo_f207zg"

if UART_CONSOLE

config UART_3
	default y

endif # UART_CONSOLE

if NETWORKING

config NET_L2_ETHERNET
	default y

config ETH_STM32_HAL
	default y

endif # NETWORKING

if SERIAL

config UART_6
	default y

endif # SERIAL

endif # BOARD_NUCLEO_F207ZG
