summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLars-Peter Clausen <lars@metafoo.de>2016-07-11 13:54:17 +0200
committerJonathan Cameron <jic23@kernel.org>2016-08-15 15:39:14 +0100
commit7d3cc21dab5313a02f2f3ca8164529b828a030d1 (patch)
treec3523231990fc12c9bd2879febf1e67661a7bd30
parentb2f0c09664b72b2f8c581383a9337ac3092e42c8 (diff)
downloadlinux-7d3cc21dab5313a02f2f3ca8164529b828a030d1.tar.gz
linux-7d3cc21dab5313a02f2f3ca8164529b828a030d1.tar.bz2
linux-7d3cc21dab5313a02f2f3ca8164529b828a030d1.zip
iio: ad799x: Fix buffered capture for ad7991/ad7995/ad7999
The data buffer for captured mode for the ad799x driver is allocated in the update_scan_mode() callback. This callback is not set in the iio_info struct for the ad7791/ad7995/ad7999, which means that the data buffer is not allocated when a captured transfer is started. As a result the driver crashes when the first sample is received. To fix this properly set the update_scan_mode() callback. Fixes: d8dca33027c1 ("staging:iio:ad799x: Preallocate sample buffer") Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> Cc: <Stable@vger.kernel.org> Signed-off-by: Jonathan Cameron <jic23@kernel.org>
-rw-r--r--drivers/iio/adc/ad799x.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/iio/adc/ad799x.c b/drivers/iio/adc/ad799x.c
index b6163764489c..9704090b7908 100644
--- a/drivers/iio/adc/ad799x.c
+++ b/drivers/iio/adc/ad799x.c
@@ -527,6 +527,7 @@ static struct attribute_group ad799x_event_attrs_group = {
static const struct iio_info ad7991_info = {
.read_raw = &ad799x_read_raw,
.driver_module = THIS_MODULE,
+ .update_scan_mode = ad799x_update_scan_mode,
};
static const struct iio_info ad7993_4_7_8_noirq_info = {