X-Git-Url: https://review.openocd.org/gitweb?p=openocd.git;a=blobdiff_plain;f=src%2Fjtag%2Fdrivers%2Fcmsis_dap_usb.c;h=b3b9143503bb9dc3a63e9589b24b353c587cb238;hp=38828ea0d2472a3133da7b48724637ce1c5c6808;hb=72c3464be42088dc75245cf2fcc8f5c6e6959b4b;hpb=751e2454bf076708d3e695833c4def460ab41d8b;ds=sidebyside diff --git a/src/jtag/drivers/cmsis_dap_usb.c b/src/jtag/drivers/cmsis_dap_usb.c index 38828ea0d2..b3b9143503 100644 --- a/src/jtag/drivers/cmsis_dap_usb.c +++ b/src/jtag/drivers/cmsis_dap_usb.c @@ -714,6 +714,9 @@ static int cmsis_dap_swd_switch_seq(struct adiv5_dap *dap, enum swd_special_seq unsigned int s_len; int retval; + /* First disconnect before connecting, Atmel EDBG needs it for SAMD/R/L/C */ + cmsis_dap_cmd_DAP_Disconnect(); + /* When we are reconnecting, DAP_Connect needs to be rerun, at * least on Keil ULINK-ME */ retval = cmsis_dap_cmd_DAP_Connect(seq == LINE_RESET || seq == JTAG_TO_SWD ?