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