xref: /openbmc/linux/drivers/iio/Kconfig (revision 6341e62b)
1a980e046SJonathan Cameron#
2e58bf533SPeter Meerwald# Industrial I/O subsystem configuration
3a980e046SJonathan Cameron#
4a980e046SJonathan Cameron
5a980e046SJonathan Cameronmenuconfig IIO
6a980e046SJonathan Cameron	tristate "Industrial I/O support"
7cc8b49faSArnd Bergmann	select ANON_INODES
8a980e046SJonathan Cameron	help
9a980e046SJonathan Cameron	  The industrial I/O subsystem provides a unified framework for
10a980e046SJonathan Cameron	  drivers for many different types of embedded sensors using a
11a529ae4bSJiri Kosina	  number of different physical interfaces (i2c, spi, etc).
12a980e046SJonathan Cameron
13a980e046SJonathan Cameronif IIO
14a980e046SJonathan Cameron
15a980e046SJonathan Cameronconfig IIO_BUFFER
16a980e046SJonathan Cameron	bool "Enable buffer support within IIO"
17a980e046SJonathan Cameron	help
18a980e046SJonathan Cameron	  Provide core support for various buffer based data
19a980e046SJonathan Cameron	  acquisition methods.
20a980e046SJonathan Cameron
21a980e046SJonathan Cameronif IIO_BUFFER
22a980e046SJonathan Cameron
2392d1079bSJonathan Cameronconfig IIO_BUFFER_CB
246341e62bSChristoph Jaeger	bool "IIO callback buffer used for push in-kernel interfaces"
2592d1079bSJonathan Cameron	help
2693232cd5SPeter Meerwald	  Should be selected by any drivers that do in-kernel push
2792d1079bSJonathan Cameron	  usage.  That is, those where the data is pushed to the consumer.
2892d1079bSJonathan Cameron
29a980e046SJonathan Cameronconfig IIO_KFIFO_BUF
30a980e046SJonathan Cameron	select IIO_TRIGGER
31a980e046SJonathan Cameron	tristate "Industrial I/O buffering based on kfifo"
32a980e046SJonathan Cameron	help
331b2bbe3eSPeter Meerwald	  A simple fifo based on kfifo.  Note that this currently provides
34a980e046SJonathan Cameron	  no buffer events so it is up to userspace to work out how
35a980e046SJonathan Cameron	  often to read from the buffer.
36a980e046SJonathan Cameron
3723f2d735SLars-Peter Clausenconfig IIO_TRIGGERED_BUFFER
3823f2d735SLars-Peter Clausen	tristate
3923f2d735SLars-Peter Clausen	select IIO_TRIGGER
4023f2d735SLars-Peter Clausen	select IIO_KFIFO_BUF
4123f2d735SLars-Peter Clausen	help
4223f2d735SLars-Peter Clausen	  Provides helper functions for setting up triggered buffers.
4323f2d735SLars-Peter Clausen
44a980e046SJonathan Cameronendif # IIO_BUFFER
45a980e046SJonathan Cameron
46a980e046SJonathan Cameronconfig IIO_TRIGGER
476341e62bSChristoph Jaeger	bool "Enable triggered sampling support"
48a980e046SJonathan Cameron	help
49a980e046SJonathan Cameron	  Provides IIO core support for triggers.  Currently these
50a980e046SJonathan Cameron	  are used to initialize capture of samples to push into
511b2bbe3eSPeter Meerwald	  buffers.  The triggers are effectively a 'capture
52a980e046SJonathan Cameron	  data now' interrupt.
53a980e046SJonathan Cameron
54a980e046SJonathan Cameronconfig IIO_CONSUMERS_PER_TRIGGER
55a980e046SJonathan Cameron       int "Maximum number of consumers per trigger"
56a980e046SJonathan Cameron       depends on IIO_TRIGGER
57a980e046SJonathan Cameron       default "2"
58a980e046SJonathan Cameron       help
59a980e046SJonathan Cameron	This value controls the maximum number of consumers that a
60a980e046SJonathan Cameron	given trigger may handle. Default is 2.
61a980e046SJonathan Cameron
6245fe6f7dSsrinivas pandruvadasource "drivers/iio/accel/Kconfig"
630e589d5fSMaxime Ripardsource "drivers/iio/adc/Kconfig"
64e71d42e0SMichael Hennerichsource "drivers/iio/amplifiers/Kconfig"
6573c6768bSsrinivas pandruvadasource "drivers/iio/common/Kconfig"
66ec04cb04SLars-Peter Clausensource "drivers/iio/dac/Kconfig"
67ec04cb04SLars-Peter Clausensource "drivers/iio/frequency/Kconfig"
68c5bdbef7Ssrinivas pandruvadasource "drivers/iio/gyro/Kconfig"
69091a121bSHarald Geyersource "drivers/iio/humidity/Kconfig"
70ec04cb04SLars-Peter Clausensource "drivers/iio/imu/Kconfig"
71ec04cb04SLars-Peter Clausensource "drivers/iio/light/Kconfig"
72bc1d57baSsrinivas pandruvadasource "drivers/iio/magnetometer/Kconfig"
73098d3becSSrinivas Pandruvadasource "drivers/iio/orientation/Kconfig"
74e64e7d5cSJonathan Cameronif IIO_TRIGGER
75e64e7d5cSJonathan Cameron   source "drivers/iio/trigger/Kconfig"
76e64e7d5cSJonathan Cameronendif #IIO_TRIGGER
77217494e5SDenis CIOCCAsource "drivers/iio/pressure/Kconfig"
7824ddb0e4SMatt Ranostaysource "drivers/iio/proximity/Kconfig"
79e5a63942SPeter Meerwaldsource "drivers/iio/temperature/Kconfig"
80e71d42e0SMichael Hennerich
81a980e046SJonathan Cameronendif # IIO
82