summaryrefslogtreecommitdiffstats
path: root/drivers/iio
diff options
context:
space:
mode:
authorDan Carpenter <dan.carpenter@linaro.org>2024-04-24 14:45:30 +0300
committerJonathan Cameron <Jonathan.Cameron@huawei.com>2024-04-29 20:53:25 +0100
commit73e49886a2834b79630cf4db6a98172aa066ce0e (patch)
tree15d27dd58168aaa51ba3abec8a18e29c73e05356 /drivers/iio
parenta1432b5b4f4c44473ee97152c2f356d372ccd45c (diff)
downloadlinux-stable-73e49886a2834b79630cf4db6a98172aa066ce0e.tar.gz
linux-stable-73e49886a2834b79630cf4db6a98172aa066ce0e.tar.bz2
linux-stable-73e49886a2834b79630cf4db6a98172aa066ce0e.zip
iio: dac: adi-axi: fix a mistake in axi_dac_ext_info_set()
The last parameter of these axi_dac_(frequency|scale|phase)_set() functions is supposed to be true for TONE_2 and false for TONE_1. The bug is the last call where it passes "private - TONE_2". That subtraction is going to be zero/false for TONE_2 and and -1/true for TONE_1. Fix the bug, and re-write it as "private == TONE_2" so it's more obvious what is happening. Fixes: 4e3949a192e4 ("iio: dac: add support for AXI DAC IP core") Signed-off-by: Dan Carpenter <dan.carpenter@linaro.org> Reviewed-by: Nuno Sa <nuno.sa@analog.com> Link: https://lore.kernel.org/r/df7c6e1b-b619-40c3-9881-838587ed15d4@moroto.mountain Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Diffstat (limited to 'drivers/iio')
-rw-r--r--drivers/iio/dac/adi-axi-dac.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/iio/dac/adi-axi-dac.c b/drivers/iio/dac/adi-axi-dac.c
index 9047c5aec0ff..880d83a014a1 100644
--- a/drivers/iio/dac/adi-axi-dac.c
+++ b/drivers/iio/dac/adi-axi-dac.c
@@ -383,15 +383,15 @@ static int axi_dac_ext_info_set(struct iio_backend *back, uintptr_t private,
case AXI_DAC_FREQ_TONE_1:
case AXI_DAC_FREQ_TONE_2:
return axi_dac_frequency_set(st, chan, buf, len,
- private - AXI_DAC_FREQ_TONE_1);
+ private == AXI_DAC_FREQ_TONE_2);
case AXI_DAC_SCALE_TONE_1:
case AXI_DAC_SCALE_TONE_2:
return axi_dac_scale_set(st, chan, buf, len,
- private - AXI_DAC_SCALE_TONE_1);
+ private == AXI_DAC_SCALE_TONE_2);
case AXI_DAC_PHASE_TONE_1:
case AXI_DAC_PHASE_TONE_2:
return axi_dac_phase_set(st, chan, buf, len,
- private - AXI_DAC_PHASE_TONE_2);
+ private == AXI_DAC_PHASE_TONE_2);
default:
return -EOPNOTSUPP;
}