# Sipeed Longan Nano Lite board Configuration
#
# Copyright (c) 2021 Tokita, Hiroshi <tokita.hiroshi@gmail.com>
#
# SPDX-License-Identifier: Apache-2.0

CONFIG_SOC_SERIES_GD32VF103=y
CONFIG_SOC_GD32VF103=y
CONFIG_BOARD_LONGAN_NANO_LITE=y

CONFIG_GD32_HXTAL_8MHZ=y

CONFIG_SERIAL=y
CONFIG_UART_INTERRUPT_DRIVEN=y

CONFIG_CONSOLE=y
CONFIG_UART_CONSOLE=y

CONFIG_GPIO=y
