diff options
author | Jonathan Cameron <jic23@cam.ac.uk> | 2009-08-18 18:06:26 +0100 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2009-09-15 12:02:25 -0700 |
commit | 1637db44413e32a0f100dd4bd164644e641842f7 (patch) | |
tree | 112d2671204259195dff3b8f021fe33ed8ca6afe /drivers/staging/iio/trigger_consumer.h | |
parent | Staging: IIO: VTI sca3000 series accelerometer driver (spi) (diff) | |
download | linux-dev-1637db44413e32a0f100dd4bd164644e641842f7.tar.xz linux-dev-1637db44413e32a0f100dd4bd164644e641842f7.zip |
Staging: IIO: Trigger support added to core.
Add general registration support for IIO triggers. These
are currently only used to initialize a 'poll' of a given
device. Examples include the lis3l02dq's data ready signal
being used to initialize a read and gpio triggers being
used to allow externally synchronized sensor reading.
Each trigger can cause any number of 'consumer' devices
to be polled with each storing data into a related ring
buffer.
Two stage triggering is supported with 'fast' and 'slow'
paths. The first is used for things like pulling a data
hold line high and the second for actual read which
may take far longer.
Changes since V2:
* As with IIO triggers now use a registration approach
much closer to that of input leading to cleaner code.
Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/staging/iio/trigger_consumer.h')
-rw-r--r-- | drivers/staging/iio/trigger_consumer.h | 21 |
1 files changed, 20 insertions, 1 deletions
diff --git a/drivers/staging/iio/trigger_consumer.h b/drivers/staging/iio/trigger_consumer.h index a6053892893f..4c7f527dc79f 100644 --- a/drivers/staging/iio/trigger_consumer.h +++ b/drivers/staging/iio/trigger_consumer.h @@ -8,6 +8,20 @@ * the Free Software Foundation. */ +#ifdef CONFIG_IIO_TRIGGER +/** + * iio_device_register_trigger_consumer() - set up an iio_dev to use triggers. + * @dev_info: iio_dev associated with the device that will consume the trigger + **/ +int iio_device_register_trigger_consumer(struct iio_dev *dev_info); +/** + * iio_device_unregister_trigger_consumer() - reverse the registration process. + * @dev_info: iio_dev associated with the device that consumed the trigger + **/ +int iio_device_unregister_trigger_consumer(struct iio_dev *dev_info); + +#else + /** * iio_device_register_trigger_consumer() - set up an iio_dev to use triggers. * @dev_info: iio_dev associated with the device that will consume the trigger @@ -18,9 +32,14 @@ int iio_device_register_trigger_consumer(struct iio_dev *dev_info) }; /** * iio_device_unregister_trigger_consumer() - reverse the registration process -. * @dev_info: iio_dev associated with the device that consumed the trigger + * @dev_info: iio_dev associated with the device that consumed the trigger **/ int iio_device_unregister_trigger_consumer(struct iio_dev *dev_info) { return 0; }; + +#endif /* CONFIG_TRIGGER_CONSUMER */ + + + |