xref: /kernel/linux/linux-6.6/drivers/iio/Kconfig (revision 62306a36)
162306a36Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0-only
262306a36Sopenharmony_ci#
362306a36Sopenharmony_ci# Industrial I/O subsystem configuration
462306a36Sopenharmony_ci#
562306a36Sopenharmony_ci
662306a36Sopenharmony_cimenuconfig IIO
762306a36Sopenharmony_ci	tristate "Industrial I/O support"
862306a36Sopenharmony_ci	help
962306a36Sopenharmony_ci	  The industrial I/O subsystem provides a unified framework for
1062306a36Sopenharmony_ci	  drivers for many different types of embedded sensors using a
1162306a36Sopenharmony_ci	  number of different physical interfaces (i2c, spi, etc).
1262306a36Sopenharmony_ci
1362306a36Sopenharmony_ciif IIO
1462306a36Sopenharmony_ci
1562306a36Sopenharmony_ciconfig IIO_BUFFER
1662306a36Sopenharmony_ci	bool "Enable buffer support within IIO"
1762306a36Sopenharmony_ci	help
1862306a36Sopenharmony_ci	  Provide core support for various buffer based data
1962306a36Sopenharmony_ci	  acquisition methods.
2062306a36Sopenharmony_ci
2162306a36Sopenharmony_ciif IIO_BUFFER
2262306a36Sopenharmony_ci	source "drivers/iio/buffer/Kconfig"
2362306a36Sopenharmony_ciendif # IIO_BUFFER
2462306a36Sopenharmony_ci
2562306a36Sopenharmony_ciconfig IIO_CONFIGFS
2662306a36Sopenharmony_ci	tristate "Enable IIO configuration via configfs"
2762306a36Sopenharmony_ci	select CONFIGFS_FS
2862306a36Sopenharmony_ci	help
2962306a36Sopenharmony_ci	  This allows configuring various IIO bits through configfs
3062306a36Sopenharmony_ci	  (e.g. software triggers). For more info see
3162306a36Sopenharmony_ci	  Documentation/iio/iio_configfs.rst.
3262306a36Sopenharmony_ci
3362306a36Sopenharmony_ciconfig IIO_GTS_HELPER
3462306a36Sopenharmony_ci	tristate
3562306a36Sopenharmony_ci
3662306a36Sopenharmony_ciconfig IIO_TRIGGER
3762306a36Sopenharmony_ci	bool "Enable triggered sampling support"
3862306a36Sopenharmony_ci	help
3962306a36Sopenharmony_ci	  Provides IIO core support for triggers.  Currently these
4062306a36Sopenharmony_ci	  are used to initialize capture of samples to push into
4162306a36Sopenharmony_ci	  buffers.  The triggers are effectively a 'capture
4262306a36Sopenharmony_ci	  data now' interrupt.
4362306a36Sopenharmony_ci
4462306a36Sopenharmony_ciconfig IIO_CONSUMERS_PER_TRIGGER
4562306a36Sopenharmony_ci	int "Maximum number of consumers per trigger"
4662306a36Sopenharmony_ci	depends on IIO_TRIGGER
4762306a36Sopenharmony_ci	default "2"
4862306a36Sopenharmony_ci	help
4962306a36Sopenharmony_ci	  This value controls the maximum number of consumers that a
5062306a36Sopenharmony_ci	  given trigger may handle. Default is 2.
5162306a36Sopenharmony_ci
5262306a36Sopenharmony_ciconfig IIO_SW_DEVICE
5362306a36Sopenharmony_ci	tristate "Enable software IIO device support"
5462306a36Sopenharmony_ci	select IIO_CONFIGFS
5562306a36Sopenharmony_ci	help
5662306a36Sopenharmony_ci	  Provides IIO core support for software devices. A software
5762306a36Sopenharmony_ci	  device can be created via configfs or directly by a driver
5862306a36Sopenharmony_ci	  using the API provided.
5962306a36Sopenharmony_ci
6062306a36Sopenharmony_ciconfig IIO_SW_TRIGGER
6162306a36Sopenharmony_ci	tristate "Enable software triggers support"
6262306a36Sopenharmony_ci	select IIO_CONFIGFS
6362306a36Sopenharmony_ci	help
6462306a36Sopenharmony_ci	  Provides IIO core support for software triggers. A software
6562306a36Sopenharmony_ci	  trigger can be created via configfs or directly by a driver
6662306a36Sopenharmony_ci	  using the API provided.
6762306a36Sopenharmony_ci
6862306a36Sopenharmony_ciconfig IIO_TRIGGERED_EVENT
6962306a36Sopenharmony_ci	tristate "Enable triggered events support"
7062306a36Sopenharmony_ci	select IIO_TRIGGER
7162306a36Sopenharmony_ci	help
7262306a36Sopenharmony_ci	  Provides helper functions for setting up triggered events.
7362306a36Sopenharmony_ci
7462306a36Sopenharmony_cisource "drivers/iio/accel/Kconfig"
7562306a36Sopenharmony_cisource "drivers/iio/adc/Kconfig"
7662306a36Sopenharmony_cisource "drivers/iio/addac/Kconfig"
7762306a36Sopenharmony_cisource "drivers/iio/afe/Kconfig"
7862306a36Sopenharmony_cisource "drivers/iio/amplifiers/Kconfig"
7962306a36Sopenharmony_cisource "drivers/iio/cdc/Kconfig"
8062306a36Sopenharmony_cisource "drivers/iio/chemical/Kconfig"
8162306a36Sopenharmony_cisource "drivers/iio/common/Kconfig"
8262306a36Sopenharmony_cisource "drivers/iio/dac/Kconfig"
8362306a36Sopenharmony_cisource "drivers/iio/dummy/Kconfig"
8462306a36Sopenharmony_cisource "drivers/iio/filter/Kconfig"
8562306a36Sopenharmony_cisource "drivers/iio/frequency/Kconfig"
8662306a36Sopenharmony_cisource "drivers/iio/gyro/Kconfig"
8762306a36Sopenharmony_cisource "drivers/iio/health/Kconfig"
8862306a36Sopenharmony_cisource "drivers/iio/humidity/Kconfig"
8962306a36Sopenharmony_cisource "drivers/iio/imu/Kconfig"
9062306a36Sopenharmony_cisource "drivers/iio/light/Kconfig"
9162306a36Sopenharmony_cisource "drivers/iio/magnetometer/Kconfig"
9262306a36Sopenharmony_cisource "drivers/iio/multiplexer/Kconfig"
9362306a36Sopenharmony_cisource "drivers/iio/orientation/Kconfig"
9462306a36Sopenharmony_cisource "drivers/iio/test/Kconfig"
9562306a36Sopenharmony_ciif IIO_TRIGGER
9662306a36Sopenharmony_ci   source "drivers/iio/trigger/Kconfig"
9762306a36Sopenharmony_ciendif #IIO_TRIGGER
9862306a36Sopenharmony_cisource "drivers/iio/position/Kconfig"
9962306a36Sopenharmony_cisource "drivers/iio/potentiometer/Kconfig"
10062306a36Sopenharmony_cisource "drivers/iio/potentiostat/Kconfig"
10162306a36Sopenharmony_cisource "drivers/iio/pressure/Kconfig"
10262306a36Sopenharmony_cisource "drivers/iio/proximity/Kconfig"
10362306a36Sopenharmony_cisource "drivers/iio/resolver/Kconfig"
10462306a36Sopenharmony_cisource "drivers/iio/temperature/Kconfig"
10562306a36Sopenharmony_ci
10662306a36Sopenharmony_ciendif # IIO
107