[PATCH] commands: sleep: add msleep support
Sascha Hauer
s.hauer at pengutronix.de
Wed Jun 18 05:37:27 PDT 2025
Sometimes it's useful to delay execution for less than a second. Add
support for msleep command which is implemented as an alias to the sleep
command.
Signed-off-by: Sascha Hauer <s.hauer at pengutronix.de>
---
commands/sleep.c | 15 +++++++++++----
1 file changed, 11 insertions(+), 4 deletions(-)
diff --git a/commands/sleep.c b/commands/sleep.c
index b462ef4413..641dbb230a 100644
--- a/commands/sleep.c
+++ b/commands/sleep.c
@@ -10,16 +10,20 @@
static int do_sleep(int argc, char *argv[])
{
- uint64_t start;
- ulong delay;
+ uint64_t start, delay;
if (argc != 2)
return COMMAND_ERROR_USAGE;
delay = simple_strtoul(argv[1], NULL, 10);
+ if (!strcmp(argv[0], "msleep"))
+ delay *= MSECOND;
+ else
+ delay *= SECOND;
+
start = get_time_ns();
- while (!is_timeout(start, delay * SECOND)) {
+ while (!is_timeout(start, delay)) {
if (ctrlc())
return 1;
}
@@ -27,9 +31,12 @@ static int do_sleep(int argc, char *argv[])
return 0;
}
+static const char * const sleep_aliases[] = { "msleep", NULL};
+
BAREBOX_CMD_START(sleep)
.cmd = do_sleep,
- BAREBOX_CMD_DESC("delay execution for n seconds")
+ .aliases = sleep_aliases,
+ BAREBOX_CMD_DESC("delay execution for n seconds or n mseconds if invoked as msleep")
BAREBOX_CMD_OPTS("SECONDS")
BAREBOX_CMD_GROUP(CMD_GRP_SCRIPT)
BAREBOX_CMD_COMPLETE(command_var_complete)
--
2.39.5
More information about the barebox
mailing list