summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2018-04-15iio: chemical: atlas-ph-sensor: use msleep() for long uncritical delaysMatt Ranostay1-7/+7
usleep_range() uses hrtimers and provides no advantage over msleep() for larger delays. Cc: Nicholas Mc Guire <hofrat@osadl.org> Link: http://lkml.org/lkml/2017/1/11/377 Signed-off-by: Matt Ranostay <matt.ranostay@konsulko.com> Reviewed-by: Nicholas Mc Guire <hofrat@osadl.org> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2018-04-15iio: potentiometer: mcp4531: switch to using .probe_newPeter Rosin1-73/+72
Use the new probe style for i2c drivers. Signed-off-by: Peter Rosin <peda@axentia.se> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2018-04-15iio: potentiometer: mcp4018: switch to using .probe_newPeter Rosin1-21/+20
Use the new probe style for i2c drivers. Signed-off-by: Peter Rosin <peda@axentia.se> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2018-04-15iio: imu: inv_mpu6050: do not flush fifo when iio buffer is fullJean-Baptiste Maneyrol1-4/+2
There is no need to flush fifo and loose all data when the iio buffer is full. Just drop the data by ignoring the error as commonly done in other drivers. Signed-off-by: Jean-Baptiste Maneyrol <jmaneyrol@invensense.com> Reviewed-by: Martin Kelly <martin@martingkelly.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2018-04-15staging: iio: ad7746: Reorder variable declarationsHernán Gonzalez1-3/+3
Reorder some variable declarations in an inverse-pyramid scheme. Signed-off-by: Hernán Gonzalez <hernan@vanguardiasur.com.ar> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2018-04-15staging: iio: ad7746: Reorder includes alphabeticallyHernán Gonzalez1-5/+5
Signed-off-by: Hernán Gonzalez <hernan@vanguardiasur.com.ar> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2018-04-15staging: iio: ad7746: Fix multiple line dereferenceHernán Gonzalez1-2/+1
Clear checkpatch.pl WARNING about multiple line derefence but creates a new one of line over 80 characters. In my opinion, it improves readability. Signed-off-by: Hernán Gonzalez <hernan@vanguardiasur.com.ar> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2018-04-15staging: iio: ad7746: Adjust arguments to match open parenthesisHernán Gonzalez1-2/+3
Clear a couple more checkpatch.pl CHECKS. Signed-off-by: Hernán Gonzalez <hernan@vanguardiasur.com.ar> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2018-04-15staging: iio: ad7746: Automatically swap values in readings/writingsHernán Gonzalez1-8/+8
Data to read or write was being handled with the swab16() macro instead of using i2c_smbus_{read,write}_swapped. Signed-off-by: Hernán Gonzalez <hernan@vanguardiasur.com.ar> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2018-04-08Documentation: dt: iio: imu: st_lsm6dsx: add ism330dlc sensor device bindingLorenzo Bianconi1-0/+1
Signed-off-by: Lorenzo Bianconi <lorenzo.bianconi@redhat.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2018-04-08iio: imu: st_lsm6dsx: add support to ism330dlcLorenzo Bianconi6-7/+21
Add support to STM ISM330DLC 6-axis (acc + gyro) Mems sensor http://www.st.com/resource/en/datasheet/ism330dlc.pdf Signed-off-by: Lorenzo Bianconi <lorenzo.bianconi@redhat.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2018-04-08iio: imu: st_lsm6dsx: fix FIFO threshold mask for LSM6DSM/LSM6DSLLorenzo Bianconi1-2/+2
According to the latest datasheet, LSM6DSM and LSM6DSL imu sensors export GENMASK(10, 0) for FIFO threshold mask definition. Despite that is not an actual issue since write on fifo_th register is protected by max_fifo_size value, fix fifo_th and fifo_diff register definitions Fixes: 290a6ce11d93 ("iio: imu: add support to lsm6dsx driver") Signed-off-by: Lorenzo Bianconi <lorenzo.bianconi@redhat.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2018-03-30Staging: iio: adis16209: Move adis16209 driver out of stagingShreeya Patel5-14/+14
Move the adis16209 driver out of staging directory and merge to the mainline IIO subsystem. Signed-off-by: Shreeya Patel <shreeya.patel23498@gmail.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2018-03-30Staging: iio: adis16209: Use GENMASKShreeya Patel1-17/+14
Use GENMASK to improve readability and remove the local variables used to store intermediate data. Signed-off-by: Shreeya Patel <shreeya.patel23498@gmail.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2018-03-30Staging: iio: adis16209: Remove unused headersShreeya Patel1-3/+0
Remove few unused header files since the adis core handles the sysfs and buffer support. Signed-off-by: Shreeya Patel <shreeya.patel23498@gmail.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2018-03-30Staging: iio: adis16209: Add a blank line after return statementsShreeya Patel1-0/+2
Add a blank line after return statements to improve the code readability. Signed-off-by: Shreeya Patel <shreeya.patel23498@gmail.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2018-03-30Staging: iio: adis16209: Prefer reverse christmas tree orderingShreeya Patel1-2/+2
Prefer reverse christmas tree ordering of declarations to improve readability. Signed-off-by: Shreeya Patel <shreeya.patel23498@gmail.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2018-03-30Staging: iio: adis16209: Indent the field definitionsShreeya Patel1-5/+5
Have indentation in field definitions to make them clearly different from the register addresses. Signed-off-by: Shreeya Patel <shreeya.patel23498@gmail.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2018-03-30iio: imu: inv_mpu6050: clean double declaration of set_power_itgJean-Baptiste Maneyrol1-1/+0
Signed-off-by: Jean-Baptiste Maneyrol <jmaneyrol@invensense.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2018-03-30iio: adc: meson-saradc: add support for Meson AXGXingyu Chen1-0/+8
Add the SAR ADC driver for the Amlogic Meson-AXG SoC. Signed-off-by: Xingyu Chen <xingyu.chen@amlogic.com> Acked-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2018-03-30dt-bindings: iio: adc: document the Meson AXG supportXingyu Chen1-0/+1
Update the documentation to expicitly support the Meson-AXG SoC. Signed-off-by: Xingyu Chen <xingyu.chen@amlogic.com> Reviewed-by: Rob Herring <robh@kernel.org> Acked-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2018-03-30iio: adc: meson-saradc: squash and share the common adc platform dataYixun Lan1-33/+42
Extract and promote common adc platform data into a new structure, to make it better share the info between several SoCs, this will avoid duplicating the code all over the place, Save a few memory and make the code more maintainable. Signed-off-by: Yixun Lan <yixun.lan@amlogic.com> Acked-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2018-03-25staging: iio: tsl2x7x: use either direction for IIO_EV_INFO_{ENABLE,PERIOD}Brian Masney1-5/+4
The events IIO_EV_INFO_VALUE and IIO_EV_INFO_ENABLE currently have a falling and rising direction configured. There does not need to be a separate distinction so this patch changes these to use the either direction. Directory listing of event sysfs attributes for a TSL2772 with this patch applied: in_intensity0_thresh_either_en in_intensity0_thresh_either_period in_intensity0_thresh_falling_value in_intensity0_thresh_rising_value in_proximity0_thresh_either_en in_proximity0_thresh_either_period in_proximity0_thresh_falling_value in_proximity0_thresh_rising_value Signed-off-by: Brian Masney <masneyb@onstation.org> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2018-03-25staging: iio: tsl2x7x: use auto increment I2C protocolBrian Masney1-33/+67
The hardware supports 16-bit ALS and proximity readings, however the datasheet recommends using the I2C auto increment protocol so that the correct high and low bytes are read even if the integration cycle ends between reading the lower and upper registers. Signed-off-by: Brian Masney <masneyb@onstation.org> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2018-03-24Staging: iio: accel: adis16201: Move adis16201 driver out of stagingHimanshu Jha5-13/+13
Move adis16201 driver out of staging and merge into mainline IIO subsystem. Signed-off-by: Himanshu Jha <himanshujha199640@gmail.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2018-03-24Staging: iio: accel: adis16201: Fix 80 character line limitHimanshu Jha1-1/+2
Split the line over 80 characters limit to fix checkpatch warning. Signed-off-by: Himanshu Jha <himanshujha199640@gmail.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2018-03-24Staging: iio: accel: adis16201: Use GENMASKHimanshu Jha1-19/+15
Use GENMASK to improve readability and remove the local variables used to store intermediate data. Signed-off-by: Himanshu Jha <himanshujha199640@gmail.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2018-03-24Staging: iio: accel: adis16201: Remove unused headersHimanshu Jha1-3/+0
Remove few unused headers files since the adis core handles the buffer and sysfs support. Signed-off-by: Himanshu Jha <himanshujha199640@gmail.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2018-03-24staging: iio: tsl2x7x: add copyrightBrian Masney1-1/+3
Add Brian Masney's copyright and to the list of module authors for all of the staging cleanups. This patch also update's Jon Brenner's current work email address since AMS now owns TAOS. Signed-off-by: Brian Masney <masneyb@onstation.org> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2018-03-24staging: iio: tsl2x7x: put local variables in reverse Christmas tree orderBrian Masney1-13/+8
This patch ensures that all of the local variable declarations are in reverse Christmas tree order where possible to increase code readability. Signed-off-by: Brian Masney <masneyb@onstation.org> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2018-03-24staging: iio: tsl2x7x: remove ch0 and ch1 variables from tsl2x7x_get_lux()Brian Masney1-11/+10
Remove the ch0 and ch1 variables from tsl2x7x_get_lux() and write those values directly into the chip->als_cur_info.als_ch0 and chip->als_cur_info.als_ch01 variables. Signed-off-by: Brian Masney <masneyb@onstation.org> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2018-03-24staging: iio: tsl2x7x: remove unused variables from tsl2x7x_get_lux()Brian Masney1-11/+0
tsl2x7x_get_lux() has a ch0lux and ch1lux variables that are not used so this patch removes them. Signed-off-by: Brian Masney <masneyb@onstation.org> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2018-03-24staging: iio: tsl2x7x: split out als and prox persistence settingsBrian Masney2-16/+17
The struct tsl2x7x_settings contained a persistence member that contained both the ALS and proximity persistence fields. This patch splits this out into two separate fields so that the bitmasks in several parts of the code are no longer necessary. The default persistence settings are also changed by this patch from: - Proximity: 0 (Every proximity cycle generates an interrupt) - ALS: 255 (60 consecutive values out of range) to something a little more reasonable based on my testing: - Proximity: 1 (1 proximity value out of range) - ALS: 1 (1 value outside of threshold range) Signed-off-by: Brian Masney <masneyb@onstation.org> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2018-03-24staging: iio: tsl2x7x: make logging consistent and correct newlinesBrian Masney1-26/+16
This patch updates all of the logging commands so that they are consistent with the other messages, includes __func__ in the message, and all of the messages include newlines. This patch also removes some debug log messages. Signed-off-by: Brian Masney <masneyb@onstation.org> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2018-03-24staging: iio: tsl2x7x: split out als and prox interrupt settingsBrian Masney2-47/+24
The struct tsl2x7x_settings contained an interrupts_en member that was a bitmask for which interrupts are enabled. This required having bitmasks in several parts of the code. This patch splits this field out into two booleans to remove most of the bitmasks in the code. This patch also fixes a bug where if an interrupt pin was configured, but proximity interrupts were disabled, then the proximity value could not be polled. This patch also removes an unnecessary second call to writing the control register in tsl2x7x_chip_on(). Driver tested using a TSL2772 hooked up to a Raspberry Pi 2. Signed-off-by: Brian Masney <masneyb@onstation.org> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2018-03-24staging: iio: tsl2x7x: simplify tsl2x7x_prox_cal()Brian Masney1-92/+15
tsl2x7x_prox_cal() would set the interrupt flag, and reset the device to start doing the calibration routine. However, this did not actually affect the readings since they are polled. This patch drops the interrupt code. This patch also drops the function tsl2x7x_prox_calculate() and removes support for the standard deviation and min sample since those values were not used. Driver was tested using a TSL2772 hooked up to a Raspberry Pi 2. I performed the following testing at various distances: - Put hand in front of sensor and keep the sensor and hand stationary. - Perform calibration routine. - Run iio_event_monitor. - Verify that a proximity event is triggered when my hand comes anywhere between the sensor and where I performed the calibration routine. Signed-off-by: Brian Masney <masneyb@onstation.org> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2018-03-24staging: iio: tsl2x7x: no need to clear interrupt flag when getting luxBrian Masney1-4/+0
tsl2x7x_get_lux() does not need to clear the interrupt flag when querying the ALS. The interrupt flag is cleared in tsl2x7x_event_handler(). This patches removes the unnecessary code. Signed-off-by: Brian Masney <masneyb@onstation.org> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2018-03-24staging: iio: tsl2x7x: correct interrupt handler triggerBrian Masney1-1/+1
tsl2x7x_event_handler() was not called as expected when the device was asserting a hardware interrupt. This patch changes the interrupt line trigger from rising to falling. The driver was tested on a TSL2772 hooked up to a Raspberry Pi 2. The interrupt pin also had a 10K pull-up resistor per the requirements from the datasheet. The relevant device tree binding: &i2c1 { tsl2772@39 { compatible = "amstaos,tsl2772"; reg = <0x39>; interrupt-parent = <&gpio>; interrupts = <22 0x2>; }; }; With this patch, iio_event_monitor now shows the events when the channels are outside the defined interrupt thresholds. $ sudo ./iio_event_monitor tsl2772 Found IIO device with name tsl2772 with device number 0 Event: time: 1478193460053760446, type: proximity, channel: 0, evtype: thresh, direction: either ... Event: time: 1478193463020270185, type: illuminance, channel: 0, evtype: thresh, direction: either ... Signed-off-by: Brian Masney <masneyb@onstation.org> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2018-03-24staging: iio: tsl2x7x: remove unnecessary codeBrian Masney1-6/+0
As a follow up to the work in commit a0722d05a195 ("staging: iio: tsl2x7x: convert mutex_trylock() to mutex_lock()"), this patch removes the unnecessary calls to tsl2x7x_get_prox() and tsl2x7x_get_lux() in tsl2x7x_event_handler(). Previously, these functions were locked with mutex_trylock(), but that is no longer the case. This patch also removes a comment that is no longer relevant about returning the last sample. Signed-off-by: Brian Masney <masneyb@onstation.org> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2018-03-24staging:iio:ade7854: Remove read_reg_* duplicationsRodrigo Siqueira4-78/+15
The original code had a read function per data size; after updates, all read functions tasks were centralized in a single function, but the old signature was kept to maintain the module working without problems. This patch removes a set of duplications associated with read_reg_*, and update the areas that calling the old interface by the new one. Signed-off-by: Rodrigo Siqueira <rodrigosiqueiramelo@gmail.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2018-03-24staging:iio:ade7854: Rework SPI read functionRodrigo Siqueira1-103/+33
Rework read SPI function to reduce the code duplication and centralizes all the task in a single function. Signed-off-by: Rodrigo Siqueira <rodrigosiqueiramelo@gmail.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2018-03-24staging:iio:ade7854: Rework I2C read functionRodrigo Siqueira1-69/+37
The read operation for the I2C function has many duplications that can be generalized into a single function. This patch reworks the read operation for I2C to centralizes all similar code in a single function. It is possible to remove all the old interface to use the new one, however, for keeping the things simple and working this patch maintain legacy interface. Signed-off-by: Rodrigo Siqueira <rodrigosiqueiramelo@gmail.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2018-03-24staging:iio:ade7854: Remove write_reg_* duplicationsRodrigo Siqueira4-75/+12
This patch removes code duplications related to the write_reg_* functions and centralizes them in a single function. Also, it eliminates the legacy functions and replaces them by a unique signature that is used by SPI and I2C. Signed-off-by: Rodrigo Siqueira <rodrigosiqueiramelo@gmail.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2018-03-24staging:iio:ade7854: Rework SPI write functionRodrigo Siqueira1-67/+41
The write operation using SPI has a many code duplications (similar to I2C) and four different interfaces per data size. This patch introduces a single function that centralizes the main task related to SPI. Signed-off-by: Rodrigo Siqueira <rodrigosiqueiramelo@gmail.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2018-03-24staging:iio:ade7854: Rework I2C write functionRodrigo Siqueira1-50/+46
The write operation using I2C has many code duplications and four different interfaces per data size. This patch introduces a single function that centralizes the main tasks. The central function inserted by this patch can easily replace all the four functions related to the data size. However, this patch does not remove any code signature for keeping the meter module work and make easier to review this patch. Signed-off-by: Rodrigo Siqueira <rodrigosiqueiramelo@gmail.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2018-03-24staging:iio:ade7854: Fix the wrong number of bits to readJohn Syne1-1/+1
Fixes: correctly handle the data size in the read operation for I2C The function ade7854_i2c_read_reg_32() have to invoke the i2c_master_recv() for read 32 bits values, however, the counter is set to 3 which means 24 bits. This patch fixes the wrong size of 24 bits, to 32 bits. Signed-off-by: John Syne <john3909@gmail.com> Signed-off-by: Rodrigo Siqueira <rodrigosiqueiramelo@gmail.com> Fixes: 8d97a5877 ("staging: iio: meter: new driver for ADE7754 devices") Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2018-03-24staging:iio:ade7854: Fix error handling on read/writeJohn Syne2-17/+17
The original code does not correctly handle the error related to I2C read and write. This patch fixes the error handling related to all read/write functions for I2C. Signed-off-by: John Syne <john3909@gmail.com> Signed-off-by: Rodrigo Siqueira <rodrigosiqueiramelo@gmail.com> Fixes: 8d97a5877 ("staging: iio: meter: new driver for ADE7754 devices") Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2018-03-18Staging: iio: accel: adis16201: Adjust argument to match open parenthesesHimanshu Jha1-1/+1
In adis16201_read_raw() adjust an argument to match an open parentheses using tabs and spaces. Signed-off-by: Himanshu Jha <himanshujha199640@gmail.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2018-03-18Staging: iio: accel: adis16201: Prefer reverse christmas tree orderingHimanshu Jha1-2/+2
Prefer reverse christmas tree ordering of declarations to improve readability. Signed-off-by: Himanshu Jha <himanshujha199640@gmail.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2018-03-18Staging: iio: accel: adis16201: Use sign_extend32 functionHimanshu Jha1-3/+2
Use sign_extned32() for 32 bit sign extending rather than hard coding. Signed-off-by: Himanshu Jha <himanshujha199640@gmail.com> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>