OpenOCD
|
Go to the source code of this file.
Data Structures | |
struct | cmd_queue_page |
Macros | |
#define | ALIGN_SIZE (sizeof(union worse_case_align)) |
#define | CMD_QUEUE_PAGE_SIZE (1024 * 1024) |
Functions | |
void * | cmd_queue_alloc (size_t size) |
static void | cmd_queue_free (void) |
int | jtag_build_buffer (const struct scan_command *cmd, uint8_t **buffer) |
void | jtag_command_queue_reset (void) |
void | jtag_queue_command (struct jtag_command *cmd) |
int | jtag_read_buffer (uint8_t *buffer, const struct scan_command *cmd) |
void | jtag_scan_field_clone (struct scan_field *dst, const struct scan_field *src) |
Copy a struct scan_field for insertion into the queue. More... | |
int | jtag_scan_size (const struct scan_command *cmd) |
enum scan_type | jtag_scan_type (const struct scan_command *cmd) |
Variables | |
static struct cmd_queue_page * | cmd_queue_pages |
static struct cmd_queue_page * | cmd_queue_pages_tail |
struct jtag_command * | jtag_command_queue |
The current queue of jtag_command_s structures. More... | |
static struct jtag_command ** | next_command_pointer = &jtag_command_queue |
#define ALIGN_SIZE (sizeof(union worse_case_align)) |
#define CMD_QUEUE_PAGE_SIZE (1024 * 1024) |
Definition at line 32 of file commands.c.
void* cmd_queue_alloc | ( | size_t | size | ) |
Definition at line 66 of file commands.c.
References ALIGN_SIZE, CMD_QUEUE_PAGE_SIZE, cmd_queue_pages, cmd_queue_pages_tail, NULL, offset, and size.
Referenced by esirisc_jtag_send(), interface_add_tms_seq(), interface_jtag_add_callback4(), interface_jtag_add_clocks(), interface_jtag_add_dr_scan(), interface_jtag_add_ir_scan(), interface_jtag_add_pathmove(), interface_jtag_add_reset(), interface_jtag_add_runtest(), interface_jtag_add_scan_check_alloc(), interface_jtag_add_sleep(), interface_jtag_add_tlr(), jtag_add_plain_scan(), and jtag_scan_field_clone().
|
static |
Definition at line 127 of file commands.c.
References cmd_queue_page::address, cmd_queue_pages, cmd_queue_pages_tail, cmd_queue_page::next, and NULL.
Referenced by jtag_command_queue_reset().
int jtag_build_buffer | ( | const struct scan_command * | cmd, |
uint8_t ** | buffer | ||
) |
Definition at line 189 of file commands.c.
References buf_set_buf(), buf_to_hex_str(), buffer, cmd, DEBUG_JTAG_IOZ, DIV_ROUND_UP, jtag_scan_size(), LOG_DEBUG, LOG_DEBUG_IO, LOG_LEVEL_IS, and LOG_LVL_DEBUG_IO.
Referenced by amt_jtagaccel_execute_queue(), armjtagew_execute_queue(), bitbang_execute_queue(), buspirate_execute_queue(), gw16012_execute_queue(), jtag_dpi_scan(), jtag_vpi_scan(), opendous_execute_queue(), openjtag_execute_scan(), rlink_execute_queue(), ublast_scan(), ulink_queue_scan(), usbprog_execute_queue(), vsllink_execute_queue(), and xlnx_pcie_xvc_execute_scan().
void jtag_command_queue_reset | ( | void | ) |
Definition at line 142 of file commands.c.
References cmd_queue_free(), jtag_command_queue, next_command_pointer, and NULL.
Referenced by hl_interface_quit(), and interface_jtag_execute_queue().
void jtag_queue_command | ( | struct jtag_command * | cmd | ) |
Definition at line 39 of file commands.c.
References cmd, LOG_ERROR, next_command_pointer, NULL, and transport_is_jtag().
Referenced by interface_add_tms_seq(), interface_jtag_add_clocks(), interface_jtag_add_dr_scan(), interface_jtag_add_ir_scan(), interface_jtag_add_pathmove(), interface_jtag_add_reset(), interface_jtag_add_runtest(), interface_jtag_add_sleep(), interface_jtag_add_tlr(), and jtag_add_plain_scan().
int jtag_read_buffer | ( | uint8_t * | buffer, |
const struct scan_command * | cmd | ||
) |
Definition at line 230 of file commands.c.
References buf_cpy(), buf_set_buf(), buf_to_hex_str(), buffer, cmd, DEBUG_JTAG_IOZ, DIV_ROUND_UP, ERROR_OK, LOG_DEBUG, LOG_LEVEL_IS, and LOG_LVL_DEBUG_IO.
Referenced by amt_jtagaccel_execute_queue(), armjtagew_tap_execute(), bitbang_execute_queue(), buspirate_tap_execute(), dtc_queue_run(), gw16012_execute_queue(), jtag_dpi_scan(), jtag_vpi_scan(), opendous_tap_execute(), openjtag_execute_tap_queue(), ublast_scan(), ulink_post_process_scan(), usbprog_execute_queue(), vsllink_jtag_execute(), and xlnx_pcie_xvc_execute_scan().
void jtag_scan_field_clone | ( | struct scan_field * | dst, |
const struct scan_field * | src | ||
) |
Copy a struct scan_field for insertion into the queue.
This allocates a new copy of out_value using cmd_queue_alloc.
Definition at line 155 of file commands.c.
References buf_cpy(), cmd_queue_alloc(), DIV_ROUND_UP, scan_field::in_value, scan_field::num_bits, and scan_field::out_value.
Referenced by esirisc_jtag_send(), interface_jtag_add_dr_scan(), and interface_jtag_add_ir_scan().
int jtag_scan_size | ( | const struct scan_command * | cmd | ) |
Definition at line 177 of file commands.c.
References cmd.
Referenced by jtag_build_buffer(), ulink_queue_scan(), and vdebug_jtag_scan().
enum scan_type jtag_scan_type | ( | const struct scan_command * | cmd | ) |
Definition at line 155 of file commands.c.
Referenced by amt_jtagaccel_execute_queue(), armjtagew_execute_queue(), bitbang_execute_queue(), buspirate_execute_queue(), cmsis_dap_execute_scan(), ftdi_execute_scan(), gw16012_execute_queue(), jlink_execute_scan(), opendous_execute_queue(), rlink_execute_queue(), ublast_scan(), ulink_post_process_scan(), ulink_queue_scan(), usbprog_execute_queue(), vsllink_execute_queue(), and xlnx_pcie_xvc_execute_scan().
|
static |
Definition at line 33 of file commands.c.
Referenced by cmd_queue_alloc(), and cmd_queue_free().
|
static |
Definition at line 34 of file commands.c.
Referenced by cmd_queue_alloc(), and cmd_queue_free().
struct jtag_command* jtag_command_queue |
The current queue of jtag_command_s structures.
Definition at line 36 of file commands.c.
Referenced by aice_execute_queue(), amt_jtagaccel_execute_queue(), armjtagew_execute_queue(), bitbang_execute_queue(), bitq_execute_queue(), buspirate_execute_queue(), cmsis_dap_execute_queue(), default_interface_jtag_execute_queue(), ftdi_execute_queue(), gw16012_execute_queue(), jlink_execute_queue(), jtag_command_queue_reset(), jtag_dpi_execute_queue(), jtag_vpi_execute_queue(), opendous_execute_queue(), openjtag_execute_queue(), osbdm_execute_queue(), rlink_execute_queue(), ublast_execute_queue(), ulink_execute_queue(), usbprog_execute_queue(), vdebug_jtag_execute_queue(), vsllink_execute_queue(), xds110_execute_queue(), and xlnx_pcie_xvc_execute_queue().
|
static |
Definition at line 37 of file commands.c.
Referenced by jtag_command_queue_reset(), and jtag_queue_command().