Unlike most CODEC drivers, the CS35L41 driver did not have the non_legacy_dai_naming set, meaning the corresponding DAI has been traditionally registered using the legacy naming: spi-VLV1776:0x
The recent migration to the new legacy DAI naming style has implicitly corrected that behavior and DAI gets now registered via the non-legacy naming, i.e. cs35l41-pcm.
The problem is the acp5x platform driver is now broken as it continues to refer to the above mentioned codec using the legacy DAI naming in function acp5x_cs35l41_hw_params() and, therefore, the related setup is not being executed anymore.
Let's fix that by replacing the obsolete DAI name with the correct one.
Fixes: 129f055a2144 ("ASoC: core: Switch core to new DAI naming flag") Signed-off-by: Cristian Ciocaltea cristian.ciocaltea@collabora.com Reviewed-by: Charles Keepax ckeepax@opensource.cirrus.com --- Changes in v2: - Corrected the SHA for the Fixes commit - Added Reviewed-by tag from Charles
sound/soc/amd/vangogh/acp5x-mach.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/sound/soc/amd/vangogh/acp5x-mach.c b/sound/soc/amd/vangogh/acp5x-mach.c index 727de46860b1..af3737ef9707 100644 --- a/sound/soc/amd/vangogh/acp5x-mach.c +++ b/sound/soc/amd/vangogh/acp5x-mach.c @@ -178,8 +178,7 @@ static int acp5x_cs35l41_hw_params(struct snd_pcm_substream *substream, ret = 0; for (i = 0; i < num_codecs; i++) { codec_dai = asoc_rtd_to_codec(rtd, i); - if ((strcmp(codec_dai->name, "spi-VLV1776:00") == 0) || - (strcmp(codec_dai->name, "spi-VLV1776:01") == 0)) { + if (strcmp(codec_dai->name, "cs35l41-pcm") == 0) { switch (params_rate(params)) { case 48000: bclk_val = 1536000; -- 2.37.1