ASoC: fix unmet dependencies on GPIOLIB for SND_SOC_DMIC
authorJulian Braha <julianbraha@gmail.com>
Wed, 27 Oct 2021 18:48:35 +0000 (14:48 -0400)
committerMark Brown <broonie@kernel.org>
Thu, 28 Oct 2021 12:28:16 +0000 (13:28 +0100)
When SND_SOC_AMD_RENOIR_MACH or SND_SOC_AMD_RV_RT5682_MACH
are selected, and GPIOLIB is not selected, Kbuild gives
the following warnings, respectively:

WARNING: unmet direct dependencies detected for SND_SOC_DMIC
  Depends on [n]: SOUND [=y] && !UML && SND [=y] && SND_SOC [=y] && GPIOLIB [=n]
  Selected by [y]:
  - SND_SOC_AMD_RENOIR_MACH [=y] && SOUND [=y] && !UML && SND [=y] && SND_SOC [=y] && SND_SOC_AMD_RENOIR [=y]

and

WARNING: unmet direct dependencies detected for SND_SOC_MAX98357A
  Depends on [n]: SOUND [=y] && !UML && SND [=y] && SND_SOC [=y] && GPIOLIB [=n]
  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]

This is because SND_SOC_DMIC and SND_SOC_MAX98357A are
selected by SND_SOC_AMD_RV_RT5682_MACH and SND_SOC_AMD_RENOIR_MACH,
respectively. However, neither of the selectors depend on or select GPIOLIB,
despite their selectees depending on GPIOLIB.

These unmet dependency bugs were detected by Kismet,
a static analysis tool for Kconfig. Please advise if this
is not the appropriate solution.

Signed-off-by: Julian Braha <julianbraha@gmail.com>
Link: https://lore.kernel.org/r/20211027184835.112916-1-julianbraha@gmail.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/amd/Kconfig

index 56e7c079deacf2ebee4855bbd5ddfe43480f0732..2c6af3f8f29619f3d64e768abe34294c563eeb3a 100644 (file)
@@ -38,7 +38,7 @@ config SND_SOC_AMD_RV_RT5682_MACH
        select I2C_CROS_EC_TUNNEL
        select SND_SOC_RT1015
        select SND_SOC_RT1015P
-       depends on SND_SOC_AMD_ACP3x && I2C && CROS_EC
+       depends on SND_SOC_AMD_ACP3x && I2C && CROS_EC && GPIOLIB
        help
         This option enables machine driver for RT5682 and MAX9835.
 
@@ -51,7 +51,7 @@ config SND_SOC_AMD_RENOIR
 config SND_SOC_AMD_RENOIR_MACH
        tristate "AMD Renoir support for DMIC"
        select SND_SOC_DMIC
-       depends on SND_SOC_AMD_RENOIR
+       depends on SND_SOC_AMD_RENOIR && GPIOLIB
        help
         This option enables machine driver for DMIC