1637db4441
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>
46 lines
1.3 KiB
C
46 lines
1.3 KiB
C
|
|
/* The industrial I/O core, trigger consumer handling functions
|
|
*
|
|
* Copyright (c) 2008 Jonathan Cameron
|
|
*
|
|
* This program is free software; you can redistribute it and/or modify it
|
|
* under the terms of the GNU General Public License version 2 as published by
|
|
* 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
|
|
**/
|
|
int iio_device_register_trigger_consumer(struct iio_dev *dev_info)
|
|
{
|
|
return 0;
|
|
};
|
|
/**
|
|
* 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)
|
|
{
|
|
return 0;
|
|
};
|
|
|
|
#endif /* CONFIG_TRIGGER_CONSUMER */
|
|
|
|
|
|
|