11 #ifndef OPENOCD_TARGET_ARC_JTAG_H
12 #define OPENOCD_TARGET_ARC_JTAG_H
14 #define ARC_TRANSACTION_CMD_REG 0x9
15 #define ARC_TRANSACTION_CMD_REG_LENGTH 4
18 #define ARC_JTAG_STATUS_REG 0x8
19 #define ARC_JTAG_ADDRESS_REG 0xA
20 #define ARC_JTAG_DATA_REG 0xB
23 #define ARC_JTAG_STAT_RU 0x10
26 #define ARC_JTAG_WRITE_TO_MEMORY 0x0
27 #define ARC_JTAG_WRITE_TO_CORE_REG 0x1
28 #define ARC_JTAG_WRITE_TO_AUX_REG 0x2
29 #define ARC_JTAG_CMD_NOP 0x3
30 #define ARC_JTAG_READ_FROM_MEMORY 0x4
31 #define ARC_JTAG_READ_FROM_CORE_REG 0x5
32 #define ARC_JTAG_READ_FROM_AUX_REG 0x6
34 #define ARC_JTAG_CORE_REG 0x0
35 #define ARC_JTAG_AUX_REG 0x1
69 uint32_t
count, uint32_t *
buffer,
bool slow_memory);
int arc_jtag_startup(struct arc_jtag *jtag_info)
int arc_jtag_write_core_reg(struct arc_jtag *jtag_info, uint32_t *addr, uint32_t count, const uint32_t *buffer)
Write core registers.
int arc_jtag_status(struct arc_jtag *const jtag_info, uint32_t *const value)
Read STATUS register.
int arc_jtag_read_memory(struct arc_jtag *jtag_info, uint32_t addr, uint32_t count, uint32_t *buffer, bool slow_memory)
Read a sequence of 4-byte words from target memory.
int arc_jtag_write_aux_reg_one(struct arc_jtag *jtag_info, uint32_t addr, uint32_t value)
Wrapper function to ease writing of one AUX register.
int arc_jtag_write_memory(struct arc_jtag *jtag_info, uint32_t addr, uint32_t count, const uint32_t *buffer)
Write a sequence of 4-byte words into target memory.
int arc_jtag_read_core_reg_one(struct arc_jtag *jtag_info, uint32_t addr, uint32_t *buffer)
Wrapper function to ease reading of one core register.
int arc_jtag_read_core_reg(struct arc_jtag *jtag_info, uint32_t *addr, uint32_t count, uint32_t *buffer)
Read core registers.
int arc_jtag_read_aux_reg_one(struct arc_jtag *jtag_info, uint32_t addr, uint32_t *value)
Wrapper function to ease reading of one AUX register.
int arc_jtag_write_aux_reg(struct arc_jtag *jtag_info, uint32_t *addr, uint32_t count, const uint32_t *buffer)
Write AUX registers.
int arc_jtag_write_core_reg_one(struct arc_jtag *jtag_info, uint32_t addr, const uint32_t buffer)
Wrapper function to ease writing of one core register.
int arc_jtag_read_aux_reg(struct arc_jtag *jtag_info, uint32_t *addr, uint32_t count, uint32_t *buffer)
Read AUX registers.
target_addr_t addr
Start address to search for the control block.