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: Michael Hennerich <michael.hennerich@analog.com> Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
c3b7915df6
commit
fe55a17039
@@ -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,
|
|||||||
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):
|
||||||
|
Reference in New Issue
Block a user