add CMD_NAME macro for command handlers
By introducing the CMD_NAME macro, this parameter may be integrated as args[-1] in command.[ch], without touching any other call sites.
This commit is contained in:
parent
5b6df55a1e
commit
a585bdf726
|
@ -728,7 +728,7 @@ COMMAND_HANDLER(handle_flash_fill_command)
|
|||
if (count == 0)
|
||||
return ERROR_OK;
|
||||
|
||||
switch (cmd[4])
|
||||
switch (CMD_NAME[4])
|
||||
{
|
||||
case 'w':
|
||||
wordsize = 4;
|
||||
|
|
|
@ -121,6 +121,12 @@ typedef struct command_context_s
|
|||
*/
|
||||
#define COMMAND_HELPER(name, extra...) __COMMAND_HANDLER(name, extra)
|
||||
|
||||
/**
|
||||
* Use this macro to access the name of the command being handled,
|
||||
* rather than accessing the variable directly. It may be moved.
|
||||
*/
|
||||
#define CMD_NAME cmd
|
||||
|
||||
|
||||
/// The type signature for commands' handler functions.
|
||||
typedef __COMMAND_HANDLER((*command_handler_t));
|
||||
|
|
|
@ -605,7 +605,7 @@ static int default_srst_asserted(int *srst_asserted)
|
|||
|
||||
COMMAND_HANDLER(handle_interface_list_command)
|
||||
{
|
||||
if (strcmp(cmd, "interface_list") == 0 && argc > 0)
|
||||
if (strcmp(CMD_NAME, "interface_list") == 0 && argc > 0)
|
||||
return ERROR_COMMAND_SYNTAX_ERROR;
|
||||
|
||||
command_print(cmd_ctx, "The following JTAG interfaces are available:");
|
||||
|
|
|
@ -424,7 +424,7 @@ COMMAND_HANDLER(arm720t_handle_cp15_command)
|
|||
|
||||
if (target->state != TARGET_HALTED)
|
||||
{
|
||||
command_print(cmd_ctx, "target must be stopped for \"%s\" command", cmd);
|
||||
command_print(cmd_ctx, "target must be stopped for \"%s\" command", CMD_NAME);
|
||||
return ERROR_OK;
|
||||
}
|
||||
|
||||
|
|
|
@ -1203,7 +1203,7 @@ COMMAND_HANDLER(arm920t_handle_cp15_command)
|
|||
|
||||
if (target->state != TARGET_HALTED)
|
||||
{
|
||||
command_print(cmd_ctx, "target must be stopped for \"%s\" command", cmd);
|
||||
command_print(cmd_ctx, "target must be stopped for \"%s\" command", CMD_NAME);
|
||||
return ERROR_OK;
|
||||
}
|
||||
|
||||
|
@ -1257,7 +1257,7 @@ COMMAND_HANDLER(arm920t_handle_cp15i_command)
|
|||
|
||||
if (target->state != TARGET_HALTED)
|
||||
{
|
||||
command_print(cmd_ctx, "target must be stopped for \"%s\" command", cmd);
|
||||
command_print(cmd_ctx, "target must be stopped for \"%s\" command", CMD_NAME);
|
||||
return ERROR_OK;
|
||||
}
|
||||
|
||||
|
|
|
@ -740,7 +740,7 @@ COMMAND_HANDLER(arm926ejs_handle_cp15_command)
|
|||
|
||||
if (target->state != TARGET_HALTED)
|
||||
{
|
||||
command_print(cmd_ctx, "target must be stopped for \"%s\" command", cmd);
|
||||
command_print(cmd_ctx, "target must be stopped for \"%s\" command", CMD_NAME);
|
||||
return ERROR_OK;
|
||||
}
|
||||
|
||||
|
|
|
@ -174,7 +174,7 @@ COMMAND_HANDLER(arm966e_handle_cp15_command)
|
|||
|
||||
if (target->state != TARGET_HALTED)
|
||||
{
|
||||
command_print(cmd_ctx, "target must be stopped for \"%s\" command", cmd);
|
||||
command_print(cmd_ctx, "target must be stopped for \"%s\" command", CMD_NAME);
|
||||
return ERROR_OK;
|
||||
}
|
||||
|
||||
|
|
|
@ -1902,7 +1902,7 @@ COMMAND_HANDLER(handle_cortex_m3_mask_interrupts_command)
|
|||
|
||||
if (target->state != TARGET_HALTED)
|
||||
{
|
||||
command_print(cmd_ctx, "target must be stopped for \"%s\" command", cmd);
|
||||
command_print(cmd_ctx, "target must be stopped for \"%s\" command", CMD_NAME);
|
||||
return ERROR_OK;
|
||||
}
|
||||
|
||||
|
|
|
@ -2046,7 +2046,7 @@ COMMAND_HANDLER(handle_wait_halt_command)
|
|||
int retval = parse_uint(args[0], &ms);
|
||||
if (ERROR_OK != retval)
|
||||
{
|
||||
command_print(cmd_ctx, "usage: %s [seconds]", cmd);
|
||||
command_print(cmd_ctx, "usage: %s [seconds]", CMD_NAME);
|
||||
return ERROR_COMMAND_SYNTAX_ERROR;
|
||||
}
|
||||
// convert seconds (given) to milliseconds (needed)
|
||||
|
@ -2256,7 +2256,7 @@ COMMAND_HANDLER(handle_md_command)
|
|||
return ERROR_COMMAND_SYNTAX_ERROR;
|
||||
|
||||
unsigned size = 0;
|
||||
switch (cmd[2]) {
|
||||
switch (CMD_NAME[2]) {
|
||||
case 'w': size = 4; break;
|
||||
case 'h': size = 2; break;
|
||||
case 'b': size = 1; break;
|
||||
|
@ -2333,7 +2333,7 @@ COMMAND_HANDLER(handle_mw_command)
|
|||
target_t *target = get_current_target(cmd_ctx);
|
||||
unsigned wordsize;
|
||||
uint8_t value_buf[4];
|
||||
switch (cmd[2])
|
||||
switch (CMD_NAME[2])
|
||||
{
|
||||
case 'w':
|
||||
wordsize = 4;
|
||||
|
|
|
@ -3127,7 +3127,7 @@ COMMAND_HANDLER(xscale_handle_mmu_command)
|
|||
|
||||
if (target->state != TARGET_HALTED)
|
||||
{
|
||||
command_print(cmd_ctx, "target must be stopped for \"%s\" command", cmd);
|
||||
command_print(cmd_ctx, "target must be stopped for \"%s\" command", CMD_NAME);
|
||||
return ERROR_OK;
|
||||
}
|
||||
|
||||
|
@ -3163,13 +3163,13 @@ COMMAND_HANDLER(xscale_handle_idcache_command)
|
|||
|
||||
if (target->state != TARGET_HALTED)
|
||||
{
|
||||
command_print(cmd_ctx, "target must be stopped for \"%s\" command", cmd);
|
||||
command_print(cmd_ctx, "target must be stopped for \"%s\" command", CMD_NAME);
|
||||
return ERROR_OK;
|
||||
}
|
||||
|
||||
if (strcmp(cmd, "icache") == 0)
|
||||
if (strcmp(CMD_NAME, "icache") == 0)
|
||||
icache = 1;
|
||||
else if (strcmp(cmd, "dcache") == 0)
|
||||
else if (strcmp(CMD_NAME, "dcache") == 0)
|
||||
dcache = 1;
|
||||
|
||||
if (argc >= 1)
|
||||
|
@ -3302,7 +3302,7 @@ COMMAND_HANDLER(xscale_handle_trace_buffer_command)
|
|||
|
||||
if (target->state != TARGET_HALTED)
|
||||
{
|
||||
command_print(cmd_ctx, "target must be stopped for \"%s\" command", cmd);
|
||||
command_print(cmd_ctx, "target must be stopped for \"%s\" command", CMD_NAME);
|
||||
return ERROR_OK;
|
||||
}
|
||||
|
||||
|
@ -3429,7 +3429,7 @@ COMMAND_HANDLER(xscale_handle_dump_trace_command)
|
|||
|
||||
if (target->state != TARGET_HALTED)
|
||||
{
|
||||
command_print(cmd_ctx, "target must be stopped for \"%s\" command", cmd);
|
||||
command_print(cmd_ctx, "target must be stopped for \"%s\" command", CMD_NAME);
|
||||
return ERROR_OK;
|
||||
}
|
||||
|
||||
|
@ -3499,7 +3499,7 @@ COMMAND_HANDLER(xscale_handle_cp15)
|
|||
|
||||
if (target->state != TARGET_HALTED)
|
||||
{
|
||||
command_print(cmd_ctx, "target must be stopped for \"%s\" command", cmd);
|
||||
command_print(cmd_ctx, "target must be stopped for \"%s\" command", CMD_NAME);
|
||||
return ERROR_OK;
|
||||
}
|
||||
uint32_t reg_no = 0;
|
||||
|
|
Loading…
Reference in New Issue