How to debug with Serial Wire Viewer tracing on STM32MP15

Revision as of 18:20, 22 January 2021 by Registered User

This article does not intend to cover all STM32CubeIDE Serial Wire Viewer (SWV) capabilities; complete information is available in (UM2609), chapter 4. This article only provides some setup information for STM32MP15 serie, debugging Cortex-M in Production Mode.
In that mode, the available console on the board (UART4) is used by Cortex-A Linux.And the clock tree is managed by Linux. 'Trace clock' needed to setup SWO is available form Linux console with command: awk '/ck_trace/{print $5}' /sys/kernel/debug/clk/clk_summary
In order to test, let's modify main.c file from a generated project with a looping variable 'i', as depicted hereafter.

Trace clock from Linux console


Then, setup debug configuration, enabling SWV and setting the clock: 133.25MHz here.

Swv-dbg-cfg.png


Stopping Debug session, let's setup Comparator 0 in order to spy variable 'i'.

SWV Setting


Resuming debug session gives inside SWV Data Trace view the corresponding graphic.

SWV Data Trace Output