]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
ASoC: amd: use new ACP dev names for DAI links
authorBrady Norander <bradynorander@gmail.com>
Sun, 30 Mar 2025 13:08:45 +0000 (09:08 -0400)
committerMark Brown <broonie@kernel.org>
Wed, 14 May 2025 13:15:59 +0000 (15:15 +0200)
On AMD SoC platforms with an ACP2x gpu ip block (such as stoneyridge),
the amdgpu driver will create several platform devices for the ACP ASoC
driver to communicate with the ACP hardware block on the gpu. These
platform devices include dma for audio and one or multiple i2s
interfaces. The amdgpu driver has always created these platform devices
with automatic ids. The ASoC machine drives hardcode the platform device
name. This creates an issue where if the ACP platform devices are not
the first to be created, the ids can be different to what the machine
drivers expect, causing them to not find the ACP platform devices and
failing to load. Switch to using static ids for these ACP platform
devices so that the names never change.

Depends on patch: drm/amdgpu: use static ids for ACP platform devs [1]

[1] https://lore.kernel.org/all/20250325210517.2097188-1-bradynorander@gmail.com/

Signed-off-by: Brady Norander <bradynorander@gmail.com>
Link: https://patch.msgid.link/20250330130844.37870-2-bradynorander@gmail.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/amd/acp-da7219-max98357a.c
sound/soc/amd/acp-es8336.c
sound/soc/amd/acp-rt5645.c

index 02b04f355ca66315f4a7287faf5cb545bd7e68aa..42aa009c4e13d7c15ce45b8c3486c9fc9dab116a 100644 (file)
@@ -517,11 +517,11 @@ static const struct snd_soc_ops cz_rt5682_dmic1_cap_ops = {
 };
 
 SND_SOC_DAILINK_DEF(designware1,
-       DAILINK_COMP_ARRAY(COMP_CPU("designware-i2s.1.auto")));
+       DAILINK_COMP_ARRAY(COMP_CPU("designware-i2s.1")));
 SND_SOC_DAILINK_DEF(designware2,
-       DAILINK_COMP_ARRAY(COMP_CPU("designware-i2s.2.auto")));
+       DAILINK_COMP_ARRAY(COMP_CPU("designware-i2s.2")));
 SND_SOC_DAILINK_DEF(designware3,
-       DAILINK_COMP_ARRAY(COMP_CPU("designware-i2s.3.auto")));
+       DAILINK_COMP_ARRAY(COMP_CPU("designware-i2s.3")));
 
 SND_SOC_DAILINK_DEF(dlgs,
        DAILINK_COMP_ARRAY(COMP_CODEC("i2c-DLGS7219:00", "da7219-hifi")));
@@ -533,7 +533,7 @@ SND_SOC_DAILINK_DEF(adau,
        DAILINK_COMP_ARRAY(COMP_CODEC("ADAU7002:00", "adau7002-hifi")));
 
 SND_SOC_DAILINK_DEF(platform,
-       DAILINK_COMP_ARRAY(COMP_PLATFORM("acp_audio_dma.0.auto")));
+       DAILINK_COMP_ARRAY(COMP_PLATFORM("acp_audio_dma.0")));
 
 static struct snd_soc_dai_link cz_dai_7219_98357[] = {
        {
index 0193b3eae7a660ae8e4a75fa60e1258a6107a972..b16dde0e29871f67c0f83b8453cab23b4d970d18 100644 (file)
@@ -137,11 +137,11 @@ static const struct snd_soc_ops st_es8336_ops = {
 };
 
 SND_SOC_DAILINK_DEF(designware1,
-                   DAILINK_COMP_ARRAY(COMP_CPU("designware-i2s.2.auto")));
+                   DAILINK_COMP_ARRAY(COMP_CPU("designware-i2s.1")));
 SND_SOC_DAILINK_DEF(codec,
                    DAILINK_COMP_ARRAY(COMP_CODEC("i2c-ESSX8336:00", "ES8316 HiFi")));
 SND_SOC_DAILINK_DEF(platform,
-                   DAILINK_COMP_ARRAY(COMP_PLATFORM("acp_audio_dma.1.auto")));
+                   DAILINK_COMP_ARRAY(COMP_PLATFORM("acp_audio_dma.0")));
 
 static struct snd_soc_dai_link st_dai_es8336[] = {
        {
index 72ddad24dbda7cc038104c35eb7ecd247a829d49..11d3731693801ff7c976366b81108ead00907657 100644 (file)
@@ -108,15 +108,15 @@ static const struct snd_soc_ops cz_aif1_ops = {
 };
 
 SND_SOC_DAILINK_DEF(designware1,
-       DAILINK_COMP_ARRAY(COMP_CPU("designware-i2s.1.auto")));
+       DAILINK_COMP_ARRAY(COMP_CPU("designware-i2s.1")));
 SND_SOC_DAILINK_DEF(designware2,
-       DAILINK_COMP_ARRAY(COMP_CPU("designware-i2s.2.auto")));
+       DAILINK_COMP_ARRAY(COMP_CPU("designware-i2s.2")));
 
 SND_SOC_DAILINK_DEF(codec,
        DAILINK_COMP_ARRAY(COMP_CODEC("i2c-10EC5650:00", "rt5645-aif1")));
 
 SND_SOC_DAILINK_DEF(platform,
-       DAILINK_COMP_ARRAY(COMP_PLATFORM("acp_audio_dma.0.auto")));
+       DAILINK_COMP_ARRAY(COMP_PLATFORM("acp_audio_dma.0")));
 
 static struct snd_soc_dai_link cz_dai_rt5650[] = {
        {