Commit 006a6506 authored by Manuel Argüelles's avatar Manuel Argüelles Committed by Martí Bolívar
Browse files

doc: flash_debug: add NXP S32 debug probe docs



Document needed steps to download, install and setup the debug host
tools for NXP S32 Debug Probe.

Signed-off-by: default avatarManuel Argüelles <manuel.arguelles@nxp.com>
parent 52e9671f
Loading
Loading
Loading
Loading
+68 −0
Original line number Diff line number Diff line
@@ -377,6 +377,68 @@ Zephyr RTOS Awareness
To enable Zephyr RTOS awareness follow the steps described in
`Lauterbach TRACE32 Zephyr OS Awareness Manual`_.

.. _nxp-s32-debug-host-tools:

NXP S32 Debug Probe Host Tools
******************************

:ref:`nxp-s32-debug-probe` is designed to work in conjunction with
`NXP S32 Design Studio for S32 Platform`_.

Download (registration required) NXP S32 Design Studio for S32 Platform and
follow the `S32 Design Studio for S32 Platform Installation User Guide`_ to get
the necessary debug host tools and associated USB device drivers.

Note that Zephyr RTOS-awareness support for the NXP S32 GDB server depends on
the target device. Consult the product release notes for more information.

Supported west commands:

1. debug
#. debugserver
#. attach

Basic usage
-----------

Before starting, add NXP S32 Design Studio installation directory to the system
:ref:`PATH environment variable <env_vars>`. Alternatively, it can be passed to
the runner on each invocation via ``--s32ds-path`` as shown below:

.. tabs::

   .. group-tab:: Linux

      .. code-block:: console

         west debug --s32ds-path=/opt/NXP/S32DS.3.5

   .. group-tab:: Windows

      .. code-block:: console

         west debug --s32ds-path=C:\NXP\S32DS.3.5

If multiple S32 debug probes are connected to the host via USB, the runner will
ask the user to select one via command line prompt before continuing. The
connection string for the probe can be also specified when invoking the runner
via ``--dev-id=<connection-string>``. Consult NXP S32 debug probe user manual
for details on how to construct the connection string. For example, if using a
probe with serial ID ``00:04:9f:00:ca:fe``:

.. code-block:: console

   west debug --dev-id='s32dbg:00:04:9f:00:ca:fe'

It is possible to pass extra options to the debug host tools via ``--tool-opt``.
When executing ``debug`` or ``attach`` commands, the tool options will be passed
to the GDB client only. When executing ``debugserver``, the tool options will be
passed to the GDB server. For example, to load a Zephyr application to SRAM and
afterwards detach the debug session:

.. code-block:: console

   west debug --tool-opt='--batch'

.. _J-Link Software and Documentation Pack:
   https://www.segger.com/downloads/jlink/#J-LinkSoftwareAndDocumentationPack
@@ -416,3 +478,9 @@ To enable Zephyr RTOS awareness follow the steps described in

.. _MCUXpresso Installer:
	https://www.nxp.com/lgfiles/updates/mcuxpresso/MCUXpressoInstaller.exe

.. _NXP S32 Design Studio for S32 Platform:
   https://www.nxp.com/design/software/development-software/s32-design-studio-ide/s32-design-studio-for-s32-platform:S32DS-S32PLATFORM

.. _S32 Design Studio for S32 Platform Installation User Guide:
   https://www.nxp.com/webapp/Download?colCode=S32DSIG
+34 −15
Original line number Diff line number Diff line
@@ -33,21 +33,23 @@ host tools, or with J-Link firmware to communicate with J-Link debug host
tools.


+---------------------------------------+---------------------------------------------------------------+
+------------------------------------------+------------------------------------------------------------------------------------+
|| *Debug Probes & Host Tools*             |                                     Host Tools                                     |
+| *Compatibility Chart*                +--------------------+--------------------+---------------------+
|                                       |  **J-Link Debug**  |    **OpenOCD**     |      **pyOCD**      |
+----------------+----------------------+--------------------+--------------------+---------------------+
|                | **LPC-Link2 J-Link** |           ✓        |                    |                     |
|                +----------------------+--------------------+--------------------+---------------------+
|                | **OpenSDA DAPLink**  |                    |          ✓         |          ✓          |
|                +----------------------+--------------------+--------------------+---------------------+
|  Debug Probes  | **OpenSDA J-Link**   |           ✓        |                    |                     |
|                +----------------------+--------------------+--------------------+---------------------+
|                | **J-Link External**  |           ✓        |          ✓         |                     |
|                +----------------------+--------------------+--------------------+---------------------+
|                | **ST-LINK/V2-1**     |           ✓        |          ✓         | *some STM32 boards* |
+----------------+----------------------+--------------------+--------------------+---------------------+
+| *Compatibility Chart*                   +--------------------+--------------------+---------------------+--------------------+
|                                          |  **J-Link Debug**  |    **OpenOCD**     |      **pyOCD**      |   **NXP S32DS**    |
+----------------+-------------------------+--------------------+--------------------+---------------------+--------------------+
|                | **LPC-Link2 J-Link**    |           ✓        |                    |                     |                    |
|                +-------------------------+--------------------+--------------------+---------------------+--------------------+
|                | **OpenSDA DAPLink**     |                    |          ✓         |          ✓          |                    |
|                +-------------------------+--------------------+--------------------+---------------------+--------------------+
|  Debug Probes  | **OpenSDA J-Link**      |           ✓        |                    |                     |                    |
|                +-------------------------+--------------------+--------------------+---------------------+--------------------+
|                | **J-Link External**     |           ✓        |          ✓         |                     |                    |
|                +-------------------------+--------------------+--------------------+---------------------+--------------------+
|                | **ST-LINK/V2-1**        |           ✓        |          ✓         | *some STM32 boards* |                    |
|                +-------------------------+--------------------+--------------------+---------------------+--------------------+
|                | **NXP S32 Debug Probe** |                    |                    |                     |          ✓         |
+----------------+-------------------------+--------------------+--------------------+---------------------+--------------------+


Some supported boards in Zephyr do not include an onboard debug probe and
@@ -373,6 +375,20 @@ Where board_uid can be obtained using twister's generate-hardware-map
option. For more information about twister and available options, see
:ref:`twister_script`.

.. _nxp-s32-debug-probe:

NXP S32 Debug Probe
*******************

`NXP S32 Debug Probe`_ enables NXP S32 target system debugging via a standard
debug port while connected to a developer's workstation via USB or remotely via
Ethernet.

NXP S32 Debug Probe is designed to work in conjunction with NXP S32 Design Studio
(S32DS) and NXP Automotive microcontrollers and processors. Install the debug
host tools as in indicated in :ref:`nxp-s32-debug-host-tools` before you program
the firmware.

.. _LPCScrypt:
   https://www.nxp.com/lpcscrypt

@@ -402,3 +418,6 @@ option. For more information about twister and available options, see

.. _MCUXpresso Installer:
	https://www.nxp.com/lgfiles/updates/mcuxpresso/MCUXpressoInstaller.exe

.. _NXP S32 Debug Probe:
   https://www.nxp.com/design/software/automotive-software-and-tools/s32-debug-probe:S32-DP