From 009d02c0e1962e1ebf21afb33cca2f8e50beea8a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Krzysztof=20Chru=C5=9Bci=C5=84ski?= Date: Mon, 20 May 2024 11:56:52 +0200 Subject: [PATCH] doc: services: debugging: Add Coresight Trace Deformatter documentation MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Add documenation for Coresight Trace Deformatter. Signed-off-by: Krzysztof Chruściński --- doc/services/debugging/cs_trace_defmt.rst | 23 +++++++++++++++++++++++ doc/services/debugging/index.rst | 1 + 2 files changed, 24 insertions(+) create mode 100644 doc/services/debugging/cs_trace_defmt.rst diff --git a/doc/services/debugging/cs_trace_defmt.rst b/doc/services/debugging/cs_trace_defmt.rst new file mode 100644 index 00000000000..7bade40c9f7 --- /dev/null +++ b/doc/services/debugging/cs_trace_defmt.rst @@ -0,0 +1,23 @@ +.. _cs_trace_defmt: + +ARM Coresight Trace Deformatter +############################### + +Formatter is a method of wrapping multiple trace streams (specified by 7 bit ID) into a +single output stream. Formatter is using 16 byte frames which wraps up to 15 bytes of +data. It is used, for example, by ETR (Embedded Trace Router) which is a circular RAM +buffer where data from various trace streams can be saved. Typically tracing data is +decoded offline by the host but deformatter can be used on-chip to decode the data during +application runtime. + +Usage +##### + +Deformatter is initialized with a user callback. Data is decoded using +:c:func:`cs_trace_defmt_process` in 16 bytes chunks. Callback is called whenever stream changes or +end of chunk is reached. Callback contains stream ID and the data. + +API documentation +***************** + +.. doxygengroup:: cs_trace_defmt diff --git a/doc/services/debugging/index.rst b/doc/services/debugging/index.rst index cbc566bdbf0..1a1e4f91893 100644 --- a/doc/services/debugging/index.rst +++ b/doc/services/debugging/index.rst @@ -12,3 +12,4 @@ Debugging debugmon.rst mipi_stp_decoder.rst symtab.rst + cs_trace_defmt.rst