OpenOCD
jtag/drivers/driver.c File Reference
Include dependency graph for jtag/drivers/driver.c:

Go to the source code of this file.

Data Structures

struct  jtag_callback_entry
 

Functions

int interface_add_tms_seq (unsigned num_bits, const uint8_t *seq, enum tap_state state)
 
void interface_jtag_add_callback (jtag_callback1_t callback, jtag_callback_data_t data0)
 
void interface_jtag_add_callback4 (jtag_callback_t callback, jtag_callback_data_t data0, jtag_callback_data_t data1, jtag_callback_data_t data2, jtag_callback_data_t data3)
 
int interface_jtag_add_clocks (int num_cycles)
 
int interface_jtag_add_dr_scan (struct jtag_tap *active, int in_num_fields, const struct scan_field *in_fields, tap_state_t state)
 see jtag_add_dr_scan() More...
 
int interface_jtag_add_ir_scan (struct jtag_tap *active, const struct scan_field *in_fields, tap_state_t state)
 see jtag_add_ir_scan() More...
 
int interface_jtag_add_pathmove (int num_states, const tap_state_t *path)
 
int interface_jtag_add_plain_dr_scan (int num_bits, const uint8_t *out_bits, uint8_t *in_bits, tap_state_t state)
 
int interface_jtag_add_plain_ir_scan (int num_bits, const uint8_t *out_bits, uint8_t *in_bits, tap_state_t state)
 
int interface_jtag_add_reset (int req_trst, int req_srst)
 This drives the actual srst and trst pins. More...
 
int interface_jtag_add_runtest (int num_cycles, tap_state_t state)
 
int interface_jtag_add_sleep (uint32_t us)
 
int interface_jtag_add_tlr (void)
 
int interface_jtag_execute_queue (void)
 
void jtag_add_callback (jtag_callback1_t f, jtag_callback_data_t data0)
 A simpler version of jtag_add_callback4(). More...
 
void jtag_add_callback4 (jtag_callback_t f, jtag_callback_data_t data0, jtag_callback_data_t data1, jtag_callback_data_t data2, jtag_callback_data_t data3)
 
static int jtag_add_plain_scan (int num_bits, const uint8_t *out_bits, uint8_t *in_bits, tap_state_t state, bool ir_scan)
 
static void jtag_callback_queue_reset (void)
 
static int jtag_convert_to_callback4 (jtag_callback_data_t data0, jtag_callback_data_t data1, jtag_callback_data_t data2, jtag_callback_data_t data3)
 

Variables

static struct jtag_callback_entryjtag_callback_queue_head
 
static struct jtag_callback_entryjtag_callback_queue_tail
 

Function Documentation

◆ interface_add_tms_seq()

int interface_add_tms_seq ( unsigned  num_bits,
const uint8_t *  seq,
enum tap_state  state 
)

◆ interface_jtag_add_callback()

void interface_jtag_add_callback ( jtag_callback1_t  callback,
jtag_callback_data_t  data0 
)

◆ interface_jtag_add_callback4()

◆ interface_jtag_add_clocks()

int interface_jtag_add_clocks ( int  num_cycles)

Definition at line 297 of file jtag/drivers/driver.c.

References cmd, cmd_queue_alloc(), ERROR_OK, jtag_queue_command(), and JTAG_STABLECLOCKS.

Referenced by jtag_add_clocks().

◆ interface_jtag_add_dr_scan()

int interface_jtag_add_dr_scan ( struct jtag_tap active,
int  in_num_fields,
const struct scan_field in_fields,
tap_state_t  state 
)

◆ interface_jtag_add_ir_scan()

◆ interface_jtag_add_pathmove()

int interface_jtag_add_pathmove ( int  num_states,
const tap_state_t path 
)

Definition at line 262 of file jtag/drivers/driver.c.

References cmd, cmd_queue_alloc(), ERROR_OK, JTAG_PATHMOVE, and jtag_queue_command().

Referenced by jtag_add_pathmove().

◆ interface_jtag_add_plain_dr_scan()

int interface_jtag_add_plain_dr_scan ( int  num_bits,
const uint8_t *  out_bits,
uint8_t *  in_bits,
tap_state_t  state 
)

Definition at line 210 of file jtag/drivers/driver.c.

References jtag_add_plain_scan(), scan_field::num_bits, and state.

Referenced by jtag_add_plain_dr_scan().

◆ interface_jtag_add_plain_ir_scan()

int interface_jtag_add_plain_ir_scan ( int  num_bits,
const uint8_t *  out_bits,
uint8_t *  in_bits,
tap_state_t  state 
)

Definition at line 215 of file jtag/drivers/driver.c.

References jtag_add_plain_scan(), scan_field::num_bits, and state.

Referenced by jtag_add_plain_ir_scan().

◆ interface_jtag_add_reset()

int interface_jtag_add_reset ( int  trst,
int  srst 
)

This drives the actual srst and trst pins.

srst will always be 0 if jtag_reset_config & RESET_SRST_PULLS_TRST != 0 and ditto for trst.

the higher level jtag_add_reset will invoke jtag_add_tlr() if appropriate

Definition at line 312 of file jtag/drivers/driver.c.

References cmd, cmd_queue_alloc(), ERROR_OK, jtag_queue_command(), and JTAG_RESET.

Referenced by legacy_jtag_add_reset().

◆ interface_jtag_add_runtest()

int interface_jtag_add_runtest ( int  num_cycles,
tap_state_t  state 
)

Definition at line 281 of file jtag/drivers/driver.c.

References cmd, cmd_queue_alloc(), ERROR_OK, jtag_queue_command(), JTAG_RUNTEST, and state.

Referenced by jtag_add_runtest().

◆ interface_jtag_add_sleep()

int interface_jtag_add_sleep ( uint32_t  us)

Definition at line 328 of file jtag/drivers/driver.c.

References cmd, cmd_queue_alloc(), ERROR_OK, jtag_queue_command(), and JTAG_SLEEP.

Referenced by jtag_add_sleep().

◆ interface_jtag_add_tlr()

int interface_jtag_add_tlr ( void  )

Definition at line 220 of file jtag/drivers/driver.c.

References cmd, cmd_queue_alloc(), ERROR_OK, jtag_queue_command(), JTAG_TLR_RESET, state, and TAP_RESET.

Referenced by jtag_add_tlr().

◆ interface_jtag_execute_queue()

◆ jtag_add_callback()

◆ jtag_add_callback4()

◆ jtag_add_plain_scan()

static int jtag_add_plain_scan ( int  num_bits,
const uint8_t *  out_bits,
uint8_t *  in_bits,
tap_state_t  state,
bool  ir_scan 
)
static

◆ jtag_callback_queue_reset()

static void jtag_callback_queue_reset ( void  )
static

◆ jtag_convert_to_callback4()

static int jtag_convert_to_callback4 ( jtag_callback_data_t  data0,
jtag_callback_data_t  data1,
jtag_callback_data_t  data2,
jtag_callback_data_t  data3 
)
static

Variable Documentation

◆ jtag_callback_queue_head

struct jtag_callback_entry* jtag_callback_queue_head
static

◆ jtag_callback_queue_tail

struct jtag_callback_entry* jtag_callback_queue_tail
static