breakpoints: add rwp all command
This patch adds the "all" option to the rwp command. It removes all watchpoints, much like rbp all removes all breakpoints. Change-Id: Id58dd103085e558f17afa4a287888cf085566ca9 Signed-off-by: Marek Vrbka <marek.vrbka@codasip.com> Reviewed-on: https://review.openocd.org/c/openocd/+/7907 Tested-by: jenkins Reviewed-by: Antonio Borneo <borneo.antonio@gmail.com>
This commit is contained in:
committed by
Antonio Borneo
parent
2c8c2cb6b1
commit
eba5d21193
@@ -4136,17 +4136,28 @@ COMMAND_HANDLER(handle_wp_command)
|
||||
|
||||
COMMAND_HANDLER(handle_rwp_command)
|
||||
{
|
||||
int retval;
|
||||
|
||||
if (CMD_ARGC != 1)
|
||||
return ERROR_COMMAND_SYNTAX_ERROR;
|
||||
|
||||
target_addr_t addr;
|
||||
COMMAND_PARSE_ADDRESS(CMD_ARGV[0], addr);
|
||||
|
||||
struct target *target = get_current_target(CMD_CTX);
|
||||
int retval = watchpoint_remove(target, addr);
|
||||
if (!strcmp(CMD_ARGV[0], "all")) {
|
||||
retval = watchpoint_remove_all(target);
|
||||
|
||||
if (retval != ERROR_OK)
|
||||
command_print(CMD, "Error during removal of watchpoint at address " TARGET_ADDR_FMT, addr);
|
||||
if (retval != ERROR_OK) {
|
||||
command_print(CMD, "Error encountered during removal of all watchpoints.");
|
||||
command_print(CMD, "Some watchpoints may have remained set.");
|
||||
}
|
||||
} else {
|
||||
target_addr_t addr;
|
||||
COMMAND_PARSE_ADDRESS(CMD_ARGV[0], addr);
|
||||
|
||||
retval = watchpoint_remove(target, addr);
|
||||
|
||||
if (retval != ERROR_OK)
|
||||
command_print(CMD, "Error during removal of watchpoint at address " TARGET_ADDR_FMT, addr);
|
||||
}
|
||||
|
||||
return retval;
|
||||
}
|
||||
@@ -7065,7 +7076,7 @@ static const struct command_registration target_exec_command_handlers[] = {
|
||||
.handler = handle_rwp_command,
|
||||
.mode = COMMAND_EXEC,
|
||||
.help = "remove watchpoint",
|
||||
.usage = "address",
|
||||
.usage = "'all' | address",
|
||||
},
|
||||
{
|
||||
.name = "load_image",
|
||||
|
||||
Reference in New Issue
Block a user