openocd/src/target
Paul Fertser 207237b920 tcl: introduce init_target_events and use it for gdb flashing events
This introduces a new global Tcl procedure that is run just after
init_targets and before init_boards.

Its default behaviour is to assign gdb-flash-erase-start and
gdb-flash-write-end to reasonable defaults.

The rationale for doing "reset init" before gdb erases and flashes
memory is that all flash drivers are written in assumption that they
can safely be used only after chip reset (plus chip-specific
configuration in the init handler if any). The need to use "reset
halt" after flashing is because a user expects running firmware after
loading to be the same as running it from power-on-reset.

Change-Id: I9ddc4047611904ca4ca779b73376d2739611948a
Signed-off-by: Paul Fertser <fercerpav@gmail.com>
Reviewed-on: http://openocd.zylin.com/2062
Tested-by: jenkins
Reviewed-by: Spencer Oliver <spen@spen-soft.co.uk>
2014-03-29 08:40:03 +00:00
..
openrisc target: remove memory leaks 2014-03-29 08:04:55 +00:00
xscale update files to correct FSF address 2013-06-05 19:52:42 +00:00
Makefile.am Add xscale debug helper sources and everything related to dist 2014-03-29 07:56:33 +00:00
adi_v5_cmsis_dap.c cmsis-dap: add initial cmsis-dap support 2014-01-09 15:20:51 +00:00
adi_v5_jtag.c Remove unnecessary (void *) 2013-10-31 20:42:47 +00:00
adi_v5_swd.c cmsis-dap: add initial cmsis-dap support 2014-01-09 15:20:51 +00:00
algorithm.c update files to correct FSF address 2013-06-05 19:52:42 +00:00
algorithm.h update files to correct FSF address 2013-06-05 19:52:42 +00:00
arm.h armv7m: use consistent arm.cpsr member 2013-09-08 16:13:51 +00:00
arm7_9_common.c target: use target_buffer_set_u32_array 2013-11-07 21:38:49 +00:00
arm7_9_common.h arm7_9: Avoid infinite loops in bulk write dispatching 2013-10-15 20:41:08 +00:00
arm7tdmi.c Retire jtag_add_dr_out 2014-01-20 13:28:26 +00:00
arm7tdmi.h update files to correct FSF address 2013-06-05 19:52:42 +00:00
arm9tdmi.c arm7_9: Avoid infinite loops in bulk write dispatching 2013-10-15 20:41:08 +00:00
arm9tdmi.h update files to correct FSF address 2013-06-05 19:52:42 +00:00
arm11.c target: remove unimplemented target_request_data implementations 2013-09-08 16:12:41 +00:00
arm11.h update files to correct FSF address 2013-06-05 19:52:42 +00:00
arm11_dbgtap.c Remove unnecessary (void *) 2013-10-31 20:42:47 +00:00
arm11_dbgtap.h update files to correct FSF address 2013-06-05 19:52:42 +00:00
arm720t.c [RFC] target: Move bulk_write_memory to arm7_9 2013-09-13 19:33:28 +00:00
arm720t.h update files to correct FSF address 2013-06-05 19:52:42 +00:00
arm920t.c arm920t: fix write memory operations with caches enabled 2014-01-24 12:48:43 +00:00
arm920t.h arm7_9: Avoid infinite loops in bulk write dispatching 2013-10-15 20:41:08 +00:00
arm926ejs.c arm926ejs: fix write memory operations with caches enabled 2014-02-11 13:38:39 +00:00
arm926ejs.h arm7_9: Avoid infinite loops in bulk write dispatching 2013-10-15 20:41:08 +00:00
arm946e.c Clean up many C99 integer types format specifiers 2013-10-31 20:40:03 +00:00
arm946e.h update files to correct FSF address 2013-06-05 19:52:42 +00:00
arm966e.c [RFC] target: Move bulk_write_memory to arm7_9 2013-09-13 19:33:28 +00:00
arm966e.h update files to correct FSF address 2013-06-05 19:52:42 +00:00
arm_adi_v5.c target: remove memory leaks 2014-03-29 08:04:55 +00:00
arm_adi_v5.h adi_v5: Remove unnecessary MEM-AP access functions 2014-01-11 22:22:18 +00:00
arm_disassembler.c update files to correct FSF address 2013-06-05 19:52:42 +00:00
arm_disassembler.h update files to correct FSF address 2013-06-05 19:52:42 +00:00
arm_dpm.c update files to correct FSF address 2013-06-05 19:52:42 +00:00
arm_dpm.h update files to correct FSF address 2013-06-05 19:52:42 +00:00
arm_jtag.c Retire jtag_add_dr_out 2014-01-20 13:28:26 +00:00
arm_jtag.h update files to correct FSF address 2013-06-05 19:52:42 +00:00
arm_opcodes.h update files to correct FSF address 2013-06-05 19:52:42 +00:00
arm_semihosting.c Remove unnecessary (void *) 2013-10-31 20:42:47 +00:00
arm_semihosting.h update files to correct FSF address 2013-06-05 19:52:42 +00:00
arm_simulator.c update files to correct FSF address 2013-06-05 19:52:42 +00:00
arm_simulator.h update files to correct FSF address 2013-06-05 19:52:42 +00:00
armv4_5.c Add GDB remote target description support for ARM4 2014-01-23 21:39:13 +00:00
armv4_5.h update files to correct FSF address 2013-06-05 19:52:42 +00:00
armv4_5_cache.c update files to correct FSF address 2013-06-05 19:52:42 +00:00
armv4_5_cache.h update files to correct FSF address 2013-06-05 19:52:42 +00:00
armv4_5_mmu.c update files to correct FSF address 2013-06-05 19:52:42 +00:00
armv4_5_mmu.h update files to correct FSF address 2013-06-05 19:52:42 +00:00
armv7a.c Remove unnecessary (void *) 2013-10-31 20:42:47 +00:00
armv7a.h update files to correct FSF address 2013-06-05 19:52:42 +00:00
armv7m.c armv7m: remove magic numbers for number of core registers 2014-03-29 07:47:48 +00:00
armv7m.h armv7m: remove magic numbers for number of core registers 2014-03-29 07:47:48 +00:00
avr32_ap7k.c Clean up many C99 integer types format specifiers 2013-10-31 20:40:03 +00:00
avr32_ap7k.h update files to correct FSF address 2013-06-05 19:52:42 +00:00
avr32_jtag.c update files to correct FSF address 2013-06-05 19:52:42 +00:00
avr32_jtag.h update files to correct FSF address 2013-06-05 19:52:42 +00:00
avr32_mem.c update files to correct FSF address 2013-06-05 19:52:42 +00:00
avr32_mem.h update files to correct FSF address 2013-06-05 19:52:42 +00:00
avr32_regs.c update files to correct FSF address 2013-06-05 19:52:42 +00:00
avr32_regs.h update files to correct FSF address 2013-06-05 19:52:42 +00:00
avrt.c target: remove unimplemented target_request_data implementations 2013-09-08 16:12:41 +00:00
avrt.h update files to correct FSF address 2013-06-05 19:52:42 +00:00
breakpoints.c Clean up many C99 integer types format specifiers 2013-10-31 20:40:03 +00:00
breakpoints.h gdb server: new feature, add stop reason in stop reply packet for gdb 2013-08-07 21:01:08 +00:00
cortex_a.c cortex_a: Fix endianess issues in cortex_a8_*_apb_ab_memory 2014-03-07 18:53:35 +00:00
cortex_a.h update files to correct FSF address 2013-06-05 19:52:42 +00:00
cortex_m.c cortexm: use Cortex-M rather than cortex-m3 for dwt registers 2014-01-19 19:24:34 +00:00
cortex_m.h cortex_m: target implementation renames cortex_m3 to cortex_m 2013-10-10 20:51:03 +00:00
dsp563xx.c Clean up many C99 integer types format specifiers 2013-10-31 20:40:03 +00:00
dsp563xx.h dsp563xx: Adding breakpoint/watchpoint support. 2013-07-15 10:05:15 +00:00
dsp563xx_once.c dsp563xx: Adding breakpoint/watchpoint support. 2013-07-15 10:05:15 +00:00
dsp563xx_once.h dsp563xx: Adding breakpoint/watchpoint support. 2013-07-15 10:05:15 +00:00
dsp5680xx.c flash: Constify write buffer 2014-03-17 12:47:18 +00:00
dsp5680xx.h flash: Constify write buffer 2014-03-17 12:47:18 +00:00
embeddedice.c update files to correct FSF address 2013-06-05 19:52:42 +00:00
embeddedice.h Retire jtag_add_dr_out 2014-01-20 13:28:26 +00:00
etb.c target: fix typos 2014-01-19 19:26:12 +00:00
etb.h update files to correct FSF address 2013-06-05 19:52:42 +00:00
etm.c target: fix typos 2014-01-19 19:26:12 +00:00
etm.h update files to correct FSF address 2013-06-05 19:52:42 +00:00
etm_dummy.c update files to correct FSF address 2013-06-05 19:52:42 +00:00
etm_dummy.h update files to correct FSF address 2013-06-05 19:52:42 +00:00
fa526.c arm7_9: Avoid infinite loops in bulk write dispatching 2013-10-15 20:41:08 +00:00
feroceon.c target: use target_buffer_set_u32_array 2013-11-07 21:38:49 +00:00
hla_target.c hla: Make consistent parameter naming 2013-11-07 22:19:50 +00:00
image.c Constify received GDB packet 2014-03-04 20:17:34 +00:00
image.h Constify received GDB packet 2014-03-04 20:17:34 +00:00
lakemont.c quark_x10xx: add new target quark_x10xx 2014-02-11 13:07:29 +00:00
lakemont.h quark_x10xx: add new target quark_x10xx 2014-02-11 13:07:29 +00:00
mips32.c mips32: build register cache in a more clear way 2014-02-24 12:10:29 +00:00
mips32.h gdb_server: support gdb target description 2013-08-07 21:00:40 +00:00
mips32_dmaacc.c Clean up const usage to avoid excessive casting 2013-10-31 20:42:34 +00:00
mips32_dmaacc.h Clean up const usage to avoid excessive casting 2013-10-31 20:42:34 +00:00
mips32_pracc.c Clean up const usage to avoid excessive casting 2013-10-31 20:42:34 +00:00
mips32_pracc.h Clean up const usage to avoid excessive casting 2013-10-31 20:42:34 +00:00
mips_ejtag.c mips_ejtag.c: disable DMA for all platforms 2014-03-29 06:51:50 +00:00
mips_ejtag.h mips: add breakpoint support for EJTAG 2.0 2013-07-17 14:33:34 +00:00
mips_m4k.c Clean up const usage to avoid excessive casting 2013-10-31 20:42:34 +00:00
mips_m4k.h update files to correct FSF address 2013-06-05 19:52:42 +00:00
nds32.c Conform to C99 integer types format specifiers 2014-01-15 12:40:42 +00:00
nds32.h nds32: Remove unused declaration 2013-10-15 20:41:27 +00:00
nds32_aice.c nds32: support multi-target debugging 2013-09-13 19:37:58 +00:00
nds32_aice.h nds32: support multi-target debugging 2013-09-13 19:37:58 +00:00
nds32_cmd.c target: remove memory leaks 2014-03-29 08:04:55 +00:00
nds32_cmd.h nds32: add new target type nds32_v2, nds32_v3, nds32_v3m 2013-06-05 19:27:35 +00:00
nds32_disassembler.c target/nds32_disassembler: fix format specifiers warnings 2014-02-04 21:18:27 +00:00
nds32_disassembler.h nds32: add new target type nds32_v2, nds32_v3, nds32_v3m 2013-06-05 19:27:35 +00:00
nds32_edm.h nds32: add new target type nds32_v2, nds32_v3, nds32_v3m 2013-06-05 19:27:35 +00:00
nds32_insn.h nds32: add new target type nds32_v2, nds32_v3, nds32_v3m 2013-06-05 19:27:35 +00:00
nds32_reg.c Clean up many C99 integer types format specifiers 2013-10-31 20:40:03 +00:00
nds32_reg.h nds32: add new target type nds32_v2, nds32_v3, nds32_v3m 2013-06-05 19:27:35 +00:00
nds32_tlb.c nds32: add new target type nds32_v2, nds32_v3, nds32_v3m 2013-06-05 19:27:35 +00:00
nds32_tlb.h nds32: add new target type nds32_v2, nds32_v3, nds32_v3m 2013-06-05 19:27:35 +00:00
nds32_v2.c Conform to C99 integer types format specifiers 2014-01-15 12:40:42 +00:00
nds32_v2.h nds32: add new target type nds32_v2, nds32_v3, nds32_v3m 2013-06-05 19:27:35 +00:00
nds32_v3.c Conform to C99 integer types format specifiers 2014-01-15 12:40:42 +00:00
nds32_v3.h nds32: add new target type nds32_v2, nds32_v3, nds32_v3m 2013-06-05 19:27:35 +00:00
nds32_v3_common.c Conform to C99 integer types format specifiers 2014-01-15 12:40:42 +00:00
nds32_v3_common.h nds32: remove .soft_reset_halt dependency 2013-09-13 19:38:09 +00:00
nds32_v3m.c Conform to C99 integer types format specifiers 2014-01-15 12:40:42 +00:00
nds32_v3m.h nds32: add new target type nds32_v2, nds32_v3, nds32_v3m 2013-06-05 19:27:35 +00:00
oocd_trace.c oocd_trace: fix warnings 2013-07-15 09:54:44 +00:00
oocd_trace.h update files to correct FSF address 2013-06-05 19:52:42 +00:00
quark_x10xx.c quark_x10xx: add new target quark_x10xx 2014-02-11 13:07:29 +00:00
register.c update files to correct FSF address 2013-06-05 19:52:42 +00:00
register.h gdb: add default description reg types 2013-09-21 20:08:16 +00:00
smp.c Constify received GDB packet 2014-03-04 20:17:34 +00:00
smp.h Constify received GDB packet 2014-03-04 20:17:34 +00:00
startup.tcl tcl: introduce init_target_events and use it for gdb flashing events 2014-03-29 08:40:03 +00:00
target.c tcl: introduce init_target_events and use it for gdb flashing events 2014-03-29 08:40:03 +00:00
target.h flash: Constify write buffer 2014-03-17 12:47:18 +00:00
target_request.c target: check target supports target_request_data 2013-09-08 16:12:27 +00:00
target_request.h update files to correct FSF address 2013-06-05 19:52:42 +00:00
target_type.h target: add profiling interface 2013-09-13 19:37:07 +00:00
testee.c update files to correct FSF address 2013-06-05 19:52:42 +00:00
trace.c update files to correct FSF address 2013-06-05 19:52:42 +00:00
trace.h update files to correct FSF address 2013-06-05 19:52:42 +00:00
x86_32_common.c quark_x10xx: add new target quark_x10xx 2014-02-11 13:07:29 +00:00
x86_32_common.h quark_x10xx: add new target quark_x10xx 2014-02-11 13:07:29 +00:00
xscale.c target: remove memory leaks 2014-03-29 08:04:55 +00:00
xscale.h target: xscale more human vector catching 2013-07-01 08:44:59 +00:00