All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] iio: generic_buffer: be helpful about enabling channels
@ 2015-08-07  9:37 Linus Walleij
  2015-08-07 18:23 ` Hartmut Knaack
  0 siblings, 1 reply; 2+ messages in thread
From: Linus Walleij @ 2015-08-07  9:37 UTC (permalink / raw)
  To: Jonathan Cameron, linux-iio; +Cc: Linus Walleij

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>
---
 tools/iio/generic_buffer.c | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/tools/iio/generic_buffer.c b/tools/iio/generic_buffer.c
index 4eebb6616e5c..10a74ca6818b 100644
--- a/tools/iio/generic_buffer.c
+++ b/tools/iio/generic_buffer.c
@@ -299,6 +299,13 @@ int main(int argc, char **argv)
 		printf("diag %s\n", dev_dir_name);
 		goto error_free_triggername;
 	}
+	if (!num_channels) {
+		printf("No channels are enabled, we have nothing to scan.\n");
+		printf("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.
-- 
2.4.3


^ permalink raw reply related	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2015-08-07 18:23 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-08-07  9:37 [PATCH] iio: generic_buffer: be helpful about enabling channels Linus Walleij
2015-08-07 18:23 ` Hartmut Knaack

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.