adi_v5_dapdirect: fix connect under reset

Deassert the reset only if connect under reset is not required;
otherwise, assert the reset.
This fix aligns the behavior of connect under reset in dapdirect
with the behavior in jtag and swd.

Change-Id: I937ef4320b44e51ef6cb0e349e12348dbfbe4abb
Signed-off-by: Antonio Borneo <borneo.antonio@gmail.com>
Reviewed-on: http://openocd.zylin.com/5415
Tested-by: jenkins
This commit is contained in:
Antonio Borneo 2020-01-23 15:18:33 +01:00
parent 066aa24e85
commit beb610555a
1 changed files with 10 additions and 1 deletions

View File

@ -179,9 +179,18 @@ static int dapdirect_swd_select(struct command_context *ctx)
static int dapdirect_init(struct command_context *ctx)
{
enum reset_types jtag_reset_config = jtag_get_reset_config();
LOG_DEBUG("dapdirect_init()");
adapter_deassert_reset();
if (jtag_reset_config & RESET_CNCT_UNDER_SRST) {
if (jtag_reset_config & RESET_SRST_NO_GATING)
adapter_assert_reset();
else
LOG_WARNING("\'srst_nogate\' reset_config option is required");
} else
adapter_deassert_reset();
return ERROR_OK;
}