From f754335eb9b18a6c79098562246e1a0afe56529f Mon Sep 17 00:00:00 2001 From: Sascha Hauer Date: Tue, 28 Nov 2017 10:38:03 +0100 Subject: detect command: Drop -e option The -e option is not that useful. Normally, when a device cannot be detected, then there should be no reason to not try to detect other devices. When a user is interested in a particular detect result, detect can still be called with that (and only that) device. We could also argue that the user should not care about the result of the detect call, but instead check if the desired device is present afterwards. Drop handling of the -e option, but still ignore it for compatibility reasons. Signed-off-by: Sascha Hauer --- commands/detect.c | 23 ++++++++++------------- 1 file changed, 10 insertions(+), 13 deletions(-) (limited to 'commands/detect.c') diff --git a/commands/detect.c b/commands/detect.c index 1586a6fb54..d68d738453 100644 --- a/commands/detect.c +++ b/commands/detect.c @@ -26,9 +26,8 @@ static int do_detect(int argc, char *argv[]) { struct device_d *dev; - int opt, i, ret; + int opt, i, ret, err; int option_list = 0; - int option_error = 0; int option_all = 0; while ((opt = getopt(argc, argv, "ela")) > 0) { @@ -37,7 +36,6 @@ static int do_detect(int argc, char *argv[]) option_list = 1; break; case 'e': - option_error = 1; break; case 'a': option_all = 1; @@ -56,37 +54,36 @@ static int do_detect(int argc, char *argv[]) } if (option_all) { - for_each_device(dev) { - ret = device_detect(dev); - if (ret && ret != -ENOSYS && option_error) - return ret; - } + for_each_device(dev) + device_detect(dev); + return 0; } if (argc == optind) return COMMAND_ERROR_USAGE; + err = 0; + for (i = optind; i < argc; i++) { ret = device_detect_by_name(argv[i]); - if (ret && option_error) - return ret; + if (!err && ret) + err = ret; } - return 0; + return err; } BAREBOX_CMD_HELP_START(detect) BAREBOX_CMD_HELP_TEXT("Options:") BAREBOX_CMD_HELP_OPT ("-l", "list detectable devices") -BAREBOX_CMD_HELP_OPT ("-e", "bail out if one device fails to detect") BAREBOX_CMD_HELP_OPT ("-a", "detect all devices") BAREBOX_CMD_HELP_END BAREBOX_CMD_START(detect) .cmd = do_detect, BAREBOX_CMD_DESC("detect devices") - BAREBOX_CMD_OPTS("[-lea] [devices]") + BAREBOX_CMD_OPTS("[-la] [devices]") BAREBOX_CMD_GROUP(CMD_GRP_HWMANIP) BAREBOX_CMD_COMPLETE(device_complete) BAREBOX_CMD_HELP(cmd_detect_help) -- cgit v1.2.3