/* SPDX-License-Identifier: GPL-2.0-only */ /* The industrial I/O core, trigger consumer handling functions * * Copyright (c) 2008 Jonathan Cameron */ #ifdef CONFIG_IIO_TRIGGER /** * iio_device_register_trigger_consumer() - set up an iio_dev to use triggers * @indio_dev: iio_dev associated with the device that will consume the trigger * * Return 0 if successful, negative otherwise **/ int iio_device_register_trigger_consumer(struct iio_dev *indio_dev); /** * iio_device_unregister_trigger_consumer() - reverse the registration process * @indio_dev: iio_dev associated with the device that consumed the trigger **/ void iio_device_unregister_trigger_consumer(struct iio_dev *indio_dev); int iio_trigger_attach_poll_func(struct iio_trigger *trig, struct iio_poll_func *pf); int iio_trigger_detach_poll_func(struct iio_trigger *trig, struct iio_poll_func *pf); #else /** * iio_device_register_trigger_consumer() - set up an iio_dev to use triggers * @indio_dev: iio_dev associated with the device that will consume the trigger **/ static inline int iio_device_register_trigger_consumer(struct iio_dev *indio_dev) { return 0; } /** * iio_device_unregister_trigger_consumer() - reverse the registration process * @indio_dev: iio_dev associated with the device that consumed the trigger **/ static inline void iio_device_unregister_trigger_consumer(struct iio_dev *indio_dev) { } static inline int iio_trigger_attach_poll_func(struct iio_trigger *trig, struct iio_poll_func *pf) { return 0; } static inline int iio_trigger_detach_poll_func(struct iio_trigger *trig, struct iio_poll_func *pf) { return 0; } #endif /* CONFIG_TRIGGER_CONSUMER */