From 7743e0fb4390d09c315ce9c6edbb2c3ba6b8c2d9 Mon Sep 17 00:00:00 2001 From: Simon Qian Date: Sat, 17 Mar 2012 15:21:59 +0800 Subject: topic: add reset functions for SWD Add swd_init_reset and swd_add_reset. Add adapter_assert_reset and adapter_deassert_reset, and call them instead of JTAG reset functions. Change-Id: Ib2551c6fbb45513e0ae0dc331cfe3ee3f922298a Signed-off-by: Simon Qian Reviewed-on: http://openocd.zylin.com/526 Tested-by: jenkins Reviewed-by: Freddie Chopin Reviewed-by: Spencer Oliver --- src/target/arm_adi_v5.c | 6 ++---- src/target/cortex_m.c | 8 +++----- 2 files changed, 5 insertions(+), 9 deletions(-) (limited to 'src/target') diff --git a/src/target/arm_adi_v5.c b/src/target/arm_adi_v5.c index 1ef7c1a0..9a98f61d 100644 --- a/src/target/arm_adi_v5.c +++ b/src/target/arm_adi_v5.c @@ -69,6 +69,7 @@ #include "config.h" #endif +#include "jtag/interface.h" #include "arm.h" #include "arm_adi_v5.h" #include @@ -977,10 +978,7 @@ int dap_syssec_kinetis_mdmap(struct adiv5_dap *dap) /* we need to assert reset */ if (jtag_reset_config & RESET_HAS_SRST) { /* default to asserting srst */ - if (jtag_reset_config & RESET_SRST_PULLS_TRST) - jtag_add_reset(1, 1); - else - jtag_add_reset(0, 1); + adapter_assert_reset(); } else { LOG_DEBUG("SRST not configured"); dap_ap_select(dap, 0); diff --git a/src/target/cortex_m.c b/src/target/cortex_m.c index 488899cb..09a51b7b 100644 --- a/src/target/cortex_m.c +++ b/src/target/cortex_m.c @@ -31,6 +31,7 @@ #include "config.h" #endif +#include "jtag/interface.h" #include "breakpoints.h" #include "cortex_m.h" #include "target_request.h" @@ -995,10 +996,7 @@ static int cortex_m3_assert_reset(struct target *target) if (jtag_reset_config & RESET_HAS_SRST) { /* default to asserting srst */ - if (jtag_reset_config & RESET_SRST_PULLS_TRST) - jtag_add_reset(1, 1); - else - jtag_add_reset(0, 1); + adapter_assert_reset(); } else { /* Use a standard Cortex-M3 software reset mechanism. * We default to using VECRESET as it is supported on all current cores. @@ -1051,7 +1049,7 @@ static int cortex_m3_deassert_reset(struct target *target) target_state_name(target)); /* deassert reset lines */ - jtag_add_reset(0, 0); + adapter_deassert_reset(); return ERROR_OK; } -- cgit v1.2.3-18-g5258