Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input
[linux-btrfs-devel.git] / drivers / staging / iio / Kconfig
blob4ec9118955f9fdb49da4d93bf4876d02091d5fd4
2 # Industrial I/O subsytem configuration
5 menuconfig IIO
6         tristate "Industrial I/O support"
7         depends on GENERIC_HARDIRQS
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). See
12           drivers/staging/iio/Documentation for more information.
13 if IIO
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.
21 if IIO_BUFFER
23 config IIO_SW_RING
24        select IIO_TRIGGER
25         tristate "Industrial I/O lock free software ring"
26         help
27           Example software ring buffer implementation.  The design aim
28           of this particular realization was to minimize write locking
29           with the intention that some devices would be able to write
30           in interrupt context.
32 config IIO_KFIFO_BUF
33         select IIO_TRIGGER
34         tristate "Industrial I/O buffering based on kfifo"
35         help
36           A simple fifo based on kfifo.  Use this if you want a fifo
37           rather than a ring buffer. Note that this currently provides
38           no buffer events so it is up to userspace to work out how
39           often to read from the buffer.
41 endif # IIO_BUFFER
43 config IIO_TRIGGER
44         boolean "Enable triggered sampling support"
45         help
46           Provides IIO core support for triggers.  Currently these
47           are used to initialize capture of samples to push into
48           ring buffers.  The triggers are effectively a 'capture
49           data now' interrupt.
51 config IIO_CONSUMERS_PER_TRIGGER
52        int "Maximum number of consumers per trigger"
53        depends on IIO_TRIGGER
54        default "2"
55        help
56         This value controls the maximum number of consumers that a
57         given trigger may handle. Default is 2.
59 source "drivers/staging/iio/accel/Kconfig"
60 source "drivers/staging/iio/adc/Kconfig"
61 source "drivers/staging/iio/addac/Kconfig"
62 source "drivers/staging/iio/cdc/Kconfig"
63 source "drivers/staging/iio/dac/Kconfig"
64 source "drivers/staging/iio/dds/Kconfig"
65 source "drivers/staging/iio/gyro/Kconfig"
66 source "drivers/staging/iio/impedance-analyzer/Kconfig"
67 source "drivers/staging/iio/imu/Kconfig"
68 source "drivers/staging/iio/light/Kconfig"
69 source "drivers/staging/iio/magnetometer/Kconfig"
70 source "drivers/staging/iio/meter/Kconfig"
71 source "drivers/staging/iio/resolver/Kconfig"
72 source "drivers/staging/iio/trigger/Kconfig"
74 config IIO_DUMMY_EVGEN
75        tristate
77 config IIO_SIMPLE_DUMMY
78        tristate "An example driver with no hardware requirements"
79        select IIO_SIMPLE_DUMMY_EVGEN if IIO_SIMPLE_DUMMY_EVENTS
80        help
81          Driver intended mainly as documentation for how to write
82          a driver. May also be useful for testing userspace code
83          without hardward.
85 if IIO_SIMPLE_DUMMY
87 config IIO_SIMPLE_DUMMY_EVENTS
88        boolean "Event generation support"
89        select IIO_DUMMY_EVGEN
90        help
91          Add some dummy events to the simple dummy driver.
93 config IIO_SIMPLE_DUMMY_BUFFER
94        boolean "Buffered capture support"
95        depends on IIO_KFIFO_BUF
96        help
97          Add buffered data capture to the simple dummy driver.
99 endif # IIO_SIMPLE_DUMMY
101 endif # IIO