xref: /OK3568_Linux_fs/kernel/drivers/iio/Kconfig (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun# SPDX-License-Identifier: GPL-2.0-only
2*4882a593Smuzhiyun#
3*4882a593Smuzhiyun# Industrial I/O subsystem configuration
4*4882a593Smuzhiyun#
5*4882a593Smuzhiyun
6*4882a593Smuzhiyunmenuconfig IIO
7*4882a593Smuzhiyun	tristate "Industrial I/O support"
8*4882a593Smuzhiyun	help
9*4882a593Smuzhiyun	  The industrial I/O subsystem provides a unified framework for
10*4882a593Smuzhiyun	  drivers for many different types of embedded sensors using a
11*4882a593Smuzhiyun	  number of different physical interfaces (i2c, spi, etc).
12*4882a593Smuzhiyun
13*4882a593Smuzhiyunif IIO
14*4882a593Smuzhiyun
15*4882a593Smuzhiyunconfig IIO_BUFFER
16*4882a593Smuzhiyun	bool "Enable buffer support within IIO"
17*4882a593Smuzhiyun	help
18*4882a593Smuzhiyun	  Provide core support for various buffer based data
19*4882a593Smuzhiyun	  acquisition methods.
20*4882a593Smuzhiyun
21*4882a593Smuzhiyunif IIO_BUFFER
22*4882a593Smuzhiyun	source "drivers/iio/buffer/Kconfig"
23*4882a593Smuzhiyunendif # IIO_BUFFER
24*4882a593Smuzhiyun
25*4882a593Smuzhiyunconfig IIO_CONFIGFS
26*4882a593Smuzhiyun	tristate "Enable IIO configuration via configfs"
27*4882a593Smuzhiyun	select CONFIGFS_FS
28*4882a593Smuzhiyun	help
29*4882a593Smuzhiyun	  This allows configuring various IIO bits through configfs
30*4882a593Smuzhiyun	  (e.g. software triggers). For more info see
31*4882a593Smuzhiyun	  Documentation/iio/iio_configfs.rst.
32*4882a593Smuzhiyun
33*4882a593Smuzhiyunconfig IIO_TRIGGER
34*4882a593Smuzhiyun	bool "Enable triggered sampling support"
35*4882a593Smuzhiyun	help
36*4882a593Smuzhiyun	  Provides IIO core support for triggers.  Currently these
37*4882a593Smuzhiyun	  are used to initialize capture of samples to push into
38*4882a593Smuzhiyun	  buffers.  The triggers are effectively a 'capture
39*4882a593Smuzhiyun	  data now' interrupt.
40*4882a593Smuzhiyun
41*4882a593Smuzhiyunconfig IIO_CONSUMERS_PER_TRIGGER
42*4882a593Smuzhiyun	int "Maximum number of consumers per trigger"
43*4882a593Smuzhiyun	depends on IIO_TRIGGER
44*4882a593Smuzhiyun	default "2"
45*4882a593Smuzhiyun	help
46*4882a593Smuzhiyun	  This value controls the maximum number of consumers that a
47*4882a593Smuzhiyun	  given trigger may handle. Default is 2.
48*4882a593Smuzhiyun
49*4882a593Smuzhiyunconfig IIO_SW_DEVICE
50*4882a593Smuzhiyun	tristate "Enable software IIO device support"
51*4882a593Smuzhiyun	select IIO_CONFIGFS
52*4882a593Smuzhiyun	help
53*4882a593Smuzhiyun	  Provides IIO core support for software devices. A software
54*4882a593Smuzhiyun	  device can be created via configfs or directly by a driver
55*4882a593Smuzhiyun	  using the API provided.
56*4882a593Smuzhiyun
57*4882a593Smuzhiyunconfig IIO_SW_TRIGGER
58*4882a593Smuzhiyun	tristate "Enable software triggers support"
59*4882a593Smuzhiyun	select IIO_CONFIGFS
60*4882a593Smuzhiyun	help
61*4882a593Smuzhiyun	  Provides IIO core support for software triggers. A software
62*4882a593Smuzhiyun	  trigger can be created via configfs or directly by a driver
63*4882a593Smuzhiyun	  using the API provided.
64*4882a593Smuzhiyun
65*4882a593Smuzhiyunconfig IIO_TRIGGERED_EVENT
66*4882a593Smuzhiyun	tristate "Enable triggered events support"
67*4882a593Smuzhiyun	select IIO_TRIGGER
68*4882a593Smuzhiyun	help
69*4882a593Smuzhiyun	  Provides helper functions for setting up triggered events.
70*4882a593Smuzhiyun
71*4882a593Smuzhiyunsource "drivers/iio/accel/Kconfig"
72*4882a593Smuzhiyunsource "drivers/iio/adc/Kconfig"
73*4882a593Smuzhiyunsource "drivers/iio/afe/Kconfig"
74*4882a593Smuzhiyunsource "drivers/iio/amplifiers/Kconfig"
75*4882a593Smuzhiyunsource "drivers/iio/chemical/Kconfig"
76*4882a593Smuzhiyunsource "drivers/iio/common/Kconfig"
77*4882a593Smuzhiyunsource "drivers/iio/dac/Kconfig"
78*4882a593Smuzhiyunsource "drivers/iio/dummy/Kconfig"
79*4882a593Smuzhiyunsource "drivers/iio/frequency/Kconfig"
80*4882a593Smuzhiyunsource "drivers/iio/gyro/Kconfig"
81*4882a593Smuzhiyunsource "drivers/iio/health/Kconfig"
82*4882a593Smuzhiyunsource "drivers/iio/humidity/Kconfig"
83*4882a593Smuzhiyunsource "drivers/iio/imu/Kconfig"
84*4882a593Smuzhiyunsource "drivers/iio/light/Kconfig"
85*4882a593Smuzhiyunsource "drivers/iio/magnetometer/Kconfig"
86*4882a593Smuzhiyunsource "drivers/iio/multiplexer/Kconfig"
87*4882a593Smuzhiyunsource "drivers/iio/orientation/Kconfig"
88*4882a593Smuzhiyunif IIO_TRIGGER
89*4882a593Smuzhiyun   source "drivers/iio/trigger/Kconfig"
90*4882a593Smuzhiyunendif #IIO_TRIGGER
91*4882a593Smuzhiyunsource "drivers/iio/position/Kconfig"
92*4882a593Smuzhiyunsource "drivers/iio/potentiometer/Kconfig"
93*4882a593Smuzhiyunsource "drivers/iio/potentiostat/Kconfig"
94*4882a593Smuzhiyunsource "drivers/iio/pressure/Kconfig"
95*4882a593Smuzhiyunsource "drivers/iio/proximity/Kconfig"
96*4882a593Smuzhiyunsource "drivers/iio/resolver/Kconfig"
97*4882a593Smuzhiyunsource "drivers/iio/temperature/Kconfig"
98*4882a593Smuzhiyun
99*4882a593Smuzhiyunendif # IIO
100