xref: /linux-6.15/drivers/iio/buffer/Kconfig (revision 2d6ca60f)
18548a63bSLars-Peter Clausen#
28548a63bSLars-Peter Clausen# Industrial I/O generic buffer implementations
38548a63bSLars-Peter Clausen#
48548a63bSLars-Peter Clausen# When adding new entries keep the list in alphabetical order
58548a63bSLars-Peter Clausen
68548a63bSLars-Peter Clausenconfig IIO_BUFFER_CB
78548a63bSLars-Peter Clausen	tristate "IIO callback buffer used for push in-kernel interfaces"
88548a63bSLars-Peter Clausen	help
98548a63bSLars-Peter Clausen	  Should be selected by any drivers that do in-kernel push
108548a63bSLars-Peter Clausen	  usage.  That is, those where the data is pushed to the consumer.
118548a63bSLars-Peter Clausen
12670b19aeSLars-Peter Clausenconfig IIO_BUFFER_DMA
13670b19aeSLars-Peter Clausen	tristate
14670b19aeSLars-Peter Clausen	help
15670b19aeSLars-Peter Clausen	  Provides the generic IIO DMA buffer infrastructure that can be used by
16670b19aeSLars-Peter Clausen	  drivers for devices with DMA support to implement the IIO buffer.
17670b19aeSLars-Peter Clausen
18670b19aeSLars-Peter Clausen	  Should be selected by drivers that want to use the generic DMA buffer
19670b19aeSLars-Peter Clausen	  infrastructure.
20670b19aeSLars-Peter Clausen
21*2d6ca60fSLars-Peter Clausenconfig IIO_BUFFER_DMAENGINE
22*2d6ca60fSLars-Peter Clausen	tristate
23*2d6ca60fSLars-Peter Clausen	select IIO_BUFFER_DMA
24*2d6ca60fSLars-Peter Clausen	help
25*2d6ca60fSLars-Peter Clausen	  Provides a bonding of the generic IIO DMA buffer infrastructure with the
26*2d6ca60fSLars-Peter Clausen	  DMAengine framework. This can be used by converter drivers with a DMA port
27*2d6ca60fSLars-Peter Clausen	  connected to an external DMA controller which is supported by the
28*2d6ca60fSLars-Peter Clausen	  DMAengine framework.
29*2d6ca60fSLars-Peter Clausen
30*2d6ca60fSLars-Peter Clausen	  Should be selected by drivers that want to use this functionality.
31*2d6ca60fSLars-Peter Clausen
328548a63bSLars-Peter Clausenconfig IIO_KFIFO_BUF
338548a63bSLars-Peter Clausen	tristate "Industrial I/O buffering based on kfifo"
348548a63bSLars-Peter Clausen	help
358548a63bSLars-Peter Clausen	  A simple fifo based on kfifo.  Note that this currently provides
368548a63bSLars-Peter Clausen	  no buffer events so it is up to userspace to work out how
378548a63bSLars-Peter Clausen	  often to read from the buffer.
388548a63bSLars-Peter Clausen
398548a63bSLars-Peter Clausenconfig IIO_TRIGGERED_BUFFER
408548a63bSLars-Peter Clausen	tristate
418548a63bSLars-Peter Clausen	select IIO_TRIGGER
428548a63bSLars-Peter Clausen	select IIO_KFIFO_BUF
438548a63bSLars-Peter Clausen	help
448548a63bSLars-Peter Clausen	  Provides helper functions for setting up triggered buffers.
45