Add a private data pointer field to pollfunc struct.
This is useful in the trigger handler to get specific data
for the driver registering the pollfunc.

Signed-off-by: Eugen Hristev <[email protected]>
---
 include/linux/iio/trigger_consumer.h | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/include/linux/iio/trigger_consumer.h 
b/include/linux/iio/trigger_consumer.h
index 36e2a02..13be595 100644
--- a/include/linux/iio/trigger_consumer.h
+++ b/include/linux/iio/trigger_consumer.h
@@ -29,6 +29,7 @@ struct iio_trigger;
  * @timestamp:                 some devices need a timestamp grabbed as soon
  *                             as possible after the trigger - hence handler
  *                             passes it via here.
+ * @p:                         private data for the poll func owner.
  **/
 struct iio_poll_func {
        struct iio_dev *indio_dev;
@@ -38,6 +39,7 @@ struct iio_poll_func {
        char *name;
        int irq;
        s64 timestamp;
+       void *p;
 };
 
 
@@ -49,6 +51,13 @@ struct iio_poll_func
                    const char *fmt,
                    ...);
 void iio_dealloc_pollfunc(struct iio_poll_func *pf);
+
+static inline void
+iio_pollfunc_set_private_data(struct iio_poll_func *pf, void *p)
+{
+       pf->p = p;
+}
+
 irqreturn_t iio_pollfunc_store_time(int irq, void *p);
 
 void iio_trigger_notify_done(struct iio_trigger *trig);
-- 
2.7.4

Reply via email to