diff options
author | Bas Vermeulen <bas@daedalean.ai> | 2017-11-21 17:12:24 +0100 |
---|---|---|
committer | Spencer Oliver <spen@spen-soft.co.uk> | 2017-12-06 21:07:10 +0000 |
commit | 06aebfacda1f60052f6ea0f3d09936184e1bfab8 (patch) | |
tree | faabb2155164f789d7a19f8ef71e5ed9d3d7df60 | |
parent | 5d6bf8704ce7ed9a7e471e601ab91061c39f88c6 (diff) | |
download | riscv-openocd-06aebfacda1f60052f6ea0f3d09936184e1bfab8.zip riscv-openocd-06aebfacda1f60052f6ea0f3d09936184e1bfab8.tar.gz riscv-openocd-06aebfacda1f60052f6ea0f3d09936184e1bfab8.tar.bz2 |
Only call cmsis_dap_cmd_DAP_SWD_Configure when swd_mode is enabled
The CMSIS-DAP used by NXP's LS1012ARDB board only supports JTAG,
and not SWD. Calling cmsis_dap_cmd_DAP_SWD_Configure returns with an
error (and doesn't actually do anything in the debugger).
Wrap the call to cmsis_dap_cmd_DAP_SWD_Configure in a check for
swd_mode, to make sure initialisation doesn't fail needlessly.
Change-Id: Id7e568cb6e36886bd7c5b3699d198a77a51c28c9
Signed-off-by: Bas Vermeulen <bas@daedalean.ai>
Reviewed-on: http://openocd.zylin.com/4294
Tested-by: jenkins
Reviewed-by: Tomas Vanek <vanekt@fbl.cz>
Reviewed-by: Matthias Welwarsky <matthias@welwarsky.de>
-rw-r--r-- | src/jtag/drivers/cmsis_dap_usb.c | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/src/jtag/drivers/cmsis_dap_usb.c b/src/jtag/drivers/cmsis_dap_usb.c index 19c3b19..345c1fd 100644 --- a/src/jtag/drivers/cmsis_dap_usb.c +++ b/src/jtag/drivers/cmsis_dap_usb.c @@ -958,11 +958,14 @@ static int cmsis_dap_init(void) retval = cmsis_dap_cmd_DAP_TFER_Configure(0, 64, 0); if (retval != ERROR_OK) return ERROR_FAIL; - /* Data Phase (bit 2) must be set to 1 if sticky overrun - * detection is enabled */ - retval = cmsis_dap_cmd_DAP_SWD_Configure(0); /* 1 TRN, no Data Phase */ - if (retval != ERROR_OK) - return ERROR_FAIL; + + if (swd_mode) { + /* Data Phase (bit 2) must be set to 1 if sticky overrun + * detection is enabled */ + retval = cmsis_dap_cmd_DAP_SWD_Configure(0); /* 1 TRN, no Data Phase */ + if (retval != ERROR_OK) + return ERROR_FAIL; + } retval = cmsis_dap_cmd_DAP_LED(0x03); /* Both LEDs on */ if (retval != ERROR_OK) |