0001 # SPDX-License-Identifier: GPL-2.0-only
0002 #
0003 # Industrial I/O generic buffer implementations
0004 #
0005 # When adding new entries keep the list in alphabetical order
0006
0007 config IIO_BUFFER_CB
0008 tristate "IIO callback buffer used for push in-kernel interfaces"
0009 help
0010 Should be selected by any drivers that do in-kernel push
0011 usage. That is, those where the data is pushed to the consumer.
0012
0013 config IIO_BUFFER_DMA
0014 tristate "Industrial I/O DMA buffer infrastructure"
0015 help
0016 Provides the generic IIO DMA buffer infrastructure that can be used by
0017 drivers for devices with DMA support to implement the IIO buffer.
0018
0019 Should be selected by drivers that want to use the generic DMA buffer
0020 infrastructure.
0021
0022 config IIO_BUFFER_DMAENGINE
0023 tristate "Industrial I/O DMA buffer integration with DMAEngine"
0024 select IIO_BUFFER_DMA
0025 help
0026 Provides a bonding of the generic IIO DMA buffer infrastructure with the
0027 DMAEngine framework. This can be used by converter drivers with a DMA port
0028 connected to an external DMA controller which is supported by the
0029 DMAEngine framework.
0030
0031 Should be selected by drivers that want to use this functionality.
0032
0033 config IIO_BUFFER_HW_CONSUMER
0034 tristate "Industrial I/O HW buffering"
0035 help
0036 Provides a way to bonding when an IIO device has a direct connection
0037 to another device in hardware. In this case buffers for data transfers
0038 are handled by hardware.
0039
0040 Should be selected by drivers that want to use the generic Hw consumer
0041 interface.
0042
0043 config IIO_KFIFO_BUF
0044 tristate "Industrial I/O buffering based on kfifo"
0045 help
0046 A simple fifo based on kfifo. Note that this currently provides
0047 no buffer events so it is up to userspace to work out how
0048 often to read from the buffer.
0049
0050 config IIO_TRIGGERED_BUFFER
0051 tristate "Industrial I/O triggered buffer support"
0052 select IIO_TRIGGER
0053 select IIO_KFIFO_BUF
0054 help
0055 Provides helper functions for setting up triggered buffers.