target/riscv: set_dcsr_ebreak() while target->state is still changed
Otherwise it fails. Fixes #859. Change-Id: Ib59e6d840316b881481a9b1e01f9d546e73bf932 Signed-off-by: Tim Newsome <tim@sifive.com>
This commit is contained in:
parent
e0dd44a53c
commit
ad89d570e7
|
@ -1862,9 +1862,6 @@ static int examine(struct target *target)
|
||||||
return ERROR_FAIL;
|
return ERROR_FAIL;
|
||||||
}
|
}
|
||||||
|
|
||||||
target->state = saved_tgt_state;
|
|
||||||
target->debug_reason = saved_dbg_reason;
|
|
||||||
|
|
||||||
/* Now init registers based on what we discovered. */
|
/* Now init registers based on what we discovered. */
|
||||||
if (riscv_init_registers(target) != ERROR_OK)
|
if (riscv_init_registers(target) != ERROR_OK)
|
||||||
return ERROR_FAIL;
|
return ERROR_FAIL;
|
||||||
|
@ -1872,6 +1869,9 @@ static int examine(struct target *target)
|
||||||
if (update_dcsr(target, false) != ERROR_OK)
|
if (update_dcsr(target, false) != ERROR_OK)
|
||||||
return ERROR_FAIL;
|
return ERROR_FAIL;
|
||||||
|
|
||||||
|
target->state = saved_tgt_state;
|
||||||
|
target->debug_reason = saved_dbg_reason;
|
||||||
|
|
||||||
if (!halted) {
|
if (!halted) {
|
||||||
riscv013_step_or_resume_current_hart(target, false);
|
riscv013_step_or_resume_current_hart(target, false);
|
||||||
target->state = TARGET_RUNNING;
|
target->state = TARGET_RUNNING;
|
||||||
|
|
Loading…
Reference in New Issue