Messages in this thread Patch in this message | | | From | Mitja Spes <> | Subject | [PATCH 1/4] iio: adc: mcp3422: fix scale read bug | Date | Fri, 11 Nov 2022 12:26:53 +0100 |
| |
Scale was returned for currently active channel instead of the specified channel.
Signed-off-by: Mitja Spes <mitja@lxnav.com> Fixes: 07914c84ba30 ("iio: adc: Add driver for Microchip MCP3422/3/4 high resolution ADC") --- drivers/iio/adc/mcp3422.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/iio/adc/mcp3422.c b/drivers/iio/adc/mcp3422.c index da353dcb1e9d..3d53de300c89 100644 --- a/drivers/iio/adc/mcp3422.c +++ b/drivers/iio/adc/mcp3422.c @@ -164,8 +164,9 @@ static int mcp3422_read_raw(struct iio_dev *iio, struct mcp3422 *adc = iio_priv(iio); int err; + u8 req_channel = channel->channel; u8 sample_rate = MCP3422_SAMPLE_RATE(adc->config); - u8 pga = MCP3422_PGA(adc->config); + u8 pga = adc->pga[req_channel]; switch (mask) { case IIO_CHAN_INFO_RAW: @@ -175,7 +176,6 @@ static int mcp3422_read_raw(struct iio_dev *iio, return IIO_VAL_INT; case IIO_CHAN_INFO_SCALE: - *val1 = 0; *val2 = mcp3422_scales[sample_rate][pga]; return IIO_VAL_INT_PLUS_NANO; -- 2.34.1
| |