From d71573a006a2fc2b83c076c556b88166f4e3dec3 Mon Sep 17 00:00:00 2001 From: Rouven Czerwinski Date: Mon, 24 Jun 2019 12:00:43 +0200 Subject: add gdb helper scripts to load barebox symbols Add a gdb script with two helper functions which use the new pbl_barebox_break symbol to calculate the current barebox load address on the device and loads a barebox ELF file to this address. Signed-off-by: Rouven Czerwinski Signed-off-by: Sascha Hauer --- Documentation/user/debugging.rst | 21 +++++++++++++++++++++ Documentation/user/user-manual.rst | 1 + 2 files changed, 22 insertions(+) create mode 100644 Documentation/user/debugging.rst (limited to 'Documentation') diff --git a/Documentation/user/debugging.rst b/Documentation/user/debugging.rst new file mode 100644 index 0000000000..15cb439043 --- /dev/null +++ b/Documentation/user/debugging.rst @@ -0,0 +1,21 @@ +Debugging with OpenOCD +====================== + +Barebox can be configured to break on prebootloader and main barebox entry. This +breakpoint can not be resumed and will stop the board to allow the user to +attach a JTAG debugger with OpenOCD. Additionally, barebox provides helper +scripts to load the symbols from the ELF binaries. +The python scripts require `pyelftools`. +To load the scripts into your gdb session, run the following command in the +barebox directory: + +.. code-block:: none + + (gdb) source scripts/gdb/helper.py + +This makes two new commands available in gdb, `bb-load-symbols` and +`bb-skip-break`. `bb-load-symbols` can load either the main `barebox` file or +one of the .pbl files in the image directories. The board needs to be stopped in +either the prebootloader or main barebox breakpoint, and gdb needs to be +connected to OpenOCD. To continue booting the board, `bb-skip-break` jumps over +the breakpoint and continues the barebox execution. diff --git a/Documentation/user/user-manual.rst b/Documentation/user/user-manual.rst index 516b760b1b..f04981c3f0 100644 --- a/Documentation/user/user-manual.rst +++ b/Documentation/user/user-manual.rst @@ -33,6 +33,7 @@ Contents: system-reset state random + debugging * :ref:`search` * :ref:`genindex` -- cgit v1.2.3