X-Git-Url: https://review.openocd.org/gitweb?p=openocd.git;a=blobdiff_plain;f=src%2Fjtag%2Fcommands.h;h=b10b545369e28643345fbc8bd7dfef4d44959258;hp=509ca5aadb0ab7fdb286588183c3e5e002f3cce6;hb=97de520bc02f96f31063175fbc9cad034e84055d;hpb=2fecae46f62ca98657d650de9fc73d44247971e8 diff --git a/src/jtag/commands.h b/src/jtag/commands.h index 509ca5aadb..b10b545369 100644 --- a/src/jtag/commands.h +++ b/src/jtag/commands.h @@ -26,8 +26,6 @@ #ifndef JTAG_COMMANDS_H #define JTAG_COMMANDS_H -#include "jtag.h" - /** * The inferred type of a scan_command_s structure, indicating whether * the command has the host scan in from the device, the host scan out @@ -83,44 +81,40 @@ struct stableclocks_command { }; -typedef struct reset_command_s -{ +struct reset_command { /// Set TRST output: 0 = deassert, 1 = assert, -1 = no change int trst; /// Set SRST output: 0 = deassert, 1 = assert, -1 = no change int srst; -} reset_command_t; +}; -typedef struct end_state_command_s -{ +struct end_state_command { /// state in which JTAG commands should finish tap_state_t end_state; -} end_state_command_t; +}; -typedef struct sleep_command_s -{ +struct sleep_command { /// number of microseconds to sleep uint32_t us; -} sleep_command_t; +}; /** * Defines a container type that hold a pointer to a JTAG command * structure of any defined type. */ -typedef union jtag_command_container_u -{ +union jtag_command_container { struct scan_command* scan; struct statemove_command* statemove; struct pathmove_command* pathmove; struct runtest_command* runtest; struct stableclocks_command* stableclocks; - reset_command_t* reset; - end_state_command_t* end_state; - sleep_command_t* sleep; -} jtag_command_container_t; + struct reset_command* reset; + struct end_state_command* end_state; + struct sleep_command* sleep; +}; /** - * The type of the @c jtag_command_container_u contained by a + * The type of the @c jtag_command_container contained by a * @c jtag_command_s structure. */ enum jtag_command_type { @@ -133,20 +127,19 @@ enum jtag_command_type { JTAG_STABLECLOCKS = 8 }; -typedef struct jtag_command_s -{ - jtag_command_container_t cmd; +struct jtag_command { + union jtag_command_container cmd; enum jtag_command_type type; - struct jtag_command_s* next; -} jtag_command_t; + struct jtag_command *next; +}; /// The current queue of jtag_command_s structures. -extern jtag_command_t* jtag_command_queue; +extern struct jtag_command* jtag_command_queue; void* cmd_queue_alloc(size_t size); void cmd_queue_free(void); -void jtag_queue_command(jtag_command_t *cmd); +void jtag_queue_command(struct jtag_command *cmd); void jtag_command_queue_reset(void); enum scan_type jtag_scan_type(const struct scan_command* cmd);