blob: 895cc2c190da95e4ed1228169451d718a3ccef4b [file] [log] [blame]
# 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"
default y
depends on DT_HAS_ST_STM32_SPI_ENABLED
select PINCTRL
select USE_STM32_LL_SPI
help
Enable SPI support on the STM32 family of processors.
if SPI_STM32
config SPI_STM32_INTERRUPT
bool "STM32 MCU SPI Interrupt Support"
help
Enable Interrupt support for the SPI Driver of STM32 family.
config SPI_STM32_DMA
bool "STM32 MCU SPI DMA Support"
select DMA
select CACHE_MANAGEMENT if CPU_HAS_DCACHE
help
Enable the SPI DMA mode for SPI instances
that enable dma channels in their device tree node.
config SPI_STM32_USE_HW_SS
bool "STM32 Hardware Slave Select support"
default y
help
Use Slave Select pin instead of software Slave Select.
config SPI_STM32_ERRATA_BUSY
bool
default y
depends on SOC_SERIES_STM32F7X || SOC_SERIES_STM32L4X
help
Handles erratum "BSY bit may stay high at the end of a data
transfer in slave mode".
Seen for instance in Errata Sheet 0290 ยง2.11.2
if SPI_STM32_ERRATA_BUSY
config SPI_STM32_BUSY_FLAG_TIMEOUT
int "timeout in us for the STM32 busy flag workaround"
default 10000
endif # SPI_STM32_ERRATA_BUSY
endif # SPI_STM32