aboutsummaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorAntonio Borneo <borneo.antonio@gmail.com>2020-10-15 14:45:27 +0200
committerAntonio Borneo <borneo.antonio@gmail.com>2020-11-04 17:37:59 +0000
commite2e8a5f467e8e35618ce4fbf16b8da4e682d8258 (patch)
tree5b200e7d3b599606143b36149f64182775759565 /doc
parent360b2c27012f3f787382bee9ce0b4e4707b22dc3 (diff)
downloadriscv-openocd-e2e8a5f467e8e35618ce4fbf16b8da4e682d8258.zip
riscv-openocd-e2e8a5f467e8e35618ce4fbf16b8da4e682d8258.tar.gz
riscv-openocd-e2e8a5f467e8e35618ce4fbf16b8da4e682d8258.tar.bz2
gdb_server: allow multiple GDB connections to selected targets
The default way of working is to have a single GDB attached to one target, so OpenOCD accepts only one connection to the GDB port of each targets and rejects any further connection. There are some barely safe use cases in which it could get useful having a second GDB connection to the same target. One such use case is while using GDB as a 'non-intrusive memory inspector', as explained in the OpenOCD documentation. One GDB can be left running an infinite loop to dump some memory area, or even analysing the content, while keeping a second GDB ready for user interaction or spot memory check. Add a target configure option to specify the maximum number of GDB connections allowed for that target, keeping the default to 1. Change-Id: I4985a602e61588df0b527d2f2aa5b955c93e125e Signed-off-by: Antonio Borneo <borneo.antonio@gmail.com> Reviewed-on: http://openocd.zylin.com/5865 Tested-by: jenkins Reviewed-by: Tarek BOCHKATI <tarek.bouchkati@gmail.com>
Diffstat (limited to 'doc')
-rw-r--r--doc/openocd.texi13
1 files changed, 12 insertions, 1 deletions
diff --git a/doc/openocd.texi b/doc/openocd.texi
index ca10f8c..e6a1467 100644
--- a/doc/openocd.texi
+++ b/doc/openocd.texi
@@ -4694,6 +4694,11 @@ possible values of the parameter @var{number}, which are not only numeric values
Use this option to override, for this target only, the global parameter set with
command @command{gdb_port}.
@xref{gdb_port,,command gdb_port}.
+
+@item @code{-gdb-max-connections} @var{number} -- EXPERIMENTAL: set the maximum
+number of GDB connections that are allowed for the target. Default is 1.
+A negative value for @var{number} means unlimited connections.
+See @xref{gdbmeminspect,,Using GDB as a non-intrusive memory inspector}.
@end itemize
@end deffn
@@ -10606,7 +10611,13 @@ of a running target. Do not use GDB commands @command{continue},
and GDB would require stopping the target to get the prompt back.
Do not use this mode under an IDE like Eclipse as it caches values of
-previously shown varibles.
+previously shown variables.
+
+It's also possible to connect more than one GDB to the same target by the
+target's configuration option @code{-gdb-max-connections}. This allows, for
+example, one GDB to run a script that continuously polls a set of variables
+while other GDB can be used interactively. Be extremely careful in this case,
+because the two GDB can easily get out-of-sync.
@section RTOS Support
@cindex RTOS Support