diff options
author | Chancel Liu <chancel.liu@nxp.com> | 2024-03-05 15:56:06 +0900 |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2024-03-12 16:35:04 +0000 |
commit | 23fb6bc2696119391ec3a92ccaffe50e567c515e (patch) | |
tree | 4f872121b4a9288c361edd9038ffae1b25a506b2 | |
parent | 10eb0d3314c59dd0497282b33afabddf607b3050 (diff) |
ASoC: soc-core.c: Skip dummy codec when adding platforms
When pcm_runtime is adding platform components it will scan all
registered components. In case of DPCM FE/BE some DAI links will
configure dummy platform. However both dummy codec and dummy platform
are using "snd-soc-dummy" as component->name. Dummy codec should be
skipped when adding platforms otherwise there'll be overflow and UBSAN
complains.
Reported-by: Zhipeng Wang <zhipeng.wang_1@nxp.com>
Signed-off-by: Chancel Liu <chancel.liu@nxp.com>
Link: https://msgid.link/r/20240305065606.3778642-1-chancel.liu@nxp.com
Signed-off-by: Mark Brown <broonie@kernel.org>
-rw-r--r-- | sound/soc/soc-core.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/sound/soc/soc-core.c b/sound/soc/soc-core.c index 1e94edba12eb..2ec13d1634b6 100644 --- a/sound/soc/soc-core.c +++ b/sound/soc/soc-core.c @@ -1219,6 +1219,9 @@ static int snd_soc_add_pcm_runtime(struct snd_soc_card *card, if (!snd_soc_is_matching_component(platform, component)) continue; + if (snd_soc_component_is_dummy(component) && component->num_dai) + continue; + snd_soc_rtd_add_component(rtd, component); } } |