forked from auracaster/openocd
target, flash: utility for riscv repeat_read command
Imported non-riscv part from https://github.com/riscv-collab/riscv-openocd/pull/510 developed by Tim Newsome <tim@sifive.com> Introduce target_handle_md_output() parameter include_address. All callers set it true but riscv repeat_read command. Change-Id: I67b5aad15a33ad149d4047998b22407cb60098fd Signed-off-by: Tomas Vanek <vanekt@fbl.cz> Reviewed-on: https://review.openocd.org/c/openocd/+/9127 Tested-by: jenkins Reviewed-by: Evgeniy Naydanov <evgeniy.naydanov@syntacore.com>
This commit is contained in:
@@ -3349,7 +3349,7 @@ COMMAND_HANDLER(handle_step_command)
|
||||
|
||||
void target_handle_md_output(struct command_invocation *cmd,
|
||||
struct target *target, target_addr_t address, unsigned int size,
|
||||
unsigned int count, const uint8_t *buffer)
|
||||
unsigned int count, const uint8_t *buffer, bool include_address)
|
||||
{
|
||||
const unsigned int line_bytecnt = 32;
|
||||
unsigned int line_modulo = line_bytecnt / size;
|
||||
@@ -3378,7 +3378,7 @@ void target_handle_md_output(struct command_invocation *cmd,
|
||||
}
|
||||
|
||||
for (unsigned int i = 0; i < count; i++) {
|
||||
if (i % line_modulo == 0) {
|
||||
if (include_address && i % line_modulo == 0) {
|
||||
output_len += snprintf(output + output_len,
|
||||
sizeof(output) - output_len,
|
||||
TARGET_ADDR_FMT ": ",
|
||||
@@ -3462,7 +3462,7 @@ COMMAND_HANDLER(handle_md_command)
|
||||
struct target *target = get_current_target(CMD_CTX);
|
||||
int retval = fn(target, address, size, count, buffer);
|
||||
if (retval == ERROR_OK)
|
||||
target_handle_md_output(CMD, target, address, size, count, buffer);
|
||||
target_handle_md_output(CMD, target, address, size, count, buffer, true);
|
||||
|
||||
free(buffer);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user