jlink: Added hardware version number for JLink firmware on LPC-Link2
[openocd.git] / src / jtag / drivers / jlink.c
index 40d91cc43264c442c6ccbcc96194f54e0575a4ca..63580f7f6eca2d92b6352b47b22b61c720a867a1 100644 (file)
@@ -195,17 +195,9 @@ static const char * const jlink_cap_str[] = {
 #define JLINK_HW_TYPE_FLASHER                  2
 #define JLINK_HW_TYPE_JLINK_PRO                        3
 #define JLINK_HW_TYPE_JLINK_LITE_ADI   5
-#define JLINK_HW_TYPE_MAX                              6
-
-static const char * const jlink_hw_type_str[] = {
-       "J-Link",
-       "J-Trace",
-       "Flasher",
-       "J-Link Pro",
-       "Unknown",
-       "J-Link Lite-ADI",
-};
+#define JLINK_HW_TYPE_LPCLINK2                 18
 
+/* Interface selection */
 #define JLINK_TIF_JTAG         0
 #define JLINK_TIF_SWD          1
 #define JLINK_SWD_DIR_IN       0
@@ -590,12 +582,6 @@ static int jlink_init(void)
                jlink_tap_execute();
        }
 
-       if (swd_mode)
-               jlink_swd_switch_seq(NULL, JTAG_TO_SWD);
-       else
-               jlink_swd_switch_seq(NULL, SWD_TO_JTAG);
-       jlink_swd_run_queue(NULL);
-
        return ERROR_OK;
 }
 
@@ -970,10 +956,29 @@ static int jlink_get_version_info(void)
 
                LOG_INFO("J-Link hw version %i", (int)jlink_hw_version);
 
-               if (jlink_hw_type >= JLINK_HW_TYPE_MAX)
-                       LOG_INFO("J-Link hw type unknown 0x%" PRIx32, jlink_hw_type);
-               else
-                       LOG_INFO("J-Link hw type %s", jlink_hw_type_str[jlink_hw_type]);
+               switch (jlink_hw_type) {
+                       case JLINK_HW_TYPE_JLINK:
+                               LOG_INFO("J-Link hw type J-Link");
+                               break;
+                       case JLINK_HW_TYPE_JTRACE:
+                               LOG_INFO("J-Link hw type J-Trace");
+                               break;
+                       case JLINK_HW_TYPE_FLASHER:
+                               LOG_INFO("J-Link hw type Flasher");
+                               break;
+                       case JLINK_HW_TYPE_JLINK_PRO:
+                               LOG_INFO("J-Link hw type J-Link Pro");
+                               break;
+                       case JLINK_HW_TYPE_JLINK_LITE_ADI:
+                               LOG_INFO("J-Link hw type J-Link Lite-ADI");
+                               break;
+                       case JLINK_HW_TYPE_LPCLINK2:
+                               LOG_INFO("J-Link hw type J-Link on LPC-Link2");
+                               break;
+                       default:
+                               LOG_INFO("J-Link hw type unknown 0x%" PRIx32, jlink_hw_type);
+                               break;
+               }
        }
 
        if (jlink_caps & (1 << EMU_CAP_GET_MAX_BLOCK_SIZE)) {
@@ -1664,9 +1669,9 @@ static int jlink_swd_run_queue(struct adiv5_dap *dap)
                int ack = buf_get_u32(usb_in_buffer, pending_scan_results_buffer[i].first, 3);
 
                if (ack != SWD_ACK_OK) {
-                       LOG_ERROR("SWD ack not OK: %d %s", ack,
+                       LOG_DEBUG("SWD ack not OK: %d %s", ack,
                                  ack == SWD_ACK_WAIT ? "WAIT" : ack == SWD_ACK_FAULT ? "FAULT" : "JUNK");
-                       queued_retval = ack;
+                       queued_retval = ack == SWD_ACK_WAIT ? ERROR_WAIT : ERROR_FAIL;
                        goto skip;
                } else if (pending_scan_results_buffer[i].length) {
                        uint32_t data = buf_get_u32(usb_in_buffer, 3 + pending_scan_results_buffer[i].first, 32);

Linking to existing account procedure

If you already have an account and want to add another login method you MUST first sign in with your existing account and then change URL to read https://review.openocd.org/login/?link to get to this page again but this time it'll work for linking. Thank you.

SSH host keys fingerprints

1024 SHA256:YKx8b7u5ZWdcbp7/4AeXNaqElP49m6QrwfXaqQGJAOk gerrit-code-review@openocd.zylin.com (DSA)
384 SHA256:jHIbSQa4REvwCFG4cq5LBlBLxmxSqelQPem/EXIrxjk gerrit-code-review@openocd.org (ECDSA)
521 SHA256:UAOPYkU9Fjtcao0Ul/Rrlnj/OsQvt+pgdYSZ4jOYdgs gerrit-code-review@openocd.org (ECDSA)
256 SHA256:A13M5QlnozFOvTllybRZH6vm7iSt0XLxbA48yfc2yfY gerrit-code-review@openocd.org (ECDSA)
256 SHA256:spYMBqEYoAOtK7yZBrcwE8ZpYt6b68Cfh9yEVetvbXg gerrit-code-review@openocd.org (ED25519)
+--[ED25519 256]--+
|=..              |
|+o..   .         |
|*.o   . .        |
|+B . . .         |
|Bo. = o S        |
|Oo.+ + =         |
|oB=.* = . o      |
| =+=.+   + E     |
|. .=o   . o      |
+----[SHA256]-----+
2048 SHA256:0Onrb7/PHjpo6iVZ7xQX2riKN83FJ3KGU0TvI0TaFG4 gerrit-code-review@openocd.zylin.com (RSA)