From 1f785681a87068f123d3e23da13b2c55ab4f93ac Mon Sep 17 00:00:00 2001 From: Jonathan Cameron Date: Wed, 18 May 2011 14:42:11 +0100 Subject: staging:iio:trigger sysfs userspace trigger rework. Awaiting comments on using the nested_irq_trick so that may change. Moves away from platform device to sysfs controlled creation and removal of these triggers. Fix double free of name on trigger allocation failure thanks to Michael Hennerich. Signed-off-by: Jonathan Cameron Reviewed-by: Michael Hennerich Signed-off-by: Greg Kroah-Hartman --- drivers/staging/iio/industrialio-trigger.c | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'drivers/staging/iio/industrialio-trigger.c') diff --git a/drivers/staging/iio/industrialio-trigger.c b/drivers/staging/iio/industrialio-trigger.c index dd762f0..86d026b 100644 --- a/drivers/staging/iio/industrialio-trigger.c +++ b/drivers/staging/iio/industrialio-trigger.c @@ -181,6 +181,19 @@ irqreturn_t iio_trigger_generic_data_rdy_poll(int irq, void *private) } EXPORT_SYMBOL(iio_trigger_generic_data_rdy_poll); +void iio_trigger_poll_chained(struct iio_trigger *trig, s64 time) +{ + int i; + if (!trig->use_count) { + for (i = 0; i < CONFIG_IIO_CONSUMERS_PER_TRIGGER; i++) + if (trig->subirqs[i].enabled) { + trig->use_count++; + handle_nested_irq(trig->subirq_base + i); + } + } +} +EXPORT_SYMBOL(iio_trigger_poll_chained); + void iio_trigger_notify_done(struct iio_trigger *trig) { trig->use_count--; -- cgit v1.1