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, daniel.baluta@nxp.com,
	AjitKumar.Pandey@amd.com
Cc: alsa-devel@alsa-project.org, ranjani.sridharan@linux.intel.com,
	kai.vehmanen@linux.intel.com
Subject: [PATCH 1/8] ASoC: SOF: Introduce IPC independent ops for firmware tracing support
Date: Mon, 16 May 2022 13:47:04 +0300	[thread overview]
Message-ID: <20220516104711.26115-2-peter.ujfalusi@linux.intel.com> (raw)
In-Reply-To: <20220516104711.26115-1-peter.ujfalusi@linux.intel.com>

The current (dma-)trace is only supported with IPC3, it is not available
when IPC4 is used.

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com>
Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
---
 sound/soc/sof/sof-priv.h | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

diff --git a/sound/soc/sof/sof-priv.h b/sound/soc/sof/sof-priv.h
index 8ea196305e4b..a7ffb6ecf332 100644
--- a/sound/soc/sof/sof-priv.h
+++ b/sound/soc/sof/sof-priv.h
@@ -357,6 +357,22 @@ struct snd_sof_ipc_msg {
 	bool ipc_complete;
 };
 
+/**
+ * struct sof_ipc_fw_tracing_ops - IPC-specific firmware tracing ops
+ * @init:	Function pointer for initialization of the tracing
+ * @free:	Optional function pointer for freeing of the tracing
+ * @fw_crashed:	Optional function pointer to notify the tracing of a firmware crash
+ * @suspend:	Function pointer for system/runtime suspend
+ * @resume:	Function pointer for system/runtime resume
+ */
+struct sof_ipc_fw_tracing_ops {
+	int (*init)(struct snd_sof_dev *sdev);
+	void (*free)(struct snd_sof_dev *sdev);
+	void (*fw_crashed)(struct snd_sof_dev *sdev);
+	void (*suspend)(struct snd_sof_dev *sdev, pm_message_t pm_state);
+	int (*resume)(struct snd_sof_dev *sdev);
+};
+
 /**
  * struct sof_ipc_pm_ops - IPC-specific PM ops
  * @ctx_save:		Function pointer for context save
@@ -395,6 +411,7 @@ struct sof_ipc_pcm_ops;
  * @pm:		Pointer to PM ops
  * @pcm:	Pointer to PCM ops
  * @fw_loader:	Pointer to Firmware Loader ops
+ * @fw_tracing:	Pointer to Firmware tracing ops
  *
  * @tx_msg:	Function pointer for sending a 'short' IPC message
  * @set_get_data: Function pointer for set/get data ('large' IPC message). This
@@ -415,6 +432,7 @@ struct sof_ipc_ops {
 	const struct sof_ipc_pm_ops *pm;
 	const struct sof_ipc_pcm_ops *pcm;
 	const struct sof_ipc_fw_loader_ops *fw_loader;
+	const struct sof_ipc_fw_tracing_ops *fw_tracing;
 
 	int (*tx_msg)(struct snd_sof_dev *sdev, void *msg_data, size_t msg_bytes,
 		      void *reply_data, size_t reply_bytes, bool no_pm);
-- 
2.36.1


  reply	other threads:[~2022-05-16 10:48 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-05-16 10:47 [PATCH 0/8] ASoC: SOF: Introduce generic (in)firmware tracing infrastructure Peter Ujfalusi
2022-05-16 10:47 ` Peter Ujfalusi [this message]
2022-05-16 10:47 ` [PATCH 2/8] ASoC: SOF: Rename dtrace_is_supported flag to fw_trace_is_supported Peter Ujfalusi
2022-05-16 10:47 ` [PATCH 3/8] ASoC: SOF: Clone the trace code to ipc3-dtrace as fw_tracing implementation Peter Ujfalusi
2022-05-16 10:47 ` [PATCH 4/8] ASoC: SOF: Switch to IPC generic firmware tracing Peter Ujfalusi
2022-05-16 10:47 ` [PATCH 5/8] ASoC: SOF: ipc3-dtrace: Move host ops wrappers from generic header to private Peter Ujfalusi
2022-05-16 10:47 ` [PATCH 6/8] ASoC: SOF: Modify the host trace_init parameter list to include dmab Peter Ujfalusi
2022-05-16 10:47 ` [PATCH 7/8] ASoC: SOF: Introduce opaque storage of private data for firmware tracing Peter Ujfalusi
2022-05-16 10:47 ` [PATCH 8/8] ASoC: SOF: ipc3-dtrace: Move dtrace related variables local from sof_dev Peter Ujfalusi
2022-05-20 16:58 ` [PATCH 0/8] ASoC: SOF: Introduce generic (in)firmware tracing infrastructure 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=20220516104711.26115-2-peter.ujfalusi@linux.intel.com \
    --to=peter.ujfalusi@linux.intel.com \
    --cc=AjitKumar.Pandey@amd.com \
    --cc=alsa-devel@alsa-project.org \
    --cc=broonie@kernel.org \
    --cc=daniel.baluta@nxp.com \
    --cc=kai.vehmanen@linux.intel.com \
    --cc=lgirdwood@gmail.com \
    --cc=pierre-louis.bossart@linux.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.