summaryrefslogtreecommitdiffstats
path: root/commands
diff options
context:
space:
mode:
authorSascha Hauer <s.hauer@pengutronix.de>2017-11-28 10:38:03 +0100
committerSascha Hauer <s.hauer@pengutronix.de>2017-12-01 12:33:33 +0100
commitf754335eb9b18a6c79098562246e1a0afe56529f (patch)
tree391400acef56a0df7b93678ef05055fcbabc70ee /commands
parent5f5decec00df364859fd375dde8c0e2c148447d1 (diff)
downloadbarebox-f754335eb9b18a6c79098562246e1a0afe56529f.tar.gz
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 <s.hauer@pengutronix.de>
Diffstat (limited to 'commands')
-rw-r--r--commands/detect.c23
1 files changed, 10 insertions, 13 deletions
diff --git a/commands/detect.c b/commands/detect.c
index 1586a6f..d68d738 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)