projects
/
firefly-linux-kernel-4.4.55.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge tag 'libnvdimm-for-4.4' of git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm...
[firefly-linux-kernel-4.4.55.git]
/
drivers
/
iio
/
industrialio-trigger.c
diff --git
a/drivers/iio/industrialio-trigger.c
b/drivers/iio/industrialio-trigger.c
index 570606c2adbd8ccd7167ae0cd4105c9d2744230b..ae2806aafb7267c474f54ffac8bc33232739c469 100644
(file)
--- a/
drivers/iio/industrialio-trigger.c
+++ b/
drivers/iio/industrialio-trigger.c
@@
-366,10
+366,18
@@
static ssize_t iio_trigger_write_current(struct device *dev,
indio_dev->trig = trig;
indio_dev->trig = trig;
- if (oldtrig)
+ if (oldtrig) {
+ if (indio_dev->modes & INDIO_EVENT_TRIGGERED)
+ iio_trigger_detach_poll_func(oldtrig,
+ indio_dev->pollfunc_event);
iio_trigger_put(oldtrig);
iio_trigger_put(oldtrig);
- if (indio_dev->trig)
+ }
+ if (indio_dev->trig) {
iio_trigger_get(indio_dev->trig);
iio_trigger_get(indio_dev->trig);
+ if (indio_dev->modes & INDIO_EVENT_TRIGGERED)
+ iio_trigger_attach_poll_func(indio_dev->trig,
+ indio_dev->pollfunc_event);
+ }
return len;
}
return len;
}