A built-in SND_SOC_AMD_RV_RT5682_MACH driver can not select SND_SOC_RT5682 when that is linking against a modular soundwire layer:
WARNING: unmet direct dependencies detected for SND_SOC_RT5682 Depends on [m]: SOUND [=y] && !UML && SND [=y] && SND_SOC [=y] && (I2C [=y] || SOUNDWIRE [=m]) && (SOUNDWIRE [=m] || !SOUNDWIRE [=m]) && (I2C [=y] || !I2C [=y]) Selected by [y]: - SND_SOC_AMD_RV_RT5682_MACH [=y] && SOUND [=y] && !UML && SND [=y] && SND_SOC [=y] && SND_SOC_AMD_ACP3x [=y] && I2C [=y] && CROS_EC [=y] Selected by [m]: - SND_SOC_RT5682_SDW [=m] && SOUND [=y] && !UML && SND [=y] && SND_SOC [=y] && SOUNDWIRE [=m] && (I2C [=y] || !I2C [=y])
This one is a bit awkward because the AMD driver itself has no interest in soundwire, but I could not come up with a cleaner workaround so far.
Maybe the SND_SOC_RT5682 driver itself can be reworked so that the common part depends on neither soundwire nor i2c and the two bus specific options can be loadable modules when the common part is built-in.
Fixes: 6b8e4e7db3cd ("ASoC: amd: Add machine driver for Raven based platform") Fixes: fd443a20c2f0 ("ASoC: rt5682: fix I2C/Soundwire dependencies") Signed-off-by: Arnd Bergmann arnd@arndb.de --- sound/soc/amd/Kconfig | 1 + 1 file changed, 1 insertion(+)
diff --git a/sound/soc/amd/Kconfig b/sound/soc/amd/Kconfig index 77ffdb41bee5..878cf97b050e 100644 --- a/sound/soc/amd/Kconfig +++ b/sound/soc/amd/Kconfig @@ -34,6 +34,7 @@ config SND_SOC_AMD_RV_RT5682_MACH select SND_SOC_CROS_EC_CODEC select I2C_CROS_EC_TUNNEL depends on SND_SOC_AMD_ACP3x && I2C && CROS_EC + depends on SOUNDWIRE || !SOUNDWIRE help This option enables machine driver for RT5682 and MAX9835.