Remove misleading typedef and redundant suffix.
static void jlink_tap_append_scan(int length, uint8_t *buffer, scan_command_t *command);
/* Jlink lowlevel functions */
static void jlink_tap_append_scan(int length, uint8_t *buffer, scan_command_t *command);
/* Jlink lowlevel functions */
-typedef struct jlink_jtag
-{
struct usb_dev_handle* usb_handle;
struct usb_dev_handle* usb_handle;
-static jlink_jtag_t *jlink_usb_open(void);
-static void jlink_usb_close(jlink_jtag_t *jlink_jtag);
-static int jlink_usb_message(jlink_jtag_t *jlink_jtag, int out_length, int in_length);
-static int jlink_usb_write(jlink_jtag_t *jlink_jtag, int out_length);
-static int jlink_usb_read(jlink_jtag_t *jlink_jtag, int expected_size);
-static int jlink_usb_read_emu_result(jlink_jtag_t *jlink_jtag);
+static struct jlink *jlink_usb_open(void);
+static void jlink_usb_close(struct jlink *jlink);
+static int jlink_usb_message(struct jlink *jlink, int out_length, int in_length);
+static int jlink_usb_write(struct jlink *jlink, int out_length);
+static int jlink_usb_read(struct jlink *jlink, int expected_size);
+static int jlink_usb_read_emu_result(struct jlink *jlink);
/* helper functions */
static int jlink_get_version_info(void);
/* helper functions */
static int jlink_get_version_info(void);
static enum tap_state jlink_last_state = TAP_RESET;
static enum tap_state jlink_last_state = TAP_RESET;
-static jlink_jtag_t* jlink_jtag_handle;
+static struct jlink* jlink_handle;
/***************************************************************************/
/* External interface implementation */
/***************************************************************************/
/* External interface implementation */
usb_out_buffer[1] = (speed >> 0) & 0xff;
usb_out_buffer[2] = (speed >> 8) & 0xff;
usb_out_buffer[1] = (speed >> 0) & 0xff;
usb_out_buffer[2] = (speed >> 8) & 0xff;
- result = jlink_usb_write(jlink_jtag_handle, 3);
+ result = jlink_usb_write(jlink_handle, 3);
if (result != 3)
{
LOG_ERROR("J-Link setting speed failed (%d)", result);
if (result != 3)
{
LOG_ERROR("J-Link setting speed failed (%d)", result);
- jlink_jtag_handle = jlink_usb_open();
+ jlink_handle = jlink_usb_open();
- if (jlink_jtag_handle == 0)
{
LOG_ERROR("Cannot find jlink Interface! Please check connection and permissions.");
return ERROR_JTAG_INIT_FAILED;
{
LOG_ERROR("Cannot find jlink Interface! Please check connection and permissions.");
return ERROR_JTAG_INIT_FAILED;
static int jlink_quit(void)
{
static int jlink_quit(void)
{
- jlink_usb_close(jlink_jtag_handle);
+ jlink_usb_close(jlink_handle);
DEBUG_JTAG_IO("0x%02x", command);
usb_out_buffer[0] = command;
DEBUG_JTAG_IO("0x%02x", command);
usb_out_buffer[0] = command;
- result = jlink_usb_write(jlink_jtag_handle, 1);
+ result = jlink_usb_write(jlink_handle, 1);
jlink_simple_command(EMU_CMD_GET_STATE);
jlink_simple_command(EMU_CMD_GET_STATE);
- result = jlink_usb_read(jlink_jtag_handle, 8);
+ result = jlink_usb_read(jlink_handle, 8);
if (result != 8)
{
LOG_ERROR("J-Link command EMU_CMD_GET_STATE failed (%d)\n", result);
if (result != 8)
{
LOG_ERROR("J-Link command EMU_CMD_GET_STATE failed (%d)\n", result);
/* query hardware version */
jlink_simple_command(EMU_CMD_VERSION);
/* query hardware version */
jlink_simple_command(EMU_CMD_VERSION);
- result = jlink_usb_read(jlink_jtag_handle, 2);
+ result = jlink_usb_read(jlink_handle, 2);
if (2 != result)
{
LOG_ERROR("J-Link command EMU_CMD_VERSION failed (%d)\n", result);
if (2 != result)
{
LOG_ERROR("J-Link command EMU_CMD_VERSION failed (%d)\n", result);
len = JLINK_IN_BUFFER_SIZE;
}
len = JLINK_IN_BUFFER_SIZE;
}
- result = jlink_usb_read(jlink_jtag_handle, len);
+ result = jlink_usb_read(jlink_handle, len);
if (result != len)
{
LOG_ERROR("J-Link command EMU_CMD_VERSION failed (%d)\n", result);
if (result != len)
{
LOG_ERROR("J-Link command EMU_CMD_VERSION failed (%d)\n", result);
/* query hardware capabilities */
jlink_simple_command(EMU_CMD_GET_CAPS);
/* query hardware capabilities */
jlink_simple_command(EMU_CMD_GET_CAPS);
- result = jlink_usb_read(jlink_jtag_handle, 4);
+ result = jlink_usb_read(jlink_handle, 4);
if (4 != result)
{
LOG_ERROR("J-Link command EMU_CMD_GET_CAPS failed (%d)\n", result);
if (4 != result)
{
LOG_ERROR("J-Link command EMU_CMD_GET_CAPS failed (%d)\n", result);
/* query hardware version */
jlink_simple_command(EMU_CMD_GET_HW_VERSION);
/* query hardware version */
jlink_simple_command(EMU_CMD_GET_HW_VERSION);
- result = jlink_usb_read(jlink_jtag_handle, 4);
+ result = jlink_usb_read(jlink_handle, 4);
if (4 != result)
{
LOG_ERROR("J-Link command EMU_CMD_GET_HW_VERSION failed (%d)\n", result);
if (4 != result)
{
LOG_ERROR("J-Link command EMU_CMD_GET_HW_VERSION failed (%d)\n", result);
/* query hardware maximum memory block */
jlink_simple_command(EMU_CMD_GET_MAX_MEM_BLOCK);
/* query hardware maximum memory block */
jlink_simple_command(EMU_CMD_GET_MAX_MEM_BLOCK);
- result = jlink_usb_read(jlink_jtag_handle, 4);
+ result = jlink_usb_read(jlink_handle, 4);
if (4 != result)
{
LOG_ERROR("J-Link command EMU_CMD_GET_MAX_MEM_BLOCK failed (%d)\n", result);
if (4 != result)
{
LOG_ERROR("J-Link command EMU_CMD_GET_MAX_MEM_BLOCK failed (%d)\n", result);
jlink_last_state = jtag_debug_state_machine(tms_buffer, tdi_buffer,
tap_length, jlink_last_state);
jlink_last_state = jtag_debug_state_machine(tms_buffer, tdi_buffer,
tap_length, jlink_last_state);
- result = jlink_usb_message(jlink_jtag_handle, 4 + 2 * byte_length, byte_length);
+ result = jlink_usb_message(jlink_handle, 4 + 2 * byte_length, byte_length);
if (result != byte_length)
{
LOG_ERROR("jlink_tap_execute, wrong result %d (expected %d)", result, byte_length);
if (result != byte_length)
{
LOG_ERROR("jlink_tap_execute, wrong result %d (expected %d)", result, byte_length);
busses = usb_get_busses();
busses = usb_get_busses();
- /* find jlink_jtag device in usb bus */
+ /* find jlink device in usb bus */
for (bus = busses; bus; bus = bus->next)
{
for (bus = busses; bus; bus = bus->next)
{
/*****************************************************************************/
/* JLink USB low-level functions */
/*****************************************************************************/
/* JLink USB low-level functions */
-static jlink_jtag_t* jlink_usb_open()
+static struct jlink* jlink_usb_open()
{
struct usb_device *dev;
{
struct usb_device *dev;
- result = (jlink_jtag_t*) malloc(sizeof(jlink_jtag_t));
+ result = (struct jlink*) malloc(sizeof(struct jlink));
-static void jlink_usb_close(jlink_jtag_t *jlink_jtag)
+static void jlink_usb_close(struct jlink *jlink)
- usb_close(jlink_jtag->usb_handle);
- free(jlink_jtag);
+ usb_close(jlink->usb_handle);
+ free(jlink);
}
/* Send a message and receive the reply. */
}
/* Send a message and receive the reply. */
-static int jlink_usb_message(jlink_jtag_t *jlink_jtag, int out_length, int in_length)
+static int jlink_usb_message(struct jlink *jlink, int out_length, int in_length)
- result = jlink_usb_write(jlink_jtag, out_length);
+ result = jlink_usb_write(jlink, out_length);
if (result != out_length)
{
LOG_ERROR("usb_bulk_write failed (requested=%d, result=%d)",
if (result != out_length)
{
LOG_ERROR("usb_bulk_write failed (requested=%d, result=%d)",
return ERROR_JTAG_DEVICE_ERROR;
}
return ERROR_JTAG_DEVICE_ERROR;
}
- result = jlink_usb_read(jlink_jtag, in_length);
+ result = jlink_usb_read(jlink, in_length);
if ((result != in_length) && (result != (in_length + 1)))
{
LOG_ERROR("usb_bulk_read failed (requested=%d, result=%d)",
if ((result != in_length) && (result != (in_length + 1)))
{
LOG_ERROR("usb_bulk_read failed (requested=%d, result=%d)",
if (result == in_length)
{
/* Must read the result from the EMU too */
if (result == in_length)
{
/* Must read the result from the EMU too */
- result2 = jlink_usb_read_emu_result(jlink_jtag);
+ result2 = jlink_usb_read_emu_result(jlink);
if (1 != result2)
{
LOG_ERROR("jlink_usb_read_emu_result retried requested = 1, result=%d, in_length=%i", result2,in_length);
/* Try again once, should only happen if (in_length%64 == 0) */
if (1 != result2)
{
LOG_ERROR("jlink_usb_read_emu_result retried requested = 1, result=%d, in_length=%i", result2,in_length);
/* Try again once, should only happen if (in_length%64 == 0) */
- result2 = jlink_usb_read_emu_result(jlink_jtag);
+ result2 = jlink_usb_read_emu_result(jlink);
if (1 != result2)
{
LOG_ERROR("jlink_usb_read_emu_result failed "
if (1 != result2)
{
LOG_ERROR("jlink_usb_read_emu_result failed "
}
/* Write data from out_buffer to USB. */
}
/* Write data from out_buffer to USB. */
-static int jlink_usb_write(jlink_jtag_t *jlink_jtag, int out_length)
+static int jlink_usb_write(struct jlink *jlink, int out_length)
{
int result;
if (out_length > JLINK_OUT_BUFFER_SIZE)
{
{
int result;
if (out_length > JLINK_OUT_BUFFER_SIZE)
{
- LOG_ERROR("jlink_jtag_write illegal out_length=%d (max=%d)", out_length, JLINK_OUT_BUFFER_SIZE);
+ LOG_ERROR("jlink_write illegal out_length=%d (max=%d)", out_length, JLINK_OUT_BUFFER_SIZE);
- result = usb_bulk_write_ex(jlink_jtag->usb_handle, jlink_write_ep,
+ result = usb_bulk_write_ex(jlink->usb_handle, jlink_write_ep,
(char *)usb_out_buffer, out_length, JLINK_USB_TIMEOUT);
DEBUG_JTAG_IO("jlink_usb_write, out_length = %d, result = %d", out_length, result);
(char *)usb_out_buffer, out_length, JLINK_USB_TIMEOUT);
DEBUG_JTAG_IO("jlink_usb_write, out_length = %d, result = %d", out_length, result);
}
/* Read data from USB into in_buffer. */
}
/* Read data from USB into in_buffer. */
-static int jlink_usb_read(jlink_jtag_t *jlink_jtag, int expected_size)
+static int jlink_usb_read(struct jlink *jlink, int expected_size)
- int result = usb_bulk_read_ex(jlink_jtag->usb_handle, jlink_read_ep,
+ int result = usb_bulk_read_ex(jlink->usb_handle, jlink_read_ep,
(char *)usb_in_buffer, expected_size, JLINK_USB_TIMEOUT);
DEBUG_JTAG_IO("jlink_usb_read, result = %d", result);
(char *)usb_in_buffer, expected_size, JLINK_USB_TIMEOUT);
DEBUG_JTAG_IO("jlink_usb_read, result = %d", result);
}
/* Read the result from the previous EMU cmd into result_buffer. */
}
/* Read the result from the previous EMU cmd into result_buffer. */
-static int jlink_usb_read_emu_result(jlink_jtag_t *jlink_jtag)
+static int jlink_usb_read_emu_result(struct jlink *jlink)
- int result = usb_bulk_read_ex(jlink_jtag->usb_handle, jlink_read_ep,
+ int result = usb_bulk_read_ex(jlink->usb_handle, jlink_read_ep,
(char *)usb_emu_result_buffer, 1 /* JLINK_EMU_RESULT_BUFFER_SIZE */,
JLINK_USB_TIMEOUT);
(char *)usb_emu_result_buffer, 1 /* JLINK_EMU_RESULT_BUFFER_SIZE */,
JLINK_USB_TIMEOUT);
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)