diff options
author | Linus Walleij <linus.walleij@linaro.org> | 2015-08-10 10:55:08 +0200 |
---|---|---|
committer | Jonathan Cameron <jic23@kernel.org> | 2015-08-16 10:51:26 +0100 |
commit | 53dabafe1b17411de82b6c4560145cf396cbb564 (patch) | |
tree | af2311ed898abcfd1250c84faf95bbfcd4b8c15f /tools | |
parent | 672f93b6047cc724f002cf50a84f4e8155b86f12 (diff) |
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')
-rw-r--r-- | tools/iio/generic_buffer.c | 9 |
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. |