openocd/src
Antonio Borneo cc75aa37c5 openocd: add post-init and pre-shutdown helpers
It is a common requirement to automatically execute some command
after "init".
This can be achieved, either in scripts or through OpenOCD command
line, by explicitly calling "init" followed by the commands.
But this approach fails if the request for post-init commands is
spread across configuration files; only one of the files can split
pre-init and post-init status by calling "init".
The common workaround is to "rename" the command "init" and
replace it with a TCL proc that calls the original "init" and the
post-init commands. E.g. in Zephyr script [1].

To simplify and formalize the post-init execution, use a TCL list
that contains the list of commands to be executed. Every script
can contribute adding new commands, e.g. using "lappend".

In the same way, formalize the pre-shutdown execution with a TCL
list of user commands to be executed before OpenOCD exit.

Document them and add trivial examples.

Drop from documentation the suggestion to rename "shutdown".

Change-Id: I9464fb40ccede3e7760d425873adca363b49a64f
Signed-off-by: Antonio Borneo <borneo.antonio@gmail.com>
Link: [1] https://github.com/zephyrproject-rtos/zephyr/blob/zephyr-v2.7.1/boards/arm/nucleo_h743zi/support/openocd.cfg#L15
Reviewed-on: https://review.openocd.org/c/openocd/+/6851
Reviewed-by: Tomas Vanek <vanekt@fbl.cz>
Tested-by: jenkins
2022-05-14 08:58:36 +00:00
..
flash bluenrg: add support for bluenrg-lps device and board 2022-05-07 11:03:25 +00:00
helper openocd: add post-init and pre-shutdown helpers 2022-05-14 08:58:36 +00:00
jtag drivers/cmsis-dap: Correct the DAP protocol parameter parsing error 2022-05-01 04:48:19 +00:00
pld openocd: use single line for register_commands*() 2021-11-23 11:03:38 +00:00
rtos rtos: zephyr: do not use deprecated symbols name 2022-04-23 09:26:32 +00:00
rtt openocd: include config.h in every file .c 2022-03-26 13:32:57 +00:00
server openocd: add post-init and pre-shutdown helpers 2022-05-14 08:58:36 +00:00
svf openocd: fix Yoda conditions with checkpatch 2021-07-24 10:38:31 +01:00
target aarch64: don't wait for smp targets halted in deassert reset 2022-05-14 08:57:36 +00:00
transport openocd: remove NULL comparisons with checkpatch [1/2] 2021-07-24 10:38:00 +01:00
xsvf openocd: fix simple cases of NULL comparison 2021-07-24 10:37:49 +01:00
hello.c openocd: fix simple cases of Yoda condition 2021-07-20 14:55:24 +01:00
hello.h Make #include guard naming consistent 2016-05-24 22:30:55 +01:00
main.c Cleanup of config/includes. 2021-05-01 14:35:09 +01:00
Makefile.am build: Fix out-of-tree with --disable-dependency-tracking configure flag 2021-04-05 23:24:14 +01:00
openocd.c openocd: add post-init and pre-shutdown helpers 2022-05-14 08:58:36 +00:00
openocd.h Make #include guard naming consistent 2016-05-24 22:30:55 +01:00