summaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorNuno Sá <nuno.sa@analog.com>2020-11-21 17:14:57 +0100
committerJonathan Cameron <Jonathan.Cameron@huawei.com>2020-12-03 20:32:40 +0100
commit6d74a3ee1ee1c7b62de656c26d370448ed5885c3 (patch)
treeb388dbe103d259273e8edc82201055e7f6a58358 /drivers
parentASoC: stm32: dfsdm: add stm32_adfsdm_dummy_cb() callback (diff)
downloadlinux-6d74a3ee1ee1c7b62de656c26d370448ed5885c3.tar.xz
linux-6d74a3ee1ee1c7b62de656c26d370448ed5885c3.zip
iio: buffer: Return error if no callback is given
Return error in case no callback is provided to `iio_channel_get_all_cb()`. There's no point in setting up a buffer-cb if no callback is provided. Signed-off-by: Nuno Sá <nuno.sa@analog.com> Reviewed-by: Olivier Moysan <olivier.moysan@st.com> Link: https://lore.kernel.org/r/20201121161457.957-3-nuno.sa@analog.com Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/iio/buffer/industrialio-buffer-cb.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/iio/buffer/industrialio-buffer-cb.c b/drivers/iio/buffer/industrialio-buffer-cb.c
index 47c96f7f4976..4c12b7a94af5 100644
--- a/drivers/iio/buffer/industrialio-buffer-cb.c
+++ b/drivers/iio/buffer/industrialio-buffer-cb.c
@@ -54,6 +54,11 @@ struct iio_cb_buffer *iio_channel_get_all_cb(struct device *dev,
struct iio_cb_buffer *cb_buff;
struct iio_channel *chan;
+ if (!cb) {
+ dev_err(dev, "Invalid arguments: A callback must be provided!\n");
+ return ERR_PTR(-EINVAL);
+ }
+
cb_buff = kzalloc(sizeof(*cb_buff), GFP_KERNEL);
if (cb_buff == NULL)
return ERR_PTR(-ENOMEM);