aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthias Welwarsky <matthias.welwarsky@sysgo.com>2017-03-01 16:15:33 +0100
committerPaul Fertser <fercerpav@gmail.com>2017-04-02 16:08:18 +0100
commit332d66c75a89516750726f1a9d2b65a624037770 (patch)
treec494756d3ac3e623bab00f83e42cb4cc39af9660
parent2804480b097ebf64810100a1c744188ee01ce3c0 (diff)
aarch64: clear CTI halt event early at debug entry
The halt event was left pending in the CTI, better to clear it immediately after debug entry. Change-Id: I6002f862681baf98769e3c73332a7f7f0ef938c1 Signed-off-by: Matthias Welwarsky <matthias.welwarsky@sysgo.com> Reviewed-on: http://openocd.zylin.com/4030 Tested-by: jenkins Reviewed-by: Paul Fertser <fercerpav@gmail.com>
-rw-r--r--src/target/aarch64.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/target/aarch64.c b/src/target/aarch64.c
index 9977c366..e647bba1 100644
--- a/src/target/aarch64.c
+++ b/src/target/aarch64.c
@@ -923,6 +923,8 @@ static int aarch64_debug_entry(struct target *target)
if (retval == ERROR_OK)
retval = mem_ap_read_atomic_u32(armv8->debug_ap,
armv8->debug_base + CPUV8_DBG_DSCR, &dscr);
+ if (retval == ERROR_OK)
+ retval = arm_cti_ack_events(armv8->cti, CTI_TRIG(HALT));
if (retval != ERROR_OK)
return retval;