[PATCH 0/7] ASoC: SOF: ipc4: Add support for 'mtrace' log extraction

Peter Ujfalusi peter.ujfalusi at linux.intel.com
Fri Sep 9 13:43:25 CEST 2022


Hi,

The traditional dtrace used by SOF IPC3 is not available with firmware built
as IPC4.
With the new IPC implementation we have a new log extraction infrastructure and
'mtrace' is one way to get the logs out from the firmware for debugging.

The protocol is relatively simple:
The shared sram's debug window is split up to 'slots'
Each DSP core will get a dedicated slot assigned for log output.
The function of a slots can be checked in a descriptor table.
The slot used for logging has the following layout:

 u32 host_read_ptr;
 u32 dsp_write_ptr;
 u8 buffer[];

 The two pointers are offsets within the buffer.

The firmware manages the write pointer, the host updates the read pointer value
and based on the two pointers the log entries can be extracted.
The firmware also sends notification when new entries are available in the log
slot.

The user space tool to read the log entries can be found in the SOF repository:
https://github.com/thesofproject/sof/blob/main/tools/mtrace/mtrace-reader.py

Regards,
Peter
---
Peter Ujfalusi (7):
  ASoC: SOF: ipc4: Only print LOG BUFFER update message info if
    requested
  ASoC: SOF: ipc4: Add macro to get core ID from log buffer status
    message
  ASoC: SOF: ipc4: Add define for the outbox window index
  ASoC: SOF: ipc4: Configure the debug box offset
  ASoC: SOF: ipc4: Add support for mtrace log extraction
  ASoC: SOF: Intel: icl: Set IPC4-specific DSP ops
  ASoC: SOF: Intel: Add mtrace type information for IPC4

 include/sound/sof/ipc4/header.h |   5 +
 sound/soc/sof/Makefile          |   3 +-
 sound/soc/sof/intel/apl.c       |   2 +
 sound/soc/sof/intel/cnl.c       |   2 +
 sound/soc/sof/intel/icl.c       |  30 +-
 sound/soc/sof/intel/mtl.c       |   2 +
 sound/soc/sof/intel/tgl.c       |   2 +
 sound/soc/sof/ipc4-loader.c     |   2 +
 sound/soc/sof/ipc4-mtrace.c     | 643 ++++++++++++++++++++++++++++++++
 sound/soc/sof/ipc4-priv.h       |  18 +-
 sound/soc/sof/ipc4.c            |  22 +-
 11 files changed, 724 insertions(+), 7 deletions(-)
 create mode 100644 sound/soc/sof/ipc4-mtrace.c

-- 
2.37.3



More information about the Alsa-devel mailing list