xref: /linux/drivers/iio/Kconfig (revision a1ff5a7d78a036d6c2178ee5acd6ba4946243800)
1ec8f24b7SThomas Gleixner# SPDX-License-Identifier: GPL-2.0-only
2a980e046SJonathan Cameron#
3e58bf533SPeter Meerwald# Industrial I/O subsystem configuration
4a980e046SJonathan Cameron#
5a980e046SJonathan Cameron
6a980e046SJonathan Cameronmenuconfig IIO
7a980e046SJonathan Cameron	tristate "Industrial I/O support"
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"
17*3e26d9f0SPaul Cercueil	select DMA_SHARED_BUFFER
18a980e046SJonathan Cameron	help
19a980e046SJonathan Cameron	  Provide core support for various buffer based data
20a980e046SJonathan Cameron	  acquisition methods.
21a980e046SJonathan Cameron
22a980e046SJonathan Cameronif IIO_BUFFER
238548a63bSLars-Peter Clausen	source "drivers/iio/buffer/Kconfig"
24a980e046SJonathan Cameronendif # IIO_BUFFER
25a980e046SJonathan Cameron
268261d961SDaniel Balutaconfig IIO_CONFIGFS
278261d961SDaniel Baluta	tristate "Enable IIO configuration via configfs"
288261d961SDaniel Baluta	select CONFIGFS_FS
298261d961SDaniel Baluta	help
308261d961SDaniel Baluta	  This allows configuring various IIO bits through configfs
318261d961SDaniel Baluta	  (e.g. software triggers). For more info see
321c349f4fSMauro Carvalho Chehab	  Documentation/iio/iio_configfs.rst.
338261d961SDaniel Baluta
3438416c28SMatti Vaittinenconfig IIO_GTS_HELPER
3538416c28SMatti Vaittinen	tristate
3638416c28SMatti Vaittinen
37a980e046SJonathan Cameronconfig IIO_TRIGGER
386341e62bSChristoph Jaeger	bool "Enable triggered sampling support"
39a980e046SJonathan Cameron	help
40a980e046SJonathan Cameron	  Provides IIO core support for triggers.  Currently these
41a980e046SJonathan Cameron	  are used to initialize capture of samples to push into
421b2bbe3eSPeter Meerwald	  buffers.  The triggers are effectively a 'capture
43a980e046SJonathan Cameron	  data now' interrupt.
44a980e046SJonathan Cameron
45a980e046SJonathan Cameronconfig IIO_CONSUMERS_PER_TRIGGER
46a980e046SJonathan Cameron	int "Maximum number of consumers per trigger"
47a980e046SJonathan Cameron	depends on IIO_TRIGGER
48a980e046SJonathan Cameron	default "2"
49a980e046SJonathan Cameron	help
50a980e046SJonathan Cameron	  This value controls the maximum number of consumers that a
51a980e046SJonathan Cameron	  given trigger may handle. Default is 2.
52a980e046SJonathan Cameron
530f3a8c3fSDaniel Balutaconfig IIO_SW_DEVICE
540f3a8c3fSDaniel Baluta	tristate "Enable software IIO device support"
550f3a8c3fSDaniel Baluta	select IIO_CONFIGFS
560f3a8c3fSDaniel Baluta	help
570f3a8c3fSDaniel Baluta	  Provides IIO core support for software devices. A software
580f3a8c3fSDaniel Baluta	  device can be created via configfs or directly by a driver
590f3a8c3fSDaniel Baluta	  using the API provided.
600f3a8c3fSDaniel Baluta
61b662f809SDaniel Balutaconfig IIO_SW_TRIGGER
62b662f809SDaniel Baluta	tristate "Enable software triggers support"
63b662f809SDaniel Baluta	select IIO_CONFIGFS
64b662f809SDaniel Baluta	help
65b662f809SDaniel Baluta	  Provides IIO core support for software triggers. A software
66b662f809SDaniel Baluta	  trigger can be created via configfs or directly by a driver
67b662f809SDaniel Baluta	  using the API provided.
68b662f809SDaniel Baluta
69735ad074SVladimir Barinovconfig IIO_TRIGGERED_EVENT
70a132e5f4SAlexandru Ardelean	tristate "Enable triggered events support"
71735ad074SVladimir Barinov	select IIO_TRIGGER
72735ad074SVladimir Barinov	help
73735ad074SVladimir Barinov	  Provides helper functions for setting up triggered events.
74735ad074SVladimir Barinov
751a97905dSNuno Saconfig IIO_BACKEND
761a97905dSNuno Sa	tristate
771a97905dSNuno Sa	help
781a97905dSNuno Sa	  Framework to handle complex IIO aggregate devices. The typical
791a97905dSNuno Sa	  architecture that can make use of this framework is to have one
801a97905dSNuno Sa	  device as the frontend device which can be "linked" against one or
811a97905dSNuno Sa	  multiple backend devices. The framework then makes it easy to get
821a97905dSNuno Sa	  and control such backend devices.
831a97905dSNuno Sa
8445fe6f7dSsrinivas pandruvadasource "drivers/iio/accel/Kconfig"
850e589d5fSMaxime Ripardsource "drivers/iio/adc/Kconfig"
86b62e2e17SCosmin Tanislavsource "drivers/iio/addac/Kconfig"
878b74816bSPeter Rosinsource "drivers/iio/afe/Kconfig"
88e71d42e0SMichael Hennerichsource "drivers/iio/amplifiers/Kconfig"
89646d67b5SJonathan Cameronsource "drivers/iio/cdc/Kconfig"
90cd8d9777SMatt Ranostaysource "drivers/iio/chemical/Kconfig"
9173c6768bSsrinivas pandruvadasource "drivers/iio/common/Kconfig"
92ec04cb04SLars-Peter Clausensource "drivers/iio/dac/Kconfig"
93415f7924SCristina Opriceanasource "drivers/iio/dummy/Kconfig"
9435c35b0cSAntoniu Miclaussource "drivers/iio/filter/Kconfig"
95ec04cb04SLars-Peter Clausensource "drivers/iio/frequency/Kconfig"
96c5bdbef7Ssrinivas pandruvadasource "drivers/iio/gyro/Kconfig"
974d33615dSMatt Ranostaysource "drivers/iio/health/Kconfig"
98091a121bSHarald Geyersource "drivers/iio/humidity/Kconfig"
99ec04cb04SLars-Peter Clausensource "drivers/iio/imu/Kconfig"
100ec04cb04SLars-Peter Clausensource "drivers/iio/light/Kconfig"
101bc1d57baSsrinivas pandruvadasource "drivers/iio/magnetometer/Kconfig"
1027ba9df54SPeter Rosinsource "drivers/iio/multiplexer/Kconfig"
103098d3becSSrinivas Pandruvadasource "drivers/iio/orientation/Kconfig"
1040bf49ffbSLars-Peter Clausensource "drivers/iio/test/Kconfig"
105e64e7d5cSJonathan Cameronif IIO_TRIGGER
106e64e7d5cSJonathan Cameron   source "drivers/iio/trigger/Kconfig"
107e64e7d5cSJonathan Cameronendif #IIO_TRIGGER
108189c3c49SJeff LaBundysource "drivers/iio/position/Kconfig"
109c05dc2ccSPeter Rosinsource "drivers/iio/potentiometer/Kconfig"
11067e17300SMatt Ranostaysource "drivers/iio/potentiostat/Kconfig"
111217494e5SDenis CIOCCAsource "drivers/iio/pressure/Kconfig"
11224ddb0e4SMatt Ranostaysource "drivers/iio/proximity/Kconfig"
113ad28d315SDavid Veenstrasource "drivers/iio/resolver/Kconfig"
114e5a63942SPeter Meerwaldsource "drivers/iio/temperature/Kconfig"
115e71d42e0SMichael Hennerich
116a980e046SJonathan Cameronendif # IIO
117