]> git.baikalelectronics.ru Git - kernel.git/commitdiff
ASoC: SOF: Add a tuples array to struct snd_sof_widget
authorRanjani Sridharan <ranjani.sridharan@linux.intel.com>
Tue, 8 Mar 2022 16:43:39 +0000 (08:43 -0800)
committerMark Brown <broonie@kernel.org>
Wed, 9 Mar 2022 13:30:05 +0000 (13:30 +0000)
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>
Link: https://lore.kernel.org/r/20220308164344.577647-14-ranjani.sridharan@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/sof/sof-audio.h

index 10330d826d406400a9d185b0e649a82b82011f25..2a1da9e13279497a21a6b403a113521ba76619ef 100644 (file)
 
 #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 */
 };