jtag: remove useless declarations
[openocd.git] / src / jtag / vsllink.c
index 8e0ef66688f88eb2bc89c2085a339be525c1767f..b00846733aca245488e26e08a6bab47fd0ea0724 100644 (file)
 #define VSLLINK_MODE_NORMAL                    0
 #define VSLLINK_MODE_DMA                       1
 
-static u16 vsllink_usb_vid;
-static u16 vsllink_usb_pid;
-static u8 vsllink_usb_bulkout;
-static u8 vsllink_usb_bulkin;
-static u8 vsllink_usb_interface;
-static u8 vsllink_mode = VSLLINK_MODE_NORMAL;
+static uint16_t vsllink_usb_vid;
+static uint16_t vsllink_usb_pid;
+static uint8_t vsllink_usb_bulkout;
+static uint8_t vsllink_usb_bulkin;
+static uint8_t vsllink_usb_interface;
+static uint8_t vsllink_mode = VSLLINK_MODE_NORMAL;
 static int VSLLINK_USB_TIMEOUT = 10000;
 
 static int VSLLINK_BufferSize = 1024;
@@ -50,8 +50,8 @@ static int VSLLINK_BufferSize = 1024;
 /* Global USB buffers */
 static int vsllink_usb_out_buffer_idx;
 static int vsllink_usb_in_want_length;
-static u8* vsllink_usb_in_buffer = NULL;
-static u8* vsllink_usb_out_buffer = NULL;
+static uint8_t* vsllink_usb_in_buffer = NULL;
+static uint8_t* vsllink_usb_out_buffer = NULL;
 
 /* Constants for VSLLink command */
 #define VSLLINK_CMD_CONN                       0x80
@@ -94,7 +94,7 @@ static u8* vsllink_usb_out_buffer = NULL;
  *
  * SD->SD and SI->SI have to be caught in interface specific code
  */
-static u8 VSLLINK_tap_move[6][6] =
+static uint8_t VSLLINK_tap_move[6][6] =
 {
 /*       TLR   RTI   SD    PD    SI    PI             */
        {0xff, 0x7f, 0x2f, 0x0a, 0x37, 0x16},   /* TLR */
@@ -158,7 +158,7 @@ static insert_insignificant_operation_t VSLLINK_TAP_MOVE_INSERT_INSIGNIFICANT[6]
        {0,             0,}},   /* PI  */
 };
 
-static u8 VSLLINK_BIT_MSK[8] =
+static uint8_t VSLLINK_BIT_MSK[8] =
 {
        0x00, 0x01, 0x03, 0x07, 0x0f, 0x1f, 0x3f, 0x7f
 };
@@ -168,7 +168,7 @@ typedef struct
        int offset;
        int length; /* Number of bits to read */
        scan_command_t *command; /* Corresponding scan command */
-       u8 *buffer;
+       uint8_t *buffer;
 } pending_scan_result_t;
 
 #define MAX_PENDING_SCAN_RESULTS 256
@@ -176,23 +176,6 @@ typedef struct
 static int pending_scan_results_length;
 static pending_scan_result_t pending_scan_results_buffer[MAX_PENDING_SCAN_RESULTS];
 
-/* External interface functions */
-static int vsllink_execute_queue(void);
-static int vsllink_speed(int speed);
-static int vsllink_khz(int khz, int *jtag_speed);
-static int vsllink_speed_div(int jtag_speed, int *khz);
-static int vsllink_register_commands(struct command_context_s *cmd_ctx);
-static int vsllink_init(void);
-static int vsllink_quit(void);
-
-/* CLI command handler functions */
-static int vsllink_handle_usb_vid_command(struct command_context_s *cmd_ctx, char *cmd, char **args, int argc);
-static int vsllink_handle_usb_pid_command(struct command_context_s *cmd_ctx, char *cmd, char **args, int argc);
-static int vsllink_handle_usb_bulkin_command(struct command_context_s *cmd_ctx, char *cmd, char **args, int argc);
-static int vsllink_handle_usb_bulkout_command(struct command_context_s *cmd_ctx, char *cmd, char **args, int argc);
-static int vsllink_handle_usb_interface_command(struct command_context_s *cmd_ctx, char *cmd, char **args, int argc);
-static int vsllink_handle_mode_command(struct command_context_s *cmd_ctx, char *cmd, char **args, int argc);
-
 /* Queue command functions */
 static void vsllink_end_state(tap_state_t state);
 static void vsllink_state_move_dma(void);
@@ -205,11 +188,11 @@ static void vsllink_runtest(int num_cycles);
 static void vsllink_stableclocks_dma(int num_cycles, int tms);
 static void vsllink_stableclocks_normal(int num_cycles, int tms);
 static void (*vsllink_stableclocks)(int num_cycles, int tms);
-static void vsllink_scan_dma(bool ir_scan, enum scan_type type, u8 *buffer, int scan_size, scan_command_t *command);
-static void vsllink_scan_normal(bool ir_scan, enum scan_type type, u8 *buffer, int scan_size, scan_command_t *command);
-static void (*vsllink_scan)(bool ir_scan, enum scan_type type, u8 *buffer, int scan_size, scan_command_t *command);
+static void vsllink_scan_dma(bool ir_scan, enum scan_type type, uint8_t *buffer, int scan_size, scan_command_t *command);
+static void vsllink_scan_normal(bool ir_scan, enum scan_type type, uint8_t *buffer, int scan_size, scan_command_t *command);
+static void (*vsllink_scan)(bool ir_scan, enum scan_type type, uint8_t *buffer, int scan_size, scan_command_t *command);
 static void vsllink_reset(int trst, int srst);
-static void vsllink_simple_command(u8 command);
+static void vsllink_simple_command(uint8_t command);
 static int vsllink_connect(void);
 static int vsllink_disconnect(void);
 
@@ -224,8 +207,8 @@ static int (*vsllink_tap_execute)(void);
 static void vsllink_tap_ensure_space_dma(int scans, int length);
 static void vsllink_tap_ensure_space_normal(int scans, int length);
 static void (*vsllink_tap_ensure_space)(int scans, int length);
-static void vsllink_tap_append_scan_dma(int length, u8 *buffer, scan_command_t *command);
-static void vsllink_tap_append_scan_normal(int length, u8 *buffer, scan_command_t *command, int offset);
+static void vsllink_tap_append_scan_dma(int length, uint8_t *buffer, scan_command_t *command);
+static void vsllink_tap_append_scan_normal(int length, uint8_t *buffer, scan_command_t *command, int offset);
 
 /* VSLLink lowlevel functions */
 typedef struct vsllink_jtag
@@ -240,36 +223,21 @@ static int vsllink_usb_write(vsllink_jtag_t *vsllink_jtag, int out_length);
 static int vsllink_usb_read(vsllink_jtag_t *vsllink_jtag);
 
 #if defined _DEBUG_USB_COMMS_ || defined _DEBUG_JTAG_IO_
-static void vsllink_debug_buffer(u8 *buffer, int length);
+static void vsllink_debug_buffer(uint8_t *buffer, int length);
 #endif
 
 static int vsllink_tms_data_len = 0;
-static u8* vsllink_tms_cmd_pos;
+static uint8_t* vsllink_tms_cmd_pos;
 
 static int tap_length = 0;
 static int tap_buffer_size = 0;
-static u8 *tms_buffer = NULL;
-static u8 *tdi_buffer = NULL;
-static u8 *tdo_buffer = NULL;
+static uint8_t *tms_buffer = NULL;
+static uint8_t *tdi_buffer = NULL;
+static uint8_t *tdo_buffer = NULL;
 static int last_tms;
 
 static vsllink_jtag_t* vsllink_jtag_handle = NULL;
 
-/***************************************************************************/
-/* External interface implementation */
-
-jtag_interface_t vsllink_interface =
-{
-       .name = "vsllink",
-       .execute_queue = vsllink_execute_queue,
-       .speed = vsllink_speed,
-       .khz = vsllink_khz,
-       .speed_div = vsllink_speed_div,
-       .register_commands = vsllink_register_commands,
-       .init = vsllink_init,
-       .quit = vsllink_quit
-};
-
 static void reset_command_pointer(void)
 {
        if (vsllink_mode == VSLLINK_MODE_NORMAL)
@@ -288,7 +256,7 @@ static int vsllink_execute_queue(void)
        jtag_command_t *cmd = jtag_command_queue;
        int scan_size;
        enum scan_type type;
-       u8 *buffer;
+       uint8_t *buffer;
 
        DEBUG_JTAG_IO("--------------------------------- vsllink -------------------------------------");
 
@@ -298,7 +266,7 @@ static int vsllink_execute_queue(void)
                switch (cmd->type)
                {
                        case JTAG_RUNTEST:
-                               DEBUG_JTAG_IO( "runtest %i cycles, end in %s", cmd->cmd.runtest->num_cycles, \
+                               DEBUG_JTAG_IO("runtest %i cycles, end in %s", cmd->cmd.runtest->num_cycles, \
                                        tap_state_name(cmd->cmd.runtest->end_state));
 
                                vsllink_end_state(cmd->cmd.runtest->end_state);
@@ -362,7 +330,7 @@ static int vsllink_execute_queue(void)
 
                        case JTAG_STABLECLOCKS:
                                DEBUG_JTAG_IO("add %d clocks", cmd->cmd.stableclocks->num_cycles);
-                               switch(tap_get_state())
+                               switch (tap_get_state())
                                {
                                case TAP_RESET:
                                        // tms should be '1' to stay in TAP_RESET mode
@@ -377,8 +345,8 @@ static int vsllink_execute_queue(void)
                                        scan_size = 0;
                                        break;                  /* above stable states are OK */
                                default:
-                                        LOG_ERROR( "jtag_add_clocks() was called with TAP in non-stable state \"%s\"",
-                                                        tap_state_name(tap_get_state()) );
+                                        LOG_ERROR("jtag_add_clocks() was called with TAP in non-stable state \"%s\"",
+                                                        tap_state_name(tap_get_state()));
                                         exit(-1);
                                }
                                vsllink_stableclocks(cmd->cmd.stableclocks->num_cycles, scan_size);
@@ -491,9 +459,9 @@ static int vsllink_init(void)
                        if (vsllink_mode == VSLLINK_MODE_DMA)
                        {
                                tap_buffer_size = (VSLLINK_BufferSize - 3) / 2;
-                               tms_buffer = (u8*)malloc(tap_buffer_size);
-                               tdi_buffer = (u8*)malloc(tap_buffer_size);
-                               tdo_buffer = (u8*)malloc(tap_buffer_size);
+                               tms_buffer = (uint8_t*)malloc(tap_buffer_size);
+                               tdi_buffer = (uint8_t*)malloc(tap_buffer_size);
+                               tdo_buffer = (uint8_t*)malloc(tap_buffer_size);
                                if ((tms_buffer == NULL) || (tdi_buffer == NULL) || (tdo_buffer == NULL))
                                {
                                        LOG_ERROR("Not enough memory");
@@ -626,8 +594,8 @@ static int vsllink_connect(void)
 // length of VSLLINK_CMDJTAGSEQ_TMSBYTE has been set, no need to set it here.
 static void vsllink_append_tms(void)
 {
-       u8 tms_scan = VSLLINK_TAP_MOVE(tap_get_state(), tap_get_end_state());
-       u16 tms2;
+       uint8_t tms_scan = VSLLINK_TAP_MOVE(tap_get_state(), tap_get_end_state());
+       uint16_t tms2;
        insert_insignificant_operation_t *insert = \
                &VSLLINK_TAP_MOVE_INSERT_INSIGNIFICANT[tap_move_ndx(tap_get_state())][tap_move_ndx(tap_get_end_state())];
 
@@ -691,7 +659,7 @@ static void vsllink_state_move_dma(void)
        int i, insert_length = (tap_length % 8) ? (8 - (tap_length % 8)) : 0;
        insert_insignificant_operation_t *insert = \
                &VSLLINK_TAP_MOVE_INSERT_INSIGNIFICANT[tap_move_ndx(tap_get_state())][tap_move_ndx(tap_get_end_state())];
-       u8 tms_scan = VSLLINK_TAP_MOVE(tap_get_state(), tap_get_end_state());
+       uint8_t tms_scan = VSLLINK_TAP_MOVE(tap_get_state(), tap_get_end_state());
 
        if (tap_get_state() == TAP_RESET)
        {
@@ -955,7 +923,7 @@ static void vsllink_path_move_dma(int num_states, tap_state_t *path)
 static void vsllink_stableclocks_normal(int num_cycles, int tms)
 {
        int tms_len;
-       u16 tms_append_byte;
+       uint16_t tms_append_byte;
 
        if (vsllink_tms_data_len > 0)
        {
@@ -965,7 +933,7 @@ static void vsllink_stableclocks_normal(int num_cycles, int tms)
                if (tms > 0)
                {
                        // append '1' for tms
-                       tms_append_byte = (u16)((((1 << num_cycles) - 1) << vsllink_tms_data_len) & 0xFFFF);
+                       tms_append_byte = (uint16_t)((((1 << num_cycles) - 1) << vsllink_tms_data_len) & 0xFFFF);
                }
                else
                {
@@ -980,14 +948,14 @@ static void vsllink_stableclocks_normal(int num_cycles, int tms)
                                // just add to vsllink_tms_data_len
                                // same result if tun through
                                //vsllink_tms_data_len += num_cycles;
-                               vsllink_usb_out_buffer[vsllink_usb_out_buffer_idx] |= (u8)(tms_append_byte & 0xFF);
+                               vsllink_usb_out_buffer[vsllink_usb_out_buffer_idx] |= (uint8_t)(tms_append_byte & 0xFF);
                        }
                        else if (tms_len == 8)
                        {
                                // end last tms shift command
                                // just reduce it, and append last tms byte
                                (*vsllink_tms_cmd_pos)--;
-                               vsllink_usb_out_buffer[vsllink_usb_out_buffer_idx++] |= (u8)(tms_append_byte & 0xFF);
+                               vsllink_usb_out_buffer[vsllink_usb_out_buffer_idx++] |= (uint8_t)(tms_append_byte & 0xFF);
                        }
                        else if (tms_len < 16)
                        {
@@ -997,8 +965,8 @@ static void vsllink_stableclocks_normal(int num_cycles, int tms)
                                        // there is enought tms length in the current tms shift command
                                        // increase the tms byte length by 1 and set the last byte to 0
                                        (*vsllink_tms_cmd_pos)++;
-                                       vsllink_usb_out_buffer[vsllink_usb_out_buffer_idx++] |= (u8)(tms_append_byte & 0xFF);
-                                       vsllink_usb_out_buffer[vsllink_usb_out_buffer_idx] = (u8)(tms_append_byte >> 8);
+                                       vsllink_usb_out_buffer[vsllink_usb_out_buffer_idx++] |= (uint8_t)(tms_append_byte & 0xFF);
+                                       vsllink_usb_out_buffer[vsllink_usb_out_buffer_idx] = (uint8_t)(tms_append_byte >> 8);
                                }
                                else
                                {
@@ -1008,19 +976,19 @@ static void vsllink_stableclocks_normal(int num_cycles, int tms)
                                        // first decrease byte length of last tms shift command
                                        (*vsllink_tms_cmd_pos)--;
                                        // append last tms byte and move the command pointer to the next empty position
-                                       vsllink_usb_out_buffer[vsllink_usb_out_buffer_idx++] |= (u8)(tms_append_byte & 0xFF);
+                                       vsllink_usb_out_buffer[vsllink_usb_out_buffer_idx++] |= (uint8_t)(tms_append_byte & 0xFF);
                                        // add new command(3 bytes)
                                        vsllink_tap_ensure_space(0, 3);
                                        vsllink_tms_cmd_pos = &vsllink_usb_out_buffer[vsllink_usb_out_buffer_idx];
                                        vsllink_usb_out_buffer[vsllink_usb_out_buffer_idx++] = VSLLINK_CMDJTAGSEQ_TMSBYTE | 1;
-                                       vsllink_usb_out_buffer[vsllink_usb_out_buffer_idx] = (u8)(tms_append_byte >> 8);
+                                       vsllink_usb_out_buffer[vsllink_usb_out_buffer_idx] = (uint8_t)(tms_append_byte >> 8);
                                }
                        }
                        else if (tms_len == 16)
                        {
                                // end last tms shift command
-                               vsllink_usb_out_buffer[vsllink_usb_out_buffer_idx++] |= (u8)(tms_append_byte & 0xFF);
-                               vsllink_usb_out_buffer[vsllink_usb_out_buffer_idx++] = (u8)(tms_append_byte >> 8);
+                               vsllink_usb_out_buffer[vsllink_usb_out_buffer_idx++] |= (uint8_t)(tms_append_byte & 0xFF);
+                               vsllink_usb_out_buffer[vsllink_usb_out_buffer_idx++] = (uint8_t)(tms_append_byte >> 8);
                        }
 
                        vsllink_tms_data_len = tms_len & 7;
@@ -1033,8 +1001,8 @@ static void vsllink_stableclocks_normal(int num_cycles, int tms)
                else
                {
                        // more shifts will be needed
-                       vsllink_usb_out_buffer[vsllink_usb_out_buffer_idx++] |= (u8)(tms_append_byte & 0xFF);
-                       vsllink_usb_out_buffer[vsllink_usb_out_buffer_idx++] = (u8)(tms_append_byte >> 8);
+                       vsllink_usb_out_buffer[vsllink_usb_out_buffer_idx++] |= (uint8_t)(tms_append_byte & 0xFF);
+                       vsllink_usb_out_buffer[vsllink_usb_out_buffer_idx++] = (uint8_t)(tms_append_byte >> 8);
 
                        num_cycles -= 16 - vsllink_tms_data_len;
                        vsllink_tms_data_len = 0;
@@ -1172,13 +1140,13 @@ static void vsllink_runtest(int num_cycles)
        }
 }
 
-static void vsllink_scan_normal(bool ir_scan, enum scan_type type, u8 *buffer, int scan_size, scan_command_t *command)
+static void vsllink_scan_normal(bool ir_scan, enum scan_type type, uint8_t *buffer, int scan_size, scan_command_t *command)
 {
        tap_state_t saved_end_state;
-       u8 bits_left, tms_tmp, tdi_len;
+       uint8_t bits_left, tms_tmp, tdi_len;
        int i;
 
-       if (0 == scan_size )
+       if (0 == scan_size)
        {
                return;
        }
@@ -1201,12 +1169,12 @@ static void vsllink_scan_normal(bool ir_scan, enum scan_type type, u8 *buffer, i
                {
                        // already in IRSHIFT or DRSHIFT state
                        // merge tms data in the last tms shift command into next scan command
-                       if(*vsllink_tms_cmd_pos < 1)
+                       if (*vsllink_tms_cmd_pos < 1)
                        {
                                LOG_ERROR("There MUST be some bugs in the driver");
                                exit(-1);
                        }
-                       else if(*vsllink_tms_cmd_pos < 2)
+                       else if (*vsllink_tms_cmd_pos < 2)
                        {
                                tms_tmp = vsllink_usb_out_buffer[vsllink_usb_out_buffer_idx];
                                vsllink_usb_out_buffer_idx--;
@@ -1288,7 +1256,7 @@ static void vsllink_scan_normal(bool ir_scan, enum scan_type type, u8 *buffer, i
 
        tap_set_state(tap_get_end_state());
 }
-static void vsllink_scan_dma(bool ir_scan, enum scan_type type, u8 *buffer, int scan_size, scan_command_t *command)
+static void vsllink_scan_dma(bool ir_scan, enum scan_type type, uint8_t *buffer, int scan_size, scan_command_t *command)
 {
        tap_state_t saved_end_state;
 
@@ -1342,7 +1310,7 @@ static void vsllink_reset(int trst, int srst)
        }
 }
 
-static void vsllink_simple_command(u8 command)
+static void vsllink_simple_command(uint8_t command)
 {
        int result;
 
@@ -1357,24 +1325,6 @@ static void vsllink_simple_command(u8 command)
        }
 }
 
-static int vsllink_register_commands(struct command_context_s *cmd_ctx)
-{
-       register_command(cmd_ctx, NULL, "vsllink_usb_vid", vsllink_handle_usb_vid_command,
-                                       COMMAND_CONFIG, NULL);
-       register_command(cmd_ctx, NULL, "vsllink_usb_pid", vsllink_handle_usb_pid_command,
-                                       COMMAND_CONFIG, NULL);
-       register_command(cmd_ctx, NULL, "vsllink_usb_bulkin", vsllink_handle_usb_bulkin_command,
-                                       COMMAND_CONFIG, NULL);
-       register_command(cmd_ctx, NULL, "vsllink_usb_bulkout", vsllink_handle_usb_bulkout_command,
-                                       COMMAND_CONFIG, NULL);
-       register_command(cmd_ctx, NULL, "vsllink_usb_interface", vsllink_handle_usb_interface_command,
-                                       COMMAND_CONFIG, NULL);
-       register_command(cmd_ctx, NULL, "vsllink_mode", vsllink_handle_mode_command,
-                                       COMMAND_CONFIG, NULL);
-
-       return ERROR_OK;
-}
-
 static int vsllink_handle_mode_command(struct command_context_s *cmd_ctx, char *cmd, char **args, int argc)
 {
        if (argc != 1) {
@@ -1407,7 +1357,8 @@ static int vsllink_handle_usb_vid_command(struct command_context_s *cmd_ctx, cha
                return ERROR_OK;
        }
 
-       return parse_u16(args[0], &vsllink_usb_vid);
+       COMMAND_PARSE_NUMBER(u16, args[0], vsllink_usb_vid);
+       return ERROR_OK;
 }
 
 static int vsllink_handle_usb_pid_command(struct command_context_s *cmd_ctx, char *cmd, char **args, int argc)
@@ -1417,7 +1368,8 @@ static int vsllink_handle_usb_pid_command(struct command_context_s *cmd_ctx, cha
                LOG_ERROR("parameter error, should be one parameter for PID");
                return ERROR_OK;
        }
-       return parse_u16(args[0], &vsllink_usb_pid);
+       COMMAND_PARSE_NUMBER(u16, args[0], vsllink_usb_pid);
+       return ERROR_OK;
 }
 
 static int vsllink_handle_usb_bulkin_command(struct command_context_s *cmd_ctx, char *cmd, char **args, int argc)
@@ -1428,11 +1380,11 @@ static int vsllink_handle_usb_bulkin_command(struct command_context_s *cmd_ctx,
                return ERROR_OK;
        }
 
-       int retval = parse_u8(args[0], &vsllink_usb_bulkin);
-       if (ERROR_OK == retval)
-               vsllink_usb_bulkin |= 0x80;
+       COMMAND_PARSE_NUMBER(u8, args[0], vsllink_usb_bulkin);
+
+       vsllink_usb_bulkin |= 0x80;
 
-       return retval;
+       return ERROR_OK;
 }
 
 static int vsllink_handle_usb_bulkout_command(struct command_context_s *cmd_ctx, char *cmd, char **args, int argc)
@@ -1443,11 +1395,11 @@ static int vsllink_handle_usb_bulkout_command(struct command_context_s *cmd_ctx,
                return ERROR_OK;
        }
 
-       int retval = parse_u8(args[0], &vsllink_usb_bulkout);
-       if (ERROR_OK == retval)
-               vsllink_usb_bulkout &= ~0x80;
+       COMMAND_PARSE_NUMBER(u8, args[0], vsllink_usb_bulkout);
+
+       vsllink_usb_bulkout &= ~0x80;
 
-       return retval;
+       return ERROR_OK;
 }
 
 static int vsllink_handle_usb_interface_command(struct command_context_s *cmd_ctx, char *cmd, char **args, int argc)
@@ -1458,7 +1410,8 @@ static int vsllink_handle_usb_interface_command(struct command_context_s *cmd_ct
                return ERROR_OK;
        }
 
-       return parse_u8(args[0], &vsllink_usb_interface);
+       COMMAND_PARSE_NUMBER(u8, args[0], vsllink_usb_interface);
+       return ERROR_OK;
 }
 
 /***************************************************************************/
@@ -1505,7 +1458,7 @@ static void vsllink_tap_append_step(int tms, int tdi)
        if (index < tap_buffer_size)
        {
                int bit_index = tap_length % 8;
-               u8 bit = 1 << bit_index;
+               uint8_t bit = 1 << bit_index;
 
                if (tms)
                {
@@ -1533,7 +1486,7 @@ static void vsllink_tap_append_step(int tms, int tdi)
        }
 }
 
-static void vsllink_tap_append_scan_normal(int length, u8 *buffer, scan_command_t *command, int offset)
+static void vsllink_tap_append_scan_normal(int length, uint8_t *buffer, scan_command_t *command, int offset)
 {
        pending_scan_result_t *pending_scan_result = &pending_scan_results_buffer[pending_scan_results_length];
        int i;
@@ -1558,7 +1511,7 @@ static void vsllink_tap_append_scan_normal(int length, u8 *buffer, scan_command_
 
        pending_scan_results_length++;
 }
-static void vsllink_tap_append_scan_dma(int length, u8 *buffer, scan_command_t *command)
+static void vsllink_tap_append_scan_dma(int length, uint8_t *buffer, scan_command_t *command)
 {
        pending_scan_result_t *pending_scan_result;
        int len_tmp, len_all, i;
@@ -1585,7 +1538,7 @@ static void vsllink_tap_append_scan_dma(int length, u8 *buffer, scan_command_t *
 
                for (i = 0; i < len_tmp; i++)
                {
-                       vsllink_tap_append_step(((len_all+i) < length-1 ? 0 : 1), (buffer[(len_all+i)/8] >> ((len_all+i)%8)) & 1);
+                       vsllink_tap_append_step(((len_all + i) < length-1 ? 0 : 1), (buffer[(len_all + i)/8] >> ((len_all + i)%8)) & 1);
                }
 
                pending_scan_results_length++;
@@ -1603,7 +1556,7 @@ static int vsllink_tap_execute_normal(void)
 
        if (vsllink_tms_data_len > 0)
        {
-               if((tap_get_state() != TAP_RESET) && (tap_get_state() != TAP_IDLE) && (tap_get_state() != TAP_IRPAUSE) && (tap_get_state() != TAP_DRPAUSE))
+               if ((tap_get_state() != TAP_RESET) && (tap_get_state() != TAP_IDLE) && (tap_get_state() != TAP_IRPAUSE) && (tap_get_state() != TAP_DRPAUSE))
                {
                        LOG_WARNING("%s is not in RESET or IDLE or PAUSR state", tap_state_name(tap_get_state()));
                }
@@ -1639,7 +1592,7 @@ static int vsllink_tap_execute_normal(void)
                        for (i = 0; i < pending_scan_results_length; i++)
                        {
                                pending_scan_result_t *pending_scan_result = &pending_scan_results_buffer[i];
-                               u8 *buffer = pending_scan_result->buffer;
+                               uint8_t *buffer = pending_scan_result->buffer;
                                int length = pending_scan_result->length;
                                int offset = pending_scan_result->offset;
                                scan_command_t *command = pending_scan_result->command;
@@ -1712,7 +1665,7 @@ static int vsllink_tap_execute_dma(void)
                        for (i = 0; i < pending_scan_results_length; i++)
                        {
                                pending_scan_result_t *pending_scan_result = &pending_scan_results_buffer[i];
-                               u8 *buffer = pending_scan_result->buffer;
+                               uint8_t *buffer = pending_scan_result->buffer;
                                int length = pending_scan_result->length;
                                int first = pending_scan_result->offset;
 
@@ -1845,7 +1798,7 @@ static int vsllink_usb_message(vsllink_jtag_t *vsllink_jtag, int out_length, int
                if (in_length > 0)
                {
                        result = vsllink_usb_read(vsllink_jtag);
-                       if (result == in_length )
+                       if (result == in_length)
                        {
                                return result;
                        }
@@ -1910,7 +1863,7 @@ static int vsllink_usb_read(vsllink_jtag_t *vsllink_jtag)
 #define BYTES_PER_LINE  16
 
 #if defined _DEBUG_USB_COMMS_ || defined _DEBUG_JTAG_IO_
-static void vsllink_debug_buffer(u8 *buffer, int length)
+static void vsllink_debug_buffer(uint8_t *buffer, int length)
 {
        char line[81];
        char s[4];
@@ -1929,3 +1882,38 @@ static void vsllink_debug_buffer(u8 *buffer, int length)
        }
 }
 #endif // _DEBUG_USB_COMMS_ || _DEBUG_JTAG_IO_
+
+static int vsllink_register_commands(struct command_context_s *cmd_ctx)
+{
+       register_command(cmd_ctx, NULL, "vsllink_usb_vid",
+                       vsllink_handle_usb_vid_command, COMMAND_CONFIG,
+                       NULL);
+       register_command(cmd_ctx, NULL, "vsllink_usb_pid",
+                       vsllink_handle_usb_pid_command, COMMAND_CONFIG,
+                       NULL);
+       register_command(cmd_ctx, NULL, "vsllink_usb_bulkin",
+                       vsllink_handle_usb_bulkin_command, COMMAND_CONFIG,
+                       NULL);
+       register_command(cmd_ctx, NULL, "vsllink_usb_bulkout",
+                       vsllink_handle_usb_bulkout_command, COMMAND_CONFIG,
+                       NULL);
+       register_command(cmd_ctx, NULL, "vsllink_usb_interface",
+                       vsllink_handle_usb_interface_command, COMMAND_CONFIG,
+                       NULL);
+       register_command(cmd_ctx, NULL, "vsllink_mode",
+                       vsllink_handle_mode_command, COMMAND_CONFIG,
+                       NULL);
+
+       return ERROR_OK;
+}
+
+jtag_interface_t vsllink_interface = {
+               .name = "vsllink",
+               .register_commands = &vsllink_register_commands,
+               .init = &vsllink_init,
+               .quit = &vsllink_quit,
+               .khz = &vsllink_khz,
+               .speed = &vsllink_speed,
+               .speed_div = &vsllink_speed_div,
+               .execute_queue = &vsllink_execute_queue,
+       };

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)