#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/slab.h>
#include <linux/err.h>
#include <linux/export.h>
#include <linux/iio/iio.h>
#include <linux/iio/buffer_impl.h>
#include <linux/iio/consumer.h>
struct iio_cb_buffer { … };
static struct iio_cb_buffer *buffer_to_cb_buffer(struct iio_buffer *buffer)
{ … }
static int iio_buffer_cb_store_to(struct iio_buffer *buffer, const void *data)
{ … }
static void iio_buffer_cb_release(struct iio_buffer *buffer)
{ … }
static const struct iio_buffer_access_funcs iio_cb_access = …;
struct iio_cb_buffer *iio_channel_get_all_cb(struct device *dev,
int (*cb)(const void *data,
void *private),
void *private)
{ … }
EXPORT_SYMBOL_GPL(…);
int iio_channel_cb_set_buffer_watermark(struct iio_cb_buffer *cb_buff,
size_t watermark)
{ … }
EXPORT_SYMBOL_GPL(…);
int iio_channel_start_all_cb(struct iio_cb_buffer *cb_buff)
{ … }
EXPORT_SYMBOL_GPL(…);
void iio_channel_stop_all_cb(struct iio_cb_buffer *cb_buff)
{ … }
EXPORT_SYMBOL_GPL(…);
void iio_channel_release_all_cb(struct iio_cb_buffer *cb_buff)
{ … }
EXPORT_SYMBOL_GPL(…);
struct iio_channel
*iio_channel_cb_get_channels(const struct iio_cb_buffer *cb_buffer)
{ … }
EXPORT_SYMBOL_GPL(…);
struct iio_dev
*iio_channel_cb_get_iio_dev(const struct iio_cb_buffer *cb_buffer)
{ … }
EXPORT_SYMBOL_GPL(…);
MODULE_AUTHOR(…) …;
MODULE_DESCRIPTION(…) …;
MODULE_LICENSE(…) …;