jtag: remove useless forward declarations
Removes some more useless forward declarations from a few JTAG drivers. Moves interface and bit-bang structure defitions below their callbacks.__archive__
parent
c46c2d77e6
commit
b58239e4c0
|
@ -55,14 +55,6 @@
|
|||
static uint8_t usb_in_buffer[ARMJTAGEW_IN_BUFFER_SIZE];
|
||||
static uint8_t usb_out_buffer[ARMJTAGEW_OUT_BUFFER_SIZE];
|
||||
|
||||
/* External interface functions */
|
||||
static int armjtagew_execute_queue(void);
|
||||
static int armjtagew_speed(int speed);
|
||||
static int armjtagew_khz(int khz, int *jtag_speed);
|
||||
static int armjtagew_register_commands(struct command_context *cmd_ctx);
|
||||
static int armjtagew_init(void);
|
||||
static int armjtagew_quit(void);
|
||||
|
||||
/* Queue command functions */
|
||||
static void armjtagew_end_state(tap_state_t state);
|
||||
static void armjtagew_state_move(void);
|
||||
|
@ -105,18 +97,6 @@ static struct armjtagew* armjtagew_handle;
|
|||
/***************************************************************************/
|
||||
/* External interface implementation */
|
||||
|
||||
struct jtag_interface armjtagew_interface =
|
||||
{
|
||||
.name = "arm-jtag-ew",
|
||||
.execute_queue = armjtagew_execute_queue,
|
||||
.speed = armjtagew_speed,
|
||||
.khz = armjtagew_khz,
|
||||
.register_commands = armjtagew_register_commands,
|
||||
.init = armjtagew_init,
|
||||
.quit = armjtagew_quit
|
||||
};
|
||||
|
||||
|
||||
static int armjtagew_execute_queue(void)
|
||||
{
|
||||
struct jtag_command *cmd = jtag_command_queue;
|
||||
|
@ -529,6 +509,16 @@ static int armjtagew_register_commands(struct command_context *cmd_ctx)
|
|||
return ERROR_OK;
|
||||
}
|
||||
|
||||
struct jtag_interface armjtagew_interface = {
|
||||
.name = "arm-jtag-ew",
|
||||
.execute_queue = &armjtagew_execute_queue,
|
||||
.speed = &armjtagew_speed,
|
||||
.khz = &armjtagew_khz,
|
||||
.register_commands = &armjtagew_register_commands,
|
||||
.init = &armjtagew_init,
|
||||
.quit = &armjtagew_quit,
|
||||
};
|
||||
|
||||
/***************************************************************************/
|
||||
/* ARM-JTAG-EW tap functions */
|
||||
|
||||
|
|
|
@ -35,45 +35,6 @@ static int clock_count; /* count clocks in any stable state, only stable
|
|||
static uint32_t dummy_data;
|
||||
|
||||
|
||||
static int dummy_speed(int speed);
|
||||
static int dummy_register_commands(struct command_context *cmd_ctx);
|
||||
static int dummy_init(void);
|
||||
static int dummy_quit(void);
|
||||
static int dummy_khz(int khz, int *jtag_speed);
|
||||
static int dummy_speed_div(int speed, int *khz);
|
||||
|
||||
|
||||
/* The dummy driver is used to easily check the code path
|
||||
* where the target is unresponsive.
|
||||
*/
|
||||
struct jtag_interface dummy_interface =
|
||||
{
|
||||
.name = "dummy",
|
||||
|
||||
.execute_queue = bitbang_execute_queue,
|
||||
|
||||
.speed = dummy_speed,
|
||||
.register_commands = dummy_register_commands,
|
||||
.khz = dummy_khz,
|
||||
.speed_div = dummy_speed_div,
|
||||
|
||||
.init = dummy_init,
|
||||
.quit = dummy_quit,
|
||||
};
|
||||
|
||||
static int dummy_read(void);
|
||||
static void dummy_write(int tck, int tms, int tdi);
|
||||
static void dummy_reset(int trst, int srst);
|
||||
static void dummy_led(int on);
|
||||
|
||||
static struct bitbang_interface dummy_bitbang =
|
||||
{
|
||||
.read = dummy_read,
|
||||
.write = dummy_write,
|
||||
.reset = dummy_reset,
|
||||
.blink = dummy_led
|
||||
};
|
||||
|
||||
static int dummy_read(void)
|
||||
{
|
||||
int data = 1 & dummy_data;
|
||||
|
@ -129,6 +90,18 @@ static void dummy_reset(int trst, int srst)
|
|||
LOG_DEBUG("reset to: %s", tap_state_name(dummy_state));
|
||||
}
|
||||
|
||||
static void dummy_led(int on)
|
||||
{
|
||||
}
|
||||
|
||||
static struct bitbang_interface dummy_bitbang = {
|
||||
.read = &dummy_read,
|
||||
.write = &dummy_write,
|
||||
.reset = &dummy_reset,
|
||||
.blink = &dummy_led,
|
||||
};
|
||||
|
||||
|
||||
static int dummy_khz(int khz, int *jtag_speed)
|
||||
{
|
||||
if (khz == 0)
|
||||
|
@ -178,7 +151,19 @@ static int dummy_quit(void)
|
|||
return ERROR_OK;
|
||||
}
|
||||
|
||||
static void dummy_led(int on)
|
||||
{
|
||||
}
|
||||
/* The dummy driver is used to easily check the code path
|
||||
* where the target is unresponsive.
|
||||
*/
|
||||
struct jtag_interface dummy_interface = {
|
||||
.name = "dummy",
|
||||
|
||||
.execute_queue = &bitbang_execute_queue,
|
||||
|
||||
.speed = &dummy_speed,
|
||||
.register_commands = &dummy_register_commands,
|
||||
.khz = &dummy_khz,
|
||||
.speed_div = &dummy_speed_div,
|
||||
|
||||
.init = &dummy_init,
|
||||
.quit = &dummy_quit,
|
||||
};
|
||||
|
|
|
@ -82,15 +82,6 @@ static uint8_t usb_emu_result_buffer[JLINK_EMU_RESULT_BUFFER_SIZE];
|
|||
/* max speed 12MHz v5.0 jlink */
|
||||
#define JLINK_MAX_SPEED 12000
|
||||
|
||||
/* External interface functions */
|
||||
static int jlink_execute_queue(void);
|
||||
static int jlink_speed(int speed);
|
||||
static int jlink_speed_div(int speed, int* khz);
|
||||
static int jlink_khz(int khz, int *jtag_speed);
|
||||
static int jlink_register_commands(struct command_context *cmd_ctx);
|
||||
static int jlink_init(void);
|
||||
static int jlink_quit(void);
|
||||
|
||||
/* Queue command functions */
|
||||
static void jlink_end_state(tap_state_t state);
|
||||
static void jlink_state_move(void);
|
||||
|
@ -134,18 +125,6 @@ static struct jlink* jlink_handle;
|
|||
/***************************************************************************/
|
||||
/* External interface implementation */
|
||||
|
||||
struct jtag_interface jlink_interface =
|
||||
{
|
||||
.name = "jlink",
|
||||
.execute_queue = jlink_execute_queue,
|
||||
.speed = jlink_speed,
|
||||
.speed_div = jlink_speed_div,
|
||||
.khz = jlink_khz,
|
||||
.register_commands = jlink_register_commands,
|
||||
.init = jlink_init,
|
||||
.quit = jlink_quit
|
||||
};
|
||||
|
||||
static void jlink_execute_runtest(struct jtag_command *cmd)
|
||||
{
|
||||
DEBUG_JTAG_IO("runtest %i cycles, end in %i",
|
||||
|
@ -661,6 +640,17 @@ static int jlink_register_commands(struct command_context *cmd_ctx)
|
|||
return ERROR_OK;
|
||||
}
|
||||
|
||||
struct jtag_interface jlink_interface = {
|
||||
.name = "jlink",
|
||||
.execute_queue = &jlink_execute_queue,
|
||||
.speed = &jlink_speed,
|
||||
.speed_div = &jlink_speed_div,
|
||||
.khz = &jlink_khz,
|
||||
.register_commands = &jlink_register_commands,
|
||||
.init = &jlink_init,
|
||||
.quit = &jlink_quit,
|
||||
};
|
||||
|
||||
/***************************************************************************/
|
||||
/* J-Link tap functions */
|
||||
|
||||
|
|
|
@ -39,42 +39,6 @@
|
|||
#error "BUG: either FTD2XX and LIBFTDI has to be used"
|
||||
#endif
|
||||
|
||||
static int presto_jtag_speed(int speed);
|
||||
static int presto_jtag_khz(int khz, int *jtag_speed);
|
||||
static int presto_jtag_speed_div(int speed, int *khz);
|
||||
static int presto_jtag_register_commands(struct command_context *cmd_ctx);
|
||||
static int presto_jtag_init(void);
|
||||
static int presto_jtag_quit(void);
|
||||
|
||||
struct jtag_interface presto_interface =
|
||||
{
|
||||
.name = "presto",
|
||||
.execute_queue = bitq_execute_queue,
|
||||
.speed = presto_jtag_speed,
|
||||
.khz = presto_jtag_khz,
|
||||
.speed_div = presto_jtag_speed_div,
|
||||
.register_commands = presto_jtag_register_commands,
|
||||
.init = presto_jtag_init,
|
||||
.quit = presto_jtag_quit,
|
||||
};
|
||||
|
||||
static int presto_bitq_out(int tms, int tdi, int tdo_req);
|
||||
static int presto_bitq_flush(void);
|
||||
static int presto_bitq_sleep(unsigned long us);
|
||||
static int presto_bitq_reset(int trst, int srst);
|
||||
static int presto_bitq_in_rdy(void);
|
||||
static int presto_bitq_in(void);
|
||||
|
||||
static struct bitq_interface presto_bitq =
|
||||
{
|
||||
.out = presto_bitq_out,
|
||||
.flush = presto_bitq_flush,
|
||||
.sleep = presto_bitq_sleep,
|
||||
.reset = presto_bitq_reset,
|
||||
.in_rdy = presto_bitq_in_rdy,
|
||||
.in = presto_bitq_in,
|
||||
};
|
||||
|
||||
/* -------------------------------------------------------------------------- */
|
||||
|
||||
#define FT_DEVICE_NAME_LEN 64
|
||||
|
@ -699,6 +663,15 @@ static int presto_bitq_reset(int trst, int srst)
|
|||
return 0;
|
||||
}
|
||||
|
||||
static struct bitq_interface presto_bitq = {
|
||||
.out = &presto_bitq_out,
|
||||
.flush = &presto_bitq_flush,
|
||||
.sleep = &presto_bitq_sleep,
|
||||
.reset = &presto_bitq_reset,
|
||||
.in_rdy = &presto_bitq_in_rdy,
|
||||
.in = &presto_bitq_in,
|
||||
};
|
||||
|
||||
/* -------------------------------------------------------------------------- */
|
||||
|
||||
static int presto_jtag_khz(int khz, int *jtag_speed)
|
||||
|
@ -807,3 +780,14 @@ static int presto_jtag_quit(void)
|
|||
|
||||
return ERROR_OK;
|
||||
}
|
||||
|
||||
struct jtag_interface presto_interface = {
|
||||
.name = "presto",
|
||||
.execute_queue = &bitq_execute_queue,
|
||||
.speed = &presto_jtag_speed,
|
||||
.khz = &presto_jtag_khz,
|
||||
.speed_div = &presto_jtag_speed_div,
|
||||
.register_commands = &presto_jtag_register_commands,
|
||||
.init = &presto_jtag_init,
|
||||
.quit = &presto_jtag_quit,
|
||||
};
|
||||
|
|
|
@ -49,28 +49,12 @@
|
|||
#define TCK_BIT 2
|
||||
#define TMS_BIT 1
|
||||
|
||||
static int usbprog_execute_queue(void);
|
||||
static int usbprog_speed(int speed);
|
||||
static int usbprog_register_commands(struct command_context *cmd_ctx);
|
||||
static int usbprog_init(void);
|
||||
static int usbprog_quit(void);
|
||||
|
||||
static void usbprog_end_state(tap_state_t state);
|
||||
static void usbprog_state_move(void);
|
||||
static void usbprog_path_move(struct pathmove_command *cmd);
|
||||
static void usbprog_runtest(int num_cycles);
|
||||
static void usbprog_scan(bool ir_scan, enum scan_type type, uint8_t *buffer, int scan_size);
|
||||
|
||||
struct jtag_interface usbprog_interface =
|
||||
{
|
||||
.name = "usbprog",
|
||||
.execute_queue = usbprog_execute_queue,
|
||||
.speed = usbprog_speed,
|
||||
.register_commands = usbprog_register_commands,
|
||||
.init = usbprog_init,
|
||||
.quit = usbprog_quit
|
||||
};
|
||||
|
||||
#define UNKOWN_COMMAND 0x00
|
||||
#define PORT_DIRECTION 0x01
|
||||
#define PORT_SET 0x02
|
||||
|
@ -120,11 +104,6 @@ static int usbprog_speed(int speed)
|
|||
return ERROR_OK;
|
||||
}
|
||||
|
||||
static int usbprog_register_commands(struct command_context *cmd_ctx)
|
||||
{
|
||||
return ERROR_OK;
|
||||
}
|
||||
|
||||
static int usbprog_execute_queue(void)
|
||||
{
|
||||
struct jtag_command *cmd = jtag_command_queue; /* currently processed command */
|
||||
|
@ -688,3 +667,11 @@ static void usbprog_jtag_tms_send(struct usbprog_jtag *usbprog_jtag)
|
|||
tms_chain_index = 0;
|
||||
}
|
||||
}
|
||||
|
||||
struct jtag_interface usbprog_interface = {
|
||||
.name = "usbprog",
|
||||
.execute_queue = &usbprog_execute_queue,
|
||||
.speed = &usbprog_speed,
|
||||
.init = &usbprog_init,
|
||||
.quit = &usbprog_quit
|
||||
};
|
||||
|
|
Loading…
Reference in New Issue