aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/staging/iio/ring_sw.h
diff options
context:
space:
mode:
authorJonathan Cameron <jic23@cam.ac.uk>2010-07-11 16:39:18 +0100
committerGreg Kroah-Hartman <gregkh@suse.de>2010-07-22 11:38:29 -0700
commit59883ba170bc280787ad9d5decd7677cf6c38ef8 (patch)
treecee8b328a3d7e9ffd76ffc6e00db84058dd2755c /drivers/staging/iio/ring_sw.h
parent43c11b4373f6fcaf8ce02ea5ea95d764edd87040 (diff)
downloadkernel_samsung_smdk4412-59883ba170bc280787ad9d5decd7677cf6c38ef8.zip
kernel_samsung_smdk4412-59883ba170bc280787ad9d5decd7677cf6c38ef8.tar.gz
kernel_samsung_smdk4412-59883ba170bc280787ad9d5decd7677cf6c38ef8.tar.bz2
staging: iio: Add iio_sw_ring_helper_state and functions to cover common case.
Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk> Acked-by: Barry Song <21cnbao@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/staging/iio/ring_sw.h')
-rw-r--r--drivers/staging/iio/ring_sw.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/drivers/staging/iio/ring_sw.h b/drivers/staging/iio/ring_sw.h
index 5c22936..0194e7f 100644
--- a/drivers/staging/iio/ring_sw.h
+++ b/drivers/staging/iio/ring_sw.h
@@ -209,6 +209,16 @@ void iio_sw_rb_free(struct iio_ring_buffer *ring);
int iio_sw_ring_preenable(struct iio_dev *indio_dev);
+struct iio_sw_ring_helper_state {
+ struct work_struct work_trigger_to_ring;
+ struct iio_dev *indio_dev;
+ int (*get_ring_element)(struct iio_sw_ring_helper_state *st, u8 *buf);
+ s64 last_timestamp;
+};
+
+void iio_sw_poll_func_th(struct iio_dev *indio_dev, s64 time);
+void iio_sw_trigger_bh_to_ring(struct work_struct *work_s);
+
#else /* CONFIG_IIO_RING_BUFFER*/
static inline void iio_ring_sw_register_funcs(struct iio_ring_access_funcs *ra)
{};