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:
parent
c3b7915df6
commit
fe55a17039
@ -160,9 +160,9 @@ static IIO_DEVICE_ATTR(in_capacitance0_calibscale_calibration,
|
||||
static IIO_DEVICE_ATTR(in_capacitance1_calibscale_calibration,
|
||||
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] = {
|
||||
{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,
|
||||
@ -367,6 +367,9 @@ static int ad7152_read_raw(struct iio_dev *indio_dev,
|
||||
goto out;
|
||||
*val = swab16(ret);
|
||||
|
||||
if (chan->differential)
|
||||
*val -= 0x8000;
|
||||
|
||||
ret = IIO_VAL_INT;
|
||||
break;
|
||||
case (1 << IIO_CHAN_INFO_CALIBSCALE_SEPARATE):
|
||||
|
Loading…
Reference in New Issue
Block a user