1 /* SPDX-License-Identifier: GPL-2.0 */
2 #ifndef _LINUX_IIO_TRIGGERED_BUFFER_H_
3 #define _LINUX_IIO_TRIGGERED_BUFFER_H_
5 #include <linux/interrupt.h>
8 struct iio_buffer_setup_ops
;
10 int iio_triggered_buffer_setup(struct iio_dev
*indio_dev
,
11 irqreturn_t (*h
)(int irq
, void *p
),
12 irqreturn_t (*thread
)(int irq
, void *p
),
13 const struct iio_buffer_setup_ops
*setup_ops
);
14 void iio_triggered_buffer_cleanup(struct iio_dev
*indio_dev
);
16 int devm_iio_triggered_buffer_setup(struct device
*dev
,
17 struct iio_dev
*indio_dev
,
18 irqreturn_t (*h
)(int irq
, void *p
),
19 irqreturn_t (*thread
)(int irq
, void *p
),
20 const struct iio_buffer_setup_ops
*ops
);
21 void devm_iio_triggered_buffer_cleanup(struct device
*dev
,
22 struct iio_dev
*indio_dev
);