iio: adc: mcp3422: fix locking scope
authorAngelo Compagnucci <angelo.compagnucci@gmail.com>
Wed, 19 Aug 2020 07:55:25 +0000 (09:55 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 23 Sep 2020 06:44:24 +0000 (08:44 +0200)
commitb55a96b1b0d6b4a1dc4af15e99515d05105b7602
tree8e042d6e9315ffca6d2eb9ea245b01b156f1e410
parentf515f1e5576c8fd5456de0f649037b58485352ea
iio: adc: mcp3422: fix locking scope

commit 3f1093d83d7164e4705e4232ccf76da54adfda85 upstream.

Locking should be held for the entire reading sequence involving setting
the channel, waiting for the channel switch and reading from the
channel.
If not, reading from a channel can result mixing with the reading from
another channel.

Fixes: 07914c84ba30 ("iio: adc: Add driver for Microchip MCP3422/3/4 high resolution ADC")
Signed-off-by: Angelo Compagnucci <angelo.compagnucci@gmail.com>
Link: https://lore.kernel.org/r/20200819075525.1395248-1-angelo.compagnucci@gmail.com
Cc: <Stable@vger.kernel.org>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/iio/adc/mcp3422.c