summaryrefslogtreecommitdiff
path: root/drivers/staging/iio
AgeCommit message (Collapse)AuthorFilesLines
2017-07-24Merge tag 'iio-fixes-for-4.13a' of ↵Greg Kroah-Hartman1-1/+1
git://git.kernel.org/pub/scm/linux/kernel/git/jic23/iio into staging-linus Jonathan writes: First set of IIO fixes for the 4.13 cycle. * ad2s1210 - Fix negative angular velocity reads (identified by a gcc 7 warning) * aspeed-adc - Wait for initialization sequence to finish before enabling channels. Without it no channels work. * axp288 - Revert a patch that dropped some bogus register mods. No one is entirely sure why but it breaks charging on some devices. - Fix GPADC pin read returning 0. Turns out a small sleep is needed. * bmc150 - Make sure device is restored to normal state after suspend / resume cycle. Otherwise, simple sysfs reads are broken. * tsl2563 - fix wrong event code. * st-accel - add spi 3-wire support. Needed to fix the lsm303agr accelerometer which only had 3 wires in all cases. Side effect is to enable optional 3-wire support for other devices. * st-pressure - disable multiread by default for LPS22HB (only effects SPI) * sun4i-gpadc-iio - fix unbalanced irq enable / disable * vf610 - Fix VALT slection for REFSEL bits - ensures we are using the right reference pins.
2017-07-15staging:iio:resolver:ad2s1210 fix negative IIO_ANGL_VEL readArnd Bergmann1-1/+1
gcc-7 points out an older regression: drivers/staging/iio/resolver/ad2s1210.c: In function 'ad2s1210_read_raw': drivers/staging/iio/resolver/ad2s1210.c:515:42: error: '<<' in boolean context, did you mean '<' ? [-Werror=int-in-bool-context] The original code had 'unsigned short' here, but incorrectly got converted to 'bool'. This reverts the regression and uses a normal type instead. Fixes: 29148543c521 ("staging:iio:resolver:ad2s1210 minimal chan spec conversion.") Cc: stable@vger.kernel.org Signed-off-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2017-06-20Merge 4.12-rc6 into staging-nextGreg Kroah-Hartman1-5/+1
We want the staging fixes in here as well. Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2017-05-28staging: iio: ad7152: Fix deadlock in ad7152_write_raw_samp_freq()Alexey Khoroshilov1-5/+1
ad7152_write_raw_samp_freq() is called by ad7152_write_raw() with chip->state_lock held. So, there is unavoidable deadlock when ad7152_write_raw_samp_freq() locks the mutex itself. The patch removes unneeded locking. Found by Linux Driver Verification project (linuxtesting.org). Signed-off-by: Alexey Khoroshilov <khoroshilov@ispras.ru> Fixes: 6572389bcc11 ("staging: iio: cdc: ad7152: Implement IIO_CHAN_INFO_SAMP_FREQ attribute") Acked-by: Lars-Peter Clausen <lars@metafoo.de> Cc: <Stable@vger.kernel.org> Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2017-05-21staging: iio: light: Replace symbolic permissions as per coding styleSurender Polsani1-36/+26
Fixed the following checkpatch.pl warnings: octal permissions are more preferable than symbolic permissions Replaced DEVICE_ATTR family macros with DEVICE_ATTR_RW family as suggested by Greg K-H. Changed attributes and function names where ever required to satisfy internal macro definitions like __ATTR__RW(). Signed-off-by: Surender Polsani <surenderpolsani@gmail.com> Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2017-05-14staging: iio: meter: Fix the identations for proper alignments.Harinath Nampally1-28/+27
This patch fixes below checkpatch.pl kind of warnings: CHECK: Alignment should match open parenthesis Signed-off-by: Harinath Nampally <harinath922@gmail.com> Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2017-05-07tsl2x7x: remove paragraph about writing to the FSF's mailing addressEnric Balletbo i Serra1-4/+0
Do not include the paragraph about writing to the Free Software Foundation's mailing address from the sample GPL notice. The FSF has changed addresses in the past, and may do so again. Linux already includes a copy of the GPL. Signed-off-by: Enric Balletbo i Serra <eballetbo@gmail.com> Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2017-05-07staging: iio: tsl2x7x: rename driver for consistency with other IIO light ↵Brian Masney2-1/+1
drivers This patch renames the tsl2x7x_core.c file to tsl2x7x.c so that the naming convention is consistent with other IIO light drivers outside of staging. Signed-off-by: Brian Masney <masneyb@onstation.org> Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2017-05-01iio: ade7854: Convert symbolic permissions to octalQuentin Swain1-44/+44
Convert symbolic S_IRUGO and S_IWUSR macros to octal to fix warnings reported by checkpatch.pl Signed-off-by: Quentin Swain <dudebrobro179@gmail.com> Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2017-05-01iio: ade7758: Convert symbolic permissions to octalQuentin Swain1-25/+25
Convert symbolic S_IRUGO and S_IWUSR macros to octal permissions to fix warnings reported by checkpatch.pl Signed-off-by: Quentin Swain <dudebrobro179@gmail.com> Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2017-05-01iio: ade7754: Convert symbolic permissions to octalQuentin Swain1-28/+28
Convert symbolic S_IRUGO and S_IWUSR macros to octal permissions to resolve warnings reported by checkpatch.pl Signed-off-by: Quentin Swain <dudebrobro179@gmail.com> Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2017-05-01iio: ade7753 Convert: symbolic permissions to octalQuentin Swain1-23/+23
Convert S_IRUGO and S_IWUSR macros to octal permissions to resolve warnings reported by checkpatch.pl Signed-off-by: Quentin Swain <dudebrobro179@gmail.com> Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2017-05-01iio: ad9834 convert symbolic permissions to octalQuentin Swain2-12/+12
Remove checkpatch warnings by converting symbolic S_IRUGO and S_IWUSR permissions to octal Signed-off-by: Quentin Swain <dudebrobro179@gmail.com> Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2017-04-26staging: iio: isl29028: move out of stagingBrian Masney3-734/+0
Move ISL29028 ALS / Proximity Sensor out of staging and into mainline. Signed-off-by: Brian Masney <masneyb@onstation.org> Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2017-04-26staging: iio: isl29028: correct proximity sleep timesBrian Masney1-20/+50
The sysfs attribute in_proximity_sampling_frequency_available currently shows the values 1 3 5 10 13 20 83 100. These values are supposed to correspond to the sleep values 800 400 200 100 75 50 12.5 0 (all in ms). When passing in a sampling frequency of 3, it actually uses a sleep time of 200ms instead of the expected 400ms value. This patch changes the value shown by this sysfs attribute to use fixed-point numbers so that the correct sampling frequency is shown to the user. This patch also changes the code that updates the proximity sampling frequency to only allow values that are shown in the _available sysfs attribute. The original code showed the value 83 that corresponds to the sleep time 12 ms. The data sheet actually lists 12.5 ms as the sleep time, so the proximity frequency was updated to 80. Signed-off-by: Brian Masney <masneyb@onstation.org> Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2017-04-26staging: iio: tsl2x7x: Replace deprecated macros (S_IRUGO, S_IWUSR)Paolo Cretaro1-10/+10
Use octal digits as suggested by checkpatch instead of deprecated macros. Signed-off-by: Paolo Cretaro <melko@frugalware.org> Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2017-04-14Staging: iio: accel: adis16203: fixed a brace coding style issueRené Hickersberger?=1-2/+1
Fixed a brace coding style issue. Signed-off-by: René Hickersberger <renehickersberger@gmx.net> Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2017-04-14iio:meter:ade7759: Removing use of deprecated macros (S_IRUGO, S_IWUSR)Chen Guanqiao1-2/+2
This fixes the coding style issue of using (S_IWUSR | S_IRUGO) in place of 4-digit octal numbers. Signed-off-by: Chen Guanqiao <chen.chenchacha@foxmail.com> Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2017-04-14staging: iio: ad5933: Protect DIRECT mode using claim/release helpersNarcisa Ana Maria Vasile1-22/+28
This device operates in DIRECT_MODE and BUFFER_HARDWARE mode. Replace usages of iio_dev->mlock with iio_device_{claim|release}_direct_mode() helper functions to guarantee DIRECT mode and consequently protect BUFFER mode too. Add and use a device private lock to protect against conflicting access of the state data. This helps with IIO subsystem redefining iio_dev->mlock to be used by the IIO core only for protecting device operating mode changes. ie. Changes between INDIO_DIRECT_MODE, INDIO_BUFFER_* modes. Protect changing of attributes inside ad5933_store(). Attributes can no longer be changed while in buffered mode. Remove lock from ad5933_work() because buffer mode should be enabled when we reach this, and claiming DIRECT mode in all the other places should protect it. Signed-off-by: Narcisa Ana Maria Vasile <narcisaanamaria12@gmail.com> Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2017-04-14iio:meter:ade7759: Removing use of deprecated macros (S_IRUGO, S_IWUSR, S_IXUGO)Chen Guanqiao1-10/+10
Removing use of deprecated macros(S_IRUGO, S_IWUSR, S_IXUGO), and replace with 4 digit octal. Signed-off-by: Chen Guanqiao <chen.chenchacha@foxmail.com> Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2017-04-02staging: iio: ad9832: use 4-digit octal permissionsGuru Das Srinagesh1-10/+10
This fixes the coding style issue of using S_IWUSR in place of 4-digit octal numbers. Issue detected by checkpatch. Signed-off-by: Guru Das Srinagesh <gurooodas@gmail.com> Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2017-04-02iio: gyro: adis16060: Change the name of function.simran singhal1-2/+2
Change the name of function from adis16060_spi_write_than_read() to adis16060_spi_write_then_read(). change "than" to "then" as its time depended. Signed-off-by: simran singhal <singhalsimran0@gmail.com> Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2017-04-01staging: iio: light: tsl2x7x constify attribute_group structuressimran singhal1-1/+1
As the event_attrs field of iio_info structures is constant, so these attribute_group structures can also be declared constant. File size before: text data bss dec hex filename 15064 1528 0 16592 40d0 drivers/staging/iio/light/tsl2x7x_core.o File size after: text data bss dec hex filename 15192 1400 0 16592 40d0 drivers/staging/iio/light/tsl2x7x_core.o Signed-off-by: simran singhal <singhalsimran0@gmail.com> Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2017-03-30staging: iio: update locking method during frequency writesGargi Sharma1-8/+16
The driver needs to insure atomicity during frequency changes of bus and device. The iiodev->mlock as used was not doing that. Replace it with the drivers existing buffer lock and introduce an auxiliary spi_write() that does not hold the lock. Signed-off-by: Gargi Sharma <gs051095@gmail.com> Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2017-03-25staging: iio: adc: ad7280a: fix permission coding style issueOlivier Leveque1-6/+6
Symbolic permissions 'S_IWUSR | S_IRUGO' are not preferred. Consider using octal permissions '0644'. Found running checkpatch. Signed-off-by: Olivier Leveque <o_leveque@orange.fr> Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2017-03-25staging: iio: accel: remove unneeded braces around single statementsMark Stenglein2-6/+3
Fixes three checkpatch warnings due to braces used when single statements are sufficient. Signed-off-by: Mark Stenglein <mark@stengle.in> Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2017-03-25staging: iio: tsl2x7x_core: Fix standard deviation calculationEva Rachel Retuya1-1/+1
Standard deviation is calculated as the square root of the variance where variance is the mean of sample_sum and length. Correct the computation of statP->stddev in accordance to the proper calculation. Fixes: 3c97c08b5735 ("staging: iio: add TAOS tsl2x7x driver") Reported-by: Abhiram Balasubramanian <abhiram@cs.utah.edu> Signed-off-by: Eva Rachel Retuya <eraretuya@gmail.com> Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2017-03-25staging: iio: Remove extra Parenthesis.Arushi Singhal1-8/+8
Remove the extra parenthesis remove the checkpatch issue. Signed-off-by: Arushi Singhal <arushisinghal19971997@gmail.com> Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2017-03-23staging: adis16203: Remove locking on raw reads of IIO_CHAN_INFO_CALIBBIASGargi Sharma1-3/+0
adis16203_read_raw does not need lock for IIO_CHAN_INFO_CALIBBIAS since adis_read_reg_16 is already atomic and nothing else needs to be protected. Signed-off-by: Gargi Sharma <gs051095@gmail.com> Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2017-03-23staging: iio: cdc: ad7746: Fix alignment with paranthesisNarcisa Ana Maria Vasile1-1/+1
This was reported by checkpatch.pl: CHECK: Alignment should match open parenthesis Signed-off-by: Narcisa Ana Maria Vasile <narcisaanamaria12@gmail.com> Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2017-03-23staging: iio: Add blank lines after function declarationsNarcisa Ana Maria Vasile2-0/+2
This was reported by checkpatch.pl: CHECK: Please use a blank line after function/struct/union/enum declarations Signed-off-by: Narcisa Ana Maria Vasile <narcisaanamaria12@gmail.com> Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2017-03-23staging: iio: adt7136: Remove unnecessary blank linesNarcisa Ana Maria Vasile1-4/+0
This was reported by checkpatch.pl Signed-off-by: Narcisa Ana Maria Vasile <narcisaanamaria12@gmail.com> Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2017-03-23staging: ad7606: Replace mlock with driver private lockArushi Singhal2-4/+8
The IIO subsystem is redefining iio_dev->mlock to be used by the IIO core only for protecting device operating mode changes. ie. Changes between INDIO_DIRECT_MODE, INDIO_BUFFER_* modes. In this driver, mlock was being used to protect hardware state changes. Replace it with a lock in the devices global data. Signed-off-by: Arushi Singhal <arushisinghal19971997@gmail.com> Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2017-03-23staging: iio: ade7753: Remove trailing whitespacessimran singhal1-4/+4
This patch removes trailing whitespaces in order to follow the Linux coding style. Signed-off-by: simran singhal <singhalsimran0@gmail.com> Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2017-03-23staging: ade7754: Clean up #includessimran singhal1-6/+5
Alphabetize and separate kernel and subsystem headers. Signed-off-by: simran singhal <singhalsimran0@gmail.com> Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2017-03-23staging: iio: Replace a bit shift by a use of BIT.Arushi Singhal2-9/+9
This patch replaces bit shifting on 1 with the BIT(x) macro. This was done with coccinelle: @@ constant c; @@ -1 << c +BIT(c) Signed-off-by: Arushi Singhal <arushisinghal19971997@gmail.com> Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2017-03-23staging: iio: adis16060: Remove iio_dev mlock and refactor codesimran singhal1-25/+10
The IIO subsystem is redefining iio_dev->mlock to be used by the IIO core only for protecting device operating mode changes. ie. Changes between INDIO_DIRECT_MODE, INDIO_BUFFER_* modes. In this driver, mlock was being used to protect hardware state changes. In the driver, buf_lock protects both the adis16060_spi_write() and adis16060_spi_read() functions and both are always called in pair. First write, then read. Refactor the code to have one single function adis16060_spi_write_than_read() protected by the buf_lock. This removes the need for additional locking via mlock, so this locking is removed. Signed-off-by: simran singhal <singhalsimran0@gmail.com> Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2017-03-19staging: iio: ad7280: Replace mlock with driver private lockGargi Sharma1-10/+12
The IIO subsystem is redefining iio_dev->mlock to be used by the IIO core only for protecting device operating mode changes. ie. Changes between INDIO_DIRECT_MODE, INDIO_BUFFER_* modes. In this driver, mlock was being used to protect hardware state changes. Replace it with a lock in the devices global data. Signed-off-by: Gargi Sharma <gs051095@gmail.com> Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2017-03-19Staging: iio: resolver: ad2s1210: Fix warning, statements should start on a ↵Miguel Robles1-2/+2
tabstop Fix checkpatch warning: Statements should start on a tabstop. Signed-off-by: Miguel Robles <miguel.robles@farole.net> Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2017-03-19Staging: iio: cdc: ad7746: use octal permissions instead of symbolicMiguel Robles1-5/+5
Fix checkpatch warnings: Symbolic permissions 'S_IWUSR' are not preferred. Signed-off-by: Miguel Robles <miguel.robles@farole.net> Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2017-03-19staging: iio: adis16209: Remove mutex_lock() and mutex_unlock() callsNarcisa Ana Maria Vasile1-4/+0
The function adis16209_read_raw() is safe to be run in parallel. The call to adis_read_reg_16() is safe since adis_read_reg() uses the txrx_lock from struct adis to protect simultaneous changes. Remove mutex.h inclusion since it is no longer needed. Signed-off-by: Narcisa Ana Maria Vasile <narcisaanamaria12@gmail.com> Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2017-03-19staging: iio: accel: adis16201: remove iio_dev mlockAishwarya Pant1-5/+1
In the driver adis16201 read raw does not require an iio_dev->mlock for reads. It can run concurrently as adis_read_reg_16() is protected by a transaction lock. Signed-off-by: Aishwarya Pant <aishpant@gmail.com> Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2017-03-18staging: iio: adis16240: Remove mutex_lock() and mutex_unlock() function call.Varsha Rao1-16/+1
Remove mutex_lock() and mutex_unlock() function calls, as the adis16240_spi_read_signed() function can be run parallel and safely multiple times. Also remove the mutex.h header file and comment, which are no longer required. As indio_dev is declared and initialized in adis16240_spi_read_signed(), again declaration to same type and initialization to same value is not required, remove it from adis16240_read_12bit_signed(). Simplify the return logic, by merging assignment and return into a single line. Signed-off-by: Varsha Rao <rvarsha016@gmail.com> Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2017-03-16staging: iio: ad9834: Remove unnecessary goto statementsayli karnik1-2/+1
The patch removes unnecessary use of goto statement. Signed-off-by: sayli karnik <karniksayli1995@gmail.com> Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2017-03-16staging: iio: ad9834: Use private driver lock instead of mlocksayli karnik1-4/+7
iio_dev->mlock should be used by the IIO core only for protecting device operating mode changes. ie. Changes between INDIO_DIRECT_MODE, INDIO_BUFFER_* modes. Replace mlock with a lock in the device's global data to protect hardware state changes. Signed-off-by: sayli karnik <karniksayli1995@gmail.com> Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2017-03-16Staging: iio: cdc: ad7152.c, use octal permissions instead of symbolicMiguel Robles1-4/+4
Fix checkpatch warnings: Symbolic permissions are not preferred. Consider using octal permissions. Signed-off-by: Miguel Robles <miguel.robles@farole.net> Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2017-03-16staging:iio:cdc:ade7746 replace mlock with driver private lockAishwarya Pant1-8/+10
The IIO subsystem is redefining iio_dev mlock to be used by IIO core only for protecting device operating mode changes. In driver ad7746 wherever mlock was used to protect hardware state changes, it has been replaced with a driver private lock. Signed-off-by: Aishwarya Pant <aishpant@gmail.com> Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2017-03-14staging: iio: adis16240: Group similar macros into enumsNarcisa Ana Maria Vasile1-6/+8
Group the scan indexes into an enum. Signed-off-by: Narcisa Ana Maria Vasile <narcisaanamaria12@gmail.com> Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2017-03-14staging: iio: adis16209: Group similar macros into enumsNarcisa Ana Maria Vasile1-8/+10
Group the scan indexes into an enum. Signed-off-by: Narcisa Ana Maria Vasile <narcisaanamaria12@gmail.com> Signed-off-by: Jonathan Cameron <jic23@kernel.org>
2017-03-14staging: iio: gyro: Remove & on function name to conform to similar IIO driverssimran singhal1-1/+1
Remove & from function pointers to conform to the style preferred in IIO. (Note that this is fine in staging drivers, but would create too much churn to do outside of staging, unless otherwise working on a driver). Done using the following semantic patch // <smpl> @r@ identifier f; @@ f(...) { ... } @@ identifier r.f; @@ - &f + f // </smpl> Signed-off-by: simran singhal <singhalsimran0@gmail.com> Signed-off-by: Jonathan Cameron <jic23@kernel.org>