|  | # SPI driver configuration options | 
|  |  | 
|  | # Copyright (c) 2015-2016 Intel Corporation | 
|  | # SPDX-License-Identifier: Apache-2.0 | 
|  |  | 
|  | # | 
|  | # SPI Drivers | 
|  | # | 
|  | menuconfig SPI | 
|  | bool "Serial Peripheral Interface (SPI) bus drivers" | 
|  | help | 
|  | Enable support for the SPI hardware bus. | 
|  |  | 
|  | if SPI | 
|  |  | 
|  | config SPI_SHELL | 
|  | bool "SPI Shell" | 
|  | depends on SHELL | 
|  | help | 
|  | Enable SPI Shell. | 
|  |  | 
|  | The currently SPI shell supports simple SPI write/read (transceive) | 
|  | operation. | 
|  |  | 
|  | config SPI_ASYNC | 
|  | bool "Asynchronous call support" | 
|  | depends on MULTITHREADING | 
|  | select POLL | 
|  | help | 
|  | This option enables the asynchronous API calls. | 
|  |  | 
|  | config SPI_RTIO | 
|  | bool "RTIO support [EXPERIMENTAL]" | 
|  | select EXPERIMENTAL | 
|  | select RTIO | 
|  | select RTIO_WORKQ | 
|  | help | 
|  | This option enables the RTIO API calls. RTIO support is | 
|  | experimental as the API itself is unstable. | 
|  |  | 
|  | if SPI_RTIO | 
|  |  | 
|  | config SPI_RTIO_FALLBACK_MSGS | 
|  | int "Number of available spi_buf structs for the default handler to use" | 
|  | default 4 | 
|  | help | 
|  | When RTIO is used with a driver that does not yet implement the submit API | 
|  | natively the submissions are converted back to struct spi_buf values that | 
|  | are given to spi_transfer. This requires some number of msgs be available to convert | 
|  | the submissions into on the stack. MISRA rules dictate we must know this in | 
|  | advance. | 
|  |  | 
|  | In all likelihood 4 is going to work for everyone, but in case you do end up with | 
|  | an issue where you are using RTIO, your driver does not implement submit natively, | 
|  | and get an error relating to not enough spi msgs this is the Kconfig to manipulate. | 
|  |  | 
|  | endif # SPI_RTIO | 
|  |  | 
|  | config SPI_SLAVE | 
|  | bool "Slave support [EXPERIMENTAL]" | 
|  | select EXPERIMENTAL | 
|  | help | 
|  | Enables Driver SPI slave operations. Slave support depends | 
|  | on the driver and the hardware it runs on. | 
|  |  | 
|  | config SPI_EXTENDED_MODES | 
|  | bool "Extended modes [EXPERIMENTAL]" | 
|  | select EXPERIMENTAL | 
|  | help | 
|  | Enables extended operations in the SPI API. Currently, this | 
|  | enables the possibility to select the line mode (single/dual/ | 
|  | quad/octal), though none of these mode are really supported as | 
|  | it would require more features exposed into the SPI buffer. | 
|  |  | 
|  | config SPI_INIT_PRIORITY | 
|  | int "Init priority" | 
|  | default KERNEL_INIT_PRIORITY_DEVICE | 
|  | help | 
|  | Device driver initialization priority. | 
|  |  | 
|  | config SPI_COMPLETION_TIMEOUT_TOLERANCE | 
|  | int "Completion timeout tolerance (ms)" | 
|  | default 200 | 
|  | help | 
|  | The tolerance value in ms for the SPI completion timeout logic. | 
|  |  | 
|  | config SPI_STATS | 
|  | bool "SPI device statistics" | 
|  | depends on STATS | 
|  | help | 
|  | Enable SPI device statistics. | 
|  |  | 
|  | module = SPI | 
|  | module-str = spi | 
|  | source "subsys/logging/Kconfig.template.log_config" | 
|  |  | 
|  | # zephyr-keep-sorted-start | 
|  | source "drivers/spi/Kconfig.ambiq" | 
|  | source "drivers/spi/Kconfig.andes_atcspi200" | 
|  | source "drivers/spi/Kconfig.b91" | 
|  | source "drivers/spi/Kconfig.bitbang" | 
|  | source "drivers/spi/Kconfig.cc13xx_cc26xx" | 
|  | source "drivers/spi/Kconfig.cc23x0" | 
|  | source "drivers/spi/Kconfig.cdns" | 
|  | source "drivers/spi/Kconfig.dw" | 
|  | source "drivers/spi/Kconfig.egis_et171" | 
|  | source "drivers/spi/Kconfig.esp32" | 
|  | source "drivers/spi/Kconfig.gd32" | 
|  | source "drivers/spi/Kconfig.grlib_spimctrl" | 
|  | source "drivers/spi/Kconfig.ifx_cat1" | 
|  | source "drivers/spi/Kconfig.it51xxx" | 
|  | source "drivers/spi/Kconfig.it8xxx2" | 
|  | source "drivers/spi/Kconfig.litex" | 
|  | source "drivers/spi/Kconfig.max32" | 
|  | source "drivers/spi/Kconfig.mchp_mss" | 
|  | source "drivers/spi/Kconfig.mchp_mss_qspi" | 
|  | source "drivers/spi/Kconfig.mcux_dspi" | 
|  | source "drivers/spi/Kconfig.mcux_ecspi" | 
|  | source "drivers/spi/Kconfig.mcux_flexcomm" | 
|  | source "drivers/spi/Kconfig.mcux_flexio" | 
|  | source "drivers/spi/Kconfig.mec5" | 
|  | source "drivers/spi/Kconfig.npcx" | 
|  | source "drivers/spi/Kconfig.nrfx" | 
|  | source "drivers/spi/Kconfig.numaker" | 
|  | source "drivers/spi/Kconfig.nxp_s32" | 
|  | source "drivers/spi/Kconfig.oc_simple" | 
|  | source "drivers/spi/Kconfig.omap" | 
|  | source "drivers/spi/Kconfig.opentitan" | 
|  | source "drivers/spi/Kconfig.pl022" | 
|  | source "drivers/spi/Kconfig.psoc6" | 
|  | source "drivers/spi/Kconfig.pw" | 
|  | source "drivers/spi/Kconfig.renesas_ra" | 
|  | source "drivers/spi/Kconfig.renesas_ra8" | 
|  | source "drivers/spi/Kconfig.renesas_rx" | 
|  | source "drivers/spi/Kconfig.renesas_rz" | 
|  | source "drivers/spi/Kconfig.rpi_pico" | 
|  | source "drivers/spi/Kconfig.rv32m1_lpspi" | 
|  | source "drivers/spi/Kconfig.sam" | 
|  | source "drivers/spi/Kconfig.sam0" | 
|  | source "drivers/spi/Kconfig.sedi" | 
|  | source "drivers/spi/Kconfig.sifive" | 
|  | source "drivers/spi/Kconfig.silabs_eusart" | 
|  | source "drivers/spi/Kconfig.silabs_siwx91x_gspi" | 
|  | source "drivers/spi/Kconfig.silabs_usart" | 
|  | source "drivers/spi/Kconfig.smartbond" | 
|  | source "drivers/spi/Kconfig.spi_emul" | 
|  | source "drivers/spi/Kconfig.stm32" | 
|  | source "drivers/spi/Kconfig.test" | 
|  | source "drivers/spi/Kconfig.wch" | 
|  | source "drivers/spi/Kconfig.xec_qmspi" | 
|  | source "drivers/spi/Kconfig.xlnx" | 
|  | source "drivers/spi/Kconfig.xmc4xxx" | 
|  | source "drivers/spi/spi_nxp_lpspi/Kconfig" | 
|  | # zephyr-keep-sorted-stop | 
|  |  | 
|  | endif # SPI |