b662f809d4
A software trigger associates an IIO device trigger with a software interrupt source (e.g: timer, sysfs). This patch adds the generic infrastructure for handling software triggers. Software interrupts sources are kept in a iio_trigger_types_list and registered separately when the associated kernel module is loaded. Software triggers can be created directly from drivers or from user space via configfs interface. To sum up, this dynamically creates "triggers" group to be found under /config/iio/triggers and offers the possibility of dynamically creating trigger types groups. The first supported trigger type is "hrtimer" found under /config/iio/triggers/hrtimer. Signed-off-by: Daniel Baluta <daniel.baluta@intel.com> Signed-off-by: Jonathan Cameron <jic23@kernel.org>
86 lines
2.4 KiB
Plaintext
86 lines
2.4 KiB
Plaintext
#
|
|
# Industrial I/O subsystem configuration
|
|
#
|
|
|
|
menuconfig IIO
|
|
tristate "Industrial I/O support"
|
|
select ANON_INODES
|
|
help
|
|
The industrial I/O subsystem provides a unified framework for
|
|
drivers for many different types of embedded sensors using a
|
|
number of different physical interfaces (i2c, spi, etc).
|
|
|
|
if IIO
|
|
|
|
config IIO_BUFFER
|
|
bool "Enable buffer support within IIO"
|
|
help
|
|
Provide core support for various buffer based data
|
|
acquisition methods.
|
|
|
|
if IIO_BUFFER
|
|
source "drivers/iio/buffer/Kconfig"
|
|
endif # IIO_BUFFER
|
|
|
|
config IIO_CONFIGFS
|
|
tristate "Enable IIO configuration via configfs"
|
|
select CONFIGFS_FS
|
|
help
|
|
This allows configuring various IIO bits through configfs
|
|
(e.g. software triggers). For more info see
|
|
Documentation/iio/iio_configfs.txt.
|
|
|
|
config IIO_TRIGGER
|
|
bool "Enable triggered sampling support"
|
|
help
|
|
Provides IIO core support for triggers. Currently these
|
|
are used to initialize capture of samples to push into
|
|
buffers. The triggers are effectively a 'capture
|
|
data now' interrupt.
|
|
|
|
config IIO_CONSUMERS_PER_TRIGGER
|
|
int "Maximum number of consumers per trigger"
|
|
depends on IIO_TRIGGER
|
|
default "2"
|
|
help
|
|
This value controls the maximum number of consumers that a
|
|
given trigger may handle. Default is 2.
|
|
|
|
config IIO_SW_TRIGGER
|
|
tristate "Enable software triggers support"
|
|
select IIO_CONFIGFS
|
|
help
|
|
Provides IIO core support for software triggers. A software
|
|
trigger can be created via configfs or directly by a driver
|
|
using the API provided.
|
|
|
|
config IIO_TRIGGERED_EVENT
|
|
tristate
|
|
select IIO_TRIGGER
|
|
help
|
|
Provides helper functions for setting up triggered events.
|
|
|
|
source "drivers/iio/accel/Kconfig"
|
|
source "drivers/iio/adc/Kconfig"
|
|
source "drivers/iio/amplifiers/Kconfig"
|
|
source "drivers/iio/chemical/Kconfig"
|
|
source "drivers/iio/common/Kconfig"
|
|
source "drivers/iio/dac/Kconfig"
|
|
source "drivers/iio/dummy/Kconfig"
|
|
source "drivers/iio/frequency/Kconfig"
|
|
source "drivers/iio/gyro/Kconfig"
|
|
source "drivers/iio/humidity/Kconfig"
|
|
source "drivers/iio/imu/Kconfig"
|
|
source "drivers/iio/light/Kconfig"
|
|
source "drivers/iio/magnetometer/Kconfig"
|
|
source "drivers/iio/orientation/Kconfig"
|
|
if IIO_TRIGGER
|
|
source "drivers/iio/trigger/Kconfig"
|
|
endif #IIO_TRIGGER
|
|
source "drivers/iio/potentiometer/Kconfig"
|
|
source "drivers/iio/pressure/Kconfig"
|
|
source "drivers/iio/proximity/Kconfig"
|
|
source "drivers/iio/temperature/Kconfig"
|
|
|
|
endif # IIO
|