1 /* SPDX-License-Identifier: GPL-2.0-only */ 2 3 /* The industrial I/O core, trigger consumer handling functions 4 * 5 * Copyright (c) 2008 Jonathan Cameron 6 */ 7 8 #ifdef CONFIG_IIO_TRIGGER 9 /** 10 * iio_device_register_trigger_consumer() - set up an iio_dev to use triggers 11 * @indio_dev: iio_dev associated with the device that will consume the trigger 12 * 13 * Return 0 if successful, negative otherwise 14 **/ 15 int iio_device_register_trigger_consumer(struct iio_dev *indio_dev); 16 17 /** 18 * iio_device_unregister_trigger_consumer() - reverse the registration process 19 * @indio_dev: iio_dev associated with the device that consumed the trigger 20 **/ 21 void iio_device_unregister_trigger_consumer(struct iio_dev *indio_dev); 22 23 24 int iio_trigger_attach_poll_func(struct iio_trigger *trig, 25 struct iio_poll_func *pf); 26 int iio_trigger_detach_poll_func(struct iio_trigger *trig, 27 struct iio_poll_func *pf); 28 29 #else 30 31 /** 32 * iio_device_register_trigger_consumer() - set up an iio_dev to use triggers 33 * @indio_dev: iio_dev associated with the device that will consume the trigger 34 **/ 35 static inline int iio_device_register_trigger_consumer(struct iio_dev *indio_dev) 36 { 37 return 0; 38 } 39 40 /** 41 * iio_device_unregister_trigger_consumer() - reverse the registration process 42 * @indio_dev: iio_dev associated with the device that consumed the trigger 43 **/ 44 static inline void iio_device_unregister_trigger_consumer(struct iio_dev *indio_dev) 45 { 46 } 47 48 static inline int iio_trigger_attach_poll_func(struct iio_trigger *trig, 49 struct iio_poll_func *pf) 50 { 51 return 0; 52 } 53 static inline int iio_trigger_detach_poll_func(struct iio_trigger *trig, 54 struct iio_poll_func *pf) 55 { 56 return 0; 57 } 58 59 #endif /* CONFIG_TRIGGER_CONSUMER */ 60