summaryrefslogtreecommitdiffstats
path: root/tools/iio
diff options
context:
space:
mode:
authorLinus Walleij2015-08-10 10:55:08 +0200
committerJonathan Cameron2015-08-16 11:51:26 +0200
commit53dabafe1b17411de82b6c4560145cf396cbb564 (patch)
treeaf2311ed898abcfd1250c84faf95bbfcd4b8c15f /tools/iio
parentiio: event_monitor: report unsupported events (diff)
downloadkernel-qcow2-linux-53dabafe1b17411de82b6c4560145cf396cbb564.tar.gz
kernel-qcow2-linux-53dabafe1b17411de82b6c4560145cf396cbb564.tar.xz
kernel-qcow2-linux-53dabafe1b17411de82b6c4560145cf396cbb564.zip
iio: generic_buffer: be helpful about enabling channels
Currently if generic_buffer is invoked without first enabling any channels in scan_elements/*_en, it will fail unable to enable the buffer because bytes_per_datum inside the kernel will be zero if no channels are available. It is implied that the user of the program should enable channels manually or with a script before executing generic_buffer. Be more helpful by stopping execution if no enabled channels can be found, and print a helptext that will tell you what is wrong and what needs to be done. Signed-off-by: Linus Walleij <linus.walleij@linaro.org> Acked-by: Hartmut Knaack <knaack.h@gmx.de> Signed-off-by: Jonathan Cameron <jic23@kernel.org>
Diffstat (limited to 'tools/iio')
-rw-r--r--tools/iio/generic_buffer.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/tools/iio/generic_buffer.c b/tools/iio/generic_buffer.c
index 9f7b85bf6ada..01c4f67801e0 100644
--- a/tools/iio/generic_buffer.c
+++ b/tools/iio/generic_buffer.c
@@ -328,6 +328,15 @@ int main(int argc, char **argv)
"diag %s\n", dev_dir_name);
goto error_free_triggername;
}
+ if (!num_channels) {
+ fprintf(stderr,
+ "No channels are enabled, we have nothing to scan.\n");
+ fprintf(stderr, "Enable channels manually in "
+ FORMAT_SCAN_ELEMENTS_DIR
+ "/*_en and try again.\n", dev_dir_name);
+ ret = -ENOENT;
+ goto error_free_triggername;
+ }
/*
* Construct the directory name for the associated buffer.