blob: 238ad30ce16653b0f457a2f6e808149403e0ab28 [file] [log] [blame]
Andrew Scullb4b6d4a2019-01-02 15:54:55 +00001/* SPDX-License-Identifier: GPL-2.0 */
2#ifndef _LINUX_IIO_TRIGGERED_BUFFER_H_
3#define _LINUX_IIO_TRIGGERED_BUFFER_H_
4
5#include <linux/interrupt.h>
6
7struct iio_dev;
8struct iio_buffer_setup_ops;
9
10int 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);
14void iio_triggered_buffer_cleanup(struct iio_dev *indio_dev);
15
16int 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);
21void devm_iio_triggered_buffer_cleanup(struct device *dev,
22 struct iio_dev *indio_dev);
23
24#endif