tap_get_tms_path_len() is only used within OpenOCD.
 
Symbols
loading...
Files
loading...
CodeScopeDevelopment ToolsOpenOCDtap_get_tms_path_len()

tap_get_tms_path_len() function

Function int tap_get_tms_path_len returns the total number of bits that represents a TMS path transition as given by the function tap_get_tms_path(). For at least one interface (JLink) it's not OK to simply "pad" TMS sequences to fit a whole byte. (I suspect this is a general TAP problem within OOCD.) Padding TMS causes all manner of instability that's not easily discovered. Using this routine we can apply EXACTLY the state transitions required to make something work - no more - no less.

Syntax

int tap_get_tms_path_len(tap_state_t from,     tap_state_t to);
Implemented in interface.c:195

Arguments

from

is the starting state

to

is the resultant or final state

Return value

int - the total number of bits in a transition.

References

LocationReferrerText
interface.c:195
int tap_get_tms_path_len(tap_state_t from, tap_state_t to)
interface.h:112
int tap_get_tms_path_len(tap_state_t from, tap_state_t to);
arm-jtag-ew.c:272armjtagew_state_move()
int tms_count = tap_get_tms_path_len(tap_get_state(), tap_get_end_state());
cmsis_dap.c:1731cmsis_dap_state_move()
uint8_t tms_scan_bits = tap_get_tms_path_len(tap_get_state(), tap_get_end_state());
core.c:571jtag_add_statemove()
unsigned int tms_count = tap_get_tms_path_len(cur_state, goal_state);
ftdi.c:252move_to_state()
int tms_count = tap_get_tms_path_len(start_state, goal_state);
ftdi.c:651ftdi_initialize()
if (tap_get_tms_path_len(TAP_IRPAUSE, TAP_IRPAUSE) == 7)
jlink.c:895jlink_state_move()
tms_scan_bits = tap_get_tms_path_len(tap_get_state(), tap_get_end_state());
opendous.c:412opendous_state_move()
uint8_t tms_scan_bits = tap_get_tms_path_len(tap_get_state(), tap_get_end_state());
osbdm.c:431osbdm_add_statemove()
len = tap_get_tms_path_len(tap_get_state(), new_state);
rlink.c:860rlink_state_move()
int tms_count = tap_get_tms_path_len(tap_get_state(), tap_get_end_state());
ulink.c:1424ulink_queue_statemove()
tms_count = tap_get_tms_path_len(tap_get_state(), tap_get_end_state());
ulink.c:1493ulink_queue_scan()
first_tms_count = tap_get_tms_path_len(tap_get_state(), tap_get_end_state());
ulink.c:1498ulink_queue_scan()
last_tms_count = tap_get_tms_path_len(tap_get_state(), tap_get_end_state());
ulink.c:1502ulink_queue_scan()
tms_count_pause = tap_get_tms_path_len(TAP_IRSHIFT, TAP_IRPAUSE);
ulink.c:1504ulink_queue_scan()
tms_count_resume = tap_get_tms_path_len(TAP_IRPAUSE, TAP_IRSHIFT);
ulink.c:1508ulink_queue_scan()
first_tms_count = tap_get_tms_path_len(tap_get_state(), tap_get_end_state());
ulink.c:1513ulink_queue_scan()
last_tms_count = tap_get_tms_path_len(tap_get_state(), tap_get_end_state());
ulink.c:1517ulink_queue_scan()
tms_count_pause = tap_get_tms_path_len(TAP_DRSHIFT, TAP_DRPAUSE);
ulink.c:1519ulink_queue_scan()
tms_count_resume = tap_get_tms_path_len(TAP_DRPAUSE, TAP_DRSHIFT);
usb_blaster.c:507ublast_state_move()
tms_len = tap_get_tms_path_len(tap_get_state(), state);
vsllink.c:365vsllink_state_move()
uint8_t tms_scan_bits = tap_get_tms_path_len(tap_get_state(),

Call Tree