Updates all command parsing of simple "enable" and "disable" arguments.
A few case in the tree use a tri-state or extended arguments, which
cannot use this simple macro.
Simlifies the xscale icache/dcache command handler logic.
}
if (CMD_ARGC == 2)
- {
- if (strcmp("enable", CMD_ARGV[1]) == 0)
- p->use_raw = 1;
- else if (strcmp("disable", CMD_ARGV[1]) == 0)
- p->use_raw = 0;
- else
- return ERROR_COMMAND_SYNTAX_ERROR;
- }
+ COMMAND_PARSE_ENABLE(CMD_ARGV[1], p->use_raw);
const char *msg = p->use_raw ? "enabled" : "disabled";
command_print(CMD_CTX, "raw access is %s", msg);
if (CMD_ARGC == 1)
{
- if (strcmp(CMD_ARGV[0], "enable") == 0)
- jtag_set_verify_capture_ir(true);
- else if (strcmp(CMD_ARGV[0], "disable") == 0)
- jtag_set_verify_capture_ir(false);
- else
- return ERROR_COMMAND_SYNTAX_ERROR;
+ bool enable;
+ COMMAND_PARSE_ENABLE(CMD_ARGV[0], enable);
+ jtag_set_verify_capture_ir(enable);
}
const char *status = jtag_will_verify_capture_ir() ? "enabled": "disabled";
if (CMD_ARGC == 1)
{
- if (strcmp(CMD_ARGV[0], "enable") == 0)
- jtag_set_verify(true);
- else if (strcmp(CMD_ARGV[0], "disable") == 0)
- jtag_set_verify(false);
- else
- return ERROR_COMMAND_SYNTAX_ERROR;
+ bool enable;
+ COMMAND_PARSE_ENABLE(CMD_ARGV[0], enable);
+ jtag_set_verify(enable);
}
const char *status = jtag_will_verify() ? "enabled": "disabled";
COMMAND_HANDLER(handle_gdb_memory_map_command)
{
if (CMD_ARGC == 1)
- {
- if (strcmp(CMD_ARGV[0], "enable") == 0)
- {
- gdb_use_memory_map = 1;
- return ERROR_OK;
- }
- else if (strcmp(CMD_ARGV[0], "disable") == 0)
- {
- gdb_use_memory_map = 0;
- return ERROR_OK;
- }
- else
- LOG_WARNING("invalid gdb_memory_map configuration directive %s", CMD_ARGV[0]);
- }
+ COMMAND_PARSE_ENABLE(CMD_ARGV[0], gdb_use_memory_map);
return ERROR_COMMAND_SYNTAX_ERROR;
}
COMMAND_HANDLER(handle_gdb_flash_program_command)
{
if (CMD_ARGC == 1)
- {
- if (strcmp(CMD_ARGV[0], "enable") == 0)
- {
- gdb_flash_program = 1;
- return ERROR_OK;
- }
- else if (strcmp(CMD_ARGV[0], "disable") == 0)
- {
- gdb_flash_program = 0;
- return ERROR_OK;
- }
- else
- LOG_WARNING("invalid gdb_flash_program configuration directive: %s", CMD_ARGV[0]);
- }
+ COMMAND_PARSE_ENABLE(CMD_ARGV[0], gdb_flash_program);
return ERROR_COMMAND_SYNTAX_ERROR;
}
COMMAND_HANDLER(handle_gdb_report_data_abort_command)
{
if (CMD_ARGC == 1)
- {
- if (strcmp(CMD_ARGV[0], "enable") == 0)
- {
- gdb_report_data_abort = 1;
- return ERROR_OK;
- }
- else if (strcmp(CMD_ARGV[0], "disable") == 0)
- {
- gdb_report_data_abort = 0;
- return ERROR_OK;
- }
- else
- LOG_WARNING("invalid gdb_report_data_abort configuration directive: %s", CMD_ARGV[0]);
- }
+ COMMAND_PARSE_ENABLE(CMD_ARGV[0], gdb_report_data_abort);
return ERROR_COMMAND_SYNTAX_ERROR;
}
}
if (CMD_ARGC > 0)
- {
- if (strcmp("enable", CMD_ARGV[0]) == 0)
- {
- arm7_9->use_dbgrq = 1;
- }
- else if (strcmp("disable", CMD_ARGV[0]) == 0)
- {
- arm7_9->use_dbgrq = 0;
- }
- else
- {
- command_print(CMD_CTX, "usage: arm7_9 dbgrq <enable | disable>");
- }
- }
+ COMMAND_PARSE_ENABLE(CMD_ARGV[0],arm7_9->use_dbgrq);
command_print(CMD_CTX, "use of EmbeddedICE dbgrq instead of breakpoint for target halt %s", (arm7_9->use_dbgrq) ? "enabled" : "disabled");
}
if (CMD_ARGC > 0)
- {
- if (strcmp("enable", CMD_ARGV[0]) == 0)
- {
- arm7_9->fast_memory_access = 1;
- }
- else if (strcmp("disable", CMD_ARGV[0]) == 0)
- {
- arm7_9->fast_memory_access = 0;
- }
- else
- {
- command_print(CMD_CTX, "usage: arm7_9 fast_memory_access <enable | disable>");
- }
- }
+ COMMAND_PARSE_ENABLE(CMD_ARGV[0], arm7_9->fast_memory_access);
command_print(CMD_CTX, "fast memory access is %s", (arm7_9->fast_memory_access) ? "enabled" : "disabled");
}
if (CMD_ARGC > 0)
- {
- if (strcmp("enable", CMD_ARGV[0]) == 0)
- {
- arm7_9->dcc_downloads = 1;
- }
- else if (strcmp("disable", CMD_ARGV[0]) == 0)
- {
- arm7_9->dcc_downloads = 0;
- }
- else
- {
- command_print(CMD_CTX, "usage: arm7_9 dcc_downloads <enable | disable>");
- }
- }
+ COMMAND_PARSE_ENABLE(CMD_ARGV[0], arm7_9->dcc_downloads);
command_print(CMD_CTX, "dcc downloads are %s", (arm7_9->dcc_downloads) ? "enabled" : "disabled");
return ERROR_INVALID_ARGUMENTS;
}
- if (strcmp(CMD_ARGV[2], "enable") == 0)
+ bool etmv1_cycle_accurate;
+ COMMAND_PARSE_ENABLE(CMD_ARGV[2], etmv1_cycle_accurate);
+ if (etmv1_cycle_accurate)
tracemode |= ETMV1_CYCLE_ACCURATE;
- else if (strcmp(CMD_ARGV[2], "disable") == 0)
- tracemode |= 0;
- else
- {
- command_print(CMD_CTX, "invalid option '%s'", CMD_ARGV[2]);
- return ERROR_INVALID_ARGUMENTS;
- }
- if (strcmp(CMD_ARGV[3], "enable") == 0)
+ bool etmv1_branch_output;
+ COMMAND_PARSE_ENABLE(CMD_ARGV[3], etmv1_branch_output);
tracemode |= ETMV1_BRANCH_OUTPUT;
- else if (strcmp(CMD_ARGV[3], "disable") == 0)
- tracemode |= 0;
- else
- {
- command_print(CMD_CTX, "invalid option '%s'", CMD_ARGV[3]);
- return ERROR_INVALID_ARGUMENTS;
- }
/* IGNORED:
* - CPRT tracing (coprocessor register transfers)
if (CMD_ARGC >= 1)
{
- if (strcmp("enable", CMD_ARGV[0]) == 0)
- {
+ bool enable;
+ COMMAND_PARSE_ENABLE(CMD_ARGV[0], enable);
+ if (enable)
xscale_enable_mmu_caches(target, 1, 0, 0);
- xscale->armv4_5_mmu.mmu_enabled = 1;
- }
- else if (strcmp("disable", CMD_ARGV[0]) == 0)
- {
+ else
xscale_disable_mmu_caches(target, 1, 0, 0);
- xscale->armv4_5_mmu.mmu_enabled = 0;
- }
+ xscale->armv4_5_mmu.mmu_enabled = enable;
}
command_print(CMD_CTX, "mmu %s", (xscale->armv4_5_mmu.mmu_enabled) ? "enabled" : "disabled");
{
struct target *target = get_current_target(CMD_CTX);
struct xscale_common *xscale = target_to_xscale(target);
- int icache = 0, dcache = 0;
- int retval;
- retval = xscale_verify_pointer(CMD_CTX, xscale);
+ int retval = xscale_verify_pointer(CMD_CTX, xscale);
if (retval != ERROR_OK)
return retval;
return ERROR_OK;
}
- if (strcmp(CMD_NAME, "icache") == 0)
- icache = 1;
- else if (strcmp(CMD_NAME, "dcache") == 0)
- dcache = 1;
+ bool icache;
+ COMMAND_PARSE_BOOL(CMD_NAME, icache, "icache", "dcache");
if (CMD_ARGC >= 1)
{
- if (strcmp("enable", CMD_ARGV[0]) == 0)
- {
- xscale_enable_mmu_caches(target, 0, dcache, icache);
-
- if (icache)
- xscale->armv4_5_mmu.armv4_5_cache.i_cache_enabled = 1;
- else if (dcache)
- xscale->armv4_5_mmu.armv4_5_cache.d_u_cache_enabled = 1;
- }
- else if (strcmp("disable", CMD_ARGV[0]) == 0)
- {
- xscale_disable_mmu_caches(target, 0, dcache, icache);
-
- if (icache)
- xscale->armv4_5_mmu.armv4_5_cache.i_cache_enabled = 0;
- else if (dcache)
- xscale->armv4_5_mmu.armv4_5_cache.d_u_cache_enabled = 0;
- }
+ bool enable;
+ COMMAND_PARSE_ENABLE(CMD_ARGV[0], enable);
+ if (enable)
+ xscale_enable_mmu_caches(target, 1, 0, 0);
+ else
+ xscale_disable_mmu_caches(target, 1, 0, 0);
+ if (icache)
+ xscale->armv4_5_mmu.armv4_5_cache.i_cache_enabled = enable;
+ else
+ xscale->armv4_5_mmu.armv4_5_cache.d_u_cache_enabled = enable;
}
- if (icache)
- command_print(CMD_CTX, "icache %s", (xscale->armv4_5_mmu.armv4_5_cache.i_cache_enabled) ? "enabled" : "disabled");
-
- if (dcache)
- command_print(CMD_CTX, "dcache %s", (xscale->armv4_5_mmu.armv4_5_cache.d_u_cache_enabled) ? "enabled" : "disabled");
+ bool enabled = icache ?
+ xscale->armv4_5_mmu.armv4_5_cache.i_cache_enabled :
+ xscale->armv4_5_mmu.armv4_5_cache.d_u_cache_enabled;
+ const char *msg = enabled ? "enabled" : "disabled";
+ command_print(CMD_CTX, "%s %s", CMD_NAME, msg);
return ERROR_OK;
}