forked from auracaster/openocd
target/aarch64: fix last_run_control_op on SMP
aarch64_resume() set the last_run_control_op on the current core only and left last_run_control_op as is on the rest of the SMP group. It caused semihosting call on other cores to stop because last_run_control_op sticked on ARMV8_RUNCONTROL_STEP Set last_run_control_op to ARMV8_RUNCONTROL_RESUME on all cores in the SMP group. Change-Id: I55a97bb1f7ea25bfc5937c3cc846532cdf390064 Signed-off-by: Tomas Vanek <vanekt@fbl.cz> Reviewed-on: https://review.openocd.org/c/openocd/+/9247 Reviewed-by: Antonio Borneo <borneo.antonio@gmail.com> Tested-by: jenkins
This commit is contained in:
committed by
Antonio Borneo
parent
c2fdc38d32
commit
0eecf4d21d
@@ -955,6 +955,8 @@ static int aarch64_resume(struct target *target, bool current,
|
||||
}
|
||||
|
||||
if (curr->state != TARGET_RUNNING) {
|
||||
struct armv8_common *curr_armv8 = target_to_armv8(curr);
|
||||
curr_armv8->last_run_control_op = ARMV8_RUNCONTROL_RESUME;
|
||||
curr->state = TARGET_RUNNING;
|
||||
curr->debug_reason = DBG_REASON_NOTHALTED;
|
||||
target_call_event_callbacks(curr, TARGET_EVENT_RESUMED);
|
||||
|
||||
Reference in New Issue
Block a user