blob: 90162aa8b2df49e62d50968805e0dd7ea5bedd5f [file] [log] [blame]
Jonathan Cameron847ec802009-08-18 18:06:19 +01001#
2# Industrial I/O subsytem configuration
3#
4
5menuconfig IIO
6 tristate "Industrial I/O support"
Geert Uytterhoeven928f9112011-05-31 11:37:40 +02007 depends on GENERIC_HARDIRQS
Jonathan Camerondb606972011-05-18 14:42:41 +01008 help
Jonathan Cameron847ec802009-08-18 18:06:19 +01009 The industrial I/O subsystem provides a unified framework for
10 drivers for many different types of embedded sensors using a
Randy Dunlap7e046382009-10-04 19:32:27 -070011 number of different physical interfaces (i2c, spi, etc). See
Jonathan Camerondb606972011-05-18 14:42:41 +010012 drivers/staging/iio/Documentation for more information.
Jonathan Camerond1325cf2009-08-18 18:06:20 +010013if IIO
14
Jonathan Cameronf2a96242011-09-21 11:15:55 +010015config IIO_BUFFER
Jonathan Camerondb606972011-05-18 14:42:41 +010016 bool "Enable buffer support within IIO"
Jonathan Cameron7026ea42009-08-18 18:06:24 +010017 help
Jonathan Camerondb606972011-05-18 14:42:41 +010018 Provide core support for various buffer based data
Jonathan Cameron7026ea42009-08-18 18:06:24 +010019 acquisition methods.
20
Jonathan Cameronf2a96242011-09-21 11:15:55 +010021if IIO_BUFFER
Jonathan Cameron2235acb2009-08-18 18:06:27 +010022
23config IIO_SW_RING
Jonathan Camerond3bf8122010-07-29 17:50:49 +010024 select IIO_TRIGGER
Jonathan Cameron2235acb2009-08-18 18:06:27 +010025 tristate "Industrial I/O lock free software ring"
26 help
Randy Dunlap7e046382009-10-04 19:32:27 -070027 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.
Jonathan Cameron2235acb2009-08-18 18:06:27 +010031
Jonathan Cameronb174baf2011-02-11 13:09:10 +000032config 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.
40
Jonathan Cameronf2a96242011-09-21 11:15:55 +010041endif # IIO_BUFFER
Jonathan Cameron2235acb2009-08-18 18:06:27 +010042
Jonathan Cameron1637db42009-08-18 18:06:26 +010043config 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.
50
Jonathan Camerond96d1332011-05-18 14:41:18 +010051config 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.
Jonathan Cameron7f3a1fb2009-08-18 18:06:30 +010058
Jonathan Cameron66533b42009-08-18 18:06:22 +010059source "drivers/staging/iio/accel/Kconfig"
Jonathan Camerond1325cf2009-08-18 18:06:20 +010060source "drivers/staging/iio/adc/Kconfig"
Sonic Zhang35f6b6b2010-10-27 21:43:52 -040061source "drivers/staging/iio/addac/Kconfig"
Michael Hennerich5c48cb92011-10-19 13:02:03 +020062source "drivers/staging/iio/cdc/Kconfig"
Barry Song6790e292010-10-27 21:44:07 -040063source "drivers/staging/iio/dac/Kconfig"
Cliff Caida6fcbd2010-10-27 21:44:08 -040064source "drivers/staging/iio/dds/Kconfig"
Barry Song089a4192010-05-12 19:34:06 +010065source "drivers/staging/iio/gyro/Kconfig"
Michael Hennerichf94aa354d2011-08-02 08:48:22 +020066source "drivers/staging/iio/impedance-analyzer/Kconfig"
Barry Song1e3864e2010-05-04 14:43:14 +010067source "drivers/staging/iio/imu/Kconfig"
Jonathan Cameron78632b62009-08-18 18:06:21 +010068source "drivers/staging/iio/light/Kconfig"
Shubhrajyoti Db4e17822010-07-17 18:32:52 +053069source "drivers/staging/iio/magnetometer/Kconfig"
Barry Song09434ef2010-10-27 21:44:14 -040070source "drivers/staging/iio/meter/Kconfig"
Graf Yangf46d9f12010-10-27 21:44:19 -040071source "drivers/staging/iio/resolver/Kconfig"
Jonathan Cameron7f3a1fb2009-08-18 18:06:30 +010072source "drivers/staging/iio/trigger/Kconfig"
73
Jonathan Camerone6477002011-10-14 16:34:14 +010074config IIO_DUMMY_EVGEN
75 tristate
76
Jonathan Cameron3a843312011-10-14 16:34:13 +010077config IIO_SIMPLE_DUMMY
78 tristate "An example driver with no hardware requirements"
79 help
Jonathan Camerone6477002011-10-14 16:34:14 +010080 Driver intended mainly as documentation for how to write
81 a driver. May also be useful for testing userspace code
82 without hardward.
Jonathan Cameron3a843312011-10-14 16:34:13 +010083
Jonathan Camerone6477002011-10-14 16:34:14 +010084if IIO_SIMPLE_DUMMY
85
86config IIO_SIMPLE_DUMMY_EVENTS
87 boolean "Event generation support"
88 select IIO_DUMMY_EVGEN
89 help
90 Add some dummy events to the simple dummy driver.
91
Jonathan Cameron9ad2e2e2011-10-14 16:34:15 +010092config IIO_SIMPLE_DUMMY_BUFFER
93 boolean "Buffered capture support"
94 depends on IIO_KFIFO_BUF
95 help
96 Add buffered data capture to the simple dummy driver.
Jonathan Camerone6477002011-10-14 16:34:14 +010097
98endif # IIO_SIMPLE_DUMMY
Jonathan Cameron3a843312011-10-14 16:34:13 +010099
Jonathan Camerond1325cf2009-08-18 18:06:20 +0100100endif # IIO