From 93ea25f2ec6e99ef5ba3068112eafab265087089 Mon Sep 17 00:00:00 2001 From: Leo C Date: Sat, 7 Apr 2018 22:27:07 +0200 Subject: [PATCH] commandtable, flags: int --> uint8_t/uint_fast8_t. Macro UNUSED for Parameters/Variables --- avr/Tupfile | 2 +- avr/cli.c | 8 ++--- avr/cmd_attach.c | 2 +- avr/cmd_boot.c | 14 ++++---- avr/cmd_date.c | 4 +-- avr/cmd_fat.c | 32 +++++++++--------- avr/cmd_gpio.c | 4 +-- avr/cmd_help.c | 4 +-- avr/cmd_loadcpm3.c | 2 +- avr/cmd_loadihex.c | 4 +-- avr/cmd_mem.c | 24 ++++++------- avr/cmd_misc.c | 4 +-- avr/cmd_run.c | 6 ++-- avr/cmd_sd.c | 36 ++++++++++---------- avr/command.c | 8 ++--- avr/command_tbl.c | 84 +++++++++++++++++++++++----------------------- avr/debug.c | 12 +++---- avr/env.c | 10 +++--- include/cli.h | 8 +++-- include/cmd_mem.h | 24 ++++++------- include/command.h | 35 ++++++++++--------- include/common.h | 3 ++ 22 files changed, 169 insertions(+), 161 deletions(-) diff --git a/avr/Tupfile b/avr/Tupfile index d41de25..a564e15 100644 --- a/avr/Tupfile +++ b/avr/Tupfile @@ -68,7 +68,7 @@ endif CFLAGS = -g -Os CFLAGS += -mmcu=$(MCU_TARGET) -CFLAGS += -std=gnu99 +CFLAGS += -std=gnu11 CFLAGS += -Wall -Wextra CFLAGS += -Wredundant-decls CFLAGS += -mrelax diff --git a/avr/cli.c b/avr/cli.c index 922f9e1..f9ffc37 100644 --- a/avr/cli.c +++ b/avr/cli.c @@ -237,7 +237,7 @@ char *process_macros(char *input, char *output) * @returns * */ -static int cli_run_command(const char *cmd, int flag) +static int cli_run_command(const char *cmd, uint_fast8_t flag) { char *cmdbuf; /* working copy of cmd */ char *token; /* start of token in cmdbuf */ @@ -362,7 +362,7 @@ static int cli_run_command_list(const char *cmd) * @param flag Execution flags (CMD_FLAG_...) * @return 0 on success, or != 0 on error. */ -int run_command(const char *cmd, int flag) +int run_command(const char *cmd, uint_fast8_t flag) { /* * cli_run_command can return 0 or 1 for success, so clean up @@ -381,7 +381,7 @@ int run_command(const char *cmd, int flag) * @param flag Execution flags (CMD_FLAG_...) * @return 0 (not repeatable) or 1 (repeatable) on success, -1 on error. */ -static int run_command_repeatable(const char *cmd, int flag) +static int run_command_repeatable(const char *cmd, uint_fast8_t flag) { return cli_run_command(cmd, flag); } @@ -400,7 +400,7 @@ void cli_loop(void) { char *lastcommand = NULL; int len; - int flag; + uint_fast8_t flag; int rc = 1; for (;;) { diff --git a/avr/cmd_attach.c b/avr/cmd_attach.c index e9b5ccd..361ba6d 100644 --- a/avr/cmd_attach.c +++ b/avr/cmd_attach.c @@ -58,7 +58,7 @@ void printerror(int rc, uint8_t unit, char *fn) * */ -command_ret_t do_attach(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) +command_ret_t do_attach(cmd_tbl_t *cmdtp, uint_fast8_t flag, int argc, char * const argv[]) { uint8_t unit; char *filename = NULL; diff --git a/avr/cmd_boot.c b/avr/cmd_boot.c index a83968f..6e117d9 100644 --- a/avr/cmd_boot.c +++ b/avr/cmd_boot.c @@ -59,7 +59,7 @@ static void z80_load_mem(int_fast8_t verbosity, } } -command_ret_t do_loadf(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) +command_ret_t do_loadf(cmd_tbl_t *cmdtp, uint_fast8_t flag, int argc, char * const argv[]) { (void) cmdtp; (void) flag; (void) argc; (void) argv; @@ -112,7 +112,7 @@ void print_vars(char *title) * -v verbose */ -command_ret_t do_bootcf(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) +command_ret_t do_bootcf(cmd_tbl_t *cmdtp, uint_fast8_t flag, int argc, char * const argv[]) { struct { uint8_t jr[2]; @@ -274,7 +274,7 @@ command_ret_t do_bootcf(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[ return CMD_RET_SUCCESS; } -command_ret_t do_busreq_pulse(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) +command_ret_t do_busreq_pulse(cmd_tbl_t *cmdtp, uint_fast8_t flag, int argc, char * const argv[]) { uint16_t count=1; @@ -296,7 +296,7 @@ command_ret_t do_busreq_pulse(cmd_tbl_t *cmdtp, int flag, int argc, char * const } -command_ret_t do_go(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) +command_ret_t do_go(cmd_tbl_t *cmdtp, uint_fast8_t flag, int argc, char * const argv[]) { uint32_t addr; @@ -348,7 +348,7 @@ void reset_cpu(bus_cmd_t mode) } -command_ret_t do_reset(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) +command_ret_t do_reset(cmd_tbl_t *cmdtp, uint_fast8_t flag, int argc, char * const argv[]) { (void) cmdtp; (void) flag; (void) argc; (void) argv; @@ -358,7 +358,7 @@ command_ret_t do_reset(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[] return CMD_RET_SUCCESS; } -command_ret_t do_restart(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) +command_ret_t do_restart(cmd_tbl_t *cmdtp, uint_fast8_t flag, int argc, char * const argv[]) { (void) cmdtp; (void) flag; (void) argc; (void) argv; @@ -383,7 +383,7 @@ void print_con_usage(char esc) ), esc + 0x40); } -command_ret_t do_console(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) +command_ret_t do_console(cmd_tbl_t *cmdtp, uint_fast8_t flag, int argc, char * const argv[]) { int ch; uint8_t pending; diff --git a/avr/cmd_date.c b/avr/cmd_date.c index 3e2e016..91a3d44 100644 --- a/avr/cmd_date.c +++ b/avr/cmd_date.c @@ -4,7 +4,7 @@ * (C) Copyright 2001 * Wolfgang Denk, DENX Software Engineering, wd@denx.de. * - * SPDX-License-Identifier: GPL-2.0+ + * SPDX-License-Identifier: GPL-2.0 */ /* @@ -125,7 +125,7 @@ int mk_date (const char *datestr, struct tm *tmp) return (-1); } -command_ret_t do_date(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) +command_ret_t do_date(cmd_tbl_t *cmdtp, uint_fast8_t flag, int argc, char * const argv[]) { struct tm t; char buf[30]; diff --git a/avr/cmd_fat.c b/avr/cmd_fat.c index 69dc470..d47f618 100644 --- a/avr/cmd_fat.c +++ b/avr/cmd_fat.c @@ -170,7 +170,7 @@ FRESULT scan_files ( * fatstat path - Show logical drive status * */ -command_ret_t do_stat(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) +command_ret_t do_stat(cmd_tbl_t *cmdtp, uint_fast8_t flag, int argc, char * const argv[]) { FATFS *fs; DWORD nfreeclst; @@ -243,7 +243,7 @@ command_ret_t do_stat(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) * pwd - Print current directory of the current drive. * */ -command_ret_t do_pwd(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) +command_ret_t do_pwd(cmd_tbl_t *cmdtp, uint_fast8_t flag, int argc, char * const argv[]) { FRESULT res; char *buf; @@ -275,7 +275,7 @@ command_ret_t do_pwd(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) * cd - Change the current/working directory. * */ -command_ret_t do_cd(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) +command_ret_t do_cd(cmd_tbl_t *cmdtp, uint_fast8_t flag, int argc, char * const argv[]) { char *arg; FRESULT res = 0; @@ -347,7 +347,7 @@ int print_dirent(FILINFO *f) * fatls path - Directory listing * */ -command_ret_t do_ls(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) +command_ret_t do_ls(cmd_tbl_t *cmdtp, uint_fast8_t flag, int argc, char * const argv[]) { FATFS *fs; DIR Dir; /* Directory object */ @@ -413,7 +413,7 @@ printf_P(PSTR("*: |%s| |%s|\n"), path ? path : "", pattern ? pattern : " [bytes [pos]] * write */ -command_ret_t do_rw(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) +command_ret_t do_rw(cmd_tbl_t *cmdtp, uint_fast8_t flag, int argc, char * const argv[]) { FIL File; uint32_t addr; @@ -668,7 +668,7 @@ path_set(PATH_T *p, char *string) #define P_FLAG (1<<4) #define V_FLAG (1<<5) -command_ret_t do_cp(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) +command_ret_t do_cp(cmd_tbl_t *cmdtp UNUSED, uint_fast8_t flag UNUSED, int argc, char * const argv[]) { FRESULT fr; /* Return value */ @@ -748,31 +748,31 @@ command_ret_t do_cp(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) static -command_ret_t do_help(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]); +command_ret_t do_help(cmd_tbl_t *cmdtp, uint_fast8_t flag, int argc, char * const argv[]); cmd_tbl_t cmd_fat_sub[] = { CMD_TBL_ITEM( - stat, 2, 1, do_stat, + stat, 2, CTBL_REPEAT, do_stat, "Show logical drive status", "dev" ), CMD_TBL_ITEM( - pwd, 2, 1, do_pwd, + pwd, 2, CTBL_REPEAT, do_pwd, "Print name of current/working directory", "" ), CMD_TBL_ITEM( - cd, 2, 1, do_cd, + cd, 2, CTBL_REPEAT, do_cd, "Change the current/working directory.", "path" ), CMD_TBL_ITEM( - ls, CONFIG_SYS_MAXARGS, 1, do_ls, + ls, 2, CTBL_REPEAT, do_ls, "Directory listing", "path" ), CMD_TBL_ITEM( - tst, 2, 1, do_tst, + tst, 2, CTBL_REPEAT, do_tst, "FatFS test function", "path" ), @@ -803,7 +803,7 @@ CMD_TBL_ITEM( ), CMD_TBL_ITEM( - help, CONFIG_SYS_MAXARGS, 1, do_help, + help, CONFIG_SYS_MAXARGS, CTBL_REPEAT, do_help, "Print sub command description/usage", "\n" " - print brief description of all sub commands\n" @@ -824,13 +824,13 @@ CMD_TBL_ITEM( }; static -command_ret_t do_help(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) +command_ret_t do_help(cmd_tbl_t *cmdtp, uint_fast8_t flag, int argc, char * const argv[]) { return _do_help(cmd_fat_sub, ARRAY_SIZE(cmd_fat_sub), cmdtp, flag, argc, argv); } -command_ret_t do_fat(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) +command_ret_t do_fat(cmd_tbl_t *cmdtp, uint_fast8_t flag, int argc, char * const argv[]) { cmd_tbl_t *cp; diff --git a/avr/cmd_gpio.c b/avr/cmd_gpio.c index 5cc02d0..5d7eb6c 100644 --- a/avr/cmd_gpio.c +++ b/avr/cmd_gpio.c @@ -1,7 +1,7 @@ /* * (C) Copyright 2014 Leo C. * - * SPDX-License-Identifier: GPL-2.0+ + * SPDX-License-Identifier: GPL-2.0 */ #include "common.h" @@ -176,7 +176,7 @@ static uint_fast8_t pinarg_get(char * arg, uint_fast8_t pinarg[]) } -command_ret_t do_gpio(cmd_tbl_t *cmdtp, int flag, int argc, char *const argv[]) +command_ret_t do_gpio(cmd_tbl_t *cmdtp, uint_fast8_t flag, int argc, char *const argv[]) { char printheader = 1; uint_fast8_t pinarg[GPIO_MAX]; diff --git a/avr/cmd_help.c b/avr/cmd_help.c index 010339d..309d9e6 100644 --- a/avr/cmd_help.c +++ b/avr/cmd_help.c @@ -4,13 +4,13 @@ * Copyright 2000-2009 * Wolfgang Denk, DENX Software Engineering, wd@denx.de. * - * SPDX-License-Identifier: GPL-2.0+ + * SPDX-License-Identifier: GPL-2.0 */ #include "common.h" #include "command.h" -command_ret_t do_help(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) +command_ret_t do_help(cmd_tbl_t *cmdtp, uint_fast8_t flag, int argc, char * const argv[]) { const int len = cmd_tbl_item_count(); return _do_help(cmd_tbl, len, cmdtp, flag, argc, argv); diff --git a/avr/cmd_loadcpm3.c b/avr/cmd_loadcpm3.c index e6e2cdc..f847290 100644 --- a/avr/cmd_loadcpm3.c +++ b/avr/cmd_loadcpm3.c @@ -63,7 +63,7 @@ int load(FIL *File, uint32_t addr, uint8_t len) #pragma GCC diagnostic ignored "-Wmaybe-uninitialized" -command_ret_t do_loadcpm3(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) +command_ret_t do_loadcpm3(cmd_tbl_t *cmdtp, uint_fast8_t flag, int argc, char * const argv[]) { uint16_t mem_top; uint8_t res_len; diff --git a/avr/cmd_loadihex.c b/avr/cmd_loadihex.c index 18d5331..ee4b40b 100644 --- a/avr/cmd_loadihex.c +++ b/avr/cmd_loadihex.c @@ -1,7 +1,7 @@ /* * (C) Copyright 2015 Leo C. * - * SPDX-License-Identifier: GPL-2.0+ + * SPDX-License-Identifier: GPL-2.0 */ #include "common.h" @@ -151,7 +151,7 @@ int ihex_get_record(ihex_t *rec) { } -command_ret_t do_loadihex(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) +command_ret_t do_loadihex(cmd_tbl_t *cmdtp, uint_fast8_t flag, int argc, char * const argv[]) { long offset = 0; uint32_t base_address = 0; diff --git a/avr/cmd_mem.c b/avr/cmd_mem.c index 315cd71..763b857 100644 --- a/avr/cmd_mem.c +++ b/avr/cmd_mem.c @@ -60,7 +60,7 @@ int z180_read_buf(uint8_t *buf, uint32_t addr, uint8_t count) * Syntax: * md {addr} {len} */ -command_ret_t do_mem_md(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) +command_ret_t do_mem_md(cmd_tbl_t *cmdtp, uint_fast8_t flag, int argc, char * const argv[]) { uint32_t addr, length; @@ -114,7 +114,7 @@ command_ret_t do_mem_md(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[ * nm {addr} */ static command_ret_t -mod_mem(cmd_tbl_t *cmdtp, int incrflag, int flag, int argc, char * const argv[]) +mod_mem(cmd_tbl_t *cmdtp, int incrflag, uint_fast8_t flag, int argc, char * const argv[]) { uint32_t addr; uint8_t data; @@ -183,16 +183,16 @@ mod_mem(cmd_tbl_t *cmdtp, int incrflag, int flag, int argc, char * const argv[]) } -command_ret_t do_mem_mm(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) +command_ret_t do_mem_mm(cmd_tbl_t *cmdtp, uint_fast8_t flag, int argc, char * const argv[]) { return mod_mem (cmdtp, 1, flag, argc, argv); } -command_ret_t do_mem_nm(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) +command_ret_t do_mem_nm(cmd_tbl_t *cmdtp, uint_fast8_t flag, int argc, char * const argv[]) { return mod_mem (cmdtp, 0, flag, argc, argv); } -command_ret_t do_mem_mw(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) +command_ret_t do_mem_mw(cmd_tbl_t *cmdtp, uint_fast8_t flag, int argc, char * const argv[]) { uint32_t writeval; uint32_t addr; @@ -254,7 +254,7 @@ command_ret_t do_mem_mw(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[ } #ifdef CONFIG_MX_CYCLIC -command_ret_t do_mem_mdc ( cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) +command_ret_t do_mem_mdc ( cmd_tbl_t *cmdtp, uint_fast8_t flag, int argc, char * const argv[]) { uint32_t count; uint32_t ts; @@ -300,7 +300,7 @@ command_ret_t do_mem_mdc ( cmd_tbl_t *cmdtp, int flag, int argc, char * const ar } #endif /* CONFIG_MX_CYCLIC */ -command_ret_t do_mem_cmp(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) +command_ret_t do_mem_cmp(cmd_tbl_t *cmdtp, uint_fast8_t flag, int argc, char * const argv[]) { uint32_t addr1, addr2, count, ngood; command_ret_t rcode = CMD_RET_SUCCESS; @@ -349,7 +349,7 @@ command_ret_t do_mem_cmp(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv return rcode; } -command_ret_t do_mem_cp(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) +command_ret_t do_mem_cp(cmd_tbl_t *cmdtp, uint_fast8_t flag, int argc, char * const argv[]) { uint32_t src, dest, count; int_fast8_t step; @@ -399,7 +399,7 @@ command_ret_t do_mem_cp(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[ return CMD_RET_SUCCESS; } -command_ret_t do_mem_base(cmd_tbl_t *cmdtp, int flag, int argc, +command_ret_t do_mem_base(cmd_tbl_t *cmdtp, uint_fast8_t flag, int argc, char * const argv[]) { (void) cmdtp; @@ -414,7 +414,7 @@ command_ret_t do_mem_base(cmd_tbl_t *cmdtp, int flag, int argc, return CMD_RET_SUCCESS; } -command_ret_t do_mem_loop(cmd_tbl_t *cmdtp, int flag, int argc, +command_ret_t do_mem_loop(cmd_tbl_t *cmdtp, uint_fast8_t flag, int argc, char * const argv[]) { uint32_t addr, length; @@ -460,7 +460,7 @@ command_ret_t do_mem_loop(cmd_tbl_t *cmdtp, int flag, int argc, return CMD_RET_SUCCESS; } -command_ret_t do_mem_loopw (cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) +command_ret_t do_mem_loopw (cmd_tbl_t *cmdtp, uint_fast8_t flag, int argc, char * const argv[]) { uint32_t addr, length; uint8_t data; @@ -734,7 +734,7 @@ static uint32_t mem_test_alt(uint32_t start_addr, uint32_t end_addr) * configured using CONFIG_SYS_ALT_MEMTEST. The complete test loops until * interrupted by ctrl-c or by a failure of one of the sub-tests. */ -command_ret_t do_mem_mtest(cmd_tbl_t *cmdtp, int flag, int argc, +command_ret_t do_mem_mtest(cmd_tbl_t *cmdtp, uint_fast8_t flag, int argc, char * const argv[]) { uint32_t start = 0; diff --git a/avr/cmd_misc.c b/avr/cmd_misc.c index 9061b5a..a0ee26e 100644 --- a/avr/cmd_misc.c +++ b/avr/cmd_misc.c @@ -17,7 +17,7 @@ #include "getopt-min.h" -command_ret_t do_echo(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) +command_ret_t do_echo(cmd_tbl_t *cmdtp, uint_fast8_t flag, int argc, char * const argv[]) { bool put_newline = true; @@ -52,7 +52,7 @@ command_ret_t do_echo(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) } -command_ret_t do_sleep(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) +command_ret_t do_sleep(cmd_tbl_t *cmdtp, uint_fast8_t flag, int argc, char * const argv[]) { unsigned long start = get_timer(0); unsigned long delay; diff --git a/avr/cmd_run.c b/avr/cmd_run.c index 8593ef5..6ad758b 100644 --- a/avr/cmd_run.c +++ b/avr/cmd_run.c @@ -16,7 +16,7 @@ #include "env.h" -command_ret_t do_run(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) +command_ret_t do_run(cmd_tbl_t *cmdtp, uint_fast8_t flag, int argc, char * const argv[]) { int i; (void) cmdtp; @@ -39,7 +39,7 @@ command_ret_t do_run(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) return CMD_RET_SUCCESS; } -static int source(FIL *fp, int flag, int argc, char * const argv[]) +static int source(FIL *fp, uint_fast8_t flag, int argc, char * const argv[]) { int lineno = 0; int res = 0; @@ -66,7 +66,7 @@ static int source(FIL *fp, int flag, int argc, char * const argv[]) return !f_eof(fp) || res; } -command_ret_t do_source(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) +command_ret_t do_source(cmd_tbl_t *cmdtp, uint_fast8_t flag, int argc, char * const argv[]) { FIL File; int res; diff --git a/avr/cmd_sd.c b/avr/cmd_sd.c index 1963d59..f3c5df4 100644 --- a/avr/cmd_sd.c +++ b/avr/cmd_sd.c @@ -20,7 +20,7 @@ * */ static -command_ret_t do_status(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) +command_ret_t do_status(cmd_tbl_t *cmdtp, uint_fast8_t flag, int argc, char * const argv[]) { DSTATUS res; BYTE dev; @@ -42,7 +42,7 @@ command_ret_t do_status(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[ * */ static -command_ret_t do_init(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) +command_ret_t do_init(cmd_tbl_t *cmdtp, uint_fast8_t flag, int argc, char * const argv[]) { DSTATUS res; BYTE dev; @@ -73,7 +73,7 @@ command_ret_t do_init(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) * */ static -command_ret_t do_info(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) +command_ret_t do_info(cmd_tbl_t *cmdtp, uint_fast8_t flag, int argc, char * const argv[]) { DSTATUS res; BYTE dev; @@ -122,7 +122,7 @@ command_ret_t do_info(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) * */ static -command_ret_t do_dump(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) +command_ret_t do_dump(cmd_tbl_t *cmdtp, uint_fast8_t flag, int argc, char * const argv[]) { static BYTE dev_last; static DWORD sec_last; @@ -175,7 +175,7 @@ command_ret_t do_dump(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) * */ static -command_ret_t do_read(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) +command_ret_t do_read(cmd_tbl_t *cmdtp, uint_fast8_t flag, int argc, char * const argv[]) { DRESULT res; BYTE dev; @@ -237,7 +237,7 @@ command_ret_t do_read(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) * */ static -command_ret_t do_write(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) +command_ret_t do_write(cmd_tbl_t *cmdtp, uint_fast8_t flag, int argc, char * const argv[]) { DRESULT res; BYTE dev; @@ -300,7 +300,7 @@ command_ret_t do_write(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[] * */ static -command_ret_t do_ioctl_sync(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) +command_ret_t do_ioctl_sync(cmd_tbl_t *cmdtp, uint_fast8_t flag, int argc, char * const argv[]) { BYTE dev; @@ -317,47 +317,47 @@ command_ret_t do_ioctl_sync(cmd_tbl_t *cmdtp, int flag, int argc, char * const a static -command_ret_t do_help(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]); +command_ret_t do_help(cmd_tbl_t *cmdtp, uint_fast8_t flag, int argc, char * const argv[]); cmd_tbl_t cmd_sd_sub[] = { CMD_TBL_ITEM( - status, 2, 1, do_status, + status, 2, CTBL_REPEAT, do_status, "Socket staus", "drive" ), CMD_TBL_ITEM( - init, 2, 1, do_init, + init, 2, CTBL_REPEAT, do_init, "Initialize disk", "drive" ), CMD_TBL_ITEM( - info, 2, 1, do_info, + info, 2, CTBL_REPEAT, do_info, "Disk info", "drive" ), CMD_TBL_ITEM( - dump, CONFIG_SYS_MAXARGS, 1, do_dump, + dump, CONFIG_SYS_MAXARGS, CTBL_REPEAT, do_dump, "Dump sector(s)", "drive [sector [count ]]" ), CMD_TBL_ITEM( - read, 2, 1, do_read, + read, 2, CTBL_REPEAT, do_read, "Read disk sector(s) into meomory", "drive [sector [count [memaddr]]]" ), CMD_TBL_ITEM( - write, 2, 1, do_write, + write, 2, CTBL_REPEAT, do_write, "Write sector(s) from meomory to disk", "drive [sector [count [memaddr]]]" ), CMD_TBL_ITEM( - sync, 2, 1, do_ioctl_sync, + sync, 2, CTBL_REPEAT, do_ioctl_sync, "Device control: SYNC", "drive" ), CMD_TBL_ITEM( - help, CONFIG_SYS_MAXARGS, 1, do_help, + help, CONFIG_SYS_MAXARGS, CTBL_REPEAT, do_help, "Print sub command description/usage", "\n" " - print brief description of all sub commands\n" @@ -378,13 +378,13 @@ CMD_TBL_ITEM( }; static -command_ret_t do_help(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) +command_ret_t do_help(cmd_tbl_t *cmdtp, uint_fast8_t flag, int argc, char * const argv[]) { return _do_help(cmd_sd_sub, ARRAY_SIZE(cmd_sd_sub), cmdtp, flag, argc, argv); } -command_ret_t do_sd(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) +command_ret_t do_sd(cmd_tbl_t *cmdtp, uint_fast8_t flag, int argc, char * const argv[]) { cmd_tbl_t *cp; diff --git a/avr/command.c b/avr/command.c index cd2ee39..78b5cc4 100644 --- a/avr/command.c +++ b/avr/command.c @@ -76,7 +76,7 @@ int cmd_tbl_item_count(void) */ command_ret_t _do_help(cmd_tbl_t *cmd_start, int cmd_items, cmd_tbl_t * cmdtp, - int flag, int argc, char * const argv[]) + uint_fast8_t flag, int argc, char * const argv[]) { uint_fast8_t i, max_len = 0; command_ret_t rcode = CMD_RET_SUCCESS; @@ -482,7 +482,7 @@ int cmd_auto_complete(const FLASH char *const prompt, char *buf, int *np, int *c * @param argv Arguments * @return 0 if command succeeded, else non-zero (CMD_RET_...) */ -command_ret_t cmd_call(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) +command_ret_t cmd_call(cmd_tbl_t *cmdtp, uint_fast8_t flag, int argc, char * const argv[]) { command_ret_t result; @@ -492,7 +492,7 @@ command_ret_t cmd_call(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[] return result; } -command_ret_t cmd_process(int flag, int argc, char * const argv[], +command_ret_t cmd_process(uint_fast8_t flag, int argc, char * const argv[], uint_fast8_t *repeatable) { command_ret_t rc = CMD_RET_SUCCESS; @@ -531,7 +531,7 @@ command_ret_t cmd_process(int flag, int argc, char * const argv[], /* If OK so far, then do the command */ if (!rc) { rc = cmd_call(cmdtp, flag, argc, argv); - *repeatable &= cmdtp->repeatable; + *repeatable &= (cmdtp->flags & CTBL_REPEAT) != 0; } if (rc == CMD_RET_USAGE) rc = cmd_usage(cmdtp); diff --git a/avr/command_tbl.c b/avr/command_tbl.c index ce99134..49ddcef 100644 --- a/avr/command_tbl.c +++ b/avr/command_tbl.c @@ -8,36 +8,36 @@ #include "command.h" #include "cmd_mem.h" -extern command_ret_t do_help(cmd_tbl_t *, int, int, char * const []); -extern command_ret_t do_echo(cmd_tbl_t *, int, int, char * const []); -extern command_ret_t do_sleep(cmd_tbl_t *, int, int, char * const []); -extern command_ret_t do_env_print(cmd_tbl_t *, int, int, char * const []); -extern command_ret_t do_env_default(cmd_tbl_t *, int, int, char * const []); -extern command_ret_t do_env_set(cmd_tbl_t *, int, int, char * const []); -extern command_ret_t do_env_save(cmd_tbl_t *, int, int, char * const []); -extern command_ret_t do_loadf(cmd_tbl_t *, int, int, char * const []); -extern command_ret_t do_bootcf(cmd_tbl_t *, int, int, char * const []); -extern command_ret_t do_loadcpm3(cmd_tbl_t *, int, int, char * const []); -extern command_ret_t do_loadihex(cmd_tbl_t *, int, int, char * const []); +extern command_ret_t do_help(cmd_tbl_t *, uint_fast8_t, int, char * const []); +extern command_ret_t do_echo(cmd_tbl_t *, uint_fast8_t, int, char * const []); +extern command_ret_t do_sleep(cmd_tbl_t *, uint_fast8_t, int, char * const []); +extern command_ret_t do_env_print(cmd_tbl_t *, uint_fast8_t, int, char * const []); +extern command_ret_t do_env_default(cmd_tbl_t *, uint_fast8_t, int, char * const []); +extern command_ret_t do_env_set(cmd_tbl_t *, uint_fast8_t, int, char * const []); +extern command_ret_t do_env_save(cmd_tbl_t *, uint_fast8_t, int, char * const []); +extern command_ret_t do_loadf(cmd_tbl_t *, uint_fast8_t, int, char * const []); +extern command_ret_t do_bootcf(cmd_tbl_t *, uint_fast8_t, int, char * const []); +extern command_ret_t do_loadcpm3(cmd_tbl_t *, uint_fast8_t, int, char * const []); +extern command_ret_t do_loadihex(cmd_tbl_t *, uint_fast8_t, int, char * const []); #if defined(CONFIG_CMD_LOADB) -extern command_ret_t do_load_serial_bin(cmd_tbl_t *, int, int, char * const []); +extern command_ret_t do_load_serial_bin(cmd_tbl_t *, uint_fast8_t, int, char * const []); #endif -extern command_ret_t do_go(cmd_tbl_t *, int, int, char * const []); -extern command_ret_t do_restart(cmd_tbl_t *, int, int, char * const []); -extern command_ret_t do_console(cmd_tbl_t *, int, int, char * const []); -extern command_ret_t do_dump_mem(cmd_tbl_t *, int, int, char * const []); -extern command_ret_t do_mem_mm_avr(cmd_tbl_t *, int, int, char * const []); -extern command_ret_t do_mem_nm_avr(cmd_tbl_t *, int, int, char * const []); -extern command_ret_t do_eep_cp(cmd_tbl_t *, int, int, char * const []); -extern command_ret_t do_busreq_pulse(cmd_tbl_t *, int, int, char * const []); -extern command_ret_t do_date(cmd_tbl_t *, int, int, char * const []); -extern command_ret_t do_gpio(cmd_tbl_t *, int, int, char * const []); -extern command_ret_t do_sd(cmd_tbl_t *, int, int, char * const []); -extern command_ret_t do_fat(cmd_tbl_t *, int, int, char * const []); -extern command_ret_t do_run(cmd_tbl_t *, int, int, char * const []); -extern command_ret_t do_source(cmd_tbl_t *, int, int, char * const []); -extern command_ret_t do_attach(cmd_tbl_t *, int, int, char * const []); -extern command_ret_t do_pr_free_avr(cmd_tbl_t *, int, int, char * const []); +extern command_ret_t do_go(cmd_tbl_t *, uint_fast8_t, int, char * const []); +extern command_ret_t do_restart(cmd_tbl_t *, uint_fast8_t, int, char * const []); +extern command_ret_t do_console(cmd_tbl_t *, uint_fast8_t, int, char * const []); +extern command_ret_t do_dump_mem(cmd_tbl_t *, uint_fast8_t, int, char * const []); +extern command_ret_t do_mem_mm_avr(cmd_tbl_t *, uint_fast8_t, int, char * const []); +extern command_ret_t do_mem_nm_avr(cmd_tbl_t *, uint_fast8_t, int, char * const []); +extern command_ret_t do_eep_cp(cmd_tbl_t *, uint_fast8_t, int, char * const []); +extern command_ret_t do_busreq_pulse(cmd_tbl_t *, uint_fast8_t, int, char * const []); +extern command_ret_t do_date(cmd_tbl_t *, uint_fast8_t, int, char * const []); +extern command_ret_t do_gpio(cmd_tbl_t *, uint_fast8_t, int, char * const []); +extern command_ret_t do_sd(cmd_tbl_t *, uint_fast8_t, int, char * const []); +extern command_ret_t do_fat(cmd_tbl_t *, uint_fast8_t, int, char * const []); +extern command_ret_t do_run(cmd_tbl_t *, uint_fast8_t, int, char * const []); +extern command_ret_t do_source(cmd_tbl_t *, uint_fast8_t, int, char * const []); +extern command_ret_t do_attach(cmd_tbl_t *, uint_fast8_t, int, char * const []); +extern command_ret_t do_pr_free_avr(cmd_tbl_t *, uint_fast8_t, int, char * const []); #ifdef CONFIG_SYS_LONGHELP const FLASH char sd_help_text[] = @@ -268,22 +268,22 @@ CMD_TBL_ITEM( ), CMD_TBL_ITEM( - md, 3, 1, do_mem_md, + md, 3, CTBL_REPEAT, do_mem_md, "memory display", "address [# of objects]" ), CMD_TBL_ITEM( - mm, 2, 1, do_mem_mm, + mm, 2, CTBL_REPEAT, do_mem_mm, "memory modify (auto-incrementing address)", "address" ), CMD_TBL_ITEM( - nm, 2, 1, do_mem_nm, + nm, 2, CTBL_REPEAT, do_mem_nm, "memory modify (constant address)", "address" ), CMD_TBL_ITEM( - mw, CONFIG_SYS_MAXARGS, 1, do_mem_mw, + mw, CONFIG_SYS_MAXARGS, CTBL_REPEAT, do_mem_mw, "memory write (fill)", "[-bwl] address value [count]\n" " -b write value as byte (8 bit, default)\n" @@ -291,12 +291,12 @@ CMD_TBL_ITEM( " -l write value as long (32 bit)" ), CMD_TBL_ITEM( - cp, 4, 1, do_mem_cp, + cp, 4, CTBL_REPEAT, do_mem_cp, "memory copy", "source target count" ), CMD_TBL_ITEM( - cmp, 4, 1, do_mem_cmp, + cmp, 4, CTBL_REPEAT, do_mem_cmp, "memory compare", "addr1 addr2 count" ), @@ -309,19 +309,19 @@ CMD_TBL_ITEM( " - set address offset for memory commands to 'offset'" ), CMD_TBL_ITEM( - mloop, 3, 1, do_mem_loop, + mloop, 3, CTBL_REPEAT, do_mem_loop, "infinite loop on address range", "address number_of_bytes" ), CMD_TBL_ITEM( - mloopw, 4, 1, do_mem_loopw, + mloopw, 4, CTBL_REPEAT, do_mem_loopw, "infinite write loop on address range", "address number_of_bytes data_to_write" ), #ifdef CONFIG_CMD_MEMTEST CMD_TBL_ITEM( - mtest, 4, 1, do_mem_mtest, + mtest, 4, CTBL_REPEAT, do_mem_mtest, "simple RAM read/write test", "[start [end [iterations]]]" ), @@ -329,12 +329,12 @@ CMD_TBL_ITEM( #ifdef CONFIG_MX_CYCLIC CMD_TBL_ITEM( - mdc, 4, 1, do_mem_mdc, + mdc, 4, CTBL_REPEAT, do_mem_mdc, "memory display cyclic", "address count delay(ms)" ), CMD_TBL_ITEM( - mwc, CONFIG_SYS_MAXARGS, 1, do_mem_mdc, + mwc, CONFIG_SYS_MAXARGS, CTBL_REPEAT, do_mem_mdc, "memory write cyclic", "[-bwl] address value delay(ms)\n" " -b write value as byte (8 bit, default)\n" @@ -359,7 +359,7 @@ CMD_TBL_ITEM( ), CMD_TBL_ITEM( - attach, CONFIG_SYS_MAXARGS, 1, do_attach, + attach, CONFIG_SYS_MAXARGS, CTBL_REPEAT, do_attach, "attach filesystem image file to CP/M drive", "[-rw] [-o options] dsk diskfile\n" " Attach diskfile to dsk, where n in 0..7\n" @@ -382,14 +382,14 @@ CMD_TBL_ITEM( " Without arguments, list current assignments\n" ), CMD_TBL_ITEM( - detach, 2, 1, do_attach, + detach, 2, CTBL_REPEAT, do_attach, "detach file from CP/M drive", "dsk]\n" " - alias for 'attach -d dsk'" ), CMD_TBL_ITEM( - help, CONFIG_SYS_MAXARGS, 1, do_help, + help, CONFIG_SYS_MAXARGS, CTBL_REPEAT, do_help, "print command description/usage", "\n" " - print brief description of all commands\n" diff --git a/avr/debug.c b/avr/debug.c index 46e2ef6..21dd242 100644 --- a/avr/debug.c +++ b/avr/debug.c @@ -39,7 +39,7 @@ void dump_heap(void) * Memory Display * md addr {len} */ -command_ret_t do_dump_mem(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) +command_ret_t do_dump_mem(cmd_tbl_t *cmdtp, uint_fast8_t flag, int argc, char * const argv[]) { int (*readwhat)(uint8_t *buf, uint32_t addr, uint8_t count); @@ -78,7 +78,7 @@ command_ret_t do_dump_mem(cmd_tbl_t *cmdtp, int flag, int argc, char * const arg return CMD_RET_SUCCESS; } -command_ret_t do_eep_cp(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) +command_ret_t do_eep_cp(cmd_tbl_t *cmdtp, uint_fast8_t flag, int argc, char * const argv[]) { uint16_t src, dest, count; int_fast8_t step; @@ -139,7 +139,7 @@ command_ret_t do_eep_cp(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[ static uint8_t *mm_last_addr; static command_ret_t -mod_mem_avr(cmd_tbl_t *cmdtp, int incrflag, int flag, int argc, char * const argv[]) +mod_mem_avr(cmd_tbl_t *cmdtp, int incrflag, uint_fast8_t flag, int argc, char * const argv[]) { uint8_t *addr; int nbytes; @@ -196,11 +196,11 @@ mod_mem_avr(cmd_tbl_t *cmdtp, int incrflag, int flag, int argc, char * const arg } -command_ret_t do_mem_mm_avr(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) +command_ret_t do_mem_mm_avr(cmd_tbl_t *cmdtp, uint_fast8_t flag, int argc, char * const argv[]) { return mod_mem_avr (cmdtp, 1, flag, argc, argv); } -command_ret_t do_mem_nm_avr(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) +command_ret_t do_mem_nm_avr(cmd_tbl_t *cmdtp, uint_fast8_t flag, int argc, char * const argv[]) { return mod_mem_avr (cmdtp, 0, flag, argc, argv); } @@ -247,7 +247,7 @@ printfreelist(const char * title) (size_t) STACK_POINTER(), (size_t) __brkval, freesum); } -command_ret_t do_pr_free_avr(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) +command_ret_t do_pr_free_avr(cmd_tbl_t *cmdtp UNUSED, uint_fast8_t flag UNUSED, int argc UNUSED, char * const argv[] UNUSED) { printfreelist(NULL); diff --git a/avr/env.c b/avr/env.c index 952c88a..39effac 100644 --- a/avr/env.c +++ b/avr/env.c @@ -451,7 +451,7 @@ int env_print(const MEMX char *name) * @return 0 if ok, 1 on error */ static -command_ret_t _do_env_set(int flag, int argc, char * const argv[]) +command_ret_t _do_env_set(uint_fast8_t flag, int argc, char * const argv[]) { int i, len; char *name, *value, *valp, *p; @@ -644,7 +644,7 @@ bool getenv_yesno(const MEMX char *name) */ } -command_ret_t do_env_print(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) +command_ret_t do_env_print(cmd_tbl_t *cmdtp, uint_fast8_t flag, int argc, char * const argv[]) { command_ret_t rc = CMD_RET_SUCCESS; @@ -673,7 +673,7 @@ command_ret_t do_env_print(cmd_tbl_t *cmdtp, int flag, int argc, char * const ar } -command_ret_t do_env_set(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) +command_ret_t do_env_set(cmd_tbl_t *cmdtp, uint_fast8_t flag, int argc, char * const argv[]) { (void) cmdtp; @@ -684,7 +684,7 @@ command_ret_t do_env_set(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv } -command_ret_t do_env_default(cmd_tbl_t *cmdtp, int flag, +command_ret_t do_env_default(cmd_tbl_t *cmdtp, uint_fast8_t flag, int argc, char * const argv[]) { (void) cmdtp; (void) flag; (void) argc; (void) argv; @@ -702,7 +702,7 @@ command_ret_t do_env_default(cmd_tbl_t *cmdtp, int flag, } -command_ret_t do_env_save(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) +command_ret_t do_env_save(cmd_tbl_t *cmdtp, uint_fast8_t flag, int argc, char * const argv[]) { (void) cmdtp; (void) flag; (void) argc; (void) argv; diff --git a/include/cli.h b/include/cli.h index 28e92be..e6df408 100644 --- a/include/cli.h +++ b/include/cli.h @@ -10,6 +10,8 @@ #ifndef CLI_H #define CLI_H +#include "common.h" + /** * Go into the command loop * @@ -30,7 +32,7 @@ void cli_loop(void); * (If cmd is NULL or "" or longer than CONFIG_SYS_CBSIZE-1 it is * considered unrecognized) */ -//int cli_simple_run_command(const char *cmd, int flag); +//int cli_simple_run_command(const char *cmd, uint_fast8_t flag); /** * cli_simple_run_command_list() - Execute a list of command @@ -45,7 +47,7 @@ void cli_loop(void); * @param flag Execution flags (CMD_FLAG_...) * @return 0 on success, or != 0 on error. */ -//int cli_simple_run_command_list(char *cmd, int flag); +//int cli_simple_run_command_list(char *cmd, uint_fast8_t flag); /** * parse_line() - split a command line down into separate arguments @@ -73,7 +75,7 @@ void cli_loop(void); * @param flag Execution flags (CMD_FLAG_...) * @return 0 on success, or != 0 on error. */ -int run_command(const char *cmd, int flag); +int run_command(const char *cmd, uint_fast8_t flag); int run_command_list(const char *cmd, int len); diff --git a/include/cmd_mem.h b/include/cmd_mem.h index 782c10a..625ab8d 100644 --- a/include/cmd_mem.h +++ b/include/cmd_mem.h @@ -1,7 +1,7 @@ /* * (C) Copyright 2014 Leo C. * - * SPDX-License-Identifier: GPL-2.0+ + * SPDX-License-Identifier: GPL-2.0 */ #ifndef CMD_MEM_H @@ -11,20 +11,20 @@ #include "cmd_mem.h" -extern command_ret_t do_mem_md(cmd_tbl_t *, int, int, char * const []); -extern command_ret_t do_mem_mm(cmd_tbl_t *, int, int, char * const []); -extern command_ret_t do_mem_nm(cmd_tbl_t *, int, int, char * const []); -extern command_ret_t do_mem_mw(cmd_tbl_t *, int, int, char * const []); -extern command_ret_t do_mem_cp(cmd_tbl_t *, int, int, char * const []); -extern command_ret_t do_mem_cmp(cmd_tbl_t *, int, int, char * const []); -extern command_ret_t do_mem_base(cmd_tbl_t *, int, int, char * const []); -extern command_ret_t do_mem_loop(cmd_tbl_t *, int, int, char * const []); -extern command_ret_t do_mem_loopw(cmd_tbl_t *, int, int, char * const []); +extern command_ret_t do_mem_md(cmd_tbl_t *, uint_fast8_t, int, char * const []); +extern command_ret_t do_mem_mm(cmd_tbl_t *, uint_fast8_t, int, char * const []); +extern command_ret_t do_mem_nm(cmd_tbl_t *, uint_fast8_t, int, char * const []); +extern command_ret_t do_mem_mw(cmd_tbl_t *, uint_fast8_t, int, char * const []); +extern command_ret_t do_mem_cp(cmd_tbl_t *, uint_fast8_t, int, char * const []); +extern command_ret_t do_mem_cmp(cmd_tbl_t *, uint_fast8_t, int, char * const []); +extern command_ret_t do_mem_base(cmd_tbl_t *, uint_fast8_t, int, char * const []); +extern command_ret_t do_mem_loop(cmd_tbl_t *, uint_fast8_t, int, char * const []); +extern command_ret_t do_mem_loopw(cmd_tbl_t *, uint_fast8_t, int, char * const []); #ifdef CONFIG_CMD_MEMTEST -extern command_ret_t do_mem_mtest(cmd_tbl_t *, int, int, char * const []); +extern command_ret_t do_mem_mtest(cmd_tbl_t *, uint_fast8_t, int, char * const []); #endif #ifdef CONFIG_MX_CYCLIC -extern command_ret_t do_mem_mdc(cmd_tbl_t *, int, int, char * const []); +extern command_ret_t do_mem_mdc(cmd_tbl_t *, uint_fast8_t, int, char * const []); #endif /* CONFIG_MX_CYCLIC */ #endif /* CMD_MEM_H */ diff --git a/include/command.h b/include/command.h index 9ca460d..75b5a0d 100644 --- a/include/command.h +++ b/include/command.h @@ -46,10 +46,10 @@ typedef enum { struct cmd_tbl_s { const FLASH char *name; /* Command Name */ - int maxargs; /* maximum number of arguments */ - int repeatable; /* autorepeat allowed? */ + uint8_t maxargs; /* maximum number of arguments */ + uint8_t flags; /* autorepeat allowed? */ /* Implementation function */ - command_ret_t (*cmd)(const FLASH struct cmd_tbl_s *, int, int, char * const []); + command_ret_t (*cmd)(const FLASH struct cmd_tbl_s *, uint_fast8_t, int, char * const []); const FLASH char *usage; /* Usage message (short) */ #ifdef CONFIG_SYS_LONGHELP const FLASH char *help; /* Help message (long) */ @@ -75,12 +75,11 @@ typedef const FLASH struct cmd_tbl_s cmd_tbl_t; * @return 0 if the command succeeded, 1 if it failed */ command_ret_t -cmd_process(int flag, int argc, char * const argv[], uint_fast8_t *repeatable); +cmd_process(uint_fast8_t flag, int argc, char * const argv[], uint_fast8_t *repeatable); /* command.c */ -command_ret_t _do_help (cmd_tbl_t *cmd_start, int cmd_items, cmd_tbl_t * cmdtp, int - flag, int argc, char * const argv[]); +command_ret_t _do_help (cmd_tbl_t *cmd_start, int cmd_items, cmd_tbl_t * cmdtp, uint_fast8_t flag, int argc, char * const argv[]); cmd_tbl_t *find_cmd(const char *cmd); cmd_tbl_t *find_cmd_tbl (const char *cmd, cmd_tbl_t *table, int table_len); @@ -106,21 +105,19 @@ int cmd_process_error(cmd_tbl_t *cmdtp, int err); * * All commands use a common argument format: * - * void function (cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]); + * void function (cmd_tbl_t *cmdtp, uint_fast8_t flag, int argc, char * const argv[]); */ #ifdef CONFIG_CMD_BOOTD -extern command_ret_t do_bootd(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]); +extern command_ret_t do_bootd(cmd_tbl_t *cmdtp, uint_fast8_t flag, int argc, char * const argv[]); #endif #ifdef CONFIG_CMD_BOOTM -extern command_ret_t do_bootm(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]); +extern command_ret_t do_bootm(cmd_tbl_t *cmdtp, uint_fast8_t flag, int argc, char * const argv[]); extern int bootm_maybe_autostart(cmd_tbl_t *cmdtp, const char *cmd); #else -static inline int bootm_maybe_autostart(cmd_tbl_t *cmdtp, const char *cmd) +static inline int bootm_maybe_autostart(cmd_tbl_t *cmdtp UNUSED, const char *cmd UNUSED) { - (void) cmdtp; (void) cmd; - return 0; } #endif @@ -128,13 +125,19 @@ static inline int bootm_maybe_autostart(cmd_tbl_t *cmdtp, const char *cmd) extern int common_diskboot(cmd_tbl_t *cmdtp, const char *intf, int argc, char *const argv[]); -extern command_ret_t do_reset(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]); +extern command_ret_t do_reset(cmd_tbl_t *cmdtp, uint_fast8_t flag, int argc, char * const argv[]); /* * Command Flags: */ -#define CMD_FLAG_REPEAT 0x0001 /* repeat last command */ -#define CMD_FLAG_BOOTD 0x0002 /* command is from bootd */ +#define CMD_FLAG_REPEAT 0x01 /* repeat last command */ +#define CMD_FLAG_BOOTD 0x02 /* command is from bootd */ + +/* + * Flags for command table: + */ +#define CTBL_REPEAT 0x01 /* command is repeatable */ +#define CTBL_SUBCMD 0x02 /* command has subcommands */ #ifdef CONFIG_AUTO_COMPLETE # define _CMD_COMPLETE(x) x, @@ -157,7 +160,7 @@ extern command_ret_t do_reset(cmd_tbl_t *cmdtp, int flag, int argc, char * const CMD_TBL_ITEM_COMPLETE(_name, _maxargs, _rep, _cmd, \ _usage, _help, NULL) -typedef command_ret_t (*do_cmd_t)(cmd_tbl_t *, int, int, char * const []); +typedef command_ret_t (*do_cmd_t)(cmd_tbl_t *, uint_fast8_t, int, char * const []); extern cmd_tbl_t cmd_tbl[]; diff --git a/include/common.h b/include/common.h index e22b7a1..1064bf3 100644 --- a/include/common.h +++ b/include/common.h @@ -12,6 +12,9 @@ #define GCC_VERSION (__GNUC__*10000 + __GNUC_MINOR__*100 + __GNUC_PATCHLEVEL__) +#define USED __attribute__((used)) +#define UNUSED __attribute__((unused)) + #ifdef __AVR__ #include #include -- 2.39.2