]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
ASoC: sof: Add domain_id, heap_bytes and stack_bytes to snd_sof_widget
authorJyri Sarha <jyri.sarha@linux.intel.com>
Mon, 12 Jan 2026 11:32:19 +0000 (13:32 +0200)
committerMark Brown <broonie@kernel.org>
Mon, 12 Jan 2026 11:48:37 +0000 (11:48 +0000)
Add dp_domain_id, dp_heap_bytes and dp_stack_bytes to struct
snd_sof_widget and fill the values from topology tuples with
SOF_TKN_COMP_DOMAIN_ID, SOF_TKN_COMP_STACK_BYTES_REQUIREMENT and
SOF_TKN_COMP_HEAP_BYTES_REQUIREMENT tokens.

Signed-off-by: Jyri Sarha <jyri.sarha@linux.intel.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-by: Guennadi Liakhovetski <guennadi.liakhovetski@linux.intel.com>
Reviewed-by: Péter Ujfalusi <peter.ujfalusi@linux.intel.com>
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Link: https://patch.msgid.link/20260112113221.4442-3-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/sof/ipc4-topology.c
sound/soc/sof/sof-audio.h

index 479772dc466a8dfb8b5e518ca8f65370cb8ad7cb..a14023c4c3e785b49770232d0cbcdd981ff77bed 100644 (file)
@@ -158,6 +158,12 @@ static const struct sof_topology_token comp_ext_tokens[] = {
                offsetof(struct snd_sof_widget, core)},
        {SOF_TKN_COMP_SCHED_DOMAIN, SND_SOC_TPLG_TUPLE_TYPE_STRING, get_token_comp_domain,
                offsetof(struct snd_sof_widget, comp_domain)},
+       {SOF_TKN_COMP_DOMAIN_ID, SND_SOC_TPLG_TUPLE_TYPE_WORD, get_token_u32,
+               offsetof(struct snd_sof_widget, dp_domain_id)},
+       {SOF_TKN_COMP_HEAP_BYTES_REQUIREMENT, SND_SOC_TPLG_TUPLE_TYPE_WORD, get_token_u32,
+               offsetof(struct snd_sof_widget, dp_heap_bytes)},
+       {SOF_TKN_COMP_STACK_BYTES_REQUIREMENT, SND_SOC_TPLG_TUPLE_TYPE_WORD, get_token_u32,
+               offsetof(struct snd_sof_widget, dp_stack_bytes)},
 };
 
 static const struct sof_topology_token gain_tokens[] = {
index a8b93a2eec9c81f4435e03983b1139aa01b27512..03c8dd29e0711e9518bdc9c8547196d30c4d2b2c 100644 (file)
@@ -454,6 +454,11 @@ struct snd_sof_widget {
        /* Scheduling domain (enum sof_comp_domain), unset, Low Latency, or Data Processing */
        u32 comp_domain;
 
+       /* The values below are added to mod_init pay load if comp_domain indicates DP component */
+       u32 dp_domain_id;       /* DP process userspace domain ID */
+       u32 dp_stack_bytes;     /* DP process stack size requirement in bytes */
+       u32 dp_heap_bytes;      /* DP process heap size requirement in bytes */
+
        struct snd_soc_dapm_widget *widget;
        struct list_head list;  /* list in sdev widget list */
        struct snd_sof_pipeline *spipe;