[prev in list] [next in list] [prev in thread] [next in thread] 

List:       openocd-development
Subject:    [OpenOCD-devel] [PATCH]: ed71a9e aarch64: cleanup context restore
From:       gerrit () openocd ! org (gerrit)
Date:       2016-10-20 18:08:28
Message-ID: 20161020180829.001D31980BD1 () mail ! openocd ! org
[Download RAW message or body]

This is an automated email from Gerrit.

Matthias Welwarsky (matthias@welwarsky.de) just uploaded a new patch set to Gerrit, \
which you can find at http://openocd.zylin.com/3822

-- gerrit

commit ed71a9ec00fcff9c262aad82ced1fcad95e64641
Author: Matthias Welwarsky <matthias.welwarsky@sysgo.com>
Date:   Thu Oct 20 15:39:30 2016 +0200

    aarch64: cleanup context restore
    
    Remove register cache invalidation and target state changes that are
    handled appropriately in other functions.
    
    Change-Id: Ic903f41ddc267f4b8765ea022bd4d6da1017e21f
    Signed-off-by: Matthias Welwarsky <matthias.welwarsky@sysgo.com>

diff --git a/src/target/aarch64.c b/src/target/aarch64.c
index d7d557d..1220004 100644
--- a/src/target/aarch64.c
+++ b/src/target/aarch64.c
@@ -504,25 +504,16 @@ static int aarch64_internal_restore(struct target *target, int \
current,  LOG_ERROR("How do I resume into Jazelle state??");
 			return ERROR_FAIL;
 	}
-	LOG_DEBUG("resume pc = 0x%16" PRIx64, resume_pc);
+	LOG_DEBUG("resume pc = 0x%016" PRIx64, resume_pc);
 	buf_set_u64(arm->pc->value, 0, 64, resume_pc);
 	arm->pc->dirty = 1;
 	arm->pc->valid = 1;
-	armv8_dpm_modeswitch(&armv8->dpm, ARM_MODE_ANY);
 
 	/* called it now before restoring context because it uses cpu
 	 * register r0 for restoring system control register */
 	retval = aarch64_restore_system_control_reg(target);
-	if (retval != ERROR_OK)
-		return retval;
-	retval = aarch64_restore_context(target, handle_breakpoints);
-	if (retval != ERROR_OK)
-		return retval;
-	target->debug_reason = DBG_REASON_NOTHALTED;
-	target->state = TARGET_RUNNING;
-
-	/* registers are now invalid */
-	register_cache_invalidate(arm->core_cache);
+	if (retval == ERROR_OK)
+		retval = aarch64_restore_context(target, handle_breakpoints);
 
 	return retval;
 }

-- 

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most 
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
_______________________________________________
OpenOCD-devel mailing list
OpenOCD-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/openocd-devel


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic