diff mbox series

[v2,13/18] ASoC: SOF: Add a tuples array to struct snd_sof_widget

Message ID 20220308164344.577647-14-ranjani.sridharan@linux.intel.com
State Superseded
Headers show
Series Clean ups and preparation for IPC abstraction in the SOF driver | expand

Commit Message

Ranjani Sridharan March 8, 2022, 4:43 p.m. UTC
Add 2 new fields to snd_sof_widget to store an array of tuples
defined by struct snd_sof_tuple and the number of tuples. When the
topology gets parsed, the tuples associated with a widget will be stored
in this array and will be used to construct the IPC structure
depending on the IPC version.

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

Patch

diff --git a/sound/soc/sof/sof-audio.h b/sound/soc/sof/sof-audio.h
index 10330d826d40..2a1da9e13279 100644
--- a/sound/soc/sof/sof-audio.h
+++ b/sound/soc/sof/sof-audio.h
@@ -30,6 +30,18 @@ 
 
 #define WIDGET_IS_DAI(id) ((id) == snd_soc_dapm_dai_in || (id) == snd_soc_dapm_dai_out)
 
+/** struct snd_sof_tuple - Tuple info
+ * @token:	Token ID
+ * @value:	union of a string or a u32 values
+ */
+struct snd_sof_tuple {
+	u32 token;
+	union {
+		u32 v;
+		const char *s;
+	} value;
+};
+
 /* PCM stream, mapped to FW component  */
 struct snd_sof_pcm_stream {
 	u32 comp_id;
@@ -112,6 +124,9 @@  struct snd_sof_widget {
 
 	const guid_t uuid;
 
+	int num_tuples;
+	struct snd_sof_tuple *tuples;
+
 	void *private;		/* core does not touch this */
 };