Commit Graph

482421 Commits

Author SHA1 Message Date
Lars-Peter Clausen 0a01db9d64 staging:iio:ad5933: Remove platform data from state struct
The platform data is only used in the probe function. No need to keep it
around.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2015-01-05 18:59:58 +00:00
Lars-Peter Clausen 9251d14a27 staging:iio:ad5933: Report temperature as raw value
We shouldn't be doing the unit conversion in kernel space. Just report the
raw value for the property and the scale. Userspace can do the conversion if
necessary.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2015-01-05 18:59:58 +00:00
Octavian Purdila 66ad1fd025 iio: buffer: fix custom buffer attributes copy
Signed-off-by: Octavian Purdila <octavian.purdila@intel.com>
Reviewed-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2015-01-05 18:59:57 +00:00
Vlad Dogaru 8f5d8727a7 iio: ensure scan index is unique at device register
Having two or more channels with the same positive scan_index field
makes no sense if the device supports buffering.  Prevent this situation
by failing to register such a device.

Signed-off-by: Vlad Dogaru <vlad.dogaru@intel.com>
Reviewed-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2015-01-05 18:59:57 +00:00
Stefan Wahren c22d2672c8 iio: mxs-lradc: check ranges of ts properties
The devicetree binding for mxs-lradc defines ranges for the
touchscreen properties. In order to avoid unexpected behavior like
division by zero, we better check these ranges during probe and
abort in error case.

Additionally this patch adds an important note from the reference
manual about the range of sample delay.

Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com>
Reviewed-by: Marek Vasut <marex@denx.de>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2015-01-05 18:59:56 +00:00
Stefan Wahren a5b940fa4a DT: mxs-lradc: fix ranges of ts properties
This patch fixes off-by-one issues in the devicetree binding of
mxs-lradc.

According to the i.MX23 and i.MX28 reference manuals [1][2] the range of
NUM_SAMPLES is 0..31, but property ave-ctrl is substracted by 1 before used.

Considering all limitations the range of DELAY is 1..2047, but also
property ave-delay is substracted by 1 before used.

The patch has been suggested by Hartmut Knaack and Kristina Martsenko.

[1] - http://cache.freescale.com/files/dsp/doc/ref_manual/IMX23RM.pdf
[2] - http://cache.freescale.com/files/dsp/doc/ref_manual/MCIMX28RM.pdf

Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2015-01-05 18:59:56 +00:00
Daniel Baluta 6a191c7025 iio: imu: kmx61: Use correct base when reading data
We have two IIO devices and we need to adjust the base
when reading data.

Signed-off-by: Daniel Baluta <daniel.baluta@intel.com>
Reviewed-by: Hartmut Knaack <knaack.h@gmx.de>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2015-01-05 18:59:55 +00:00
Daniel Baluta ea04d29658 iio: imu: kmx61: Remove unnecessary REG_INS1 read
Useful in the debugging phase, not needed now.

Signed-off-by: Daniel Baluta <daniel.baluta@intel.com>
Acked-by: Hartmut Knaack <knaack.h@gmx.de>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2015-01-05 18:59:55 +00:00
Daniel Baluta dbdd0e2dd9 iio: imu: kmx61: Fix device initialization when setting trigger state
Signed-off-by: Daniel Baluta <daniel.baluta@intel.com>
Acked-by: Hartmut Knaack <knaack.h@gmx.de>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2015-01-05 18:59:54 +00:00
Daniel Baluta d4a4ae04d2 iio: imu: kmx61: Use false instead of 0 for ev_enable_state
Signed-off-by: Daniel Baluta <daniel.baluta@intel.com>
Acked-by: Hartmut Knaack <knaack.h@gmx.de>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2015-01-05 18:59:53 +00:00
Daniel Baluta 0475c68544 iio: imu: kmx61: Drop unused device parameter
Signed-off-by: Daniel Baluta <daniel.baluta@intel.com>
Reviewed-by: Hartmut Knaack <knaack.h@gmx.de>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2015-01-05 18:59:53 +00:00
Daniel Baluta dfb12edea5 iio: imu: kmx61: Fixup parameters alignment
Signed-off-by: Daniel Baluta <daniel.baluta@intel.com>
Acked-by: Hartmut Knaack <knaack.h@gmx.de>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2015-01-05 18:59:52 +00:00
Daniel Baluta 28ff344e1d iio: imu: kmx61: Enhance error handling
This fixes parts of kmx61 error handling to make code easier to read and to be
more consistent with IIO coding conventions:
	* prefer as single point for error handling instead of duplicating code
	for each function
	* directly return a value from a case branch instead of breaking
	* fix error message for writing REG_CTRL1

Also, add separate error paths for kmx61_trigger_setup/iio_triggered_buffer_setup
calls.

Signed-off-by: Daniel Baluta <daniel.baluta@intel.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2015-01-05 18:59:52 +00:00
Daniel Baluta a3da4fa301 iio: imu: kmx61: Don't ignore kmx61_set_power_state errors
..except while in an error handler, where there is nothing
to be done anyway.

Signed-off-by: Daniel Baluta <daniel.baluta@intel.com>
Reviewed-by: Hartmut Knaack <knaack.h@gmx.de>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2015-01-05 18:59:51 +00:00
Daniel Baluta 4e8439779e iio: imu: kmx61: Save odr_bits for later use
Signed-off-by: Daniel Baluta <daniel.baluta@intel.com>
Reviewed-by: Hartmut Knaack <knaack.h@gmx.de>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2015-01-05 18:59:50 +00:00
Stefan Wahren 1f202725b7 iio: inkern: add out of range error message
If the DT contains an invalid channel specifier then the probe of
iio_hwmon fails with the following message:

iio_hwmon: probe of iio_hwmon failed with error -22

So it's better to print out the relevant channel specifier in
error case to locate the problem.

Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2015-01-05 18:59:50 +00:00
Vlad Dogaru 4193c0f1d8 iio: driver for Semtech SX9500 proximity solution
Supports buffering, IIO events and changing sampling frequency.

Datasheet available at:
http://www.semtech.com/images/datasheet/sx9500_ag.pdf

Signed-off-by: Vlad Dogaru <vlad.dogaru@intel.com>
Reviewed-by: Hartmut Knaack <knaack.h@gmx.de>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2015-01-05 18:59:42 +00:00
Vlad Dogaru 75d44ce08f staging: iio: dummy: fix compile error when not using buffering
Commit 4ae0301992 ("staging:iio:dummy: Register same channels for
device and buffer") has changed the number of parameters for
iio_simple_dummy_configure_buffer() only for the IIO_SIMPLE_DUMMY_BUFFER
case.  Fix this by also changing the placeholder function declared in
the header when buffering is not enabled.

Signed-off-by: Vlad Dogaru <vlad.dogaru@intel.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2015-01-01 12:20:52 +00:00
Roberta Dobrescu e904ce7e26 iio: frequency: ad9523: Increase sleep time in ad9523_store_eeprom
This patch increases sleep time in ad9523_store_eeprom to 20ms since
it isn't timing critical. It fixes the following checkpatch.pl warning:
WARNING: msleep < 20ms can sleep for up to 20ms

Signed-off-by: Roberta Dobrescu <roberta.dobrescu@gmail.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2015-01-01 12:18:26 +00:00
Roberta Dobrescu ff6f46295d iio: amplifiers: ad8366: Use right order for type specification
This patch fixes the following checkpatch.pl warning:
WARNING: type 'char unsigned' should be specified in [[un]signed]
[short|int|long|long long] order

Signed-off-by: Roberta Dobrescu <roberta.dobrescu@gmail.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2015-01-01 12:16:57 +00:00
Roberta Dobrescu c5878d9dbb iio: amplifiers: ad8366: Remove space before ','
This patch fixes the following checkpatch.pl error:
ERROR: space prohibited before that ',' (ctx:WxW)

Signed-off-by: Roberta Dobrescu <roberta.dobrescu@gmail.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2015-01-01 12:16:07 +00:00
Roberta Dobrescu 586d48f926 iio: light: lm3533-als: Remove space before ','
This patch fixes the following checkpatch.pl error:
ERROR: space prohibited before that ',' (ctx:WxE)

Signed-off-by: Roberta Dobrescu <roberta.dobrescu@gmail.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2015-01-01 12:14:36 +00:00
Roberta Dobrescu 4f51c9ada7 iio: light: Annotate Kconfig entry with module name information
This patch fixes the following checkpatch.pl warning:
WARNING: please write a paragraph that describes the config symbol fully

Signed-off-by: Roberta Dobrescu <roberta.dobrescu@gmail.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2015-01-01 12:14:34 +00:00
Roberta Dobrescu 88f4c6c468 iio: accel: Annotate Kconfig entries with module name information
This patch fixes the following checkpatch.pl warning:
WARNING: please write a paragraph that describes the config symbol fully

Signed-off-by: Roberta Dobrescu <roberta.dobrescu@gmail.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2015-01-01 12:13:10 +00:00
Roberta Dobrescu c876109e66 iio: accel: mma8452: Remove trailing whitespace
This patch fixes the following checkpatch.pl error:
ERROR: trailing whitespace

Signed-off-by: Roberta Dobrescu <roberta.dobrescu@gmail.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2015-01-01 12:12:09 +00:00
Roberta Dobrescu b0868df433 iio: accel: kxcjk-1013: Add a blank line after declarations
This patch fixes the following checkpatch.pl warning:
WARNING: Missing a blank line after declarations

Signed-off-by: Roberta Dobrescu <roberta.dobrescu@gmail.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2015-01-01 12:11:09 +00:00
Rickard Strandqvist e37156ec85 staging: iio: accel: sca3000_core.c: Remove unused function
Remove the function sca3000_check_status() that is not used anywhere.

This was partially found by using a static code analysis program called cppcheck.

Signed-off-by: Rickard Strandqvist <rickard_strandqvist@spectrumdigital.se>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2014-12-26 12:40:11 +00:00
Srinivas Pandruvada 6ed5ac50a3 iio: imu: inv_mpu6050: ACPI enumeration
Added changes so that the module can be enumerated via ACPI.

Signed-off-by: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2014-12-26 12:38:47 +00:00
Roberta Dobrescu 450a5ff768 iio: trigger: Add a blank line after declarations
This patch fixes the following checkpatch.pl warning:
WARNING: Missing a blank line after declarations

Signed-off-by: Roberta Dobrescu <roberta.dobrescu@gmail.com>
Reviewed-by: Daniel Baluta <daniel.baluta@intel.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2014-12-26 12:15:36 +00:00
Vlad Dogaru 60347e71c0 iio: mma9551: fix sparse warning
sparse warnings: (new ones prefixed by >>)

>> drivers/iio/accel/mma9551.c:554:57: sparse: mixing different enum types
   drivers/iio/accel/mma9551.c:554:57:     int enum mma9551_tilt_axis  versus
   drivers/iio/accel/mma9551.c:554:57:     int enum mma9551_gpio_pin
>> drivers/iio/accel/mma9551.c:576:57: sparse: mixing different enum types
   drivers/iio/accel/mma9551.c:576:57:     int enum mma9551_tilt_axis  versus
   drivers/iio/accel/mma9551.c:576:57:     int enum mma9551_gpio_pin

Signed-off-by: Vlad Dogaru <vlad.dogaru@intel.com>
Reported-by: kbuild test robot <fengguang.wu@intel.com>
Reviewed-by: Irina Tirdea <irina.tirdea@intel.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2014-12-26 12:13:36 +00:00
Karol Wrona 20dd20f68f iio: core: Get rid of misleading comment
This comment did not fit here.  It explains why devm_kmalloc
uses dr_alloc.  Generally is not needed at all.

Signed-off-by: Karol Wrona <k.wrona@samsung.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2014-12-26 11:41:16 +00:00
Karol Wrona 780103fef5 iio: kfifo: Add resource management devm_iio_kfifo_allocate/free
iio kfifo allocate/free gained their devm_ wrappers.

Signed-off-by: Karol Wrona <k.wrona@samsung.com>
Suggested-by: Jonathan Cameron <jic23@kernel.org>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2014-12-26 11:39:57 +00:00
Karol Wrona 7ab374a053 iio: kfifo: Remove unused argument in iio_kfifo_allocate
indio_dev was unused in function body plus some small style fix - add new
lines after "if(sth) return sth" and before the last return statement.

The argument was removed also in its client.

Signed-off-by: Karol Wrona <k.wrona@samsung.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2014-12-26 11:20:38 +00:00
Vlad Dogaru 614e8842dd iio: ABI: add clarification for proximity
Signed-off-by: Vlad Dogaru <vlad.dogaru@intel.com>
Acked-by: Hartmut Knaack <knaack.h@gmx.de>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2014-12-26 11:03:21 +00:00
Hartmut Knaack 44cf3798a3 iio:pressure:bmp280: cleanup
The calculations for temperature and pressure compensation were already slightly
optimized in comparison to the datasheet. So, it makes sense to optimize even a
bit more, making proper use of C operators:
  - variable t in bmp280_compensate_temp() can be eliminated by directly
    returning the result of the relevant equation.
  - make use of the += operator and eliminate an unnecessary parenthesis level in
    bmp280_compensate_press().
When the initialization of the ctrl_meas register fails, the error message will
now mention the right register name.
During probe, i2c_set_clientdata() is called, although it is not necessary. Drop
it.

Signed-off-by: Hartmut Knaack <knaack.h@gmx.de>
Reviewed-by: Vlad Dogaru <vlad.dogaru@intel.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2014-12-26 10:32:34 +00:00
Roberta Dobrescu 762c4da347 iio: frequency: Remove unnecessary braces around single statement block
This patch fixes the following checkpatch.pl warning:
WARNING: braces {} are not necessary for single statement blocks

Signed-off-by: Roberta Dobrescu <roberta.dobrescu@gmail.com>
Acked-by: Lars-Peter Clausen <lars@metafoo.de>
Reviewed-by: Daniel Baluta <daniel.baluta@intel.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2014-12-26 09:38:42 +00:00
Roberta Dobrescu d9d0ac9655 iio: frequency: Remove 'out of memory' message
This patch fixes the following checkpatch.pl warning:
WARNING: Possible unnecessary 'out of memory' message

Signed-off-by: Roberta Dobrescu <roberta.dobrescu@gmail.com>
Acked-by: Lars-Peter Clausen <lars@metafoo.de>
Reviewed-by: Daniel Baluta <daniel.baluta@intel.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2014-12-26 09:36:17 +00:00
kbuild test robot ebd1636606 iio: imu: kmx61: kmx61_set_wake_up_odr() can be static
drivers/iio/imu/kmx61.c:422:5: sparse: symbol 'kmx61_set_wake_up_odr' was not declared. Should it be static?

Signed-off-by: Fengguang Wu <fengguang.wu@intel.com>
Reviewed-by: Daniel Baluta <daniel.baluta@intel.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2014-12-12 18:14:59 +00:00
Daniel Baluta fd3ae7a9f2 iio: imu: kmx61: Add support for any motion trigger
We use WUFE (Wake Up from Sleep Engine) and BTSE (Back to Sleep Engine)
to detect general motion input.

Signed-off-by: Daniel Baluta <daniel.baluta@intel.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2014-12-12 13:54:33 +00:00
Daniel Baluta c3a23ecc09 iio: imu: kmx61: Add support for data ready triggers
This creates a data ready trigger per IIO device.

Signed-off-by: Daniel Baluta <daniel.baluta@intel.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2014-12-12 13:49:30 +00:00
Daniel Baluta 3b9c40e604 iio: imu: kmx61: Add PM sleep support
Per sensor state (ACTIVE/STANDBY) is saved in driver's
private data (acc_stby/mag_stby) and restored when
resume is called.

Signed-off-by: Daniel Baluta <daniel.baluta@intel.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2014-12-12 13:45:14 +00:00
Daniel Baluta aff8609add iio: imu: kmx61: Add PM runtime support
By default both sensors are ACTIVE, in this way the driver
will work even if CONFIG_PM_RUNTIME is not selected.

Signed-off-by: Daniel Baluta <daniel.baluta@intel.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2014-12-12 13:44:30 +00:00
Daniel Baluta b25862c577 iio: imu: kmx61: Add acpi support
Signed-off-by: Daniel Baluta <daniel.baluta@intel.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2014-12-12 13:43:57 +00:00
Daniel Baluta 20ffac278e iio: imu: Add support for Kionix KMX61 sensor
Minimal implementation for KMX61 6-axis accelerometer/magnetometer. It exports
raw accel/magn readings together with scale and sampling frequency.

This driver uses two IIO devices one for accelerometer and one for magnetometer.

Datasheet will be available at:
http://www.kionix.com/6-axis-accelerometer-magnetometer/kmx61

Signed-off-by: Daniel Baluta <daniel.baluta@intel.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2014-12-12 13:43:54 +00:00
Jonathan Cameron 3909a0713e Revert "iio: imu: Add support for Kionix KMX61 sensor"
The two halves of this part can run largely independently.  Hence
a version 4 of this patch followed that reorganized things completely.

This reverts commit d7d787d291.
2014-12-12 13:30:04 +00:00
Vlad Dogaru c78b917163 iio: add driver for Freescale MMA9551L
Add support for Freescale MMA9551L Intelligent Motion-Sensing Platform.
The driver supports raw reads for acceleration and inclination, as well
as configuring inclination rate-of-change events.  The events can be
used similarly to an Android sensor Tilt event.

The specifications can be downloaded from:
http://www.freescale.com/files/sensors/doc/ref_manual/MMA955xLSWRM.pdf

Signed-off-by: Irina Tirdea <irina.tirdea@intel.com>
Signed-off-by: Vlad Dogaru <vlad.dogaru@intel.com>
Reviewed-by: Hartmut Knaack <knaack.h@gmx.de>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2014-12-12 12:28:37 +00:00
Adam Thomson 7f1c2cbbda iio: Add ABI documentation for input current readings
Add information on in_current related readings.

Signed-off-by: Adam Thomson <Adam.Thomson.Opensource@diasemi.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2014-12-12 12:28:36 +00:00
Ivan T. Ivanov 09546a3063 iio: consumer.h: Fix scale factor in function comment
1 milivolt is equal to 1000000 nanovolts.

Signed-off-by: Ivan T. Ivanov <iivanov@mm-sol.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2014-12-12 12:28:36 +00:00
Irina Tirdea 9d02daf738 iio: accel: kxcjk-1013: power off device if probe fails
When the device is initialized in probe, it is also powered on.
If there is an error after the initialization, the device will
remain powered on.

Power off the device in case probe fails after device initialization.

Signed-off-by: Irina Tirdea <irina.tirdea@intel.com>
Suggested-by: Daniel Baluta <daniel.baluta@intel.com>
Reviewed-by: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2014-12-12 12:28:35 +00:00
Irina Tirdea fbd123e913 iio: accel: kxcjk-1013: error handling when set mode fails
If there is an error in set mode at runtime resume, reset the state of
the runtime usage count.

If there is an error in set mode at runtime suspend, make sure the framework
retries to suspend the device.

Signed-off-by: Irina Tirdea <irina.tirdea@intel.com>
Reviewed-by: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2014-12-12 12:28:35 +00:00