diff --git a/src/target/riscv/batch.c b/src/target/riscv/batch.c index d6e8b7941..56d51a19c 100644 --- a/src/target/riscv/batch.c +++ b/src/target/riscv/batch.c @@ -49,6 +49,8 @@ void riscv_batch_run(struct riscv_batch *batch) return; } + keep_alive(); + LOG_DEBUG("running a batch of %ld scans", (long)batch->used_scans); riscv_batch_add_nop(batch); diff --git a/src/target/riscv/program.c b/src/target/riscv/program.c index 04edf6a09..efad623e4 100644 --- a/src/target/riscv/program.c +++ b/src/target/riscv/program.c @@ -41,6 +41,8 @@ int riscv_program_init(struct riscv_program *p, struct target *target) int riscv_program_exec(struct riscv_program *p, struct target *t) { + keep_alive(); + if (riscv_debug_buffer_leave(t, p) != ERROR_OK) { LOG_ERROR("unable to write program buffer exit code"); return ERROR_FAIL;