diff options
author | Bernhard Kiesbauer <bernhard@kiesbauer.com> | 2013-07-01 21:27:05 +0200 |
---|---|---|
committer | Spencer Oliver <spen@spen-soft.co.uk> | 2013-07-15 10:05:15 +0000 |
commit | bbb0896cffe0f7643e8cc17328a62b54934f2e8b (patch) | |
tree | e094790f27b33a45e2a07b1581ed079c738d0aac /src/target/dsp563xx.h | |
parent | e608ced3300141e564e4880a9ae0d4880baa2f3f (diff) |
dsp563xx: Adding breakpoint/watchpoint support.
Added missing breakpoint/watchpoint implementation to dsp563xx target.
Implementation is not yet complete, which means it does not leverage all
available features of the once debug interface.
This does NOT use the openocd breakpoint/watchpoint command because of
the "special" memory address spaces (X/Y/P/L) of the 56k DSP series.
Change-Id: I6840a3ff1e6fdebb38ab7758f164886aff773af6
Signed-off-by: Bernhard Kiesbauer <bernhard@kiesbauer.com>
Reviewed-on: http://openocd.zylin.com/1468
Tested-by: jenkins
Reviewed-by: Spencer Oliver <spen@spen-soft.co.uk>
Diffstat (limited to 'src/target/dsp563xx.h')
-rw-r--r-- | src/target/dsp563xx.h | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/src/target/dsp563xx.h b/src/target/dsp563xx.h index b2ee9d1f..446ad3f5 100644 --- a/src/target/dsp563xx.h +++ b/src/target/dsp563xx.h @@ -31,6 +31,16 @@ struct mcu_jtag { struct jtag_tap *tap; }; +enum breakpoint_usage { + BPU_NONE = 0, + BPU_BREAKPOINT, + BPU_WATCHPOINT +}; + +struct hardware_breakpoint { + enum breakpoint_usage used; +}; + struct dsp563xx_common { struct mcu_jtag jtag_info; struct reg_cache *core_cache; @@ -40,6 +50,11 @@ struct dsp563xx_common { /* register cache to processor synchronization */ int (*read_core_reg) (struct target *target, int num); int (*write_core_reg) (struct target *target, int num); + + struct hardware_breakpoint hardware_breakpoint[1]; + + /*Were the hardware breakpoints cleared on startup?*/ + int hardware_breakpoints_cleared; }; struct dsp563xx_core_reg { |