]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/blob - queue-4.19/iio-ad_sigma_delta-select-channel-when-reading-register.patch
000c09d3e877997db1787d0036d4bcef77246060
[thirdparty/kernel/stable-queue.git] / queue-4.19 / iio-ad_sigma_delta-select-channel-when-reading-register.patch
1 From fccfb9ce70ed4ea7a145f77b86de62e38178517f Mon Sep 17 00:00:00 2001
2 From: Dragos Bogdan <dragos.bogdan@analog.com>
3 Date: Tue, 19 Mar 2019 12:47:00 +0200
4 Subject: iio: ad_sigma_delta: select channel when reading register
5
6 From: Dragos Bogdan <dragos.bogdan@analog.com>
7
8 commit fccfb9ce70ed4ea7a145f77b86de62e38178517f upstream.
9
10 The desired channel has to be selected in order to correctly fill the
11 buffer with the corresponding data.
12 The `ad_sd_write_reg()` already does this, but for the
13 `ad_sd_read_reg_raw()` this was omitted.
14
15 Fixes: af3008485ea03 ("iio:adc: Add common code for ADI Sigma Delta devices")
16 Signed-off-by: Dragos Bogdan <dragos.bogdan@analog.com>
17 Signed-off-by: Alexandru Ardelean <alexandru.ardelean@analog.com>
18 Cc: <Stable@vger.kernel.org>
19 Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
20 Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
21
22 ---
23 drivers/iio/adc/ad_sigma_delta.c | 1 +
24 1 file changed, 1 insertion(+)
25
26 --- a/drivers/iio/adc/ad_sigma_delta.c
27 +++ b/drivers/iio/adc/ad_sigma_delta.c
28 @@ -121,6 +121,7 @@ static int ad_sd_read_reg_raw(struct ad_
29 if (sigma_delta->info->has_registers) {
30 data[0] = reg << sigma_delta->info->addr_shift;
31 data[0] |= sigma_delta->info->read_mask;
32 + data[0] |= sigma_delta->comm;
33 spi_message_add_tail(&t[0], &m);
34 }
35 spi_message_add_tail(&t[1], &m);