Merge pull request #1011 from en-sc/en-sc/wa-halt-groups
target/riscv: set `state` and `debug_reason` in `riscv_halt_go_all_harts()`
This commit is contained in:
commit
5d4fa0001e
|
@ -1874,6 +1874,12 @@ static int riscv_halt_go_all_harts(struct target *target)
|
||||||
return ERROR_FAIL;
|
return ERROR_FAIL;
|
||||||
if (state == RISCV_STATE_HALTED) {
|
if (state == RISCV_STATE_HALTED) {
|
||||||
LOG_TARGET_DEBUG(target, "Hart is already halted.");
|
LOG_TARGET_DEBUG(target, "Hart is already halted.");
|
||||||
|
if (target->state != TARGET_HALTED) {
|
||||||
|
target->state = TARGET_HALTED;
|
||||||
|
enum riscv_halt_reason halt_reason = riscv_halt_reason(target);
|
||||||
|
if (set_debug_reason(target, halt_reason) != ERROR_OK)
|
||||||
|
return ERROR_FAIL;
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
if (r->halt_go(target) != ERROR_OK)
|
if (r->halt_go(target) != ERROR_OK)
|
||||||
return ERROR_FAIL;
|
return ERROR_FAIL;
|
||||||
|
|
Loading…
Reference in New Issue