]> git.proxmox.com Git - mirror_ubuntu-hirsute-kernel.git/blob - drivers/iio/iio_core_trigger.h
Merge tag 'trace-v5.10-3' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt...
[mirror_ubuntu-hirsute-kernel.git] / drivers / iio / iio_core_trigger.h
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 void iio_device_register_trigger_consumer(struct iio_dev *indio_dev);
14
15 /**
16 * iio_device_unregister_trigger_consumer() - reverse the registration process
17 * @indio_dev: iio_dev associated with the device that consumed the trigger
18 **/
19 void iio_device_unregister_trigger_consumer(struct iio_dev *indio_dev);
20
21
22 int iio_trigger_attach_poll_func(struct iio_trigger *trig,
23 struct iio_poll_func *pf);
24 int iio_trigger_detach_poll_func(struct iio_trigger *trig,
25 struct iio_poll_func *pf);
26
27 #else
28
29 /**
30 * iio_device_register_trigger_consumer() - set up an iio_dev to use triggers
31 * @indio_dev: iio_dev associated with the device that will consume the trigger
32 **/
33 static inline int iio_device_register_trigger_consumer(struct iio_dev *indio_dev)
34 {
35 return 0;
36 }
37
38 /**
39 * iio_device_unregister_trigger_consumer() - reverse the registration process
40 * @indio_dev: iio_dev associated with the device that consumed the trigger
41 **/
42 static inline void iio_device_unregister_trigger_consumer(struct iio_dev *indio_dev)
43 {
44 }
45
46 static inline int iio_trigger_attach_poll_func(struct iio_trigger *trig,
47 struct iio_poll_func *pf)
48 {
49 return 0;
50 }
51 static inline int iio_trigger_detach_poll_func(struct iio_trigger *trig,
52 struct iio_poll_func *pf)
53 {
54 return 0;
55 }
56
57 #endif /* CONFIG_TRIGGER_CONSUMER */