X-Git-Url: https://review.openocd.org/gitweb?p=openocd.git;a=blobdiff_plain;f=src%2Ftarget%2Farm_dap.c;fp=src%2Ftarget%2Farm_dap.c;h=9f4afae74372b2c287fa935094224a830cfc88eb;hp=84cc6c743bd14f797b2b70192977a70a5d77f8bb;hb=bfc12522395af86ba634aa8e085a8051ca6fd43c;hpb=ee3fb5a0eacb42e8e881239194485d79d128d246 diff --git a/src/target/arm_dap.c b/src/target/arm_dap.c index 84cc6c743b..9f4afae743 100644 --- a/src/target/arm_dap.c +++ b/src/target/arm_dap.c @@ -91,6 +91,7 @@ static int dap_init_all(void) { struct arm_dap_object *obj; int retval; + bool pre_connect = true; LOG_DEBUG("Initializing all DAPs ..."); @@ -123,6 +124,14 @@ static int dap_init_all(void) is_adiv6(dap) ? "ADIv6" : "ADIv5"); } + if (pre_connect && dap->ops->pre_connect_init) { + retval = dap->ops->pre_connect_init(dap); + if (retval != ERROR_OK) + return retval; + + pre_connect = false; + } + retval = dap->ops->connect(dap); if (retval != ERROR_OK) return retval;