streamline and document helptext mode displays
Most commands are usable only at runtime; so don't bother saying that, it's noise. Moreover, tokens like EXEC are cryptic. Be more clear: highlight only the commands which may (also) be used during the config stage, thus matching the docs more closely. There are - Configuration commands (per documentation) - And also some commands that valid at *any* time. Update the docs to note that "help" now shows this mode info. This also highlighted a few mistakes in command configuration, mostly commands listed as "valid at any time" which shouldn't have been. This just fixes ones I noted when sanity testing. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>__archive__
parent
9d167d62f2
commit
b3bf1d12b2
|
@ -1630,9 +1630,14 @@ supported.
|
||||||
When the OpenOCD server process starts up, it enters a
|
When the OpenOCD server process starts up, it enters a
|
||||||
@emph{configuration stage} which is the only time that
|
@emph{configuration stage} which is the only time that
|
||||||
certain commands, @emph{configuration commands}, may be issued.
|
certain commands, @emph{configuration commands}, may be issued.
|
||||||
|
Normally, configuration commands are only available
|
||||||
|
inside startup scripts.
|
||||||
|
|
||||||
In this manual, the definition of a configuration command is
|
In this manual, the definition of a configuration command is
|
||||||
presented as a @emph{Config Command}, not as a @emph{Command}
|
presented as a @emph{Config Command}, not as a @emph{Command}
|
||||||
which may be issued interactively.
|
which may be issued interactively.
|
||||||
|
The runtime @command{help} command also highlights configuration
|
||||||
|
commands, and those which may be issued at any time.
|
||||||
|
|
||||||
Those configuration commands include declaration of TAPs,
|
Those configuration commands include declaration of TAPs,
|
||||||
flash banks,
|
flash banks,
|
||||||
|
@ -5093,13 +5098,15 @@ port is 5555.
|
||||||
Exits the current telnet session.
|
Exits the current telnet session.
|
||||||
@end deffn
|
@end deffn
|
||||||
|
|
||||||
@c note EXTREMELY ANNOYING word wrap at column 75
|
|
||||||
@c even when lines are e.g. 100+ columns ...
|
|
||||||
@c coded in startup.tcl
|
|
||||||
@deffn {Command} help [string]
|
@deffn {Command} help [string]
|
||||||
With no parameters, prints help text for all commands.
|
With no parameters, prints help text for all commands.
|
||||||
Otherwise, prints each helptext containing @var{string}.
|
Otherwise, prints each helptext containing @var{string}.
|
||||||
Not every command provides helptext.
|
Not every command provides helptext.
|
||||||
|
|
||||||
|
Configuration commands, and commands valid at any time, are
|
||||||
|
explicitly noted in parenthesis.
|
||||||
|
In most cases, no such restriction is listed; this indicates commands
|
||||||
|
which are only available after the configuration stage has completed.
|
||||||
@end deffn
|
@end deffn
|
||||||
|
|
||||||
@deffn Command sleep msec [@option{busy}]
|
@deffn Command sleep msec [@option{busy}]
|
||||||
|
|
|
@ -1182,7 +1182,7 @@ static const struct command_registration stellaris_exec_command_handlers[] = {
|
||||||
static const struct command_registration stellaris_command_handlers[] = {
|
static const struct command_registration stellaris_command_handlers[] = {
|
||||||
{
|
{
|
||||||
.name = "stellaris",
|
.name = "stellaris",
|
||||||
.mode = COMMAND_ANY,
|
.mode = COMMAND_EXEC,
|
||||||
.help = "Stellaris flash command group",
|
.help = "Stellaris flash command group",
|
||||||
.chain = stellaris_exec_command_handlers,
|
.chain = stellaris_exec_command_handlers,
|
||||||
},
|
},
|
||||||
|
|
|
@ -914,7 +914,7 @@ static COMMAND_HELPER(command_help_show, struct command *c, unsigned n,
|
||||||
bool is_match = (strstr(cmd_name, match) != NULL) ||
|
bool is_match = (strstr(cmd_name, match) != NULL) ||
|
||||||
((c->usage != NULL) && (strstr(c->usage, match) != NULL)) ||
|
((c->usage != NULL) && (strstr(c->usage, match) != NULL)) ||
|
||||||
((c->help != NULL) && (strstr(c->help, match) != NULL));
|
((c->help != NULL) && (strstr(c->help, match) != NULL));
|
||||||
|
|
||||||
if (is_match)
|
if (is_match)
|
||||||
{
|
{
|
||||||
command_help_show_indent(n);
|
command_help_show_indent(n);
|
||||||
|
@ -934,15 +934,27 @@ static COMMAND_HELPER(command_help_show, struct command *c, unsigned n,
|
||||||
|
|
||||||
if (is_match && show_help)
|
if (is_match && show_help)
|
||||||
{
|
{
|
||||||
const char *stage_msg;
|
char *msg;
|
||||||
switch (c->mode) {
|
|
||||||
case COMMAND_CONFIG: stage_msg = "CONFIG"; break;
|
/* Normal commands are runtime-only; highlight exceptions */
|
||||||
case COMMAND_EXEC: stage_msg = "EXEC"; break;
|
if (c->mode != COMMAND_EXEC) {
|
||||||
case COMMAND_ANY: stage_msg = "CONFIG or EXEC"; break;
|
const char *stage_msg = "";
|
||||||
default: stage_msg = "***UNKNOWN***"; break;
|
|
||||||
}
|
switch (c->mode) {
|
||||||
char *msg = alloc_printf("%s%sValid Modes: %s",
|
case COMMAND_CONFIG:
|
||||||
c->help ? : "", c->help ? " " : "", stage_msg);
|
stage_msg = " (configuration command)";
|
||||||
|
break;
|
||||||
|
case COMMAND_ANY:
|
||||||
|
stage_msg = " (command valid any time)";
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
stage_msg = " (?mode error?)";
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
msg = alloc_printf("%s%s", c->help ? : "", stage_msg);
|
||||||
|
} else
|
||||||
|
msg = alloc_printf("%s", c->help ? : "");
|
||||||
|
|
||||||
if (NULL != msg)
|
if (NULL != msg)
|
||||||
{
|
{
|
||||||
command_help_show_wrap(msg, n + 3, n + 3);
|
command_help_show_wrap(msg, n + 3, n + 3);
|
||||||
|
|
|
@ -2272,6 +2272,7 @@ static int gdb_target_start(struct target *target, uint16_t port)
|
||||||
return ERROR_OK;
|
return ERROR_OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* FIXME static */
|
||||||
int gdb_target_add_one(struct target *target)
|
int gdb_target_add_one(struct target *target)
|
||||||
{
|
{
|
||||||
if (gdb_port == 0 && server_use_pipes == 0)
|
if (gdb_port == 0 && server_use_pipes == 0)
|
||||||
|
@ -2420,7 +2421,7 @@ static const struct command_registration gdb_command_handlers[] = {
|
||||||
{
|
{
|
||||||
.name = "gdb_port",
|
.name = "gdb_port",
|
||||||
.handler = &handle_gdb_port_command,
|
.handler = &handle_gdb_port_command,
|
||||||
.mode = COMMAND_ANY,
|
.mode = COMMAND_CONFIG,
|
||||||
.help = "daemon configuration command gdb_port",
|
.help = "daemon configuration command gdb_port",
|
||||||
.usage = "<port>",
|
.usage = "<port>",
|
||||||
},
|
},
|
||||||
|
|
|
@ -834,7 +834,7 @@ static const struct command_registration armv7m_exec_command_handlers[] = {
|
||||||
const struct command_registration armv7m_command_handlers[] = {
|
const struct command_registration armv7m_command_handlers[] = {
|
||||||
{
|
{
|
||||||
.name = "dap",
|
.name = "dap",
|
||||||
.mode = COMMAND_ANY,
|
.mode = COMMAND_EXEC,
|
||||||
.help = "Cortex DAP command group",
|
.help = "Cortex DAP command group",
|
||||||
.chain = armv7m_exec_command_handlers,
|
.chain = armv7m_exec_command_handlers,
|
||||||
},
|
},
|
||||||
|
|
|
@ -2003,7 +2003,7 @@ static const struct command_registration cortex_m3_command_handlers[] = {
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
.name = "cortex_m3",
|
.name = "cortex_m3",
|
||||||
.mode = COMMAND_ANY,
|
.mode = COMMAND_EXEC,
|
||||||
.help = "Cortex-M3 command group",
|
.help = "Cortex-M3 command group",
|
||||||
.chain = cortex_m3_exec_command_handlers,
|
.chain = cortex_m3_exec_command_handlers,
|
||||||
},
|
},
|
||||||
|
|
|
@ -4866,7 +4866,7 @@ static const struct command_registration target_exec_command_handlers[] = {
|
||||||
{
|
{
|
||||||
.name = "fast_load",
|
.name = "fast_load",
|
||||||
.handler = &handle_fast_load_command,
|
.handler = &handle_fast_load_command,
|
||||||
.mode = COMMAND_ANY,
|
.mode = COMMAND_EXEC,
|
||||||
.help = "loads active fast load image to current target "
|
.help = "loads active fast load image to current target "
|
||||||
"- mainly for profiling purposes",
|
"- mainly for profiling purposes",
|
||||||
},
|
},
|
||||||
|
|
|
@ -177,7 +177,7 @@ static const struct command_registration trace_exec_command_handlers[] = {
|
||||||
static const struct command_registration trace_command_handlers[] = {
|
static const struct command_registration trace_command_handlers[] = {
|
||||||
{
|
{
|
||||||
.name = "trace",
|
.name = "trace",
|
||||||
.mode = COMMAND_ANY,
|
.mode = COMMAND_EXEC,
|
||||||
.help = "trace command group",
|
.help = "trace command group",
|
||||||
.chain = trace_exec_command_handlers,
|
.chain = trace_exec_command_handlers,
|
||||||
},
|
},
|
||||||
|
|
Loading…
Reference in New Issue