# Copyright (c) 2024 Analog Devices, Inc. # SPDX-License-Identifier: Apache-2.0 config SPI_MAX32 bool "MAX32 MCU SPI controller driver" default y depends on DT_HAS_ADI_MAX32_SPI_ENABLED select PINCTRL help Enable SPI support on the MAX32 family of processors. if SPI_MAX32 config SPI_MAX32_INTERRUPT bool "MAX32 MCU SPI Interrupt Support" help Enable interrupt support for MAX32 MCU SPI driver. config SPI_MAX32_DMA bool "MAX32 MCU SPI DMA Support" select DMA select CACHE_MANAGEMENT if CPU_HAS_DCACHE help Enable DMA support for MAX32 MCU SPI driver. config SPI_MAX32_RTIO bool "MAX32 SPI RTIO Support" default y if SPI_RTIO depends on !SPI_ASYNC select SPI_MAX32_INTERRUPT if SPI_MAX32_RTIO config SPI_MAX32_RTIO_SQ_SIZE int "Number of available submission queue entries" default 8 # Sensible default that covers most common spi transactions help When RTIO is used with SPI, each driver holds a context with which blocking API calls use to perform SPI transactions. This queue needs to be as deep as the longest set of spi_buf_sets used, where normal SPI operations are used (equal length buffers). It may need to be slightly deeper where the spi buffer sets for transmit/receive are not always matched equally in length as these are transformed into normal transceives. config SPI_MAX32_RTIO_CQ_SIZE int "Number of available completion queue entries" default 8 # Sensible default that covers most common spi transactions endif # SPI_MAX32_RTIO endif # SPI_MAX32