# Kconfig - STM32L432KC Nucleo board configuration
#
# Copyright (c) 2016 Open-RnD Sp. z o.o.
# Copyright (c) 2016 BayLibre, SAS
#
# SPDX-License-Identifier: Apache-2.0
#

if BOARD_NUCLEO_L432KC

config BOARD
	default "nucleo_l432kc"

if UART_CONSOLE

config UART_2
	default y

endif # UART_CONSOLE

if PWM

config PWM_STM32_2
	default y

endif # PWM

if SPI

config SPI_1
	default y

config SPI_STM32_INTERRUPT
	default y

endif # SPI

endif # BOARD_NUCLEO_L432KC
