linux/drivers/iio
Adriana Reus 65ae47b0ec iio: accel: kxcjk-1013: optimize i2c transfers in trigger handler
Some i2c busses (e.g.: Synopsys DesignWare I2C adapter) need to
enable/disable the bus at each i2c transfer and must wait for
the enable/disable to happen before sending the data.

When reading data in the trigger handler, the kxcjk-1013 accel driver
does one i2c transfer for each axis. This has an impact on the
frequency of the accelerometer at high sample rates due to additional
delays introduced by the i2c bus at each transfer.

Reading all axis values in one i2c transfer reduces the delays
introduced by the i2c bus. Uses i2c_smbus_read_i2c_block_data_or_emulated
that will fallback to reading each axis as a separate word in case i2c
block read is not supported.

Signed-off-by: Adriana Reus <adriana.reus@intel.com>
Signed-off-by: Irina Tirdea <irina.tirdea@intel.com>
Acked-by: Jonathan Cameron <jic23@kernel.org>
Acked-by: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2016-04-03 10:27:46 +01:00
..
accel iio: accel: kxcjk-1013: optimize i2c transfers in trigger handler 2016-04-03 10:27:46 +01:00
adc iio: ina2xx-adc: update the CALIB. register when RShunt changes 2016-03-21 19:00:11 +00:00
amplifiers spi: Updates for v4.4 2015-11-05 13:15:12 -08:00
buffer iio: buffer-dmaengine: Use dmaengine_terminate_sync() 2016-02-09 21:05:17 +00:00
chemical iio: convert to common i2c_check_functionality() return value 2016-02-27 17:17:43 +00:00
common iio: st_sensors: simplify buffer address handling 2016-03-28 08:51:39 +01:00
dac iio: dac: add NXP LPC18xx DAC driver 2016-03-12 18:12:37 +00:00
dummy Second set of IIO new drivers, functionality and cleanups for the 4.5 cycle. 2015-12-26 17:03:33 -08:00
frequency spi: Updates for v4.4 2015-11-05 13:15:12 -08:00
gyro iio: accel: bmg160: optimize transfers in trigger handler 2016-04-03 10:27:45 +01:00
health iio: health/afe4404: mark suspend/resume functions __maybe_unused 2016-02-17 19:36:01 +00:00
humidity iio: convert to common i2c_check_functionality() return value 2016-02-27 17:17:43 +00:00
imu iio: imu: mpu6050: Fix name/chip_id when using ACPI 2016-03-20 10:39:49 +00:00
light iio: light: tsl2563: Remove flush_scheduled_work 2016-03-20 11:04:49 +00:00
magnetometer iio:magnetometer:ak8975: fix missing regulator_disable 2016-03-20 11:06:15 +00:00
orientation iio: orientation: hid-sensor-rotation: Fix memory leak in probe() 2015-05-17 09:10:25 +01:00
potentiometer iio: potentiometer: mcp4531: use pointer to access model parameters 2016-04-03 10:27:27 +01:00
pressure iio:pressure:ms5611: fix missing regulator_disable 2016-03-20 11:02:40 +00:00
proximity iio: convert to common i2c_check_functionality() return value 2016-02-27 17:17:43 +00:00
temperature iio: convert to common i2c_check_functionality() return value 2016-02-27 17:17:43 +00:00
trigger iio: trigger: Introduce IIO hrtimer based trigger 2015-12-03 18:19:27 +00:00
iio_core_trigger.h
iio_core.h iio: Move buffer registration to the core 2014-12-12 12:28:31 +00:00
industrialio-buffer.c iio: Add helper function for calculating scan index storage size 2016-02-06 18:21:35 +00:00
industrialio-configfs.c iio:configfs: Introduce iio/configfs.h to provide a location for the configfs_subsystem 2015-12-05 16:25:30 +00:00
industrialio-core.c iio: core: implement iio_device_{claim|release}_direct_mode() 2016-03-12 11:17:19 +00:00
industrialio-event.c iio: event: Remove negative error code from iio_event_poll 2015-08-12 19:26:39 +01:00
industrialio-sw-trigger.c iio: core: fix ptr_ret.cocci warnings 2016-01-20 17:09:18 -08:00
industrialio-trigger.c iio: Support triggered events 2015-08-27 20:47:09 +01:00
industrialio-triggered-event.c iio: Support triggered events 2015-08-27 20:47:09 +01:00
inkern.c First set of IIO fixes for the 4.5 cycle. 2016-02-01 13:07:38 -08:00
Kconfig iio: light: add MAX30100 oximeter driver support 2015-12-12 12:14:37 +00:00
Makefile iio: light: add MAX30100 oximeter driver support 2015-12-12 12:14:37 +00:00