diff options
author | Lars-Peter Clausen <lars@metafoo.de> | 2020-04-03 15:27:13 +0200 |
---|---|---|
committer | Jonathan Cameron <Jonathan.Cameron@huawei.com> | 2020-04-19 17:50:01 +0100 |
commit | e44ec7794d88f918805d700240211a9ec05ed89d (patch) | |
tree | 96ad7bc4e0ea500beaa638fc02a5a89e9f6e6944 /drivers/iio | |
parent | dd6230ba1d6b413f1a60301dbd554b90870aabc6 (diff) | |
download | linux-e44ec7794d88f918805d700240211a9ec05ed89d.tar.gz linux-e44ec7794d88f918805d700240211a9ec05ed89d.tar.bz2 linux-e44ec7794d88f918805d700240211a9ec05ed89d.zip |
iio: xilinx-xadc: Fix ADC-B powerdown
The check for shutting down the second ADC is inverted. This causes it to
be powered down when it should be enabled. As a result channels that are
supposed to be handled by the second ADC return invalid conversion results.
Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Fixes: bdc8cda1d010 ("iio:adc: Add Xilinx XADC driver")
Cc: <Stable@vger.kernel.org>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Diffstat (limited to 'drivers/iio')
-rw-r--r-- | drivers/iio/adc/xilinx-xadc-core.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/iio/adc/xilinx-xadc-core.c b/drivers/iio/adc/xilinx-xadc-core.c index ec227b358cd6..f50e04a8b0ec 100644 --- a/drivers/iio/adc/xilinx-xadc-core.c +++ b/drivers/iio/adc/xilinx-xadc-core.c @@ -722,13 +722,14 @@ static int xadc_power_adc_b(struct xadc *xadc, unsigned int seq_mode) { uint16_t val; + /* Powerdown the ADC-B when it is not needed. */ switch (seq_mode) { case XADC_CONF1_SEQ_SIMULTANEOUS: case XADC_CONF1_SEQ_INDEPENDENT: - val = XADC_CONF2_PD_ADC_B; + val = 0; break; default: - val = 0; + val = XADC_CONF2_PD_ADC_B; break; } |