ASoC: Intel: sof_sdw_rt712_sdca: construct cards->components by name_prefix
authorBard Liao <yung-chuan.liao@linux.intel.com>
Thu, 12 Oct 2023 19:08:09 +0000 (15:08 -0400)
committerMark Brown <broonie@kernel.org>
Thu, 12 Oct 2023 19:27:48 +0000 (20:27 +0100)
sof_sdw_rt712_sdca is used by rt712 and rt713. Using different
cards->components string allow UCM distinguish the two codecs.

Reviewed-by: Rander Wang <rander.wang@intel.com>
Signed-off-by: Bard Liao <yung-chuan.liao@linux.intel.com>
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20231012190826.142619-7-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/intel/boards/sof_sdw_rt712_sdca.c

index 84c8025d24e3f7bbbc3ea612312607e967f20491..3092029419dfbed45989b8859d5203bf8993589c 100644 (file)
@@ -80,10 +80,12 @@ int sof_sdw_rt712_spk_init(struct snd_soc_card *card,
 static int rt712_sdca_dmic_rtd_init(struct snd_soc_pcm_runtime *rtd)
 {
        struct snd_soc_card *card = rtd->card;
+       struct snd_soc_dai *codec_dai = snd_soc_rtd_to_codec(rtd, 0);
+       struct snd_soc_component *component = codec_dai->component;
 
        card->components = devm_kasprintf(card->dev, GFP_KERNEL,
-                                         "%s mic:rt712-sdca-dmic",
-                                         card->components);
+                                         "%s mic:%s",
+                                         card->components, component->name_prefix);
        if (!card->components)
                return -ENOMEM;