docs: JTAG debugging updates for C3, S3

- give concrete JTAG pin names for S3
- describe efuses which are related to JTAG debugging (S3, C3)
pull/7518/head
Ivan Grokhotkov 2021-08-27 14:01:53 +02:00
rodzic 89b316b6e0
commit 07d7b4344f
4 zmienionych plików z 25 dodań i 8 usunięć

Wyświetl plik

@ -5,6 +5,19 @@ Configure Other JTAG Interface
Refer to section :ref:`jtag-debugging-selecting-jtag-adapter` for guidance what JTAG interface to select, so it is able to operate with OpenOCD and {IDF_TARGET_NAME}. Then follow three configuration steps below to get it working.
.. only:: SOC_USB_SERIAL_JTAG_SUPPORTED
Configure eFuses
^^^^^^^^^^^^^^^^
By default, {IDF_TARGET_NAME} JTAG interface is connected to the :doc:`built-in USB_SERIAL_JTAG peripheral <configure-builtin-jtag>`. To use an external JTAG adapter instead, you need to switch the JTAG interface to the GPIO pins. This can be done by burning eFuses using ``espefuse.py`` tool.
Burning eFuses is an irreversible operation, so consider both options below before starting the process.
- Burning ``DIS_USB_JTAG`` eFuse will permanently disable the connection between USB_SERIAL_JTAG and the JTAG port of the CPU. JTAG interface can then be connected to |jtag-gpio-list|. Note that USB CDC functionality of USB_SERIAL_JTAG will still be useable, i.e. flashing and monitoring over USB CDC will still work.
- Burning ``JTAG_SEL_ENABLE`` eFuse will enable selection of JTAG interface by a strapping pin, |jtag-sel-gpio|. If the strapping pin is low when {IDF_TARGET_NAME} is reset, JTAG interface will use |jtag-gpio-list|. If the strapping pin is high, USB_SERIAL_JTAG will be used as the JTAG interface.
Configure Hardware
^^^^^^^^^^^^^^^^^^

Wyświetl plik

@ -125,6 +125,9 @@
* - MTMS / GPIO4
- TMS
.. |jtag-sel-gpio| replace:: GPIO10
.. |jtag-gpio-list| replace:: GPIO4-GPIO7
---
.. run-openocd-d3

Wyświetl plik

@ -111,15 +111,18 @@
* - ESP32-S3 Pin
- JTAG Signal
* - MTDO
* - MTDO / GPIO40
- TDO
* - MTDI
* - MTDI / GPIO41
- TDI
* - MTCK
* - MTCK / GPIO39
- TCK
* - MTMS
* - MTMS / GPIO42
- TMS
.. |jtag-sel-gpio| replace:: GPIO3
.. |jtag-gpio-list| replace:: GPIO39-GPIO42
---
.. run-openocd-d3

Wyświetl plik

@ -64,7 +64,7 @@ The key software and hardware components that perform debugging of {IDF_TARGET_N
Likewise, the "Application Loading and Monitoring" label indicates the key software and hardware components that allow an application to be compiled, built, and flashed to {IDF_TARGET_NAME}, as well as to provide means to monitor diagnostic messages from {IDF_TARGET_NAME}.
"Debugging With JTAG" and "Application Loading and Monitoring" is integrated under the `Eclipse <https://www.eclipse.org/>`_ IDE in order to provide a quick and easy transition between writing/compiling/loading/debugging code. The Eclipse IDE (and the integrated debugging software) is available for Windows, Linux and macOS platforms.
"Debugging With JTAG" and "Application Loading and Monitoring" is integrated under the `Eclipse <https://www.eclipse.org/>`_ IDE in order to provide a quick and easy transition between writing/compiling/loading/debugging code. The Eclipse IDE (and the integrated debugging software) is available for Windows, Linux and macOS platforms. Depending on user preferences, both the debugger and ``idf.py build`` can also be used directly from terminal/command line, instead of Eclipse.
.. only:: not SOC_USB_SERIAL_JTAG_SUPPORTED
@ -78,9 +78,7 @@ Likewise, the "Application Loading and Monitoring" label indicates the key softw
.. note::
Debugging through the USB interface implemented in {IDF_TARGET_NAME} requires to have a chip with revision 3 or newer. Please use other debugging options (e.g. with ESP-Prog) for chip revision 1 and 2. The easiest way to determine the chip revision is to look for the `Chip is ESP32-C3 (revision 3)` message near the end of a successful chip flashing done by `idf.py flash`.
Depending on user preferences, both `debugger` and `idf.py build` can be operated directly from terminal/command line, instead from Eclipse.
Debugging through the USB interface implemented in {IDF_TARGET_NAME} requires to have a chip with revision 3 or newer. Please use other debugging options (e.g. with ESP-Prog) for chip revision 1 and 2. The easiest way to determine the chip revision is to look for the ``Chip is ESP32-C3 (revision 3)`` message near the end of a successful chip flashing done by ``idf.py flash``.
.. _jtag-debugging-selecting-jtag-adapter: