All of lore.kernel.org
 help / color / mirror / Atom feed
From: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
To: lgirdwood@gmail.com, broonie@kernel.org,
	pierre-louis.bossart@linux.intel.com
Cc: alsa-devel@alsa-project.org, ranjani.sridharan@linux.intel.com,
	kai.vehmanen@linux.intel.com, rander.wang@intel.com
Subject: [PATCH 0/7] ASoC: SOF: ipc4: Add support for 'mtrace' log extraction
Date: Fri,  9 Sep 2022 14:43:25 +0300	[thread overview]
Message-ID: <20220909114332.31393-1-peter.ujfalusi@linux.intel.com> (raw)

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


             reply	other threads:[~2022-09-09 11:44 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-09-09 11:43 Peter Ujfalusi [this message]
2022-09-09 11:43 ` [PATCH 1/7] ASoC: SOF: ipc4: Only print LOG BUFFER update message info if requested Peter Ujfalusi
2022-09-09 11:43 ` [PATCH 2/7] ASoC: SOF: ipc4: Add macro to get core ID from log buffer status message Peter Ujfalusi
2022-09-09 11:43 ` [PATCH 3/7] ASoC: SOF: ipc4: Add define for the outbox window index Peter Ujfalusi
2022-09-09 11:43 ` [PATCH 4/7] ASoC: SOF: ipc4: Configure the debug box offset Peter Ujfalusi
2022-09-09 11:43 ` [PATCH 5/7] ASoC: SOF: ipc4: Add support for mtrace log extraction Peter Ujfalusi
2022-09-09 11:43 ` [PATCH 6/7] ASoC: SOF: Intel: icl: Set IPC4-specific DSP ops Peter Ujfalusi
2022-09-09 11:43 ` [PATCH 7/7] ASoC: SOF: Intel: Add mtrace type information for IPC4 Peter Ujfalusi
2022-09-09 21:25 ` [PATCH 0/7] ASoC: SOF: ipc4: Add support for 'mtrace' log extraction Mark Brown

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20220909114332.31393-1-peter.ujfalusi@linux.intel.com \
    --to=peter.ujfalusi@linux.intel.com \
    --cc=alsa-devel@alsa-project.org \
    --cc=broonie@kernel.org \
    --cc=kai.vehmanen@linux.intel.com \
    --cc=lgirdwood@gmail.com \
    --cc=pierre-louis.bossart@linux.intel.com \
    --cc=rander.wang@intel.com \
    --cc=ranjani.sridharan@linux.intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.