Commit fe55a170 authored by Michael Hennerich's avatar Michael Hennerich Committed by Greg Kroah-Hartman

staging:iio:adc:ad7152: Fix differential channel return value and increase delay.

In differential mode zero scale equals to 0x8000.
Increase readout delay by 1ms.
Signed-off-by: default avatarMichael Hennerich <michael.hennerich@analog.com>
Signed-off-by: default avatarJonathan Cameron <jic23@cam.ac.uk>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
parent c3b7915d
...@@ -160,9 +160,9 @@ static IIO_DEVICE_ATTR(in_capacitance0_calibscale_calibration, ...@@ -160,9 +160,9 @@ static IIO_DEVICE_ATTR(in_capacitance0_calibscale_calibration,
static IIO_DEVICE_ATTR(in_capacitance1_calibscale_calibration, static IIO_DEVICE_ATTR(in_capacitance1_calibscale_calibration,
S_IWUSR, NULL, ad7152_start_gain_calib, 1); S_IWUSR, NULL, ad7152_start_gain_calib, 1);
/* Values are Update Rate (Hz), Conversion Time (ms) */ /* Values are Update Rate (Hz), Conversion Time (ms) + 1*/
static const unsigned char ad7152_filter_rate_table[][2] = { static const unsigned char ad7152_filter_rate_table[][2] = {
{200, 5}, {50, 20}, {20, 50}, {17, 60}, {200, 5 + 1}, {50, 20 + 1}, {20, 50 + 1}, {17, 60 + 1},
}; };
static ssize_t ad7152_show_filter_rate_setup(struct device *dev, static ssize_t ad7152_show_filter_rate_setup(struct device *dev,
...@@ -367,6 +367,9 @@ static int ad7152_read_raw(struct iio_dev *indio_dev, ...@@ -367,6 +367,9 @@ static int ad7152_read_raw(struct iio_dev *indio_dev,
goto out; goto out;
*val = swab16(ret); *val = swab16(ret);
if (chan->differential)
*val -= 0x8000;
ret = IIO_VAL_INT; ret = IIO_VAL_INT;
break; break;
case (1 << IIO_CHAN_INFO_CALIBSCALE_SEPARATE): case (1 << IIO_CHAN_INFO_CALIBSCALE_SEPARATE):
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment