OpenCloudOS-Kernel/drivers/staging/iio
Ioana Ciornei 2e9fed4220 staging: iio: dummy: complete IIO events delivery to userspace
Starting with commit fd2bb310ca (Staging: iio: Move evgen interrupt
generation to irq_work) event processing is handled by calling
both the top half and the threaded part properly simulating real
hardware interrupts making use of threaded interrupts.
This way the processing is split in 2 parts:

* the IRQ handler that runs in IRQ context and only saves the event
timestamp
* the threaded handler that runs in process context, reads the events
and pushes the in the userspace.

If the IRQ handler returns IRQ_HANDLED the threaded handler is not
even being called since the interrupt is considered to be processed.
Because the iio dummy driver processes the events in the threaded
handler the IRQ handler must return IRQ_WAKE_THREAD so that the
threaded part would be awakened and called.

Signed-off-by: Ioana Ciornei <ciorneiioana@gmail.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2015-11-21 15:56:44 +00:00
..
Documentation Staging: fixed multiple spelling errors. 2015-05-08 09:23:58 +02:00
accel spi: Updates for v4.4 2015-11-05 13:15:12 -08:00
adc First set of IIO fixes for the 4.4 cycle. 2015-11-18 13:15:50 -08:00
addac spi: Updates for v4.4 2015-11-05 13:15:12 -08:00
cdc staging: iio: cdc: Remove explicit comparisons 2015-10-24 19:32:09 -07:00
frequency spi: Updates for v4.4 2015-11-05 13:15:12 -08:00
gyro spi: Updates for v4.4 2015-11-05 13:15:12 -08:00
impedance-analyzer Staging: iio: impedance-analyzer: Fix sparse warning 2015-10-29 07:55:17 +09:00
light staging: iio: Remove unused variable 2015-10-27 14:49:09 +09:00
magnetometer spi: Updates for v4.4 2015-11-05 13:15:12 -08:00
meter spi: Updates for v4.4 2015-11-05 13:15:12 -08:00
resolver spi: Updates for v4.4 2015-11-05 13:15:12 -08:00
trigger staging: iio: trigger: Remove explicit comparisons 2015-10-24 19:32:09 -07:00
Kconfig staging: iio: select IRQ_WORK for IIO_DUMMY_EVGEN 2015-10-25 12:15:36 +00:00
Makefile
TODO
iio_dummy_evgen.c staging: iio: iio_dummy_evgen: handle_simple_irq() build fix 2015-09-30 03:46:43 +02:00
iio_dummy_evgen.h staging: iio_simple_dummy: fix return types 2015-06-01 11:21:46 +01:00
iio_simple_dummy.c staging: iio: dummy: replace block comment with single line comment 2015-10-27 14:49:09 +09:00
iio_simple_dummy.h staging: iio: dummy: use uppercase descriptors for enum names 2015-10-27 14:49:09 +09:00
iio_simple_dummy_buffer.c staging: iio: dummy: use uppercase descriptors for enum names 2015-10-27 14:49:09 +09:00
iio_simple_dummy_events.c staging: iio: dummy: complete IIO events delivery to userspace 2015-11-21 15:56:44 +00:00
ring_hw.h staging: iio: Add #include guards to header files 2014-09-28 22:19:04 -04:00