#define OPENOCD_JTAG_JTAG_H
#include <helper/binarybuffer.h>
#include <helper/command.h>
#include <helper/log.h>
#include <helper/replacements.h>
#define DEBUG_JTAG_IOZ
-----</Macros>
tap_state
TAP_INVALID
TAP_DREXIT2
TAP_DREXIT1
TAP_DRSHIFT
TAP_DRPAUSE
TAP_IRSELECT
TAP_DRUPDATE
TAP_DRCAPTURE
TAP_DRSELECT
TAP_IREXIT2
TAP_IREXIT1
TAP_IRSHIFT
TAP_IRPAUSE
TAP_IDLE
TAP_IRUPDATE
TAP_IRCAPTURE
TAP_RESET
#define SRST_DEASSERT
#define SRST_ASSERT
#define TRST_DEASSERT
#define TRST_ASSERT
tap_state_name(tap_state_t);
tap_state_by_name(const char *);
cmd_queue_cur_state;
scan_field
num_bits
out_value
in_value
check_value
check_mask
jtag_tap
chip
tapname
dotted_name
abs_chain_position
disabled_after_reset
enabled
ir_length
ir_capture_value
expected
ir_capture_mask
expected_mask
idcode
has_idcode
expected_ids
expected_ids_cnt
ignore_version
ignore_bypass
cur_instr
bypass
ir_bypass_value
jtag_tap_event_action
event_action
next_tap
priv
jtag_tap_init(struct jtag_tap *);
jtag_tap_free(struct jtag_tap *);
jtag_all_taps();
jtag_tap_name(const struct jtag_tap *);
jtag_tap_by_string(const char *);
jtag_tap_by_jim_obj(Jim_Interp *, Jim_Obj *);
jtag_tap_by_position(unsigned int);
jtag_tap_next_enabled(struct jtag_tap *);
jtag_tap_count_enabled();
jtag_tap_count();
jtag_event
JTAG_TRST_ASSERTED
JTAG_TAP_EVENT_SETUP
JTAG_TAP_EVENT_ENABLE
JTAG_TAP_EVENT_DISABLE
jtag_tap_event_action
event
interp
body
next
jtag_event_handler_t
jtag_register_event_callback(jtag_event_handler_t, void *);
jtag_unregister_event_callback(jtag_event_handler_t, void *);
jtag_call_event_callbacks(enum jtag_event);
reset_types
RESET_NONE
RESET_HAS_TRST
RESET_HAS_SRST
RESET_TRST_AND_SRST
RESET_SRST_PULLS_TRST
RESET_TRST_PULLS_SRST
RESET_TRST_OPEN_DRAIN
RESET_SRST_PUSH_PULL
RESET_SRST_NO_GATING
RESET_CNCT_UNDER_SRST
jtag_get_reset_config();
jtag_set_reset_config(enum reset_types);
jtag_set_nsrst_delay(unsigned int);
jtag_get_nsrst_delay();
jtag_set_ntrst_delay(unsigned int);
jtag_get_ntrst_delay();
jtag_set_nsrst_assert_width(unsigned int);
jtag_get_nsrst_assert_width();
jtag_set_ntrst_assert_width(unsigned int);
jtag_get_ntrst_assert_width();
jtag_get_trst();
jtag_get_srst();
jtag_set_verify(bool);
jtag_will_verify();
jtag_set_verify_capture_ir(bool);
jtag_will_verify_capture_ir();
jtag_set_flush_queue_sleep(int);
jtag_init(struct command_context *);
jtag_init_reset(struct command_context *);
jtag_register_commands(struct command_context *);
jtag_init_inner(struct command_context *);
jtag_add_ir_scan(struct jtag_tap *, struct scan_field *, tap_state_t);
jtag_add_ir_scan_noverify(struct jtag_tap *, const struct scan_field *, tap_state_t);
jtag_add_plain_ir_scan(int, const uint8_t *, uint8_t *, tap_state_t);
jtag_add_dr_scan(struct jtag_tap *, int, const struct scan_field *, tap_state_t);
jtag_add_dr_scan_check(struct jtag_tap *, int, struct scan_field *, tap_state_t);
jtag_add_plain_dr_scan(int, const uint8_t *, uint8_t *, tap_state_t);
jtag_callback_data_t
jtag_add_callback(jtag_callback1_t, jtag_callback_data_t);
jtag_callback_t
jtag_add_tlr();
jtag_add_pathmove(unsigned int, const tap_state_t *);
jtag_add_statemove(tap_state_t);
jtag_add_runtest(unsigned int, tap_state_t);
jtag_add_reset(int, int);
jtag_add_sleep(uint32_t);
jtag_add_tms_seq(unsigned int, const uint8_t *, enum tap_state);
jtag_add_clocks(unsigned int);
jtag_execute_queue();
jtag_execute_queue_noclear();
jtag_get_flush_queue_count();
jtag_notify_event(enum jtag_event);
jtag_power_dropout(int *);
jtag_srst_asserted(int *);
jtag_check_value_mask(struct scan_field *, uint8_t *, uint8_t *);
jtag_sleep(uint32_t);
#define ERROR_JTAG_INIT_FAILED
#define ERROR_JTAG_INVALID_INTERFACE
#define ERROR_JTAG_NOT_IMPLEMENTED
#define ERROR_JTAG_TRST_ASSERTED
#define ERROR_JTAG_QUEUE_FAILED
#define ERROR_JTAG_NOT_STABLE_STATE
#define ERROR_JTAG_DEVICE_ERROR
#define ERROR_JTAG_STATE_INVALID
#define ERROR_JTAG_TRANSITION_INVALID
#define ERROR_JTAG_INIT_SOFT_FAIL
jtag_set_error(int);
jtag_error_clear();
is_jtag_poll_safe();
jtag_poll_get_enabled();
jtag_poll_set_enabled(bool);
jtag_poll_mask();
jtag_poll_unmask(bool);
#include <jtag/minidriver.h>
handle_jtag_newtap(struct command_invocation *);