diff options
author | Mathias K <kesmtp@freenet.de> | 2011-02-01 13:00:59 +0100 |
---|---|---|
committer | Øyvind Harboe <oyvind.harboe@zylin.com> | 2011-02-03 12:28:17 +0100 |
commit | 75cdbff5aa93d93e414cb22d413f41fb38a076bb (patch) | |
tree | 25817d46794af4eea88f3b2c72944a7ece3a2638 /src/target/dsp563xx_once.h | |
parent | b0bdc4e2f2b4fd31ae3b0ebf47765e88c4c37556 (diff) |
more changes to dsp563xx code
Hello,
this patch adds the missing cpu registers and the correct read/write register functions and fixed
most of the halt/step/resume issues. The complete missing error propagation was added.
+ fix tab/spaces
Regards,
Mathias
Diffstat (limited to 'src/target/dsp563xx_once.h')
-rw-r--r-- | src/target/dsp563xx_once.h | 28 |
1 files changed, 23 insertions, 5 deletions
diff --git a/src/target/dsp563xx_once.h b/src/target/dsp563xx_once.h index 942cd65d..6b27694a 100644 --- a/src/target/dsp563xx_once.h +++ b/src/target/dsp563xx_once.h @@ -54,9 +54,29 @@ #define DSP563XX_ONCE_OPABFR 0x00F /* pab fetch reg */ #define DSP563XX_ONCE_OPABDR 0x010 /* pab decode reg */ #define DSP563XX_ONCE_OPABEX 0x011 /* pab exec reg */ -#define DSP563XX_ONCE_OPABEX 0x011 /* trace buffer/inc ptr */ +#define DSP563XX_ONCE_OPABF11 0x012 /* trace buffer/inc ptr */ #define DSP563XX_ONCE_NOREG 0x01F /* no register selected */ +struct once_reg +{ + uint8_t num; + uint8_t addr; + uint8_t len; + const char *name; + uint32_t reg; +}; + +/** */ +int dsp563xx_once_request_debug(struct jtag_tap *tap, int reset_state); +/** */ +int dsp563xx_once_target_status(struct jtag_tap *tap); + +/** once read registers */ +int dsp563xx_once_read_register(struct jtag_tap *tap, struct once_reg *regs, int len); +/** once read register */ +int dsp563xx_once_reg_read_ex_nq(struct jtag_tap *tap, uint8_t reg, uint8_t len, uint32_t * data); +/** once read register */ +int dsp563xx_once_reg_read_ex(struct jtag_tap *tap, uint8_t reg, uint8_t len, uint32_t * data); /** once read register */ int dsp563xx_once_reg_read(struct jtag_tap *tap, uint8_t reg, uint32_t * data); /** once write register */ @@ -64,12 +84,10 @@ int dsp563xx_once_reg_write(struct jtag_tap *tap, uint8_t reg, uint32_t data); /** single word instruction */ int dsp563xx_once_execute_sw_ir(struct jtag_tap *tap, uint32_t opcode); /** double word instruction */ -int dsp563xx_once_execute_dw_ir(struct jtag_tap *tap, uint32_t opcode, - uint32_t operand); +int dsp563xx_once_execute_dw_ir(struct jtag_tap *tap, uint32_t opcode, uint32_t operand); /** single word instruction */ int dsp563xx_once_execute_sw_ir_nq(struct jtag_tap *tap, uint32_t opcode); /** double word instruction */ -int dsp563xx_once_execute_dw_ir_nq(struct jtag_tap *tap, uint32_t opcode, - uint32_t operand); +int dsp563xx_once_execute_dw_ir_nq(struct jtag_tap *tap, uint32_t opcode, uint32_t operand); #endif /* DSP563XX_ONCE_H */ |