diff options
author | Sean Anderson <seanga2@gmail.com> | 2020-10-27 19:55:32 -0400 |
---|---|---|
committer | Tom Rini <trini@konsulko.com> | 2020-10-30 10:55:27 -0400 |
commit | f48b5b563488c1fb8d2bb4857df8fa06a7a00a52 (patch) | |
tree | 971fe5d2d17dfe9d142f11b566575cb23cc9e072 /cmd/log.c | |
parent | 122730440055bb3b4f047f88be61a45ef7fe1a65 (diff) | |
download | u-boot-f48b5b563488c1fb8d2bb4857df8fa06a7a00a52.tar.gz |
cmd: log: Use sub-commands for log
This reduces duplicate code, and makes adding new sub-commands easier.
Signed-off-by: Sean Anderson <seanga2@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'cmd/log.c')
-rw-r--r-- | cmd/log.c | 31 |
1 files changed, 4 insertions, 27 deletions
@@ -103,30 +103,6 @@ static int do_log_rec(struct cmd_tbl *cmdtp, int flag, int argc, return 0; } -static struct cmd_tbl log_sub[] = { - U_BOOT_CMD_MKENT(level, CONFIG_SYS_MAXARGS, 1, do_log_level, "", ""), - U_BOOT_CMD_MKENT(format, CONFIG_SYS_MAXARGS, 1, do_log_format, "", ""), - U_BOOT_CMD_MKENT(rec, CONFIG_SYS_MAXARGS, 1, do_log_rec, "", ""), -}; - -static int do_log(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[]) -{ - struct cmd_tbl *cp; - - if (argc < 2) - return CMD_RET_USAGE; - - /* drop initial "log" arg */ - argc--; - argv++; - - cp = find_cmd_tbl(argv[0], log_sub, ARRAY_SIZE(log_sub)); - if (cp) - return cp->cmd(cmdtp, flag, argc, argv); - - return CMD_RET_USAGE; -} - #ifdef CONFIG_SYS_LONGHELP static char log_help_text[] = "level - get/set log level\n" @@ -139,7 +115,8 @@ static char log_help_text[] = ; #endif -U_BOOT_CMD( - log, CONFIG_SYS_MAXARGS, 1, do_log, - "log system", log_help_text +U_BOOT_CMD_WITH_SUBCMDS(log, "log system", log_help_text, + U_BOOT_SUBCMD_MKENT(level, 2, 1, do_log_level), + U_BOOT_SUBCMD_MKENT(format, 2, 1, do_log_format), + U_BOOT_SUBCMD_MKENT(rec, 7, 1, do_log_rec), ); |