# STM32 SPI driver configuration options

# Copyright (c) 2015-2016 Intel Corporation
# SPDX-License-Identifier: Apache-2.0

menuconfig SPI_STM32
	bool "STM32 MCU SPI controller driver"
	depends on SOC_FAMILY_STM32
	select USE_STM32_LL_SPI
	help
	  Enable SPI support on the STM32 family of processors.

if SPI_STM32

config SPI_STM32_HAS_FIFO
	bool
	depends on (SOC_SERIES_STM32L4X || SOC_SERIES_STM32F0X || \
	SOC_SERIES_STM32F3X || SOC_SERIES_STM32F7X || SOC_SERIES_STM32MP1X || \
	SOC_SERIES_STM32WBX || SOC_SERIES_STM32G4X)
	default y

config SPI_STM32_INTERRUPT
	bool "STM32 MCU SPI Interrupt Support"
	help
	  Enable Interrupt support for the SPI Driver of STM32 family.

config SPI_STM32_USE_HW_SS
	bool "STM32 Hardware Slave Select support"
	default y
	help
	  Use Slave Select pin instead of software Slave Select.

endif # SPI_STM32
