X-Git-Url: http://cloudbase.mooo.com/gitweb/z180-stamp.git/blobdiff_plain/534e1dfcb2f6cdfa1cd62913045b832f2189b7aa..7f552300815ccadd45ebb3e7f0ae72a3b2e0c4e5:/avr/command_tbl.c diff --git a/avr/command_tbl.c b/avr/command_tbl.c index 2717a37..6b53fad 100644 --- a/avr/command_tbl.c +++ b/avr/command_tbl.c @@ -5,23 +5,77 @@ #include "cmd_mem.h" -extern int do_help(cmd_tbl_t *, int, int, char * const []); -extern int do_echo(cmd_tbl_t *, int, int, char * const []); -extern int do_env_print(cmd_tbl_t *, int, int, char * const []); -extern int do_env_set(cmd_tbl_t *, int, int, char * const []); -extern int do_loadf(cmd_tbl_t *, int, int, char * const []); -extern int do_go(cmd_tbl_t *, int, int, char * const []); -extern int do_restart(cmd_tbl_t *, int, int, char * const []); +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_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_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 []); + +#ifdef CONFIG_SYS_LONGHELP +const FLASH char sd_help_text[] = + "bla \t- do bla\n" + ; +#endif /* CONFIG_SYS_LONGHELP */ cmd_tbl_t cmd_tbl[] = { +CMD_TBL_ITEM( + date, 2, 1, do_date, + "get/set/reset date & time", + "[MMDDhhmm[[CC]YY][.ss]]\ndate reset\n" + " - without arguments: print date & time\n" + " - with numeric argument: set the system date & time\n" + " - with 'reset' argument: reset the RTC" +), + +#ifdef DEBUG +CMD_TBL_ITEM( + !mdr, 3, 1, do_dump_mem, + "RAM dump", + "address [count]" +), +CMD_TBL_ITEM( + !mde, 3, 1, do_dump_mem, + "EEPROM dump", + "address [count]" +), +CMD_TBL_ITEM( + !cpe, 4, 0, do_eep_cp, + "EEPROM copy", + "source target count" +), +#endif +CMD_TBL_ITEM( + mstep, 2, 1, do_busreq_pulse, + "execute one M cycle", + "[count]\n" + " - repeat count times" +), CMD_TBL_ITEM( echo, CONFIG_SYS_MAXARGS, 1, do_echo, "echo args to console", "[args..]\n" " - echo args to console; \\c suppresses newline" ), +CMD_TBL_ITEM( + sleep , 2, 1, do_sleep, + "delay execution for some time", + "N[m][s]\n" + " - delay execution for decimal N (milli) seconds" +), CMD_TBL_ITEM_COMPLETE( run, CONFIG_SYS_MAXARGS, 1, do_run, "run commands in an environment variable", @@ -47,14 +101,24 @@ CMD_TBL_ITEM_COMPLETE( " - delete environment variable 'name'", var_complete ), +CMD_TBL_ITEM( + saveenv, 1, 0, do_env_save, + "save environment variables to persistent storage", + "" +), +CMD_TBL_ITEM( + defaultenv, 1, 0, do_env_default, + "set all environment variables to their default values", + "" +), CMD_TBL_ITEM( - loadf, 1, 0, do_loadf, + loadf, 1, 0, do_loadf, "load srec_cat prepared image from controller flash", "" ), CMD_TBL_ITEM( - go, 2, 0, do_go, + go, 2, 0, do_go, "start application at address 'addr'", "addr\n" " - start application at address 'addr'" @@ -62,15 +126,38 @@ CMD_TBL_ITEM( // " passing 'arg' as arguments" ), CMD_TBL_ITEM( - reset, 1, 0, do_reset, + reset, 1, 0, do_reset, "Keep CPU in RESET state", "" ), CMD_TBL_ITEM( - restart, 1, 0, do_restart, + restart, 1, 1, do_restart, "Perform RESET of the CPU", "" ), +CMD_TBL_ITEM( + connect, 1, 1, do_console, + "Connect to CPU console i/o", + "" +), + +CMD_TBL_ITEM( + pin, CONFIG_SYS_MAXARGS, 1, do_gpio, + "Set or query pin state", + "[-s] []\n" + " - print cofiguration and state or frequency of pins\n" + " print all pins, if argument is omitted\n" + "pin h[igh]|l[ow]\n" + " - config pins as output and set to level high or low\n" + "pin ts|i[n]|p[ullup]\n" + " - config pins as input/tristate or input with pullup\n" + "pin value[K|M][Hz]\n" + " - output a clock on pins\n" + " value is system clock divider or frequency, if 'Hz' is appended\n" + " divider is rounded down to next possible value (depends on pin)\n" + "\n" + " is a comma separated list of numbers or ranges, i.e. \"0,9,3-6\"\n" +), CMD_TBL_ITEM( md, 3, 1, do_mem_md, @@ -144,6 +231,13 @@ CMD_TBL_ITEM( ), #endif /* CONFIG_MX_CYCLIC */ +CMD_TBL_ITEM( + sd, CONFIG_SYS_MAXARGS, 1, do_sd, + "SD/MMC card handling commands", + " args ...\n" + "sd help\n" + " - print help on subcommands" +), CMD_TBL_ITEM( help, CONFIG_SYS_MAXARGS, 1, do_help,