linux/drivers/iio
Zubair Lutfullah ca9a563805 iio: ti_am335x_adc: Add continuous sampling support
Previously the driver had only one-shot reading functionality.
This patch adds continuous sampling support to the driver.

Continuous sampling starts when buffer is enabled.
HW IRQ wakes worker thread that pushes samples to userspace.
Sampling stops when buffer is disabled by userspace.

Patil Rachna (TI) laid the ground work for ADC HW register access.
Russ Dill (TI) fixed bugs in the driver relevant to FIFOs and IRQs.

I fixed channel scanning so multiple ADC channels can be read
simultaneously and pushed to userspace.
Restructured the driver to fit IIO ABI.
And added INDIO_BUFFER_HARDWARE mode.

Signed-off-by: Zubair Lutfullah <zubair.lutfullah@gmail.com>
Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Russ Dill <Russ.Dill@ti.com>
Acked-by: Lee Jones <lee.jones@linaro.org>
Acked-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2013-09-21 19:23:47 +01:00
..
accel iio: Remove unnecessary casts for iio_push_to_buffers() 2013-09-15 19:05:07 +01:00
adc iio: ti_am335x_adc: Add continuous sampling support 2013-09-21 19:23:47 +01:00
amplifiers iio: amplifiers: ad8366: Use devm_* APIs 2013-08-03 21:00:15 +01:00
common iio: sensors-core: st: Clean-up error handling in st_sensors_read_info_raw() 2013-09-14 21:17:16 +01:00
dac iio: refactor info mask and ext_info attribute creation. 2013-09-15 17:43:20 +01:00
frequency iio: refactor info mask and ext_info attribute creation. 2013-09-15 17:43:20 +01:00
gyro iio: Remove unnecessary casts for iio_push_to_buffers() 2013-09-15 19:05:07 +01:00
imu iio: imu: inv_mpu6050: Use devm_iio_device_alloc 2013-08-03 18:55:24 +01:00
light iio: Remove unnecessary casts for iio_push_to_buffers() 2013-09-15 19:05:07 +01:00
magnetometer iio: Remove unnecessary casts for iio_push_to_buffers() 2013-09-15 19:05:07 +01:00
pressure iio: pressure-core: st: Allow for number of channels to vary 2013-09-14 21:17:17 +01:00
temperature iio:temperature:tmp006 put sampling_frequency in info_mask_shared_by_all 2013-09-15 17:47:38 +01:00
trigger iio: Add a comment to about alphabetical order to Kconfigs and Makefiles 2013-08-03 18:40:36 +01:00
buffer_cb.c iio: iio_push_to_buffers(): Change type of 'data' to const void * 2013-09-15 19:02:07 +01:00
iio_core_trigger.h iio: fix semicolon in io_core_trigger.h 2013-08-03 18:40:32 +01:00
iio_core.h iio: refactor info mask and ext_info attribute creation. 2013-09-15 17:43:20 +01:00
industrialio-buffer.c iio: Minor cleanups of industrialio-buffer 2013-09-18 21:44:13 +01:00
industrialio-core.c iio: add info_mask_[shared_by_dir/shared_by_all] 2013-09-15 17:45:49 +01:00
industrialio-event.c iio: use anon_inode_getfd() with O_CLOEXEC flag 2013-09-15 17:27:15 +01:00
industrialio-trigger.c iio: trigger: implement devm_iio_trigger_alloc/devm_iio_triger_free 2013-08-17 19:34:52 +01:00
industrialio-triggered-buffer.c iio: Add helper function for initializing triggered buffers 2012-06-18 17:26:09 -07:00
inkern.c iio: inkern: fix iio_convert_raw_to_processed_unlocked 2013-07-03 20:30:52 +01:00
Kconfig iio: Add tmp006 IR temperature sensor 2013-08-17 15:50:53 +01:00
kfifo_buf.c iio: iio_push_to_buffers(): Change type of 'data' to const void * 2013-09-15 19:02:07 +01:00
Makefile iio: Restore alphabetic order in Makefile 2013-08-17 15:50:54 +01:00