1 # SPDX-License-Identifier: GPL-2.0-only
3 # Industrial I/O generic buffer implementations
5 # When adding new entries keep the list in alphabetical order
8 tristate "IIO callback buffer used for push in-kernel interfaces"
10 Should be selected by any drivers that do in-kernel push
11 usage. That is, those where the data is pushed to the consumer.
14 tristate "Industrial I/O DMA buffer infrastructure"
16 Provides the generic IIO DMA buffer infrastructure that can be used by
17 drivers for devices with DMA support to implement the IIO buffer.
19 Should be selected by drivers that want to use the generic DMA buffer
22 config IIO_BUFFER_DMAENGINE
23 tristate "Industrial I/O DMA buffer integration with DMAEngine"
26 Provides a bonding of the generic IIO DMA buffer infrastructure with the
27 DMAEngine framework. This can be used by converter drivers with a DMA port
28 connected to an external DMA controller which is supported by the
31 Should be selected by drivers that want to use this functionality.
33 config IIO_BUFFER_HW_CONSUMER
34 tristate "Industrial I/O HW buffering"
36 Provides a way to bonding when an IIO device has a direct connection
37 to another device in hardware. In this case buffers for data transfers
38 are handled by hardware.
40 Should be selected by drivers that want to use the generic Hw consumer
44 tristate "Industrial I/O buffering based on kfifo"
46 A simple fifo based on kfifo. Note that this currently provides
47 no buffer events so it is up to userspace to work out how
48 often to read from the buffer.
50 config IIO_TRIGGERED_BUFFER
51 tristate "Industrial I/O triggered buffer support"
55 Provides helper functions for setting up triggered buffers.