]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
ASoC: mediatek: mt8195-mt6359: Properly register sound card for SOF
authorAngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Tue, 6 Sep 2022 09:27:23 +0000 (11:27 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 21 Oct 2022 10:38:26 +0000 (12:38 +0200)
[ Upstream commit 64ec924c781ee846bd469be8d1d6bbed78c0f439 ]

Adding a probe callback on this snd_soc_card is required when
Sound Open Firmware support is desired, as we need to appropriately
populate the stream_name for SOF to be able to bind widgets.
Failing to do so will produce errors when applying the SOF topology
leading to card registration failure (so, no sound).
While at it, also make sure to fill the topology_shortname as required.

Fixes: 0caf1120c583 ("ASoC: mediatek: mt8195: extract SOF common code")
Signed-off-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Link: https://lore.kernel.org/r/20220906092727.37324-2-angelogioacchino.delregno@collabora.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
sound/soc/mediatek/mt8195/mt8195-mt6359.c

index c530e3fc27e43b7b2cec24a48b5803f4c3e8940d..961e769602d6a45de4adf6925f2edc70053c38ba 100644 (file)
@@ -1383,7 +1383,13 @@ static int mt8195_mt6359_dev_probe(struct platform_device *pdev)
                sof_priv->num_streams = ARRAY_SIZE(g_sof_conn_streams);
                sof_priv->sof_dai_link_fixup = mt8195_dai_link_fixup;
                soc_card_data->sof_priv = sof_priv;
+               card->probe = mtk_sof_card_probe;
                card->late_probe = mtk_sof_card_late_probe;
+               if (!card->topology_shortname_created) {
+                       snprintf(card->topology_shortname, 32, "sof-%s", card->name);
+                       card->topology_shortname_created = true;
+               }
+               card->name = card->topology_shortname;
                sof_on = 1;
        }